Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Electrical (http://www.chiefdelphi.com/forums/forumdisplay.php?f=53)
-   -   Use of Arduino to control a Spike Relay (http://www.chiefdelphi.com/forums/showthread.php?t=95974)

Ether 05-07-2011 17:25

Re: Use of Arduino to control a Spike Relay
 
Quote:

Originally Posted by docdavies (Post 1067994)
Ok, I'm almost crazy enough to laugh and cry at the same time. In the following reference:

http://www.vexrobotics.com/217-0220.html

They say, "It (the spike relay) can not be connected to an R/C hobby type receiver".

Then lower in the specs they say, ---- "Control Signal:Hi: 3V min @ 4mA; Lo: open or ground."

Given the context, when they say "It (the spike relay) can not be connected to an R/C hobby type receiver" I believe they are simply emphasizing that the Spike input is not PWM.

http://www.pololu.com/catalog/product/752



Al Skierkiewicz 05-07-2011 18:35

Re: Use of Arduino to control a Spike Relay
 
Doc,
I checked with an NI rep on this issue and although the individual outputs can handle higher current, NI recommends users stay with the 2 ma spec for source current.
The IFI spec of 4 ma and 3 volts sounds just about right as minimums. Typically this will be higher current when energized from a 5 volt driver. Typically I would expect 5-10ma depending on the series resistor that IFI chose in this design.
I didn't have a chance to check the higher current spec earlier but it relates to the maximum input current of an opto-isolator. Anything above that current will destroy the LED inside.
According to TI, the chip maker, the relay output driver of the DSC sinks or sources up to 16ma at 5 volts. The designers of the DSC included a 680 ohm resistor in series with the output to limit the current in case of a dead short.
I agree with Ether on the hobby controller PWM outputs.

docdavies 05-07-2011 22:34

Re: Use of Arduino to control a Spike Relay
 
Al,

Ok, so what you are saying is that it should be ok, since the Arduino only sources 20 mA per output line.

But are you saying I should use a 680 ohm resister in series on the Arduino output line going to the Spike relay.

Doc

Al Skierkiewicz 06-07-2011 07:42

Re: Use of Arduino to control a Spike Relay
 
Doc,
The series resistor on the DSC is something that the designers chose to protect the output of the chipset they used on the DSC. You should be fine. The current spec is not how much is supplied, it is an indication of the safe range of the output chip used for digital I/O on the Arduino Mega. According to the manufacturer, the Mega can handle 40 ma per pin.

ajlapp 06-07-2011 13:08

Re: Use of Arduino to control a Spike Relay
 
Slightly unrelated...

Quote:

Now if I can just get my son to work out the wireless aspects of the connection from drive station to Arduino / Netduino.....
Y'all will probably see posts on that some time soon!
See one of our former students and his friends doing some pretty amazing projects. Including designing a complete wifi control system based on Netduino and a virtual joystick running on an Android phone.

Netduino Control System

We used one of his previous control system designs on a mobile robot we made last year....it used regular Arduino with an Ethernet shield and a second Arduino to send the controls via a traditional joystick.

Mobile Robot with Arduino Control System

docdavies 06-07-2011 15:32

Re: Use of Arduino to control a Spike Relay
 
Anthony,

This is fantastic! A great piece of work. I've downloaded all the files and will be looking at it in the next few days. I've copied my son on it as well.

I love the use of the Android device, I've got an old Droid phone I'll try to use.

Have you worked out a system to take input from the standard FIRST driver station? As I've mentioned in my posts, we'd like to create a transparent duinoectomey for our old robots so that we can experiment with them and do driver training. We can develop a new drive station or use the Android approach, but it changes the experience, if you will.

Thanks again for your post!!! If you need a letter docummenting your cooperativity for next season, let me know.

Doc

docdavies 06-07-2011 17:17

Re: Use of Arduino to control a Spike Relay
 
Ok, ok....

After much gnashing of teeth and a good look at my toy budget (in case I did accidentally blow up my Arduino) I just said "what the heck" and hooked up the Arduino to the Spike Relay and ran it. Worked fine on the bench, only sourced 44 mA and activated the Spike fine. I'm feeling good. Took Arduino and breadboard circuit to robot....NADA. Took 20 minutes to figure out it was a bad PWM cable. Now, compressor runs. I'll have the Festo valves running tomorrow.

ajlapp 06-07-2011 17:45

Re: Use of Arduino to control a Spike Relay
 
Quote:

Thanks again for your post!!! If you need a letter docummenting your cooperativity for next season, let me know.
I cannot take no credit for the work. Eric, the main guy from the video is a former student of Team RUSH.....it's all his stuff.

I have been fortunate to leverage his extensive skill to build some really cool robots and control systems.

As for your question regarding the control system....this system is wifi based so it can be modified to run on a laptop, another Arduino or a droid phone like the video shows. The FRC driver station is just a laptop...so yes, it could be used to send commands. It would not interface in the same fashion as a cRIO, but it would be similar.

The main advantage to a system like this is cost. In the past we have built full control systems for less than $200. :)

docdavies 10-07-2011 17:36

Re: Use of Arduino to control a Spike Relay
 
To close out this thead. I used a transistor 2N2222 to run the spike. I set it up petty much like the Arduino documentation says with the output pin from the Arduino driving the base of the transistor through a 1k resistor. Worked fine! Just make sure the ground from the 12V source to the transistor is connected to the Arduino ground.

We are now in gear for running all of the functions of the 2010 robot. Next the stiff learning curve in getting data from the drive station to the Arduino through an ethernet shield.

This stuff is SO cool!

Doc

ericbarch 11-07-2011 01:40

Re: Use of Arduino to control a Spike Relay
 
Quote:

Originally Posted by ajlapp (Post 1068171)
I cannot take no credit for the work. Eric, the main guy from the video is a former student of Team RUSH.....it's all his stuff.

Thanks for the shout out, Anthony!

To anyone looking to implement this system, I've open sourced absolutely everything you need here:

http://code.google.com/p/ipgamepad/

I'm currently working on a video documenting the whole system, but until then you should be able to get the gist of the setup from the Google Code page.

I just finished up a simple python app to implement the controls using a PC/USB joystick if you're without an Android device. This is now available on the Google Code page.

To build the control system, all you need is a wireless router, Arduino w/ Ethernet or Netduino, and your PC or Android device. Just connect your PWM speed controllers to digital pins 5/6 for tank drive. All of the data is there in the code if you want to tap into the X axis of either joysticks as well.

I'm always available via PM if you'd like any help implementing the system. I'm definitely looking for developers to help out in feature implementation so please let me know if you're interested!


All times are GMT -5. The time now is 04:21.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi