Synchronise Two Linear Actuators

S2 Lotus Exige RGB Special - a proper mid-life crisis car :rofl:

In the short term, can I add a resistor to the DC motor and therefore slow the motor to match the other one?

I've got a huge stack of resistors but I'm not sure where to start when it comes to choosing the right one(s)

:wink:

in 10 years it will be doing something good for the planet...

You're probably not going to be able to fix this by adding resistors to the motors. The misalignment is very small so you will need extremely tight speed control and I don't know any way to get that reliably without feedback, e.g., encoders or potentiometers on the actuators and that adds a lot of complexity.

What you're doing is not easy with DC motors. Driving multiple parallel rails can be done with steppers (some 3D printers are like this) because they move a fixed distance every step. But even there you have to be aligned properly.

It's a lot easier to drive from the center, or add some "slop" to the system like I mentioned by adding bushings to let it flex a bit. Personally, driving from the center between the end rails is how I'd approach the problem.

You could try putting both actuators on the same side and that may work better. However, now you may also cause the canopy to "cock" slightly and then it jams again.

Just a concept, not fully developed:

Place a tof sensor on the faster side, fixed to the canopy. Place a series of targets on the slow side - also fixed to canopy. When near target (orange) is seen canopy is level. When far target (green) is seen sensor is above or below desired point. If travel direction is up and green target is seen stop sensor travel until orange target seen again. Lather, rinse repeat 'til top of travel reached.

image

1 Like

You can also try lifting the 2 sides synchronously with a mechanical solution.
A rope or band guided over rollers no longer leaves the two actuators any freedom.
If someone wants to run faster, they are slowed down by the other side and thereby support the other side.
Both sides are therefore positively guided.
The principle can also be extended to all 3 legs.

1 Like

How about using 2 seperate motor controllers. Use 2 x BTS7960s

Drive the slow actuator at full rate. Lower the duty cycle of the faster motor under load until they match.

I would like to see a top view diagram of how your actuators and guides are arranged. The photograph does not make clear where everything is. I suspect the slow actuator is carrying the majority of the load and will wear prematurely due to that. I don’t want to make that call without more information though.

Requires some mechanical ability but.......open the gearbox end of the actuator.
Add a hall effect with a magnet attachted to it's back and mount inside the gearcase in such a way that it counts to output shaft gear........compare to two signals....adjust via uC as necessary...done.

Above assumes metal gears...if nylon, add a series of magnets to the nylon gear around the circumference. I use M3 x 1mm rare earth magnets here for ignition systems so should work for you.
Allegro A3144 or equivalent.......there are actually hall effect modules available as cheap as on Ebay etc. KY-003

Hi,
I don't think you have limit switches on you project to detect fully up and fully down on each of your actuators.

This will be essential to make sure when you start a movement, you know where the actuators are. That is both in the same position and to stop movement to begin in the wrong direction.

Tom.. :grinning: :coffee: :australia: :+1:

See this project:

The lidars are measuring the lean angle of the bike, almost exactly what you need. The use PWM or some motor controller to match the speed of the actuators.

I have a motor speed controller and in testing with a spare actuator, the amount of control gives me a lot of confidence. So, I've just purchased two BTS7960 and I think I can 'calibrate' the system enough with a couple of potentiometers too. Fingers crossed.

Many thanks

Great!

The pins for control on the bts7960 can be a little confusing

Gnd - to arduino ground

5v - pretty obvious

R_EN and L_EN. These need to be tied to 5v. You would think this switches the direction of the motor, but instead its simply the input to the line driver chip

RPWM and LPWM. These controls the direction. AnalogWrite 0 to the direction your not using and between 0 and 255 to the other one

You want to make sure your analogwriting 0 to the direction your not using before you write to the direction you want.

R_IS and L_IS. Typically you dont need them. You can use them to sense the current draw from the motor controller. If your actuators dont have inbuilt end stops you could potentially use these to measure a currrent spike to figure out when your at the end of limits. There is a seperate pin for each direction, as lifting the actuators is going to draw more current than lowering them.

Project update:

The prototype has been working for the last week and performs well'ish. I moved away from the potentiometer idea opting for a Bluetooth solution, using the Serial Bluetooth Terminal app to send quick commands 'Up', 'Down', 'Speed Up Left', etc.

The only problem I have is sometimes the commands are ignored, I am not sure if this is a Bluetooth issue or my code. Typically, it was faultless when on the bench and only started playing up once installed. I'll investigate more on version 2.

I'm also using cheap Chinese components and personally, every project I've made has stopped working after several months due to faulty hardware. So version 2 will use better quality components and I'm swapping the 2 motor controllers for a single dual channel for a cleaner install.

I'm really enjoying this project and still plan to install a couple of distance sensors to automate the speed in the future.

Other ideas include...

  • Position state feedback, (Bluetooth or LED light) so I know when it is safe to reverse in.

  • High-frequency pitch to scare away the cats - it's a great place to sleep for our furry friends but the dirty paws and blanket of hair drive me crazy!

Thanks for all your help so far :slight_smile:

1 Like

Please let us know how that dual controller works out. I have a project that uses two of those BTS7960 boards and while it works fine, I just noticed that they are NRND (Not Recommended for New Designs) and I may have to build a number of these. Also can save space by using one board.

Do you know what driver chips it uses?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.