Go Down

Topic: Telemetry Project (Read 5822 times) previous topic - next topic

BigFootJim

#15
Oct 28, 2013, 04:40 pm Last Edit: Oct 28, 2013, 08:55 pm by BigFootJim Reason: 1
Thanks Paul__B, I had noticed that I was only seeing about 3.82v coming out of the 324, and was thinking that I might have screwed something up.  Price and packaging of the LMC6484 is the same as the LM324, and the pinout looks the same according to the datasheet, so the design impact is negligible - unless this will change the resistor requirements.

The Mega operates at 6v-20v, with 7v-12v being recommended - I'm thinking an LM7809 with a couple of caps to give her a steady 9v would work well.  There is a note of the 5v being low and the board becoming unstable if supplied with less than 7v.

Would anybody care to share their thoughts on a GPS module?  I was going to use a TNC with integrated GPS capabilities, but it is proving difficult to combine the Arduino telemetry data into the TNC the way I had imagined.  If I collect the GPS data through the Arduino, I can pass all of the info through the TNC and just parse it on the receiving end.

Finally, how would I go about determining the vehicle's physical orientation?  Specifically, I'd like to know if there is a way to know if she is lying on her side or top - ignoring the girlish screams from our driver/co-driver...  :)

thx,
bfj

arduinoadrian

Can you post a list of the all Gauges you need and the pins where you are planning to input them?. The picture is just too big and I has to be moving it all around to get the general idea. Also the min scale value, number of major divisions and full scale of each of them will help understand what you really need. You will need to have that list handy anyway, to write any code.
I also suggest you make a preliminary drawing (could be by hand) of the set up you want to have on the computer screen, being realistic of course. Don't shoot to high as it could get troublesome to build it on a first project. You can put whatever you want and then begin to remove what you don't really need to make the project work at first. In later versions, you will always have time to add and improve; but you have something running already.
Thanks

BigFootJim

#17
Oct 29, 2013, 06:20 pm Last Edit: Oct 29, 2013, 06:29 pm by BigFootJim Reason: 1
OK, the list so far is below:

A0 - Oil Pressure 0-100 with major divisions at 20/40/60/80 0.5-4.5v
A1 - Oil Temp 140-280 with major divisions at 160/180/200/220/240/260 0.5-4.5v
A2 - Coolant Temp 100-260 with major divisions at 120/140/160/180/200/220/240 0.5-4.5v
A3 - Fuel Pressure  0-100 with major divisions at 20/40/60/80 0.5-4.5v
A4 - Speedometer 0-160 with major divisions at 20/40/60/80/100/120/140 5v pulse
A5 - Air Fuel Ratio 0-18 with major divisions at 10/12/14/16 0.5-4.5v
A6 - Trans Temp 100-260 with major divisions at 120/140/160/180/200/220/240 0.5-4.5v
A7 - Voltmeter 0-18 with major divisions at 10/12/14/16 12v (varies)
A8 - Tachometer - 0-10(K) with major divisions at 1/2/3/4/5/6/7/8/9 12v pulse

Would also like to include GPS, a panic button, and possibly a roll sensor.  There is a potential to add more down the road (switch positions, 4WD Hi/Lo, Trans gear, etc), but I think this is enough for this revision.

While I'd love to deliver replica gauges onscreen to our crew chief, I also understand that it will not be easy to implement.  Additionally, we plan on having a course map on screen with position overlay from the GPS, so screen real estate would be an issue with gauges as well.  I'd be happy with simple vertical bars with number scales using green/yellow/red (good/caution/problem) for quick visual reference on everything except the speedo and tach - I think those can be displayed as large text, with the tach going red if too high maybe.  I really have been trying not to think too much about the delivery yet, as I'm of the opinion that they will have to accept whatever I (we) can deliver - even if it's just plain text.  I did see some Java code to display gauges within HTML, and SparkFun has LabView SE bundled with an Uno, so there are a couple of options.  Depending on how well this performs, and how much it is utilized, I might be willing to pay someone to code up a pretty UI in the future.

As for the code, I have been working with AnalogReadSerial to learn the about the Arduino, test theory, and my circuits; but I'm looking more at Smoothing since we'll only be sending data packets every 10-15 seconds.  I think the current NMEA data along with an average from the sensors in that time frame is plenty for now - and far more than any other team will have.  The exception will be the roll sensor and panic button - I'd like to see those sent out immediately.  While common courtesy, basic human decency, and the race rules require that a team stop for any other team that has been involved in an accident/rollover/etc; there have been incidents in the past where nobody stopped for other teams in trouble - and I'd like to know ASAP if my friends are injured in the middle of the desert.

I attached a crude image of what I think is reasonably possible for the delivery.  The map application is a separate program, but I threw it in there for layout/scale.  I also added a smaller image of my current breadboard layout.

Thought and comments  welcomed, as always.

thx,
jim

MalcolmV8

I absolutely LOVE your project.  It's phase two of another project I'm working on.  Much smaller scale though, my son's gokart that he races in the back yard.
I've been working on megasquirt http://www.megamanual.com/index.html to custom fuel inject his kart.  Stage two is to use an Arduino to gather engine parameters such as spark advance, injector pulse width etc. and send back to me over wifi (very close range in back yard) or similar to what you're doing so I could data log in real time.  Ideally I'd like to send changes in the tune back to the kart in real time while he's driving and adjust parameters on the fly.  I'd also like to duplicate megasquirt with an Arduino and build my own fuel injection system.  I love that stuff.  I'm into tuning real cars and the thrill of building my own fuel injection system and tweaking it led to my kids kart project :)

Anyhow carry on...  will keep watching with great excitement.

Malcolm

arduinoadrian

1- With so much functionality you will definitely need many in/out pins specially analog inputs. You must go Arduino Mega which will leave the door open for more expansion in the future.
2-The refresh rate is not a problem. I suggest it to be the fastest possible so the analog indicators on screen do not show jumps in the values. The panic button is the easiest to implement. You can easily achive for example 30Hz refresh rate, which is more than enough for the slow moving variables you are displaying. Digital low pass filtering is required if you want smooth visualization though.
3- Very easily  can send the info to other computers and have others see what's going on. That's the easiest.
4- This is a super cool project; but way too complex for a beginner, I guess. There is no question that with help from this forum you will be able to implement it by yourself; but it will take you a long long time to do so.
5- The pitch roll/indicator is already done and I made it public. http://forum.arduino.cc//index.php?topic=161472.0
6- These videos will help you understand what can be done:
7- The GPS part with on screen course positioning can also be done; but that's going to be the hardest. I suggest you leave that for later versions if not extremely necessary now.
8- With so many things being displayed screen space optimization can get critical as the indicators must be big enough for them to be observed easily.

http://www.youtube.com/watch?v=r49vKhHDrmE
http://www.youtube.com/watch?v=3SF56iSQo2E
http://www.youtube.com/watch?v=XdJaypmfAUQ

Good luck.

Go Up