Changeset 233 for trunk


Ignore:
Timestamp:
12/01/10 11:56:45 (11 years ago)
Author:
sc
Message:

Brainstorms/Wheelchair_Control.py:

  • general code cleanup

Brainstorms/Interface?.py:

  • initial support for connecting helicopter control to GUI buttons
Location:
trunk/brainstorms/Puzzlebox/Brainstorms
Files:
2 edited

Legend:

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

    r229 r233  
    5252import Client as brainstorms_client 
    5353import Puzzlebox.Brainstorms.ThinkGear.Client as thinkgear_client 
     54import Helicopter_Control as helicopter_control 
    5455#import puzzlebox_logger 
    5556 
     
    9798                self.brainstormsServer = server 
    9899                self.brainstormsClient = None 
     100                 
     101                self.helicopter = None 
     102                self.wheelchair = None 
    99103                 
    100104                self.drive_state = 'stop_motors' 
     
    411415         
    412416        def connectToRCHelicopter(self): 
     417                 
     418                device_selection = self.comboBoxHelicopterPortSelect.currentText() 
     419                 
     420                self.helicopter = \ 
     421                   helicopter_control.puzzlebox_brainstorms_helicopter_control( \ 
     422                      device_address=device_selection, 
     423                      command='neutral', \ 
     424                      DEBUG=self.DEBUG) 
     425                 
     426                self.helicopter.start() 
    413427                 
    414428                self.disconnect(self.pushButtonHelicopterConnect, \ 
     
    448462         
    449463        def disconnectFromRCHelicopter(self): 
     464                 
     465                self.helicopter.command = 'neutral' 
     466                self.helicopter.processCommand() 
     467                 
     468                self.helicopter.stop() 
    450469                 
    451470                self.disconnect(self.pushButtonHelicopterConnect, \ 
     
    12571276        def enableHelicopterHover(self): 
    12581277                 
     1278                self.helicopter.command = 'hover' 
     1279                self.helicopter.processCommand() 
     1280                 
    12591281                self.disconnect(self.pushButtonHelicopterHover, \ 
    12601282                                                        QtCore.SIGNAL("clicked()"), \ 
     
    12741296        def disableHelicopterHover(self): 
    12751297                 
     1298                self.helicopter.command = 'neutral' 
     1299                self.helicopter.processCommand() 
     1300                 
    12761301                self.disconnect(self.pushButtonHelicopterHover, \ 
    12771302                                                        QtCore.SIGNAL("clicked()"), \ 
     
    12871312        def enableHelicopterFlyForward(self): 
    12881313                 
     1314                self.helicopter.command = 'fly_forward' 
     1315                self.helicopter.processCommand() 
     1316                 
    12891317                self.disconnect(self.pushButtonHelicopterFlyForward, \ 
    12901318                                                        QtCore.SIGNAL("clicked()"), \ 
     
    13041332        def disableHelicopterFlyForward(self): 
    13051333                 
     1334                self.helicopter.command = 'neutral' 
     1335                self.helicopter.processCommand() 
     1336                 
    13061337                self.disconnect(self.pushButtonHelicopterFlyForward, \ 
    13071338                                                        QtCore.SIGNAL("clicked()"), \ 
     
    13161347         
    13171348        def landHelicopter(self): 
     1349                 
     1350                self.helicopter.command = 'neutral' 
     1351                self.helicopter.processCommand() 
    13181352                 
    13191353                if self.pushButtonHelicopterHover.isChecked(): 
  • trunk/brainstorms/Puzzlebox/Brainstorms/Wheelchair_Control.py

    r232 r233  
    191191##################################################################### 
    192192 
    193 device = initializeSerial() 
    194  
    195 MYGETCH = Getch() 
    196  
    197 #initAlarm() 
    198  
    199 stopBot() 
    200  
    201 speed = 1 
    202 while True: 
    203         cmd = MYGETCH() 
    204         if cmd == 'x': 
    205                 exit() 
    206         if cmd in SPEED_COMMANDS.keys(): 
    207                 speed = int(cmd) 
    208                 print SPEED_COMMANDS[cmd] 
    209         elif cmd in MOVE_COMANDS.keys(): 
    210                 if MOVE_COMANDS[cmd] == 'stop': 
    211                         stopBot() 
    212                 else: 
    213                         print MOVE_COMANDS[cmd] 
    214                         moveBot(MOVE_COMANDS[cmd], speed) 
    215                         STOP_TIME = time.time() + STOP_INTERVAL 
     193if __name__ == '__main__': 
     194 
     195        device = initializeSerial() 
     196 
     197        MYGETCH = Getch() 
     198 
     199        #initAlarm() 
     200 
     201        stopBot() 
     202 
     203        speed = 1 
     204        while True: 
     205                cmd = MYGETCH() 
     206                if cmd == 'x': 
     207                        exit() 
     208                if cmd in SPEED_COMMANDS.keys(): 
     209                        speed = int(cmd) 
     210                        print SPEED_COMMANDS[cmd] 
     211                elif cmd in MOVE_COMANDS.keys(): 
     212                        if MOVE_COMANDS[cmd] == 'stop': 
     213                                stopBot() 
     214                        else: 
     215                                print MOVE_COMANDS[cmd] 
     216                                moveBot(MOVE_COMANDS[cmd], speed) 
     217                                STOP_TIME = time.time() + STOP_INTERVAL 
Note: See TracChangeset for help on using the changeset viewer.