From 7092ba104ae90eea21beb21c35900e1ccbfaf957 Mon Sep 17 00:00:00 2001 From: Matt Strapp Date: Fri, 18 Feb 2022 12:00:59 -0600 Subject: Change git repo to organization repos Signed-off-by: Matt Strapp --- .gitmodules | 2 +- README.md | 19 ++- System/Downloads/.~lock.results.csv# | 1 - System/Downloads/results.csv | 255 ----------------------------------- System/Uploads/donovanTestScript.py | 81 ----------- System/Uploads/upload.py | 81 ----------- System/system.py | 4 +- Web | 2 +- test_script_results.csv | 1 - 9 files changed, 21 insertions(+), 425 deletions(-) delete mode 100644 System/Downloads/.~lock.results.csv# delete mode 100644 System/Downloads/results.csv delete mode 100644 System/Uploads/donovanTestScript.py delete mode 100644 System/Uploads/upload.py delete mode 100644 test_script_results.csv diff --git a/.gitmodules b/.gitmodules index f2dc557..9824ae7 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "4951w-pendulum"] path = Web - url = https://github.com/RosstheRoss/4951w-pendulum.git + url = https://github.com/UMN-EE4951W-Lamperski/pendulum-web.git diff --git a/README.md b/README.md index 301b702..5cb1a18 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,17 @@ -# ee4950-inverted-pendulum -Code for Pi web client, embedded hardwares, and web server +# Lamperski Inverted Pendulum + +[![Known Vulnerabilities]()]() + +The git repository for Professor Lamperski's Inverted Pendulum, designed by EE4951W students from 2019, 2021, and 2022. + +The structure for the repository is as follows: +``` +├── System (folder) +│ ├── system.py (the main Python script) +│ └── motor.py (the motor controller) +├── Web (folder) +│ └── * +└── README.md (what you are currently reading) +``` + +`*` See [the web submodule](https://github.com/UMN-EE4951W-Lamperski/pendulum-web/#README) for more information on the web frontend. diff --git a/System/Downloads/.~lock.results.csv# b/System/Downloads/.~lock.results.csv# deleted file mode 100644 index e78d75a..0000000 --- a/System/Downloads/.~lock.results.csv# +++ /dev/null @@ -1 +0,0 @@ -,pi,raspberrypi,17.11.2021 01:58,file:///home/pi/.config/libreoffice/4; \ No newline at end of file diff --git a/System/Downloads/results.csv b/System/Downloads/results.csv deleted file mode 100644 index 3bb6442..0000000 --- a/System/Downloads/results.csv +++ /dev/null @@ -1,255 +0,0 @@ -timestamp,angle(Radians),position(inches),speed(percentage) -this is a test with speed 4 -timestamp,angle(Radians),position(inches),speed(percentage) -16:05:38.576364,151.875000,-8.439453,4.000000 -16:05:38.681444,163.828125,-7.929688,4.000000 -16:05:38.786566,181.757812,-7.250000,4.000000 -16:05:38.891516,169.804688,-6.570312,4.000000 -16:05:38.995733,212.343750,-6.003906,4.000000 -16:05:39.100758,226.406250,-5.437500,4.000000 -16:05:39.205412,240.820312,-4.814453,4.000000 -16:05:39.310307,253.828125,-4.304688,4.000000 -16:05:39.415478,267.890625,-3.738281,4.000000 -16:05:39.520592,286.875000,-3.001953,4.000000 -16:05:39.625938,169.804688,-2.265625,4.000000 -16:05:39.731885,325.898438,-1.416016,4.000000 -16:05:39.836757,349.453125,-0.566406,4.000000 -16:05:39.941132,3.867188,0.169922,4.000000 -16:05:40.045609,18.984375,0.679688,4.000000 -16:05:40.150155,33.750000,1.302734,4.000000 -16:05:40.254815,46.054688,1.812500,4.000000 -16:05:40.359374,59.062500,2.322266,4.000000 -16:05:40.464077,72.070312,2.888672,4.000000 -16:05:40.569240,85.078125,3.341797,4.000000 -16:05:40.673757,100.898438,3.964844,4.000000 -16:05:40.778099,120.234375,4.814453,4.000000 -16:05:40.882811,135.000000,5.380859,4.000000 -16:05:40.987922,150.117188,5.947266,4.000000 -16:05:41.093497,164.531250,6.570312,4.000000 -16:05:41.198542,310.078125,6.117188,4.000000 -16:05:41.303724,194.765625,7.816406,4.000000 -this is a test with speed 5 -timestamp,angle(Radians),position(inches),speed(percentage) -16:05:49.596340,151.523438,-8.439453,5.000000 -16:05:49.702042,164.882812,-7.986328,5.000000 -16:05:49.806746,182.109375,-7.250000,5.000000 -16:05:49.911113,200.039062,-6.457031,5.000000 -16:05:50.016017,217.265625,-5.833984,5.000000 -16:05:50.120927,233.789062,-5.154297,5.000000 -16:05:50.226005,246.796875,-4.531250,5.000000 -16:05:50.331501,264.023438,-3.908203,5.000000 -16:05:50.436136,280.195312,-3.228516,5.000000 -16:05:50.540434,300.234375,-2.435547,5.000000 -16:05:50.644997,310.078125,-1.642578,5.000000 -16:05:50.749780,338.554688,-0.962891,5.000000 -16:05:50.854710,359.648438,-0.113281,5.000000 -16:05:50.959321,14.765625,0.566406,5.000000 -16:05:51.064479,28.476562,1.076172,5.000000 -16:05:51.169904,41.835938,1.642578,5.000000 -16:05:51.274321,53.789062,2.095703,5.000000 -16:05:51.379558,82.265625,2.718750,5.000000 -16:05:51.485216,86.484375,3.455078,5.000000 -16:05:51.589896,103.359375,4.078125,5.000000 -16:05:51.694795,118.828125,4.701172,5.000000 -16:05:51.799843,135.000000,5.380859,5.000000 -16:05:51.905289,153.281250,6.117188,5.000000 -16:05:52.010447,168.046875,6.740234,5.000000 -16:05:52.115766,184.570312,7.363281,5.000000 -this is a test with speed 6 -timestamp,angle(Radians),position(inches),speed(percentage) -16:06:00.402833,155.742188,-8.212891,6.000000 -16:06:00.507380,170.859375,-7.703125,6.000000 -16:06:00.611857,192.304688,-6.796875,6.000000 -16:06:00.716536,212.343750,-6.003906,6.000000 -16:06:00.821368,229.570312,-5.210938,6.000000 -16:06:00.926219,248.554688,-4.531250,6.000000 -16:06:01.030902,268.242188,-3.738281,6.000000 -16:06:01.135153,291.093750,-2.888672,6.000000 -16:06:01.240387,310.429688,-2.039062,6.000000 -16:06:01.346681,337.500000,-1.019531,6.000000 -16:06:01.451072,357.890625,-0.169922,6.000000 -16:06:01.555432,14.765625,0.509766,6.000000 -16:06:01.659765,31.640625,1.189453,6.000000 -16:06:01.764515,47.109375,1.925781,6.000000 -16:06:01.869452,84.726562,1.982422,6.000000 -16:06:01.974763,81.210938,3.228516,6.000000 -16:06:02.080037,110.390625,4.417969,6.000000 -16:06:02.184478,133.242188,5.267578,6.000000 -16:06:02.288869,159.257812,6.343750,6.000000 -16:06:02.394059,178.593750,7.136719,6.000000 -this is a test with speed 7 -timestamp,angle(Radians),position(inches),speed(percentage) -16:06:10.787039,155.742188,-8.326172,7.000000 -16:06:10.891894,172.265625,-7.589844,7.000000 -16:06:10.996373,197.226562,-6.683594,7.000000 -16:06:11.101025,220.078125,-5.720703,7.000000 -16:06:11.205584,241.875000,-4.814453,7.000000 -16:06:11.310519,264.726562,-3.851562,7.000000 -16:06:11.415853,287.929688,-2.945312,7.000000 -16:06:11.521213,316.054688,-1.869141,7.000000 -16:06:11.626844,339.960938,-0.792969,7.000000 -16:06:11.731536,4.570312,0.056641,7.000000 -16:06:11.836571,24.257812,0.906250,7.000000 -16:06:11.941584,45.000000,1.699219,7.000000 -16:06:12.046068,67.148438,2.662109,7.000000 -16:06:12.150479,87.187500,3.455078,7.000000 -16:06:12.255299,110.390625,4.417969,7.000000 -16:06:12.360261,132.187500,5.324219,7.000000 -16:06:12.465326,164.179688,6.343750,7.000000 -16:06:12.570285,247.148438,7.306641,7.000000 -this is a test with speed 8 -timestamp,angle(Radians),position(inches),speed(percentage) -16:06:21.067404,146.953125,-8.609375,8.000000 -16:06:21.172426,167.343750,-7.816406,8.000000 -16:06:21.277701,194.062500,-6.740234,8.000000 -16:06:21.382108,221.132812,-5.607422,8.000000 -16:06:21.487238,246.445312,-4.587891,8.000000 -16:06:21.591897,272.812500,-3.681641,8.000000 -16:06:21.696160,299.531250,-2.492188,8.000000 -16:06:21.800504,333.632812,-1.189453,8.000000 -16:06:21.905406,3.867188,0.056641,8.000000 -16:06:22.010322,27.773438,1.076172,8.000000 -16:06:22.115327,50.273438,1.982422,8.000000 -16:06:22.220967,310.078125,2.888672,8.000000 -16:06:22.325576,102.656250,4.021484,8.000000 -16:06:22.429865,131.132812,5.267578,8.000000 -16:06:22.534194,158.203125,6.343750,8.000000 -16:06:22.638637,183.515625,7.306641,8.000000 -this is a test with speed 9 -timestamp,angle(Radians),position(inches),speed(percentage) -16:06:31.031310,156.445312,-8.156250,9.000000 -16:06:31.135897,178.593750,-7.363281,9.000000 -16:06:31.240262,207.773438,-6.173828,9.000000 -16:06:31.344854,235.195312,-5.154297,9.000000 -16:06:31.449848,262.265625,-3.964844,9.000000 -16:06:31.554751,295.312500,-2.662109,9.000000 -16:06:31.659333,328.359375,-1.416016,9.000000 -16:06:31.764724,358.945312,-0.113281,9.000000 -16:06:31.870791,28.125000,1.076172,9.000000 -16:06:31.975477,51.679688,2.095703,9.000000 -16:06:32.080707,78.750000,3.001953,9.000000 -16:06:32.186322,107.578125,4.304688,9.000000 -16:06:32.290125,135.703125,5.380859,9.000000 -16:06:32.393809,161.015625,6.513672,9.000000 -16:06:32.497669,184.921875,7.419922,9.000000 -this is a test with speed 10 -timestamp,angle(Radians),position(inches),speed(percentage) -16:06:40.786494,165.937500,-7.816406,10.000000 -16:06:40.890933,189.492188,-6.966797,10.000000 -16:06:40.995809,220.429688,-5.664062,10.000000 -16:06:41.100863,251.367188,-4.417969,10.000000 -16:06:41.205687,169.804688,-3.115234,10.000000 -16:06:41.310919,318.867188,-1.416016,10.000000 -16:06:41.416911,7.382812,0.226562,10.000000 -16:06:41.521777,37.265625,1.472656,10.000000 -16:06:41.626084,63.632812,2.435547,10.000000 -16:06:41.730686,93.867188,3.681641,10.000000 -16:06:41.835368,129.023438,5.210938,10.000000 -16:06:41.939942,166.640625,6.513672,10.000000 -16:06:42.044809,197.226562,7.873047,10.000000 -this is a test with speed 11 -timestamp,angle(Radians),position(inches),speed(percentage) -16:06:50.543685,310.078125,-8.099609,11.000000 -16:06:50.648804,186.679688,-7.136719,11.000000 -16:06:50.753326,217.968750,-5.777344,11.000000 -16:06:50.857634,248.906250,-4.474609,11.000000 -16:06:50.962427,286.875000,-3.058594,11.000000 -16:06:51.068607,16.171875,-1.416016,11.000000 -16:06:51.174180,7.031250,0.169922,11.000000 -16:06:51.279678,39.726562,1.472656,11.000000 -16:06:51.384272,68.554688,2.718750,11.000000 -16:06:51.488482,103.359375,4.078125,11.000000 -16:06:51.593232,139.921875,5.607422,11.000000 -16:06:51.698487,177.539062,7.136719,11.000000 -this is a test with speed 12 -timestamp,angle(Radians),position(inches),speed(percentage) -16:07:00.197329,159.257812,-8.099609,12.000000 -16:07:00.301685,185.976562,-7.136719,12.000000 -16:07:00.406330,220.429688,-5.720703,12.000000 -16:07:00.511087,255.585938,-4.248047,12.000000 -16:07:00.616240,298.476562,-2.662109,12.000000 -16:07:00.721471,342.773438,-0.849609,12.000000 -16:07:00.826835,336.796875,0.849609,12.000000 -16:07:00.931624,55.195312,2.095703,12.000000 -16:07:01.035890,91.054688,3.511719,12.000000 -16:07:01.141184,145.898438,5.777344,12.000000 -16:07:01.245834,196.523438,7.929688,12.000000 -this is a test with speed 13 -timestamp,angle(Radians),position(inches),speed(percentage) -16:07:09.743638,153.632812,-8.382812,13.000000 -16:07:09.847816,182.812500,-7.250000,13.000000 -16:07:09.952134,219.726562,-5.664062,13.000000 -16:07:10.056729,256.992188,-4.304688,13.000000 -16:07:10.161448,304.453125,-2.378906,13.000000 -16:07:10.266560,354.375000,-0.339844,13.000000 -16:07:10.371654,30.937500,1.189453,13.000000 -16:07:10.477023,71.367188,2.718750,13.000000 -16:07:10.581384,120.585938,4.757812,13.000000 -16:07:10.685667,170.156250,6.796875,13.000000 -16:07:10.790022,215.156250,8.552734,13.000000 -this is a test with speed 14 -timestamp,angle(Radians),position(inches),speed(percentage) -16:07:19.597447,160.664062,-8.042969,14.000000 -16:07:19.702667,193.007812,-6.910156,14.000000 -16:07:19.808553,234.140625,-5.210938,14.000000 -16:07:19.913233,278.437500,-3.398438,14.000000 -16:07:20.018636,330.468750,-1.189453,14.000000 -16:07:20.123250,17.578125,0.623047,14.000000 -16:07:20.227511,56.601562,2.208984,14.000000 -16:07:20.331845,98.437500,3.908203,14.000000 -16:07:20.436379,148.359375,5.777344,14.000000 -16:07:20.541330,194.062500,7.759766,14.000000 -this is a test with speed 15 -timestamp,angle(Radians),position(inches),speed(percentage) -16:07:28.935194,159.609375,-8.099609,15.000000 -16:07:29.039480,191.601562,-6.853516,15.000000 -16:07:29.144157,232.382812,-5.097656,15.000000 -16:07:29.249377,281.250000,-3.398438,15.000000 -16:07:29.354193,340.312500,-0.962891,15.000000 -16:07:29.458554,26.367188,1.019531,15.000000 -16:07:29.563759,73.828125,2.492188,15.000000 -16:07:29.668658,116.015625,4.531250,15.000000 -16:07:29.773489,169.101562,6.796875,15.000000 -16:07:29.877867,215.507812,8.552734,15.000000 -this is a test with speed 16 -timestamp,angle(Radians),position(inches),speed(percentage) -16:07:38.582762,165.585938,-7.816406,16.000000 -16:07:38.688051,199.687500,-6.513672,16.000000 -16:07:38.792437,241.523438,-4.814453,16.000000 -16:07:38.897530,292.500000,-2.945312,16.000000 -16:07:39.003307,351.210938,-0.509766,16.000000 -16:07:39.108681,36.562500,1.472656,16.000000 -16:07:39.214399,81.210938,3.171875,16.000000 -16:07:39.319046,134.296875,5.210938,16.000000 -16:07:39.423418,189.492188,7.476562,16.000000 -this is a test with speed 17 -timestamp,angle(Radians),position(inches),speed(percentage) -16:07:48.023090,168.750000,-7.703125,17.000000 -16:07:48.128140,204.609375,-6.400391,17.000000 -16:07:48.232817,249.960938,-4.531250,17.000000 -16:07:48.337239,309.726562,-2.039062,17.000000 -16:07:48.443361,11.250000,0.283203,17.000000 -16:07:48.548089,58.007812,2.208984,17.000000 -16:07:48.652292,110.039062,4.361328,17.000000 -16:07:48.756551,170.156250,6.683594,17.000000 -16:07:48.862183,223.945312,8.835938,17.000000 -this is a test with speed 18 -timestamp,angle(Radians),position(inches),speed(percentage) -16:07:57.567597,157.148438,-8.156250,18.000000 -16:07:57.672093,195.820312,-6.796875,18.000000 -16:07:57.776988,246.093750,-4.644531,18.000000 -16:07:57.881749,307.617188,-2.152344,18.000000 -16:07:57.986505,11.953125,0.339844,18.000000 -16:07:58.091505,61.523438,2.378906,18.000000 -16:07:58.195897,120.585938,4.814453,18.000000 -16:07:58.300081,182.109375,7.136719,18.000000 -this is a test with speed 19 -timestamp,angle(Radians),position(inches),speed(percentage) -16:08:06.795459,149.062500,-8.552734,19.000000 -16:08:06.900815,190.195312,-7.023438,19.000000 -16:08:07.005599,248.554688,-4.587891,19.000000 -16:08:07.110350,318.515625,-1.755859,19.000000 -16:08:07.214857,23.554688,0.736328,19.000000 -16:08:07.319972,75.234375,2.888672,19.000000 -16:08:07.425617,139.218750,5.437500,19.000000 -16:08:07.530277,202.148438,8.099609,19.000000 diff --git a/System/Uploads/donovanTestScript.py b/System/Uploads/donovanTestScript.py deleted file mode 100644 index 4a51f08..0000000 --- a/System/Uploads/donovanTestScript.py +++ /dev/null @@ -1,81 +0,0 @@ - - - - - -import sys -sys.path.insert(0, '/home/pi/pendulum/System') -from System.system import System -import time -from sys import exit -#import pandas - - -### -sys.path.insert(0, '/home/pi/pendulum/System') -from encoder import Encoder -import RPi.GPIO as GPIO - - -clk_pin = 3 -cs_pin = 23 -data_pin = 2 - -e = Encoder(clk_pin, cs_pin, data_pin) -e.set_zero() -### - - - - -sys = System(angular_units = 'Radians') - -for x in range(4,20): - linear = 0 - - print("beginning of test with speed " + str(x)) - - while linear > -7: - sys.adjust(-5) - angle, linear = sys.measure() - print("Angle: " + str(angle) + ", Linear: " + str(linear)) - time.sleep(0.1) - sys.adjust(0) - time.sleep(3) - sys.add_log("this is a test with speed " + str(x)) - - while linear < 7: - sys.adjust(x) - angle, linear = sys.measure() - print("Angle: " + str(angle) + ", Linear: " + str(linear)) - sys.add_results(e.read_position('Degrees'), linear, x) - time.sleep(0.1) - sys.adjust(0) - print("end of test with speed " + str(x)) - time.sleep(3) - - -exit() - - - - - - - - -#class test(): -# def __init__(self, x, theta): -# self.x = 0 -# self.theta = 0 -# -# def getINFO(self, theta): -# #theta, x = self.System.measure() -# theta, x = self.sys.measure() -# -#while(1): -# test.getINFO() -# print("t") -# #print("theta",test.theta) -# #print("x",test.x) -# diff --git a/System/Uploads/upload.py b/System/Uploads/upload.py deleted file mode 100644 index 4a51f08..0000000 --- a/System/Uploads/upload.py +++ /dev/null @@ -1,81 +0,0 @@ - - - - - -import sys -sys.path.insert(0, '/home/pi/pendulum/System') -from System.system import System -import time -from sys import exit -#import pandas - - -### -sys.path.insert(0, '/home/pi/pendulum/System') -from encoder import Encoder -import RPi.GPIO as GPIO - - -clk_pin = 3 -cs_pin = 23 -data_pin = 2 - -e = Encoder(clk_pin, cs_pin, data_pin) -e.set_zero() -### - - - - -sys = System(angular_units = 'Radians') - -for x in range(4,20): - linear = 0 - - print("beginning of test with speed " + str(x)) - - while linear > -7: - sys.adjust(-5) - angle, linear = sys.measure() - print("Angle: " + str(angle) + ", Linear: " + str(linear)) - time.sleep(0.1) - sys.adjust(0) - time.sleep(3) - sys.add_log("this is a test with speed " + str(x)) - - while linear < 7: - sys.adjust(x) - angle, linear = sys.measure() - print("Angle: " + str(angle) + ", Linear: " + str(linear)) - sys.add_results(e.read_position('Degrees'), linear, x) - time.sleep(0.1) - sys.adjust(0) - print("end of test with speed " + str(x)) - time.sleep(3) - - -exit() - - - - - - - - -#class test(): -# def __init__(self, x, theta): -# self.x = 0 -# self.theta = 0 -# -# def getINFO(self, theta): -# #theta, x = self.System.measure() -# theta, x = self.sys.measure() -# -#while(1): -# test.getINFO() -# print("t") -# #print("theta",test.theta) -# #print("x",test.x) -# diff --git a/System/system.py b/System/system.py index 4db0755..49c35d2 100644 --- a/System/system.py +++ b/System/system.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -from System.motor import Motor -from System.encoder import Encoder +from motor import Motor +from encoder import Encoder import math from datetime import datetime from time import sleep diff --git a/Web b/Web index 830d43a..7c60786 160000 --- a/Web +++ b/Web @@ -1 +1 @@ -Subproject commit 830d43ae49d7088fed6a09b651c2fd885cbd70a5 +Subproject commit 7c6078644b72263fb5ef394a614a30f7b6b2293e diff --git a/test_script_results.csv b/test_script_results.csv deleted file mode 100644 index ea92e7c..0000000 --- a/test_script_results.csv +++ /dev/null @@ -1 +0,0 @@ -Negative hardware limit has been reached! -- cgit v1.2.3