diff --git a/copyFiles.sh b/copyFiles.sh index 777f2dc57bb933df8bcd5a35b2c63196cb48ed9c..14ea8531113358200be4155c74c209bd905dbbc5 100755 --- a/copyFiles.sh +++ b/copyFiles.sh @@ -1,4 +1,5 @@ sshpass -p "admin" scp ~/dev/ActivityTracker/main.py wmalisch@192.168.2.18:~/ActivityTracker/main.py +sshpass -p "admin" scp ~/dev/ActivityTracker/sendOutputs.sh wmalisch@192.168.2.18:~/ActivityTracker/sendOutputs.sh sshpass -p "admin" scp ~/dev/ActivityTracker/src/Controller.py wmalisch@192.168.2.18:~/ActivityTracker/src/Controller.py sshpass -p "admin" scp ~/dev/ActivityTracker/src/Logger.py wmalisch@192.168.2.18:~/ActivityTracker/src/Logger.py sshpass -p "admin" scp ~/dev/ActivityTracker/src/Activity.py wmalisch@192.168.2.18:~/ActivityTracker/src/Activity.py diff --git a/sendOutputs.sh b/sendOutputs.sh index 9dec5c46a6d46897167e94938de09c2f21ed70dd..43671d22978570a49c695f47ddb188082174382c 100644 --- a/sendOutputs.sh +++ b/sendOutputs.sh @@ -1 +1 @@ -sshpass -p "rk8g!yA3$eNJ&#p" scp -r ./outputs wmalisch@192.168.2.182:~/dev/ActivityTracker/outputs +sshpass -p "rk8g!yA3$eNJ&#p" scp -r ./outputs wmalisch@192.168.2.182:~/dev/ActivityTracker diff --git a/src/Activity.py b/src/Activity.py index 343c91097669e594c26793c531bfb32d2ca89c51..ce40215b41f8f7a2cdc497bec268cca9180f1ef2 100644 --- a/src/Activity.py +++ b/src/Activity.py @@ -1,5 +1,7 @@ from sense_hat import SenseHat import time +import csv +from pathlib import Path class Activity: def __init__(self, sense): @@ -8,22 +10,32 @@ class Activity: def record(self): try: - self.running = True + + timestamp = int(time.time()) + output_file_path = Path(f"outputs/{timestamp}.csv").resolve() + print("Activity started.") - i = 0 - while self.running: - # Read data from the IMU - imu_data = self.sense.get_accelerometer_raw() - acceleration = imu_data['x'], imu_data['y'], imu_data['z'] - print("Acceleration (g): x={:.2f}, y={:.2f}, z={:.2f}".format(*acceleration)) - time.sleep(0.1) # Adjust sleep time as needed - joy_stick = self.sense.stick.get_events() - for event in joy_stick: - if(event.action == "pressed" and event.direction == "middle"): - self.running = not self.running - return "Success" + with open(output_file_path, 'a') as file: + + writer = csv.writer(file) + + while self.running: + # Read data from the IMU + imu_data = self.sense.get_accelerometer_raw() + acceleration = imu_data['x'], imu_data['y'], imu_data['z'] + + rounded_acceleration = [round(value, 2) for value in acceleration] + writer.writerow(rounded_acceleration) + + joy_stick = self.sense.stick.get_events() + for event in joy_stick: + if(event.action == "pressed" and event.direction == "middle"): + self.running = not self.running + + return True except Exception as e: - return "Failed" + print(e, "An error was encountered when recording your activity. Please try again.") + return False diff --git a/src/test.py b/src/test.py new file mode 100644 index 0000000000000000000000000000000000000000..0561937f24e0ede3d9eac725ed3ab21dd042931d --- /dev/null +++ b/src/test.py @@ -0,0 +1,15 @@ + +import time +import csv +from pathlib import Path + + +timestamp = int(time.time()) + +# Define output file path +output_file_path = Path(f"outputs/{timestamp}.csv").resolve() + +with open(output_file_path, 'a') as file: + for i in range(2): + file.write("hello" + '\n') + \ No newline at end of file