COMMUNITY : FORUMS : TECH


Request: How to wire a Firgelli L16P to an arduino

Hi, everybody.

If you followed my instructables you know I'm always building robots.  I'm trying to assemble a Stewart platform using Firgelli L16P linear actuators.  My problem is that I can't seem to get the Arduino PWM to talk to the firgelli RC servo interface.  I have...
- 12v running to controller pins 1 (-) and 2 (+)
- arduino PWM pin 3 to controller pin 3
- controller pin 1 to arduino GND (for common ground)

and I'm running a version of the servo sweep example sketch, modified to run on pin 3.
The actuator doesn't move.

I've tested the control board with the PC control software from Firgelli (works) and I've tested the arduino with a TowerPro SG5010 I had lying around (also works).

Notice the controller LED will NOT come on in this configuration, but once I remove the common ground the light turns on.

So what am I missing?

sort by: active | newest | oldest
aggrav8d (author) says: Sep 8, 2011. 8:50 AM
So it turns out the problem was pin 3 on my arduino, which appears to be dead. when I tried on another pin everything was fine. Bah!
jpf56z says: May 6, 2012. 8:53 PM

hey, i am using a l16p,Firgelli Linear actuator and wired it up the same as you did. I am trying to make it sweep out all at once and retract all at once. However it sweeps out in increments and also retracts in increments. It's not all in one motion. Any ideas what this could be?
aggrav8d (author) says: May 6, 2012. 2:06 PM
Can you please throw a video on youtube so I can see what you mean? Thanks.
jpf56z says: May 6, 2012. 9:13 PM
I am reading on the comments below and do you believe that my problems could be that i am using the servo library to control the actuator? Would posting my code also work? But i will also be posting up a youtube video so that you can also see.
aggrav8d (author) says: May 6, 2012. 3:05 PM
The more information you can provide, the better. Use Pastebin for your code. I might copy your code & video link to my blog, if that's ok with you.
jpf56z says: May 7, 2012. 4:00 AM
This is the youtube video demonstrating how the actuator extends and retracts in increment.

http://www.youtube.com/watch?v=1Wtb4oZuYog

The code is the following:

http://pastebin.com/JgeVa9E7

Hope this helps and you can help me out. Thanks
jpf56z says: May 6, 2012. 10:36 PM
Yeah that's fine with me. Im sure it something with my code im just not sure what it can be i used the sweep example sketch and there is movement. I modified the code so that it simply extends and then retracts.
steveastrouk says: May 7, 2012. 5:34 AM
You have a delay between the 150 and 30 move, but not between the 30 and150 move. I suspect that upsets the electronics.
aggrav8d (author) says: May 7, 2012. 9:01 AM
This seems like the mostly likely cause. The travel time from fully extended to fully retracted is about 5 seconds. If you only had one write in there it would probably move smoothly all the way.

http://www.marginallyclever.com/2011/10/controlling-your-arduino-through-the-serial-monitor/

The code in the link above will make it easy for you to type commands that can be followed by the arduino. Try to connect it to your servo.write and then you can make it go where you want and see how long it takes to respond.

Let me know if that helps.
jpf56z says: May 10, 2012. 1:54 AM
So I finally figured out what the problem was. The speed potentiometer on the LAC board was turned counterclockwise to the slowest speed. After turning the potentiometer clockwise to a faster speed, the issue was resolved. The actuator moves much faster and smoother now.

Than you for the help aggrav8d and steveastrouk.
brittohalloran says: Aug 25, 2011. 11:36 AM
You didn't say it explicitly but I think you're trying to use the arduino servo library, which is wrong. This Firgelli controller board is going to handle the servo output for you, you just need to feed it 0-3.3V (analog) or 3.3V, 1kHz PWM (digital). The arduino servo library is meant for connecting directly to a servo.

I think the very last section ("Control Modes") of this PDF will help you:
http://www.firgelli.com/pdf/LAC_datasheet.pdf
brittohalloran says: Aug 25, 2011. 11:46 AM
So I think your wiring is correct, just try an analogWrite(pin,value) on pin 3:

analogWrite(3,255); // fully extended
analogWrite(3,0); // fully retracted
analogWrite(3,100); // partially extended
brittohalloran says: Aug 25, 2011. 11:48 AM
BUT arduino is 5V and firgelli is expecting 3.3, so analogWrite(3,168) is full open
aggrav8d (author) says: Sep 8, 2011. 8:50 AM
The linear control board is 5v.
steveastrouk says: Aug 14, 2011. 2:13 AM
Got an oscilloscope ?
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!