Matt McWilliams
|
1056e81b82
|
Fill out EncoderMotor methods and add variables to be used to calculate position + speed and used for PID. TODO: rename class because it is not a generic EncoderMotor class, should instead be DriveMotor.
|
2024-02-17 13:05:43 +00:00 |
Matt McWilliams
|
1c1978107d
|
Move all ramp variables to class members. To move the ramp behavior to the Loop() method there will need to be a global timer.
|
2024-02-17 12:17:26 +00:00 |
Matt McWilliams
|
344e1e8d1d
|
Implement pwm ramp up with ledcWrite(), not analogWrite(). Use directional pins to start in particular direction and stop in both. Ramp behavior should move to loop so that it is not blocking loop behavior.
|
2024-02-16 18:57:57 -05:00 |
Matt McWilliams
|
899b52777a
|
Assign pins to the correct pins for motor control
|
2024-02-14 22:24:18 -05:00 |
Matt McWilliams
|
fe532a1f65
|
Start claiming pins
|
2024-02-11 11:49:46 -05:00 |
Matt McWilliams
|
bf48f52333
|
Pass all Setup() and Loop() methods into Arduino setup() and loop() functions.
|
2024-02-03 16:35:29 -05:00 |
Matt McWilliams
|
eb3c920d2d
|
Project compiles now with scripts/compile.sh and in the IDE
|
2024-02-01 11:40:38 -05:00 |
Matt McWilliams
|
6321367c97
|
Create EncoderMotor.cpp. Compiler error on analogWrite using ESP32 build target. Without it the ledc* functions are unavailable. Will pull ESP32 build process over from meterlite.
|
2024-01-31 23:08:10 -05:00 |
Matt McWilliams
|
20d37eb1e6
|
Add header file for a motor encoder class.
|
2024-01-30 22:37:02 -05:00 |
Matt McWilliams
|
a9944f5a47
|
Caught the error that was making me think I broke my ESP32 dev boards. The ledcWrite() duty cycle was not being set on the pwmChannel. This is intended for LEDS but I don't know if it matters that it's being used for a variable speed DC motor.
|
2024-01-30 00:12:36 -05:00 |
Matt McWilliams
|
11026922ad
|
Bevel the sprockets and add reinforcement to let a bearing fit without issue.
|
2024-01-25 19:47:32 -05:00 |
Matt McWilliams
|
de1ef1492b
|
Fix calculate fps, find PWM value that (under no load) is roughly 24fps, calculate rolling fps (very inacurate) ready for analysis in notes and PID implementation.
|
2024-01-22 21:31:08 -05:00 |
Matt McWilliams
|
d96e0d30b3
|
Check against rotations.
|
2024-01-22 11:42:21 -05:00 |
Matt McWilliams
|
78fb25b5a1
|
Calculate all frames
|
2024-01-22 11:40:10 -05:00 |
Matt McWilliams
|
b32f6ad476
|
Fix the calculateFPS function
|
2024-01-22 11:39:27 -05:00 |
Matt McWilliams
|
ec5915a6f9
|
Start calculating based on pulses, not on incrementing outside the interrupt
|
2024-01-21 22:32:28 -05:00 |
Matt McWilliams
|
5282fbec1c
|
Update the esp32 poc to reflect what it is.
|
2024-01-21 22:27:40 -05:00 |
Matt McWilliams
|
d1302e79fd
|
Sketch has been updated to do monitoring of multiple rotations, active monitoring of number of estimated frames. Currently not registering the first ~910 pulses (why??)
|
2024-01-13 23:29:25 -05:00 |
Matt McWilliams
|
86b41954a5
|
Found ratio, seemingly 11PRR x 62:1 motor gearbox.
|
2024-01-13 01:33:07 -05:00 |
Matt McWilliams
|
6eb06ca724
|
Proof of concept encoder analysis. Still to not have a solid gear ratio but it's clear the encoder is very likely 11 PPR. Rotations take ~650 pulses, maybe 660 but it's hard to tell because the gearing makes stopping inconsistent.
|
2024-01-12 23:33:04 -05:00 |
Matt McWilliams
|
d512a56b03
|
Arduino sketches, proofs of concept for different features
|
2024-01-11 23:14:02 -05:00 |
Matt McWilliams
|
abc2054600
|
Define IO behavior
|
2023-05-25 10:40:02 -04:00 |
Matt McWilliams
|
7dc33b5dc1
|
Rough draft of new contact printer library and class layout.
|
2023-05-25 08:32:42 -04:00 |
mmcw-dev
|
41facffab0
|
All contact printer work to date.
|
2018-07-14 10:29:43 -04:00 |