For the Almabraxas boat, I dropped the idea of using a rudder in favor of a differential thruster system, because I think the rudder control mecanism is too complex, both from the mechanical and waterproofing point of view. However, since I had selected some components, I built a control card, just for training. We can see the result is quite simple.
It’s really an actuator and the servo part is done “by hand” using the nano. The actuator ships with a potentiometer attached to it, so you can sense the extension length.
Although there are some small integrated linear servos (such as Firgelli’s), it’s more difficult to find big ones. This one can extend to 30cm, which you may think as big if you see what’s on the market, but small if you consider the need to steer an approximately 1 x 2m boat. I found this one through Aliexpress from Chinese company Sky Land Linear Motion Technology Co., Ltd., which I found very helpful and competent by the way. It can handle 24V, but for now I’m using only 12V, because I’m powering the electronic part from the H-bridge board regulator, which can only work until 12V in my understanding. The actuator maximum traction strength is 1000N.
The H-bridge breakout board is controlled by an Arduino Nano, which reads the voltage from the actuator potentiometer, converts it into centimeters and drives the motor with 2 digital lines. Note that the calibration (conversion from ADC reading into mm) is different if the nano is powered by USB or the board’s regulator. For this demo, it only extends and retracts the servo.
The display is an Olimex one. It needs both 5V and 3.3V, so the 3.3V is provided by the Nano. On the display, you can see an arrow showing the direction, the raw value read on the ADC, the conversion in mm, which is the actual extension of the actuator, and the target extension, in mm.
I built the card on a simple perfboard. The breakout boards are mounted on headers for the sake of reusability ! Except the H-bridge one, for which I haven’t drilled the board yet.