Page 1 of 4 1234 LastLast
Results 1 to 10 of 35
Like Tree1Likes

Thread: arduino to read car sensors

  1. #1
    Variable Bitrate
    Join Date
    May 2010
    Location
    Herákleion, Iraklion, Greece, Greece
    Posts
    343

    arduino to read car sensors

    ok after allot of search, i have decided that i will go with arduino , to read my car speed/rpm etc... the problem is, that my dashboard is completely ruined, so my only way would be to read the signals from the car sensors directly. i know that most of them wilgive 0-12v signal, and arduino reads only up to 5, but that can be solved. could anyone point me to a direction, at what signals do the sensors produce?? (i'm driving an audi 80 , b4 1990 , and i am corently interested, only in rpm,speed,temp,fuel sensors!!)

  2. #2
    Maximum Bitrate
    Join Date
    May 2012
    Location
    Grandville, MI
    Posts
    646
    Your best bet is to get a shop manual for your car and start from there. It should show you the voltage ranges and such that you are looking at. You will need that information before you can continue. You may be able to pull the information by finding out the sensors your car takes and look at the specifications for the sensors but really you need the information that the dealer would be using. If your speedo is cable driven then you will not have speed information available easily. If your car does not monitor the RPM you will have to add a sensor for this depending on if your car runs off a coil that has an RPM output.

    You might be better off adding an after market PCM of a modern variety that will allow you to access this stuff easily and still tie into your factory stuff. You may have to add some sensors that you would have had to anyhow and you likely will get better performance if you know how to tune.

  3. #3
    Variable Bitrate
    Join Date
    May 2010
    Location
    Herákleion, Iraklion, Greece, Greece
    Posts
    343
    well, IF my speedometer wasent broken down, everything would be easy.. i would just take the voltage (0-12 ) that drives the gauges, and reduce it to 0-5... but i dont want to buy a new one so..

  4. #4
    Maximum Bitrate tempgp's Avatar
    Join Date
    Jun 2007
    Posts
    662
    I dono how would you interpret data without specks of what you are getting (you will need to be good with formula building or dig out pecks) bit to reduce signal in half you need voltage divider (2 identical resistors would work) you can reduce voltage with any proportion respectively if you change values of resistors
    to make it easier i calculated resistor values for you. Of course if you need something more efficient there are ICs for that... but i think analog works perfectly fine

    Name:  tempg_voltage_devider.gif
Views: 2924
Size:  1.4 KB

    Vin = 12v
    R1= 100 Ohm 1/2W
    R2 = 71.43 Ohm 1/2W (you can get nearest value, closer the better)
    Vout = 5V (that's your output)

    Hope that helps
    Automotive LED Headlight Module High Power VS HID NEW
    Acura / Honda A/V CarPC Adapter GA-NET+ - Convert your native navi DVD unit to CarPC + Dash buttons are usable in car pc!!!
    Centrafuse Garmin Mobile PC Skin - GMPC Rebellium Skin

  5. #5
    Variable Bitrate
    Join Date
    May 2010
    Location
    Herákleion, Iraklion, Greece, Greece
    Posts
    343
    yea thanks allot! well my guess is, that it wont be that hard to map the signlas. you just have to do a real time, scan with a voltometer or ohm-meter, and that is all. we will now soon enough. hardest part for me seems how to make a disent speedometer app

  6. #6
    Raw Wave
    Join Date
    Nov 2009
    Posts
    2,118
    A lot of sensors are merely resistances etc and have no voltage other than what the dash etc provides.
    Hence knowing their specs, you can interface direct to the Arduino.

  7. #7
    Maximum Bitrate tempgp's Avatar
    Join Date
    Jun 2007
    Posts
    662
    Speedometer app is easy, i can build one probably in less then an hour as i believe i still have automotive UI components installed on my dev machine. Basically if you have speedometer UI you just feed data to it say every 1 sec, and you get that data from ardrino serial port.
    Automotive LED Headlight Module High Power VS HID NEW
    Acura / Honda A/V CarPC Adapter GA-NET+ - Convert your native navi DVD unit to CarPC + Dash buttons are usable in car pc!!!
    Centrafuse Garmin Mobile PC Skin - GMPC Rebellium Skin

  8. #8
    Maximum Bitrate
    Join Date
    May 2012
    Location
    Grandville, MI
    Posts
    646
    Oldspark is right on the money.

    This is why you need to find the factory specs on what each sensor does which can be had with a dealer manual. This car should be relatively easy to get a manual for but you might have to look around to find it. As I also said, you may be able to bypass the manual by getting the specs on the sensor its self. You may not have a simple voltage return or it may not be linear or any of a sort of "might be". Not to mention you need to check the range of the input of your A/D convertors as well. MANY A/D convertors only accept 0-40 MILIVOLT inputs as well since most real world (Non-automotive) sensors output 0-40 to output to a strip chart recorder.

    The dealer specs and the sensor specs should show you the pinouts of the sensor, what each pin does and the range it is looking for. Trying to reverse engineer this stuff is not the best route and may end up causing sensor, automotive or computer damage when you guess wrong.

    If your speedo is a cable driven one you may be better served by using a GPS sensor. Otherwise you likely need to use a magnetic based sensor that doesn't connect directly to the drive train and sense the speed of the drive shaft. As I mentioned before the RPM MAY be simple if you have a coil output which many cars did have.

  9. #9
    Variable Bitrate
    Join Date
    May 2010
    Location
    Herákleion, Iraklion, Greece, Greece
    Posts
    343
    so, today i started mapping the sensors signals. so far:
    RPM is an AC voltage between 0.10 V and (max?) 0.29V (with crankshaft sensor!!)
    Temp,An ohm resistor, where the resistance DROPS when temp rises: max(dunno, cause car was hot arledy) ~90celcius 87.8 ohm
    Fuel lvl : simple resistance as well.
    AS for the speed now... i know that that i am looking at the correct sensor, but i cant seem to find what it gives... it has a constant 13v , BUT no AC, and no current change... i think that it might be digital signal, cause if u strip down my instruments cluster, you will see that, the speedo, has as input the same cables that i look at, BUT the way that it drives the needle is with DC... also between is a micro-chip, wich i suppose, convertes digita to analog signal...
    Any ideas where to look? or, what sould i do to map its signal??

  10. #10
    Raw Wave
    Join Date
    Nov 2009
    Posts
    2,118
    Most pulse sensors are open collector types aka OC - ie, they are switched to GND else not (and hence floating so some pull-up resistor is required to pull them high).

    That tacho is a classic example. A traditional (Kettering) ignition system is a set of pints that are ether closed to GND (which charges the IgCoil) else open. The point of opening is when the IgCoil sparks the splugs.
    Electronic ignitions are no different except they use a transistor etc instead of points. (There are a few exceptions including CDI, but often their "sensors" are still OC - eg, Hall Effect & Optical modules.)

    Speedos are often similar. I know some Audi speedo sensors are diff mounted, hence I presume a Hall Effect module. But others are reed switches - maybe in or on the speedometer if a mechanical speedo cable goes to it.
    Nissans (N13 etc) have a pulse driver/transducer in place of the normal speedo-cable outlet at the gearbox. (They too have an OC output.)

    One big difference with a tacho circuit and others is that if from the IgCoil, the circuit must be protected from the HV spikes produced by the primary of the IgCoil (typically 200V or higher). But that is usually a part of normal input protection anyhow - eg, thru a resistor to the input with 2 clamping didoes either side that are reverse biased to each (Arduino) power rail (+V & GND), else a Zener to GND diode which clamps to the Zenor voltage.


    You may find that AC readings are useless. They don't give info on voltage ranges (because they are an average reading assuming a continuous sinewave voltage) and though an AC voltage might indicate a pule or frequency type of signal (as with a tacho), they might merely be showing noise on the line.
    And if the speedo "transducer" is a reed switch, it is merely closing and opening and has no voltage unless there is some voltage across it. But DC continuity or the resistance range should "pulse" as the speed-sensed wheels are rotated (front wheels for some Audis; rear wheels for others). But make sure there is no voltage to the circuit if using resistance and continuity ranges - that's a universal rule for multimeters.
    And OC outputs require a pull-up resistor to show voltage. (Typically 10k or 1k.)
    Yours sounds like an OC speedo sensor (Hall Effect?) and you are measuring the pull-up resistor's +ve voltage and not detecting the pull downs. Alas one of the limitations of DMMs.
    Analog meters may be better, though a CRO is usually required to see the full waveform, but that is usually not required anyhow - just knowing the sensor type and its reference voltage is sufficient (eg, GND for OC).


    As to resistive sensors, you need to find their maximum resistance and then chose another resistor so the Arduino analog inputs have a good voltage range to work with.
    EG - your temp sensor (~90R @ 90C) may be 200R (200 Ohms) when cold, hence you might use a 47R resistor fro the grounded temp sensor to +5V. The Arduino then sees 200/(200+47) x 5V = 4.0486V when "cold", and 87.8/(87.8+47) x 5V = 3.2567V when ~90C.
    Also need to check resistor power consumption. EG - the current at ~90C is 5V/(87.8+47) = 5V/134.8R = .037A. Hence power dissipated (I x I x R) = (0.037 x 0.037)R = .00137 x 47 = 0.06W, hence a 1/8W resistor is more than adequate (else 1/4W or 1/2W etc).


    Simple isn't it?
    Last edited by OldSpark; 03-04-2013 at 10:05 AM.

Page 1 of 4 1234 LastLast

Similar Threads

  1. Developing an arduino shield - any interest?
    By CyberBill in forum Open Source Hardware
    Replies: 20
    Last Post: 02-20-2013, 10:39 PM
  2. Arduino as a touchscreen controller. Is it possible?
    By HiJackZX1 in forum General Hardware Discussion
    Replies: 2
    Last Post: 11-23-2012, 02:20 AM
  3. OBDII Arduino Shield
    By bwallen in forum Hardware Development
    Replies: 6
    Last Post: 02-14-2012, 12:35 PM
  4. Arduino for OM - In progress
    By jmullan99 in forum OpenMobile
    Replies: 22
    Last Post: 03-13-2011, 05:43 PM
  5. Using Arduino to Auto-dim LED EBY701?
    By stevey500 in forum LCD/Display
    Replies: 29
    Last Post: 08-21-2010, 01:04 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •