Commit Graph

190 Commits

Author SHA1 Message Date
Matt McWilliams 7981250d5a Changed from dev mode to working mode. Lamp turns on after 24 frames. Will make it configurable. 2024-02-24 14:04:16 +01:00
Matt McWilliams 39650094bd Code is in test mode for getting approximations of the motor speed with no load, under single strand of film load and with 2 films. Should be possible to create a control loop to maintain a roughly-accurate speed. 2024-02-23 00:31:14 +01:00
Matt McWilliams 8efa6cea8a Moved all proof of concept sketches into ino/demos 2024-02-22 10:49:54 +01:00
Matt McWilliams f9803d2648 Add proof of concept blink script for wiring the lamp to be driven by +5V and the TIP120 controlling 3 LEDs at once. 2024-02-21 22:54:46 +01:00
Matt McWilliams 7c8be86fb8 Motor speed is now calculated (flawed). Tests can be run on various PWM speeds, resolutions and with and without loads to determine the ability for the printer run at maximum speeds. 2024-02-21 22:48:08 +01:00
Matt McWilliams d0e0ca2f7a Update README to credit Clyde for the magnetic takeup. 2024-02-21 19:27:50 +01:00
Matt McWilliams d94aa5373f Update README to better reflect current state of the project and add Acknowledgements section. 2024-02-21 19:25:37 +01:00
Matt McWilliams db1f8c4100 Make some sacrifices in the DriveMotor class to make it non-generalizable. Working towards porting timing functions from encoder proof of concept sketch. 2024-02-21 16:47:53 +01:00
Matt McWilliams 1aca2dd5c0 Motor behavior is stable. Discarded one of the L298N boards: now we can run the drive motor off one channel and both takeup motors off another. DO NOT USE LESS THAN 2A. Using 1.3A the motor controller board draws too much and shuts it down. Removed the rerences to Picture/Stock and am just using takeup. All progress at Worm. 2024-02-20 22:11:13 +01:00
Matt McWilliams a39ba5c94d Test second set of pins 2024-02-20 12:17:39 +01:00
Matt McWilliams 0dc3269b31 Fixed the pinouts for the drive motor. Temporarily disabled takeup. 2024-02-19 13:35:27 +01:00
Matt McWilliams 6869b6f403 Add Serial output for debugging 2024-02-19 13:28:16 +01:00
Matt McWilliams 93a4418545 Re-arrange pins 2024-02-18 16:48:59 +01:00
Matt McWilliams 6ab151a664 Add placeholder jog_motor sketch in case motors need to be adjusted during use. 2024-02-18 10:34:19 -05:00
Matt McWilliams faf54221f7 add the gate holder to the lamp 2024-02-18 10:33:24 -05:00
Matt McWilliams 2401fcf8e7 Create the Lamp class which will abstract to different lamp types before one is settled on. 2024-02-17 14:57:26 +00:00
Matt McWilliams ce910d66b4 Remove pre-commit hook for now. Cannot access requested commit message so it won't do what I want 2024-02-17 14:20:32 +00:00
Matt McWilliams e1f6085b87 Add variables for setting the target fps and rpm 2024-02-17 14:18:06 +00:00
Matt McWilliams 5134038ac5 Add a placeholder git pre-commit script for executing versioning rules 2024-02-17 14:16:57 +00:00
Matt McWilliams db21753d71 Add the version.sh script for incrementing semver number on changes 2024-02-17 14:16:01 +00:00
Matt McWilliams 6205cef7f1 Add version file and VERSION constant to project 2024-02-17 14:00:10 +00:00
Matt McWilliams c036aad6cb Rename classes and constructors from EncoderMotor to DriveMotor. 2024-02-17 13:09:20 +00:00
Matt McWilliams 937cb85141 Rename encoder motor files drive motor (still broken). 2024-02-17 13:06:51 +00:00
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 f455a6d707 Extend the height of the esp32 posts 2024-02-11 12:55:08 -05:00
Matt McWilliams fe532a1f65 Start claiming pins 2024-02-11 11:49:46 -05:00
Matt McWilliams 7ee292e6ce Add the electronics mounting panel for the 2 L298N modules and the ESP32 dev board. 2024-02-11 09:39:57 -05:00
Matt McWilliams 990dd83da1 Fixed corner module 2024-02-07 23:42:25 -05:00
Matt McWilliams bb9f3bf33a Refactored takeup panels. Bolts are properly positioned. Adjusted rounded corners. 2024-02-07 23:42:11 -05:00
Matt McWilliams 0e52bd9dda Work on frame and panel refactor. 2024-02-05 23:12:50 -05:00
Matt McWilliams 4917080517 Frame has been resized and new panels have been drafted. Still not perfectly parametric and the const variables are getting out of hand. Needs a refactor at the top and then throughout panel modules first, removing magic numbers. Rounded panel corners at frame corners (one per panel). Printing this draft for possible revision if needed. 2024-02-04 23:33:15 -05:00
Matt McWilliams 12eceab361 Adjust the bearing position on the inverted roller. 2024-02-04 21:50:07 -05:00
Matt McWilliams 670296e5a8 Make a draft of the sprocketed roller that is the sold, invert version of the one with top sprockets. 2024-02-04 18:42:14 -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 ffbbb7c3ce Work on frame resizing. Still trying to massage reel distance without cutting aluminum. Wanted to do it tomorrow but will wait until next week after doing tests this weekend. MAYBE: a module that generates a tool for generating a guide that shows how far reels will sit from one another. 2024-02-02 00:25:51 -05:00
Matt McWilliams e90e5f4ae0 Move old design files to scad/old, don't just tag in the name. 2024-02-02 00:24:32 -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 03e8df9617 Ignore bin dir 2024-02-01 11:39:22 -05:00
Matt McWilliams 6a1dd305ce Move build script to scripts/scad and update submodules with a script as well. 2024-02-01 10:42:51 -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 2ce1aa54ed Update text files 2024-01-28 15:49:31 -05:00
Matt McWilliams fbcd5776ee Re-render all current parts before major overhaul of frame dimensions. 2024-01-28 15:49:17 -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