aboutsummaryrefslogtreecommitdiffstats
path: root/System_Python/system.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-11-14Update initialize to not use wait_for_event for detecting limit switches. ↵Raspberry Pi1-17/+26
Update linear encoder to reduce noisy behavior and properly keep track of position. NOTE: Linear encoder direction seems to be backwards relative to the system (the motor currently also moves in this direction). Not a big deal as long as the motor and linear encoder work together properly, but ideally positive would be to the right.
2019-10-29Got limit switches working properly and tested. Got result file printout ↵Raspberry Pi1-7/+9
working properly. Other minor issues from merge conflict.
2019-10-29Add better limit handling to system: when a limit is triggered, return to ↵damic0142-0/+54
the linear-zero position. Add an initialize function for startup: use the limit switches to find the track extent and then go to zero. With the above two additions, we should be able to assume that new tests will always start at the zero position. Also add an initialize file which just calls sys.initialize to find the zero position. This should only be run on power-up (eventually, we should configure the Pi to run this on OS startup).
2019-10-17Add interrupts for HW limit switches.damic0141-4/+85
Add ability to add SW limits (challenge mode). Add result file reporting (currently using date-time for the test, which we can assume will be unique per test).
2019-10-15Measured linear movement from physical system. Slightly modified test_Motor ↵Raspberry Pi2-11/+9
to test on physical system.
2019-10-15Updated encoder for proper zero setting and offset behavior. Tested system ↵Raspberry Pi4-78/+83
library and successfully got the encoder position controlling the motor speed.
2019-10-15Add a linear encoder class for abstracting the angular-to-linear encoding, ↵damic0141-4/+37
which will be based on the specs of the system. This is the basic implementation we've talked about, but there might be some issues still because the position is only read when we tell it, so keeping track of number of rotations might not be very accurate - will need to test and possibly brainstorm alternate ideas.
2019-10-13Add System library and system test file. Still need to finalize some ↵damic0145-8/+93
implementation details (linear encoder, motor orientation, etc.). Need to compile and test on RPi still. Convert naming in other libraries to follow Python naming scheme.
2019-10-02Encoder classDat Nguyen2-54/+84
2019-10-01Delete Motor.pydamic0141-67/+0
2019-10-01Got encoder workingRaspberry Pi1-11/+14