Hey there all,
I have some mini coin motors about the size of a pea for each motor.
Each motor takes 3V to spin maximally. The direction of the spin doesn't change much here so I'm not worried about it (no H bridge if possible)
I've been wondering how to control hundreds of DC motors with some sort of decoder chip set up (only a few digital pins to have 2^N bit values)
This is a pretty open ended issue so any solutions that are cheaper than getting a board with hundreds of PID outputs (extremely expensive).
The goal here at the end of the day is the motors will be configured to run as one motor always being the center of other motors in the matrix, and sharing ON/OFF time for a percentage of a 100ms timeframe.
For example a 3x3 matrix, the central motor runs for about 76ms, and the other motors run for 3ms each.
Thanks!
EDIT: Added context from below
Alrighty to be more specific this matrix is imagined as a 2d matrix, but it will not be a perfect rectangle
This project has to do with a haptic suit I am designing where in by the user while in virtual reality can have other users interact with them via virtual points that correspond with a point on the body (or a point in the matrix)
For example, on my right arm I plan to have 100 motors from my fingertips to my shoulder / armpit
The motors on how they run should be strongest at the point where something is touching their virtual body, and like normal touch the nearby motors will be less intense.
To simulate this touch intensity, I would want to run motors for a certain percentage of a set cycle of time, for this case to be undetectable by the user 100 ms intervals are the highest we want to go.
Each motor will run in correspondence with the location being touched in VR on this uneven matrix wrapping around the arm.
It's an interesting project to say the least, my friend and I working on researching the shortcomings and hurdles found that it would be cheaper to use one Arduino if possible, and use digital outputs to an encoder to interact with the motors. No need for an H bridge or bidirectional control as we are simulating PWM with programmed clock intervals instead of using a PID output which gets expensive. Digital only.
Essentially the gross oversimplification of two problems is what I need to solve first I need to make sure I can access every single motor individually preferably via some sort of binary value
The second objective is with the ability to access every motor individually I should be able to activate half of all of the motors at the same time at full power if that is even a possibility minimally a quarter if I can only do one at a time and it's impossible to do it any other way without breaking the bank then we'll look into those solutions