Pages: [1] 2   Go Down
Author Topic: Telemetry Project  (Read 1686 times)
0 Members and 1 Guest are viewing this topic.
The mountains of Southern California (not a hole like the rest of this place...)
Offline Offline
Newbie
*
Karma: 0
Posts: 11
In Tempore Veritas
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello all,

I have a project I am working on, and would like the thoughts and input from those more experienced with the Arduino.  I have searched the forum, as well as the Reference and Learning sections, and believe my ideas to be sound.  However, I would still prefer to know I'm on the right path before shelling out the time and money, only to end up banging my head against the wall...  smiley

I am working on providing telemetry data from a race car to the pit.  Unfortunately, the engine is pre ODB-II, so collecting the data is requiring a bit more effort than originally planned.  Additionally, the terrain of the course is quite varied, ranging from flat open desert to 1500' rocky mountains in an underdeveloped (no reliable cell service), remote location - so the communication method is limited.  I want to sample 7-8 measurements, use the Leonardo to dump them into a HAM TNC as ASCII, and display the data on the laptop in the pit.  My thoughts so far are:

Sending units -> Arduino Leonardo -> HAM TNC -> radio -> air -> radio -> HAM TNC -> laptop.

From my reading in the forums and documentation sections, I believe that the Arduino will be able to perform this function with relative ease.  The questions I am looking for direction on are:

1. Will tapping the sending unit's wiring for input into the Arduino alter their accuracy at the in car gauges (or Arduino)?  Electronic theory is not my strongest subject.  smiley-sad
2. Can anybody recommend a readily available application (Windows or Linux), that will allow me to display the received data on the laptop - preferably as gauges?
3. Any other thoughts, ideas, or direction, you might want to throw out there.

I am really enjoying researching this project, it has forced me back into learning and playing with electronics - something I haven't done in at least a decade.  The Arduino, the RaspberryPi, and so many other options are available now that make these types of amateur/home-brew projects both easy and affordable.

thx,
bfj
Logged

Miami/Florida
Offline Offline
Sr. Member
****
Karma: 14
Posts: 350
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
1. Will tapping the sending unit's wiring for input into the Arduino alter their accuracy at the in car gauges (or Arduino)? 

It shouldn't if your car gauges are low impedance. In any case, you can/should use OpAmps as voltage followers or buffers to tap the signals and connect them to Arduino. This will avoid loading the instruments too much and provide the right signals to Arduino. You may even need to set some amplification to the Op Amps and invert signals or add DC levels depending on what the gauges get to work with. It's not difficult to do that. Check the signals you will be tapping and post here your measurements so we can help you better.

You can check these configurations to get familiar with the subject.

-Summing Amplifier
-Voltage Follower.
-Non Inverting Amplifier
-Inverting Amplifier.

Quote
2. Can anybody recommend a readily available application (Windows or Linux), that will allow me to display the received data on the laptop - preferably as gauges?

-Labview maybe?
-You can always make your own code; but that's going to be a bit harder.

You have come up with a nice project idea.

Good luck.
Logged

Perseverance is 90% of the solution. The remaining 10% is more perseverance.

The mountains of Southern California (not a hole like the rest of this place...)
Offline Offline
Newbie
*
Karma: 0
Posts: 11
In Tempore Veritas
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thank you arduinoadrian for the input, it looks as if I've got more reading to do.

Quote
It shouldn't if your car gauges are low impedance. In any case, you can/should use OpAmps as voltage followers or buffers to tap the signals and connect them to Arduino. This will avoid loading the instruments too much and provide the right signals to Arduino. You may even need to set some amplification to the Op Amps and invert signals or add DC levels depending on what the gauges get to work with. It's not difficult to do that. Check the signals you will be tapping and post here your measurements so we can help you better.

I am waiting for them to settle on the specific gauges/sending units, and then will do exactly that.

Quote
-Labview maybe?

My bad, I forgot to add the ever important "cost-effective" qualifier.  I looked at LabVIEW, and while it appears that it would do everything I need and more, it is well outside our current budget.

Quote
-You can always make your own code; but that's going to be a bit harder.

Unfortunately, my coding abilities ended with AppleWorksBASIC some 25 years ago.  Save for some lite HTML, PHP, and advanced batch files for running my networks, I am not much of a coder.  I have looked into some VB controls that would give me the display functions in Excel - but will wait a little while to see if something less-expensive, or preferably FOSS, presents itself.


Quote
You have come up with a nice project idea.

Good luck.

Thank you.  When I volunteered to help with this, I was under the impression the engine was a 1997, instead of the 1991 it actually is.  That 97 engine would have been ODB-II compliant, and much easier to extract the needed data from.  I'm hoping I can hack this thing together, but a little luck never hurts!

Thanks again!
bfj

Logged

0
Offline Offline
Tesla Member
***
Karma: 145
Posts: 9671
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
2. Can anybody recommend a readily available application (Windows or Linux), that will allow me to display the received data on the laptop - preferably as gauges?

There are some interesting web based GUIs that display data as gauges.

http://startingelectronics.com/tutorials/arduino/ethernet-shield-web-server-tutorial/SD-card-gauge/
Logged

Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   smiley-cool

The mountains of Southern California (not a hole like the rest of this place...)
Offline Offline
Newbie
*
Karma: 0
Posts: 11
In Tempore Veritas
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

OK everybody, after waiting for the team to select and order the gauges, finally getting the information out of the vendor, conducting a fair amount of research into OpAmps, and playing around with an Uno and a pot, I think I have a slightly better understanding of how the input side of my little project is going to work.  The signal from the majority of the sending units is .5-4.5v, which is great as I won't have to screw around with dropping 12v signals to Arduino levels.  If my understanding of the OpAmp is correct, I need a simple voltage follower as arduinoadrian originally recommended.  My question now is, can somebody recommend an OpAmp that will fill this need?

Also, any input on what would be the best way to take the 0-12v signal from the voltmeter, and bring it into the Arduino?  I've read that I am probably looking at a voltage divider, but any other suggestions (including links to reading material) would be appreciated.

I'm still waiting on info for the tach and speedo, and will tackle them when it arrives.

thx,
bfj

Logged

NSW Australia
Offline Offline
Faraday Member
**
Karma: 91
Posts: 3646
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

LM324.

Very basic quad op-amp - works down to ground IIRC.

Just a voltage divider.  Two resistors.  Do recall that a car's charging voltage is not 12V.  smiley-grin
Logged

The mountains of Southern California (not a hole like the rest of this place...)
Offline Offline
Newbie
*
Karma: 0
Posts: 11
In Tempore Veritas
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks Paul__B, I actually picked up an LM324 earlier to do some more testing with - glad it will work for production as well!

Yeah, I realized that 12v was not going to be the high end as I was driving home.  There goes my "just order a Rugged and be done with it" idea...

Here is what I came up with schematic wise (using an LM358, just for illustration purposes), is my understanding (and implementation) of what I read regarding voltage following op-amps correct in this?



As always, any input/constructive criticism/hints/etc are appreciated!

thx,
bfj


* schem1.png (52.1 KB, 528x681 - viewed 59 times.)
« Last Edit: October 17, 2013, 03:56:20 pm by BigFootJim » Logged

NSW Australia
Offline Offline
Faraday Member
**
Karma: 91
Posts: 3646
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

No schematic visible.
Logged

The mountains of Southern California (not a hole like the rest of this place...)
Offline Offline
Newbie
*
Karma: 0
Posts: 11
In Tempore Veritas
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sorry, had trouble getting the image attached...

Also, to confirm my theory, I want to run the voltmeter through another voltage following op-amp and then through a voltage divider, correct?

Thanks again!
bfj
Logged

NSW Australia
Offline Offline
Faraday Member
**
Karma: 91
Posts: 3646
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Firstly, when using an op-amp to isolate those inputs, add a resistor - say 22k - between the input from the car gauges and the op-amp.  You then need to add the same resistor in the feedback from the output to the "-" input of the op-amp to match the impedances.  All this protects your op-amp from adverse voltages from the car wiring and protects your car wiring from the op-amp going up in smoke for whatever reason.

Similarly, the voltage divider for the battery voltage goes before the op-amp, and you need a resistor in the negative feedback that matches the parallel resistance of the two voltage divider resistors.

If the op-amp is running from 12V, you probably also want resistors between its outputs and the Arduino to prevent it feeding 12V-odd into the Arduino.
Logged

The mountains of Southern California (not a hole like the rest of this place...)
Offline Offline
Newbie
*
Karma: 0
Posts: 11
In Tempore Veritas
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thank you Paul__B.  I've revised my schematic based on your input, and believe it to reflect your recommendations.  I calculated the divider based on a possible 15v from the vehicle's charging system, and a desired high side of 4.5 for the Arduino.  My calculations for the negative feedback came to just under 3200, so I used a 3.3K R in the schematic.  I do however, have more questions now...

1. How exact does the negative feedback R need to be?  Do I need to mess around with finding a perfect balance between 3 Rs?
2. Not an argument, just a clarification of theory for my understanding - in my mind, it seems that I'd want to pull from the voltmeter through the op-amp first, then to the divider, so that there is no load affecting the gauge further down the original circuit.  You suggested the opposite, do you mind elaborating for me?
3. I added 5v supply from the Arduino to the op-amps in the schematic, is this a good or bad idea?

Thank you for all your assistance, I was very excited testing this out on my breadboard!
bfj



* schem2.png (320.45 KB, 3651x3045 - viewed 47 times.)
Logged

NSW Australia
Offline Offline
Faraday Member
**
Karma: 91
Posts: 3646
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

1. How exact does the negative feedback R need to be?  Do I need to mess around with finding a perfect balance between 3 Rs?
No, balance need not be perfect for this degree of precision.   I think you picked it perfectly already.  Better to calibrate it in software as you are going to have to scale the readings anyway.

2. Not an argument, just a clarification of theory for my understanding - in my mind, it seems that I'd want to pull from the voltmeter through the op-amp first, then to the divider, so that there is no load affecting the gauge further down the original circuit.  You suggested the opposite, do you mind elaborating for me?
Well, the 22k in parallel with the gauges will not affect them at all - particularly since the input impedance of the op-amp is so high.  I didn't think the voltmeter was monitoring anything other than battery voltage - the battery clearly will not care.  In any case, you could multiply the resistors by ten or more.  Whatever you connect the voltage divider to "sees" the series resistance of the two.

3. I added 5v supply from the Arduino to the op-amps in the schematic, is this a good or bad idea?
The op-amps are low drain as I understand it.  This does avoid isolation problems if you were to run from 12V.
Logged

Miami/Florida
Offline Offline
Sr. Member
****
Karma: 14
Posts: 350
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm glad to see your progress with this project... a very neat one by the way. As a simple suggestion, I think it's better to use a potentiometer in your voltage divider that will allow you to adjust the fraction of voltage you are going to feed to the OP Amps more precisely. This will simplify the code later on. Simply use 2 resistors as usually for the voltage divider; but place a pot  with a resistance value around 10 times smaller than the value of the resistor connected to ground. Take the voltage from the pot wiper and send it to the opamp. This will allow you to precisely adjust the voltage fraction using 5% resistors instead of 1% ones. Easier to experiment with the divider set up that way.
Good Luck
Logged

Perseverance is 90% of the solution. The remaining 10% is more perseverance.

The mountains of Southern California (not a hole like the rest of this place...)
Offline Offline
Newbie
*
Karma: 0
Posts: 11
In Tempore Veritas
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

2. Not an argument, just a clarification of theory for my understanding - in my mind, it seems that I'd want to pull from the voltmeter through the op-amp first, then to the divider, so that there is no load affecting the gauge further down the original circuit.  You suggested the opposite, do you mind elaborating for me?
Well, the 22k in parallel with the gauges will not affect them at all - particularly since the input impedance of the op-amp is so high.  I didn't think the voltmeter was monitoring anything other than battery voltage - the battery clearly will not care.  In any case, you could multiply the resistors by ten or more.  Whatever you connect the voltage divider to "sees" the series resistance of the two.
Yes, thank you for the clarification.  Another case of me confusing different parts of this project - sleep deprivation combined with excitement about this has got me a little slow...


I'm glad to see your progress with this project... a very neat one by the way. As a simple suggestion, I think it's better to use a potentiometer in your voltage divider that will allow you to adjust the fraction of voltage you are going to feed to the OP Amps more precisely. This will simplify the code later on. Simply use 2 resistors as usually for the voltage divider; but place a pot  with a resistance value around 10 times smaller than the value of the resistor connected to ground. Take the voltage from the pot wiper and send it to the opamp. This will allow you to precisely adjust the voltage fraction using 5% resistors instead of 1% ones. Easier to experiment with the divider set up that way.
Good Luck
 

I'm glad to be making progress as well, thank you.  I think I like this idea too.  I can use a trimmer at 450-500ohms (if I've grasped the concept correctly) to give me a nice round figure to make the math/code easier - is this right?

I've built out my breadboard as follows based on my understanding, and input from you guys.  Please let me know if I'm on the right path, and if I missed or screwed anything up.  Once again, I truly appreciate all of the help and guidance on this.  This is another shining example of why I love the FOSS community so much!

Oh, and I've decided to drop the Leo and move to a Mega - our crew chief added yet another gauge (9 total now) and I believe that I should be able to fab this onto a Mega proto-shield for a tight, clean design.

thx,
bfj


* breadboard.jpg (961.71 KB, 2664x1440 - viewed 76 times.)
« Last Edit: October 27, 2013, 11:38:06 pm by BigFootJim » Logged

NSW Australia
Offline Offline
Faraday Member
**
Karma: 91
Posts: 3646
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Not bad, but on further consideration, the LM324 is unable to drive positive voltages right up to the full 5V.

I have suggested better alternative op-amps (just today!) in this post.
Logged

Pages: [1] 2   Go Up
Jump to: