Hey, I'm new here and pretty new to Arduino as a whole. I'm a sound and light artist and I'm starting to plan out a project in wich I need to able to control two rings of 16 small gates that I want to be able to control using my max/MSP patching.
So I started looking into what motors I could use for this project and realized I needed something quiet, small, inexpensive and fast. I was recommended to use the x27.168 or the VID29 stepper motors. They seem good because they are quiet and inexpensive, and I believe they might be fast enough since I won't need to use more than half a revolution of the motor for my application. Steppers seem to mean a bit more work to use many of though rather than just using the Pimoroni Servo 2040 that I looked at first. But servos are just so damn loud...
So my question is;
How would I go about controlling 32 stepper motors for my project? I need to have individual control over them but the gates that they should move are just small plastics so the torque doesn't need to be high.
I really appreciate any help!
I plan to attach a small arm to the rotor of the motor, and to that arm another arm attached to the gate - in this way convert the rotation to linear motion. The gate will slide up and down in small tracks on its sides.
Hope that is clear - English isn't my first language
so, if one mini MCU(ATtiny13A ?) with appropriate driver and silent motor are made as a independent module you may send some trigger signal to that MCU and it execute open/close move without necessity of main MCU observe pins/timing/states/etc.
Yes my thought was that I'd like to have a somewhat smooth open and close motion with the possibility of having the gate not fully open or closed. I don't know how many steps that would mean but the resolution doesn't need to be that high. Let's say 10 just to get a number
Oh so you mean to have a separate mini mcu+driver setup for each gate? I hadn't thought of that. Would that mean I would only get two positions then, open/close? How would I then go about connecting all the mcu's to my computer?
If the gate is just open or closed, then a much simpler mechanism is possible.
But if you want intermediate position control, you could take some ideas from Daniel Rozin's wooden mirror project. He started with servos, which are much easier to control, but break rather quickly, so he used steppers in the final product.
you should decide, then build sketch to this needs.
members of the same ring can be connected together as an RS-485 network (or possibly DMX512 ?) and main MCU can re-translate commandos to UART-USB converter and back.
I'm aiming for several steps for the gates, otherwise I think I would have gone with linear solenoids.
Thank you, I'll have to look more into RS-485 and DMX512 to see if it's a fit. Would you say the mini mcu way of doing this involves more advanced work that might be tricky for a newbie like me? I'm asking since I don't know how much work it would involve
Rozin had posted several long, detailed videos on YouTube showing the entire design process, starting with servos, then replacing them steppers, code, etc. But I can't find them now, except for this video from Wired, which has some of the details: https://www.youtube.com/watch?v=kV8v2GKC8WA&t=27s
Maybe you could write to him and find out if those are still available. However, others have made larger scale art projects using similar approaches. A google search turned up several interesting actuators, like this: movable mirror magnetic actuator
In your mental designing, remember to set EACH stepper to a known, home position before beginning to move to any new position. You need to be able to count the steps needed to move a stepper to a new position.
So I read now that the analog pins of an Arduino can be used as digital outputs as well. That would mean that the MEGA can get 70 digital outputs no?
If I then control the x27.168 steppers with A4988 drivers, I should only need two digital outputs per driver apart from the logic power.
Would that mean that I could control all 32 steppers from one Arduino MEGA directly?