
Appendix C
Python script code for the data acquisition and parsing
import serial as sr
import matplotlib.pyplot as plt
import numpy as np
import time
from csv import writer
def append_list_as_row(list_of_elem):
# Open file in append mode
with open(file_name, 'a+') as write_obj:
# Create a writer object from csv module
csv_writer = writer(write_obj, delimiter=',',lineterminator='\n')
# Add contents of list as last row in the csv file
csv_writer.writerow(list_of_elem)
def create_file_with_header(list_of_elem):
# Open file in append mode
with open(file_name, 'wb') as write_obj:
# Create a writer object from csv module
csv_writer = writer(write_obj)
# Add contents of list as last row in the csv file
csv_writer.writerow(list_of_elem)
s = sr.Serial('COM31', 38400);
#Write header
named_tuple = time.localtime() # get struct_time
time_string = time.strftime("%m_%d_%Y_%H_%M_%S", named_tuple)
file_name = 'data_logger_' + time_ '.csv'
print('File Created: ' + file_name)
row_contents = ['Time','Acc_x','Acc_y','Acc_z']
create_file_with_header(row_contents)
while 1:
string_line=s.readline() #ascii
string_line = string_line.strip('\n')
line_as_list = string_line.split(b',')
time_stamp = float(line_as_list[0])
acc_x = float(line_as_list[1])
acc_y = float(line_as_list[2])
acc_z = float(line_as_list[3])
row_contents = [time_stamp,acc_x,acc_y,acc_z]
append_list_as_row(row_contents)
UM3053
Python script code for the data acquisition and parsing
UM3053
-
Rev 1
page 33/39