self.fd = open(directory + '/' + time.strftime('%d_%b_%Y_%I_%M_%S') + '.log', 'w') def writeln(self, string): self.fd.write(string + '\n') self.fd.flush() def close(self): self.fd.close() # Initialization ========================================================================================================== # Require controller controller = Controller(('Stabilize', 'Alt-hold', 'Pos-hold')) # Serve a socket on the port indicated in the first command-line argument client = serve_socket(int(argv[1])) # Receive working directory path from client pyquadsim_directory = receiveString(client) # Receive particle info from client particleInfo = receiveFloats(client, 6) particleSizes = particleInfo[0:4] particleDensity = particleInfo[4] particleCountPerSecond = particleInfo[5] # Create logs folder if needed logdir = pyquadsim_directory + '/logs'
''' qstest.py - PyQuadStick test program Copyright (C) 2014 Simon D. Levy This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. ''' # Choose your controller ====================================================== #from quadstick import ExtremePro3D as Controller from quadstick import PS3 as Controller #from quadstick.rc.spektrum import DX8 as Controller #from quadstick.rc.frsky import Taranis as Controller # ============================================================================= controller = Controller(('0', '1', '2')) while controller.running(): print('%+3.3f %+3.3f %+3.3f %+3.3f %d' % controller.poll())
directory + '/' + time.strftime('%d_%b_%Y_%H_%M_%S') + '.csv', 'w') def writeln(self, string): self.fd.write(string + '\n') self.fd.flush() def close(self): self.fd.close() # Initialization ===================================================================================================== # Require controller controller = Controller(('Stabilize', 'Hold Altitude', 'Unused')) # Serve a socket on the port indicated in the first command-line argument client = serve_socket(int(argv[1])) # Receive working directory path from client pyquadsim_directory = receiveString(client) # Create logs folder if needed logdir = pyquadsim_directory + '/logs' if not os.path.exists(logdir): os.mkdir(logdir) # Open logfile named by current date, time logfile = LogFile(logdir)
qstest.py - PyQuadStick test program Copyright (C) 2014 Simon D. Levy This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. ''' # Choose your controller ====================================================== #from quadstick import ExtremePro3D as Controller from quadstick import PS3 as Controller #from quadstick.rc.spektrum import DX8 as Controller #from quadstick.rc.frsky import Taranis as Controller # ============================================================================= controller = Controller(('0', '1', '2')) while controller.running(): print('%+3.3f %+3.3f %+3.3f %+3.3f %d' % controller.poll())