Changeset 297fcbb in robotics


Ignore:
Timestamp:
08/12/13 07:48:21 (8 years ago)
Author:
Steve Castellotti <sc@…>
Branches:
master
Children:
799ebc8
Parents:
f88941a
Message:
  • turned off hardware flow control
File:
1 edited

Legend:

Unmodified
Added
Removed
  • wheelchair/python/Wheelchair_Control.py

    rf88941a r297fcbb  
    6464DEFAULT_WHEELCHAIR_COMMAND = 'stop' 
    6565 
    66 ARDUINO_INITIALIZATION_TIME = 2 
    67 ROBOT_CONTROLLER_INITIALIZATION_TIME = 4 
     66ARDUINO_INITIALIZATION_TIME = 2 * 1000 # 2s 
     67ROBOT_CONTROLLER_INITIALIZATION_TIME = 4 * 1000 # 4s 
    6868 
    6969COMMAND_CHARACTER = 'x' 
     
    7575 
    7676GUI_SLEEP_TIMER = 1 * 100 # 100ms 
    77 #DEVICE_KEEPALIVE_TIMER = 1.5 * 1000 # 1.5s 
    7877DEVICE_KEEPALIVE_TIMER = 4 * 1000 # 4s 
    7978COMMAND_KEEPALIVE_TIMER = 4 * 100 # 400 ms 
     
    153152                self.device.write("Pz") 
    154153                 
    155                 time.sleep(ARDUINO_INITIALIZATION_TIME) 
     154                #time.sleep(ARDUINO_INITIALIZATION_TIME) 
     155                QtCore.QThread.msleep(ARDUINO_INITIALIZATION_TIME) 
    156156                 
    157157                print "[INFO] Intializing robot" 
     
    159159                self.moveBot('fwd') 
    160160                 
    161                 time.sleep(ROBOT_CONTROLLER_INITIALIZATION_TIME) 
     161                #time.sleep(ROBOT_CONTROLLER_INITIALIZATION_TIME) 
     162                QtCore.QThread.msleep(ROBOT_CONTROLLER_INITIALIZATION_TIME) 
    162163                 
    163164                self.setSpeed(int(DEFAULT_WHEELCHAIR_SPEED)*255/9) 
    164165                 
    165166                self.device.write("Pz") 
    166          
    167          
    168         ################################################################## 
    169          
    170         def deviceKeepalive(self): 
    171                  
    172                 if self.DEBUG: 
    173                         print "deviceKeepalive()" 
    174                          
    175                 #if self.wheelchair_command == 'stop': 
    176                         #self.setOutput(DEVICE_KEEPALIVE_CHECKSUM) 
    177                  
    178                 #if self.wheelchair_command == 'stop': 
    179                 #self.setOutput(DEVICE_KEEPALIVE_CHECKSUM) 
    180                 #self.setOutput('') 
    181                  
    182                  
    183                 self.device.write(DEVICE_KEEPALIVE_CHECKSUM) 
    184                  
    185                 self.moveBot('fwd') 
    186167         
    187168         
     
    200181                stopbits = 1 
    201182                software_flow_control = 'f' 
    202                 rts_cts_flow_control = 't' 
     183                rts_cts_flow_control = 'f' 
    203184                #timeout = 15 
    204185                timeout = 5 
     
    249230                        init_rts_cts_flow_control = 0 
    250231                 
    251                 #try: 
    252                         #self.device = serial.Serial(port = self.device_address, \ 
    253                                                                                 #baudrate = baudrate, \ 
    254                                                                                 #bytesize = init_byte_size, \ 
    255                                                                                 #parity = init_parity, \ 
    256                                                                                 #stopbits = init_stopbits, \ 
    257                                                                                 #xonxoff = init_software_flow_control, \ 
    258                                                                                 #rtscts = init_rts_cts_flow_control, \ 
    259                                                                                 #timeout = timeout) 
    260                 #except: 
    261                         #if self.DEBUG: 
    262                                 #print "ERROR: FATAL: Serial device not initialized:", 
    263                                 #print self.device_address 
    264  
    265  
    266                 self.device = serial.Serial(DEFAULT_SERIAL_DEVICE,baudrate=DEFAULT_SERIAL_BAUD,bytesize=serial.EIGHTBITS) 
    267  
    268  
    269                  
    270                 # NOTE disabled 2012-08-04 due to console not responding 
    271                 #self.sendCommand(self.wheelchair_speed, self.wheelchair_command) 
    272                  
    273                 time.sleep(ARDUINO_INITIALIZATION_TIME) 
     232                try: 
     233                        self.device = serial.Serial(port = self.device_address, \ 
     234                                                                                baudrate = baudrate, \ 
     235                                                                                bytesize = init_byte_size, \ 
     236                                                                                parity = init_parity, \ 
     237                                                                                stopbits = init_stopbits, \ 
     238                                                                                xonxoff = init_software_flow_control, \ 
     239                                                                                rtscts = init_rts_cts_flow_control, \ 
     240                                                                                timeout = timeout) 
     241                except: 
     242                        if self.DEBUG: 
     243                                print "ERROR: FATAL: Serial device not initialized:", 
     244                                print self.device_address 
     245         
     246         
     247        ################################################################## 
     248         
     249        def deviceKeepalive(self): 
     250                 
     251                if self.DEBUG: 
     252                        print "deviceKeepalive()" 
     253                         
     254                #if self.wheelchair_command == 'stop': 
     255                        #self.setOutput(DEVICE_KEEPALIVE_CHECKSUM) 
     256                 
     257                #if self.wheelchair_command == 'stop': 
     258                #self.setOutput(DEVICE_KEEPALIVE_CHECKSUM) 
     259                #self.setOutput('') 
     260                 
     261                 
     262                self.device.write(DEVICE_KEEPALIVE_CHECKSUM) 
     263                 
     264                self.moveBot('fwd') 
    274265         
    275266         
     
    366357                if self.speed < 0: 
    367358                        self.speed = 0 
    368                 print 'speed:', self.speed, '/ 255' 
     359                if self.DEBUG: 
     360                        print 'INFO: setSpeed(%i):' % value, self.speed, '/ 255' 
    369361         
    370362         
     
    648640        PORT.write(data) 
    649641        PORT.write("Pz") 
    650 #       print 'Output set to:', data[0], ord(data[1]) 
    651 #       printHelp() 
    652642 
    653643 
     
    730720                        if len(cmd) > 0: 
    731721                                handleCommand(cmd) 
    732                                 #if cmd == '?': 
    733722                                printHelp() 
    734                 #if PORT.inWaiting() > 0: 
    735                 #       print PORT.readline() 
    736723 
    737724 
     
    741728 
    742729if __name__ == "__main__": 
    743  
    744730         
    745731        # Perform correct KeyboardInterrupt handling 
     
    759745         
    760746         
    761         #app = QtGui.QApplication(sys.argv) 
    762747        app = QtCore.QCoreApplication(sys.argv) 
    763748         
Note: See TracChangeset for help on using the changeset viewer.