Hi,
I'm looking to create a DIY version of the Clock Clock (https://clockclock.com/), and am after some much needed help in where to begin. (I have mucked around with Arduino, but not steppers or any large project - so let me know if I've bitten off more than I can chew... although I feel like large projects are the best place to learn the most).
There are 24 clocks, each with two stepper motors (one for each hand), and they will be driven in a similar manner to this https://content.instructables.com/ORIG/F7R/E67D/K9JI9Z4C/F7RE67DK9JI9Z4C.jpg?auto=webp&frame=1&width=1024&fit=bounds&md=43871eebf10f097326c95e594e0e5596. They would all need to move simultaneously.
My very basic approach at the moment is:
48x - 28BYJ-48 stepper motors, each with a single ULN2003 driver.
an Ardunio (mega or uno?)
48x - hall effect sensors to calibrate the position of the hands at startup.
48x - 74HC595N shift registers
a RTC module to hold the time
What is the easiest and cheapest way to control 48 stepper motors simultaneously with an Arduino uno/mega. I've read it could be possible with shift registers (74HC595N)? How would you go about this project?
At this stage I wouldn't worry about doing the visual effects, only showing the time. I thought it would be a simple process of storing the current step position of each hand (saying vertical up is 0), and then the future 'step' position of each hand in the next minute (ie stepper has 2048 steps, so a hand pointing at 6oclock would be position 1024, and hand pointing to 3 o'clock would be 512). And then every minute, moving each hand the required steps clockwise and updating the current and future position.
Basically is this possible with the Arduino? I was thinking an Arduino Uno, with 9 of its pins connected to 3 shift registers, each one being daisy chained to 7 other shift registers. Each shift register would be connected to 2 stepper drivers. This would give me 192 output pins, whilst only using 9 pins of the Arduino, which is the required number for the 192 (48*4) pins required for the stepper drivers... Is this possible, or will it somehow blow my Arduino?