Changeset f88941a in robotics


Ignore:
Timestamp:
08/12/13 07:34:26 (8 years ago)
Author:
Steve Castellotti <sc@…>
Branches:
master
Children:
297fcbb
Parents:
4996638
Message:
  • testControl() finished
File:
1 edited

Legend:

Unmodified
Added
Removed
  • wheelchair/python/Wheelchair_Control.py

    r4996638 rf88941a  
    5959DEFAULT_SERIAL_BAUD = 57600 
    6060 
    61 DEFAULT_SPEED = 0 
    62 DRIVE_SPEED = 5 
    63  
    64 #DEFAULT_WHEELCHAIR_SPEED = 5 
     61SAFETY_WHEELCHAIR_SPEED = 0 
     62 
    6563DEFAULT_WHEELCHAIR_SPEED = 7 
    6664DEFAULT_WHEELCHAIR_COMMAND = 'stop' 
     
    7169COMMAND_CHARACTER = 'x' 
    7270 
     71PORT = None 
    7372 
    7473#const int commandexpires = 500;  //milliseconds before direction command expires 
    7574#const int wheelchairpowerexpires = 5000;  //milliseconds before wheelchair power-on command expires 
    76  
    77  
    7875 
    7976GUI_SLEEP_TIMER = 1 * 100 # 100ms 
     
    9087             'left': 'L', 
    9188} 
    92  
    93 # 2013.08.11 
    94 #MOVE_COMMANDS ={ 
    95                 #' ' : 'stop', 
    96                 #'i' : 'fwd', 
    97                 #'m' : 'rev', 
    98                 #'j' : 'left', 
    99                 #'k' : 'right', 
    100                 #} 
    101  
    10289 
    10390MOVE_COMMANDS ={ 
     
    10996} 
    11097 
    111 #SPEED_COMMANDS = { 
    112                 #'1' : 'speed-1', 
    113                 #'2' : 'speed-2', 
    114                 #'3' : 'speed-3', 
    115                 #} 
    116  
    11798SPEED_COMMANDS = { 's' : -1, 
    11899                   'd' : +1, 
     
    123104DIGITS = map(str,range(10)) 
    124105 
    125 #PORT = serial.Serial("/dev/arduino1",baudrate=57600,bytesize=serial.EIGHTBITS) 
    126 PORT = None 
    127  
    128 STOP_TIME = 0 
    129 STOP_INTERVAL = 0.2 
    130 ALARM_INTERVAL = 0.1 
    131  
    132 #steeringsensitivity = 0.5   # multiplier for left/right commands 
    133 STEERING_SENSITIVITY = 0.5   # multiplier for left/right commands 
    134  
    135  
    136106##################################################################### 
    137107# Classes 
     
    166136                self.speed = None 
    167137                 
    168                 #self.setSpeed(0) 
    169                 #self.setSpeed(DEFAULT_WHEELCHAIR_SPEED) 
    170                  
    171                  
    172                 #self.stopBot() 
    173                  
    174                 #self.speed = (DEFAULT_WHEELCHAIR_SPEED) * 255/9 
    175                  
    176                 #self.setSpeed(self.speed) 
    177                  
    178138                 
    179139                self.initializeWheelchair() 
    180140                 
    181                 self.timer = QtCore.QTimer(self) 
    182                 QtCore.QObject.connect(self.timer, QtCore.SIGNAL("timeout()"), self.deviceKeepalive) 
    183                 self.timer.start(COMMAND_KEEPALIVE_TIMER) 
     141                 
     142                #self.timer = QtCore.QTimer(self) 
     143                #QtCore.QObject.connect(self.timer, QtCore.SIGNAL("timeout()"), self.deviceKeepalive) 
     144                #self.timer.start(COMMAND_KEEPALIVE_TIMER) 
    184145         
    185146         
     
    188149        def initializeWheelchair(self): 
    189150                 
    190                 self.setSpeed(int(DEFAULT_SPEED)*255/9) 
     151                self.setSpeed(int(SAFETY_WHEELCHAIR_SPEED)*255/9) 
    191152                 
    192153                self.device.write("Pz") 
     
    200161                time.sleep(ROBOT_CONTROLLER_INITIALIZATION_TIME) 
    201162                 
    202                 self.setSpeed(int(DRIVE_SPEED)*255/9) 
     163                self.setSpeed(int(DEFAULT_WHEELCHAIR_SPEED)*255/9) 
     164                 
     165                self.device.write("Pz") 
    203166         
    204167         
     
    367330                if value == 'B': 
    368331                        self.setOutput('DB') 
    369          
    370          
    371         # 2013.08.11 
    372         ##def moveBot(self, dir, speed): 
    373         #def moveBot(self, dir): 
    374                 #if (dir in ['left','right']): 
    375                         ##output = CONTROLS[dir] + chr(int(speed * steeringsensitivity)) 
    376                         #output = CONTROLS[dir] + chr(int(self.speed * STEERING_SENSITIVITY)) 
    377                 #else: 
    378                         #output = CONTROLS[dir] + chr(self.speed) 
    379                 #self.setOutput(output) 
    380332         
    381333         
     
    490442                MYGETCH = Getch() 
    491443                 
    492                 #initAlarm() 
    493                  
    494444                self.stopBot() 
    495445                 
    496446                print "post stopBot()" 
    497                  
    498                 #speed = DEFAULT_WHEELCHAIR_SPEED 
    499                 #while True: 
    500                         #cmd = MYGETCH() 
    501                         #if cmd == 'x': 
    502                                 #exit() 
    503                         #if cmd in SPEED_COMMANDS.keys(): 
    504                                 #speed = int(cmd) 
    505                                 #print SPEED_COMMANDS[cmd] 
    506                         #elif cmd in MOVE_COMANDS.keys(): 
    507                                 #if MOVE_COMANDS[cmd] == 'stop': 
    508                                         #self.stopBot() 
    509                                 #else: 
    510                                         #print MOVE_COMANDS[cmd] 
    511                                         #self.moveBot(MOVE_COMANDS[cmd], speed) 
    512                                         #STOP_TIME = time.time() + STOP_INTERVAL 
    513          
    514447         
    515448                #CHECKSUM = "Pz" 
     
    617550        def testControl(self): 
    618551                 
    619                 #self.stopBot() 
    620                  
    621                 #speed = (DEFAULT_WHEELCHAIR_SPEED) * 255/9 
    622                  
    623                 #self.setSpeed(speed) 
    624                  
    625                 ##self.moveBot('fwd', speed) 
    626                  
    627                 #self.timer.start(DEVICE_KEEPALIVE_TIMER) 
    628                  
    629                 pass 
     552                if self.DEBUG: 
     553                        print "testControl()" 
     554                 
     555                while True: 
     556                         
     557                        self.moveBot('fwd') 
     558                         
     559                        QtCore.QThread.msleep(COMMAND_KEEPALIVE_TIMER) 
    630560         
    631561         
     
    837767                        DEBUG=DEBUG) 
    838768         
    839         #wheelchair.start() 
     769        wheelchair.start() 
    840770         
    841771        sys.exit(app.exec_()) 
Note: See TracChangeset for help on using the changeset viewer.