Cars engine rpm

Hallo

im looking for a way to pull a Cars engine rpm in to the arduino the simplest and fastest way.

any one know what that is?

Hi,
google arduino tacho

should give you some results

Tom… :slight_smile:

Taking your question at face value: depends on the sensor you want to use, and what interfaces it has. Maybe your on board computer has this data available.

Though if your real question is "what sensor is the simplest and fastest to work with" then it would be: attach magnet on the shaft, hall sensor above it, and start counting pulses. Should be one of the most direct ways. But if it works for YOUR car that depends on what kind of access you have to the motor and so.

i cant build a sensor on. so i need to take the signal from the ecu or from the obd2.

O.k. so let us know when you've found out the details of exactly what signals are available from them. We can probably help you work out how to interface a signal with the Arduino.

It should be possible, maybe even easy but since we have no idea what vehicle you're talking about we can't really help much yet.

Steve

brunokc: Hallo

im looking for a way to pull a Cars engine rpm in to the arduino the simplest and fastest way.

any one know what that is?

What is your goal of the system? Do you want the arduino to determine RPM and display that data to the driver or are you trying to drive fuel injectors and need to know crank position? Does the arduino need to do more things computationally?

If I were tackling this problem and assuming that I do not need to know crank position I would do one of the following with my sensors:

1) Use a hall sensor. Not an option in your case. 2) Make a little bracket that holds an IR led and IR sensor and place a piece of reflective duct tape on the harmonic balancer or crank. 3) Gut a timing inductive light and measure the spark. This would not be consistent when the engine changes state as you increase your spark advance. With proper post processing, this could be made to work. You will have to factor in that sparks would only occur every 720 degrees unless you are using wasted spark.

I have used #2 when I had an encoder break. I know there are some OBDII solutions. Again, I would like to know your goals? Fun? or Data? What are you doing with the data?

Software:

1) Use some type of box filter that averages several samples and updates the display about every second.

im making a arduino program to control a pnumatic gear shift. I would like to use rpm to switch gear automatically

its a golf iv with obd2.

Each time you come back you seem to add one small detail. First that you want to read from obd2 and now finally that this is for a golf. Why don't you sit and do a little thinking and see if you can imagine what other sorts of details might be important. Vague questions get vague answers. People who look like they haven't done any research yet on their own get sent to do some research. So you could waste a lot less of our time if you would handle those two issues before going any further.

brunokc: im making a arduino program to control a pnumatic gear shift. I would like to use rpm to switch gear automatically

its a golf iv with obd2.

Are your gear shift points going to be the same RPM? Most likely your optimal acceleration would not be the same RPM. Are you going to be down shifting with this setup? How does the pneumatic shifter work? Will the arduino be powerful enough to operate the pneumatic driver?

I think this is a fun project. As always, you accept some risk with not using a COTS solution.

I would start with something like this and a serial monitor to see what information you can get from the car prior to interfacing with the shifter.

bronco9588:
Are your gear shift points going to be the same RPM? Most likely your optimal acceleration would not be the same RPM. Are you going to be down shifting with this setup? How does the pneumatic shifter work? Will the arduino be powerful enough to operate the pneumatic driver?

I think this is a fun project. As always, you accept some risk with not using a COTS solution.

I would start with something like this and a serial monitor to see what information you can get from the car prior to interfacing with the shifter.

its for a 1/4 mill track car. so the shift is at the same rpm every time, no down shift.
i have a arduino running the pnumatic shift in a test setup now.

brunokc: its for a 1/4 mill track car. so the shift is at the same rpm every time, no down shift. i have a arduino running the pnumatic shift in a test setup now.

Well, it seems you have the output solved. The only other thing to consider is how long it would take the arduino to effectively shift from when you order it to shift.

I think my link above probably solves the input. Optimal acceleration only occurs at the same point if the gear ratios are the same. initial gear*multiplier^n-1. Where n is the gear. Usually they are not exact. I would see if the OBDII would output the gear and create specific shift points. Otherwise you could use speed and RPM to determine the actual gear.

This seems like a very manageable problem to solve. Let me know what you figure out. I have thought about doing this with my 73 charger.

i have ordered a arduino obd2 thing from your link. the arduino already know what gear its in. when it is controlling it. its a manuel gearbox with pnumatic control.

so if it shift at 8500rpm its fine, i was thinking of using a analog input to adjust the shift rpm.

thanks for you help and inputs.

Can you send me a link on your transmission and pneumatic controller?

my gearbox is a O2m for a vw golf iv. the pnumatic controller is a arduino uno, 8 relay bord, some pnumatic valves and 2 multi position cylinders.

like this (not my setup) https://www.facebook.com/mmemotorsport/videos/967521313345445/

When you say analog input are you talking potentiometer? I would consider 2 adjustments, a course adjust and a fine adjust. You could avoid this all together if comfortable with just plugging in a laptop and adjusting constants. Maybe a couple buttons and 4 7 segment displays could do what you want as well.

Have you got the pneumatic shifter connected and running? I would need to understand the code, but you could continuously measure RPM and when greater than a certain value trigger an interrupt and perform the upshift. I have no idea the data rate, but would want to make sure there is some averaging being done to reduce noise. Good chance the cars computer is doing some averaging.