Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Vehicle Data Logger using PIC

Status
Not open for further replies.

pkvasan

New Member
Hi
Iam Planning to build Vehicle Data logger (VDL) using PIC Microcontroller.

The details are following
The VDL will take input from Vehicle Speed Sensor and store data on distance traveled, violations like overspeed, over RPM etc...

The data should be recorded every 1 sec & stored in local memory.

The data is then loaded to PC via USB

Please help me with some circuit ideas & sample C Codes

Thanks
 
I've tried the same type of data storage with my motorcycle. I'm pretty new with microcontrollors, but here's what I've done so far. Using a Parallax Basic Stamp microcontroller (**broken link removed** )

Use the output pulses from the electronic ignition, which are the input pulses to the igniton coil, and vary in frequency to the Engine's RPM. This is the same location from which these same pulses are fed to an electronic tachometer. Feed these pulses to a LM2917 "frequency-to-voltage converter" (**broken link removed** ), this is how it is done in the tachometer. The pulses are converted to a varying dc, in direct relationship to the RPM's of the engine. From the LM2917, feed the varying dc to an analog to digital converter (ADC0831 from Parallax, [http://www.parallax.com/Store/Compo...geindex/2/Level/a/ProductID/245/Default.aspx] ), then the result from that ckt. can be stored as digital data on the microcontroller's associated EEPROM.

Another method, which I've discoverd that I can probably use: Using the Pbasic "COUNT" command with my Parallax Basic Stamp (PIC16C57C), count the pulses coming from the speed sensor, which is located in the transmission, but there is a deutsch connection outside of the transmission, which can be parted and the pulses can be sampled. However, I must use a homemade "tee" connection (harness) between the separated deutsch connectors so that data will still reach the speedometer. These pulses are developed by the speed sensor, which is a Hall Effect magnetic sensor and gives of square wave pulses in relation to RPM's, or speed. There's also cam position sensor, on my bike, that does the same and its connected to the input of the ignition.

Also the voltage of the pulses coming from the ignition and the speed sensor will probably be up to 12 volts, which will be too high for microcontrollers and some microchips. So I applied the pulses to a voltage divider to get the pulses down to 3 or 4 volts to be sure they were less than 5 volts.

I also tried counting pulses from the output of the ignition (the same tach pulses), but the ignition coil distorts these pulses so much that the microcontroller was unable to give proper counts, and it seems to be very difficult to square these pulses off before feeding them to your counting circuits. The microcontroller is very fussy about that.

I was also able to store data on the EEPROM that is associated with the PIC microcontroller, in limited amounts. Parallax Pbasic has commands to do that: "READ" and "WRITE" commands.

Hope this all helps
Patrick
 
I was also able to store data on the EEPROM that is associated with the PIC microcontroller, in limited amounts. Parallax Pbasic has commands to do that: "READ" and "WRITE" commands.

You should not even consider EEPROM. As I said in your other post, go with Flash.

**broken link removed**
 
Last edited:
You should not even consider EEPROM. As I said in your other post, go with Flash.

**broken link removed**


pkvasan:
Store your data in flash, as Mike suggests. I used EEPROM as a quick method for small amounts of data, but I'm still learning.
 
Thanks Friends

I am trying with PIC 16F876. As suggested by you all i want to store in Flash memory, at present i am trying to input some Pulses with amplitude of 3-5V and wanted to count the pulse (eg.. 1000 pulses = 1 km) and the result (Kms) to be displayed on an LCD Display. will update you guys once i am through with this.
 
Status
Not open for further replies.

New Articles From Microcontroller Tips

Back
Top