Hi!
I've got an idea that involves a whole bunch of solenoids, I was thinking 200 of them, set up in a 10x20 matrix, each one making up a "pixel". Now I'm still learning electronics, but I've tried to do my homework before posting as best as I could and I'll try to make my questions specific. That being said, bare with me if I'm coming across newbie, ok?
Now, I looked into how solenoid actuators work and it seems that they are usually pulled/pushed back into their "off" position by a spring, so they need to be energised for as long as they are to be in one of their possible two states. And solenoids that can be on for long periods of time are usually big and more expensive. For my setup, the solenoids need to be able to remain in either state for any amount of time, so I thought that the whole spring mechanism only seemed to complicate things and waste energy.
Then I read about "latched" solenoids that are springless and remain in position by a permanent magnet mechanism, but really I don't think I even need that. If I rig up the matrix standing so that each solenoid is horizontal, they won't have to hold against even gravity once moved into either state, right? They'd be held in place by mere friction.
So, in that case my solenoids could just be a coil and a plunger, I thought. They wouldn't have to apply very much force when energized either. Just a square piece of styrofoam, painted or paper-sheeted, say 10x10 cm, attached directly to the plunger would do. So just enough force to move the plunger with styrofoam on it 3-5 cm would be enough, haven't calculated it in newtons but you get the idea? Is that a long stroke for a solenoid given that it's springless?
Now, I realize that to move a solenoid from one state to the other and then back again, I would need to reverse polarity on the coil, or have two coils for each solenoid with different polarities. I found that a H-Bridge Motor Driver like L293D or SN754410 (H-Bridge Motor Driver 1A - COM-00315 - SparkFun Electronics) could be used to reverse polarity. Those could in fact control two solenoids each. And if I understand it correctly, I wouldn't have to use any other transistor to do the current switching either. Am I wrong here? Is this IC unsuitable for any other reason? I guess it would depend on the current needed, I'll come back to a question on that.
I'd need two pins for each solenoid, so we're talking 400 pins here. 400/8=50 shift registers with 8 bits each. Could I pull that off on an Arduino Uno? How many of those can be chained really? Maybe the clock pins could all be connected to the same Arduino output pin? 5 chains with 10 shift registers each?
Time delay due to lots of shift registers wouldn't be a big issue as I see it. I would want to update the matrix at some not-so-tight time interval. Every solenoid would seldom have to change state every update, but the ones that change should all do it at the same time. So between updates, I'd switch off the enable pins on all H-bridges, take whatever time needed to shift in the control bits for the next update, then enable all at once for as long as the solenoids need to change state, then turn off all enable pins, and so on. If I connect 200 enable pins to a single Arduino output pin like that, would that require a transistor?
Now as for the solenoids: I haven't done much in-depth research on coil construction (sorry) but I've seen plenty of YouTube examples that it can be done. Given the parameters given before, what wire dimension, number of turns, and plunger would you recommend for a DIY solenoid here? Are we talking 10 turns, 100, 500? I have pictured a coil would around a piece of drinking straw with a thin iron nail inside, but maybe it's not that easy even with these low demands? I also don't quite understand how to think of current and resistance when it comes to coils, generally. It's DC, so a coil is pretty much a short circuit, right? Does that mean the current will be through the roof? Should there be a resistor involved? The H-bridges mentioned are for 1A max, but there might be sturdier ones.
My apologies for the wide questions in that last bit, but most tutorials don't go into the details, and are for single coils with higher demand parameters.
Are there things I haven't thought of here, or more parameters needed to answer my questions?
All constructive feedback is most welcome.
Thanks in advance,
Erik