''' In this example we are saving the data to a csv file to be opened with Excel. ''' from gdx import gdx gdx = gdx.gdx() import csv import os #gdx.open_usb() gdx.open_ble( ) # Comment this out if you decide to use the gdx.open_usb() function instead. gdx.select_sensors() with open('csvexample.csv', 'w', newline='') as my_data_file: # The commented-out code below would be used if you want to hard-code in an absolute file path for the location of the csv file... #with open('C:/full/path/to/your/documents/folder/csvexample2.csv', 'w', newline='') as my_data_file: csv_writer = csv.writer(my_data_file) gdx.start(period=200) column_headers = gdx.enabled_sensor_info() csv_writer.writerow(column_headers) for i in range(0, 40): measurements = gdx.read() if measurements == None: break csv_writer.writerow(measurements)
def simulation(q): import time from gdx import gdx #The gdx function calls are from a gdx.py file inside the gdx folder, which must be with this program. gdx = gdx.gdx() time_between_readings_in_seconds = 0.2 number_of_readings = 500 digits_of_precision = 2 gdx.open_usb() gdx.select_sensors( [1] ) # You will be asked to select the sensors to be used. You can select up to three. sensor_times = [] sensor_readings = [] period_in_ms = time_between_readings_in_seconds * 1000 gdx.start(period_in_ms) # Data Collection: collection_complete = False while not collection_complete: try: time = 0 print('Starting...') for i in range(0, number_of_readings): # This is where we are reading the list of measurements from the sensors. measurements = gdx.read() if measurements == None: break q.put([time, measurements[0]]) # Update the time variable with the new time for the next data point time = time + time_between_readings_in_seconds # The data collection loop is finished collection_complete = True print('Data collection complete.') #stop sensor readings and disconnect device gdx.stop() gdx.close() q.put('Q') exit() except KeyboardInterrupt: collection_complete = True gdx.stop() #Stop sensor readings gdx.close() #Disconnect the device print('data collection stopped by keypress') print('Number of readings: ', i + 1) q.put('Q') exit()