Close

Solenoids, please

A project log for CableEnable Punch!

Interactive 20x20 board with lifting voxel cells, each featuring a 4x4 RGB LED matrix, controlled by Arduino Nano

dima-matasovDima Matasov 05/09/2024 at 03:340 Comments

The last couple of days I spent in a war with solenoids and I must say, I was completely losing to them :)

I tried several designs: with one and two coils, with different magnets, and with springs/rubber bands. Eventually, I think I've found a working solution, but I was on the verge of giving up to the damned physics and throwing in the towel haha. Along the way, I remembered how to solder steel using aspirin: it smells quite strongly...

So, conclusions:

I also experimented with the number of turns of the solenoid and came across an amusing paradox:

  1. The magnetic field strength of a solenoid B = u(N/L)I where u is the relative magnetic permeability, N is the number of turns, L is the length of the solenoid, I is the current.
  2. I = V/R according to Ohm's law, and R is directly proportional to the length of the wire, that is, the number of turns. I ~ V/N

we get that B ~ u(N/L)(V/N) = u(V/L) basically, no matter how much you wind - it’s all the same hahaha whether 1 turn or 1000. When I came with this question to GPT and asked it to draw a graph of the optimal number of turns for my parameters, it reasoned in the same way and drew me a constant :D

Fortunately, good old googling threw me this wonderful post on Reddit: https://www.reddit.com/r/ElectricalEngineering/comments/5rc0y4/calculating_the_ideal_number_of_turns_to_maximize/

In short, we forget about 2 important assumptions:

  1. Actually, we forgot about the internal resistance of the power source in this equation: B ~= N/(Rinternal + kN). okay, we already get a curve asymptotically converging to a constant - at least intuitively understandable
  2. And while we're winding, we're increasing the diameter of the circles. that is, the resistance per circle grows faster than the strength of the magnet and the curve actually has an extremum.

Another funny conclusion from the first equation - winding the coil lengthwise seems useless! (doubling the number of turns wound one on top of the other, we double the length of the solenoid, the twos cancel out, hehe) the most effective strategy - winding a single wire thickness spiral! but the problem with that is that such a spiral will have a very very low resistance and a hellishly huge current will flow through it (if found) and burn it :) so the length of the coil actually regulates its energy consumption. All other things being equal, a long coil with higher resistance and a smaller current is more efficient than a single-wire spiral.

Here's a solenoid force calculator I made :)

I put together a working prototype of one voxel. At 24V power, it manages with quite short current pulses, but if you jerk it back and forth, it heats up significantly. Perhaps it's worth considering temperature control.

Also, I learned about PCB solenoids / PCB motors while figuring all this out. Perhaps this is a decent way to further miniaturize the entire construction https://www.youtube.com/@CarlBugeja

And one more: I recently stumbled upon a project very similar to mine on hackaday: https://hackaday.io/project/191181-electromechanical-refreshable-braille-module

Amazing tiny stuff here, kudos!

Discussions