Changeset 211 for trunk


Ignore:
Timestamp:
11/17/10 16:16:18 (11 years ago)
Author:
sc
Message:

trunk/brainstorms/Puzzlebox/Brainstorms/Helicopter_Control.py:

  • temporary updates from testing
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/brainstorms/Puzzlebox/Brainstorms/Helicopter_Control.py

    r210 r211  
    4242SERIAL_DEVICE = '/dev/ttyUSB0' 
    4343DEFAULT_SERIAL_BAUDRATE = 115200 
     44#DEFAULT_SERIAL_BAUDRATE = 125000 
    4445DEFAULT_MODE = 'read' 
    4546 
    4647PROTOCOL_SYNC = '\x80' 
     48PROTOCOL_SYNC_HEAD1 = '\xff' 
     49PROTOCOL_SYNC_HEAD2 = '\x80' 
     50PROTOCOL_SYNC_TAIL = False 
    4751PACKET_LENGTH = 10 
    4852PAYLOAD_MINIMUM_LENGTH = 8 
    4953 
    50 DEVICE_BUFFER_TIMER = 20 # Check buffer size once every 20ms 
     54DEVICE_BUFFER_TIMER = 18 # Check buffer size once every 20ms 
    5155 
    5256COMMAND_PACKET = { 
     
    5559        'minimum_thrust': '\x80\x59\x68\x81\x86\xd1\xa4\x29', \ 
    5660        'maximum_thrust': '\x83\xad\xdf\x91\xe0\x83\x12\x8d\x54', \ 
     61        'max_test': '\x80\x83\xad\xe4\x22\x98\x30\x8b\x8d\x54\xff', \ 
    5762        'maximum_forward': '\x83\xad\xde\x11\xcd\xb0\x8b\x8d\x54', \ 
    5863} 
     
    121126                if self.DEBUG: 
    122127                        print "data_payload:", 
     128                        print packet['data_payload'] 
    123129                        print packet['data_payload'].encode("hex") 
    124                         #print packet['data_payload'] 
    125130                         
    126131                        #if packet['data_payload'].encode("hex") == '80acdf22cdb08b8d54': 
     
    154159                        print "--> Command: neutral" 
    155160                 
    156                 self.protocol.command_packet = COMMAND_PACKET['neutral'] 
     161                #self.protocol.command_packet = COMMAND_PACKET['neutral'] 
     162                self.protocol.command_packet = COMMAND_PACKET['max_test'] 
    157163         
    158164         
     
    167173                QtCore.QThread.msleep(1 * 1000) # 1 second 
    168174                 
    169                 self.protocol.command_packet = COMMAND_PACKET['minimum_thrust'] 
     175                #self.protocol.command_packet = COMMAND_PACKET['minimum_thrust'] 
     176                self.protocol.command_packet = COMMAND_PACKET['max_test'] 
    170177                QtCore.QThread.msleep(1 * 1000) # 1 second 
    171178                 
     
    318325                        # Synchronize on [SYNC] bytes 
    319326                        byte = self.device.read() 
    320                         if (byte != PROTOCOL_SYNC): 
     327                        #print byte.encode("hex") 
     328                         
     329                        #if (byte != PROTOCOL_SYNC): 
     330                        if (byte != PROTOCOL_SYNC_HEAD1): 
    321331                                continue 
    322332                         
     333                        byte = self.device.read() 
     334                        if (byte != PROTOCOL_SYNC_HEAD2): 
     335                                continue 
     336                         
    323337                         
    324338                        payload_timestamp = time.time() 
     
    327341                         
    328342                        # Remove PROTOCOL_SYNC_TAIL 
    329                         data_payload = data_payload[:-1] 
     343                        #data_payload = data_payload[:-1] 
    330344                         
    331345                         
     
    362376                         
    363377                        # Synchronize on [SYNC] bytes 
    364                         buffer = PROTOCOL_SYNC 
    365                          
    366                         buffer += self.command_packet 
    367                          
     378                        #if not PROTOCOL_SYNC_TAIL: 
     379                                #buffer = PROTOCOL_SYNC 
     380                                #buffer += self.command_packet 
     381                        #else: 
     382                                #buffer = self.command_packet 
     383                                #buffer += PROTOCOL_SYNC 
     384                                 
     385                        buffer = self.command_packet 
    368386                         
    369387                        self.device.buffer = buffer 
     
    637655                                #byte = self.device.read() 
    638656                                byte = self.device.recv(1) 
     657                                self.device.write(byte) 
    639658                                 
    640659                                if (len(byte) != 0): 
    641660                                        if self.DEBUG > 2: 
    642661                                                print "Device read:", 
    643                                                 print byte 
     662                                                print byte, 
     663                                                print byte.encode("hex") 
    644664                                                 
    645665                                        self.buffer += byte 
     
    672692                                                print "Device wrote:", 
    673693                                                print buffer 
     694                                                print buffer.encode("hex") 
    674695                                 
    675696                                except: 
Note: See TracChangeset for help on using the changeset viewer.