Planning a DIY Data Acquisition/Engine Controller

Started by dubbleUJay, October 21, 2009, 09:09:03 AM

Previous topic - Next topic

AdeV

Quote from: dubbleUJay on October 29, 2009, 10:59:36 AM

Hi Jedon, I also used 7-Zip, it extracts to a TAR 1st, then when I extract that, it tells me there's 2 files with the same name??? Program.java~


That's usually the result of extracting without keeping the folder information; so the files "xyz\abc.txt" and "uvw\abc.txt" extract to the same place, hence errors.

WinZip deals with tar.gz files quite well; it will ask you if you want to extract the files from the tar straight into a directory structure (like "tar" on Linux does, given the appropriate incantations). You can download a free trial of Winzip, but I recommend going to http://www.oldversion.com/WinZip.html & getting either v9.0-sr1 or v10.0 - neither of which expire (they will nag you to buy, however).

Cheers!
Ade.
--------------
Lister CS 6/1 with ST5
Lister JP4 looking for a purpose...
Looking for a Changfa in my life...

veggie

Hi Guys,

The one I'm developing is written in visual basic.
Key readings will be monitored and logged by an old laptop near the machine.
When an event is triggered, the engine will be shut down and the software sends a message to my cell phone.
If all is well, an "OK" message is sent every 1/2 hour.
This enables me to leave it running while in the house or temporarily away from the site.
I already have routines written and tested for the cell phone messaging as well as the data collection part.
Next is the fancy graphical interface depicting the listeroid with actual values displayed in the over sized gauges.

Fun stuff,
Veggie

AdeV

Quote from: veggie on October 29, 2009, 01:47:23 PM

If all is well, an "OK" message is sent every 1/2 hour.


That will annoy you in very short order... plus you'll find yourself scrambling to your phone every time you get a beep, just in case it's the engine breaking down...

Could you make it a "ping" system, i.e. you send a text to the engine controller, and it replies with its status?
Cheers!
Ade.
--------------
Lister CS 6/1 with ST5
Lister JP4 looking for a purpose...
Looking for a Changfa in my life...

veggie

At first, it will be every 1/2 hour. At any time I can change the settings. 1 hour, 3 hours....whatever.
I think I would prefer the engine to call me rather than waiting for me to ask. (I forget a lot  ;) )

Veggie

Jedon

Are you sending the SMS via an email gateway?
I use VoiceShot.com for this kind thing.

AdeV

Quote from: veggie on October 29, 2009, 02:59:45 PM

At first, it will be every 1/2 hour. At any time I can change the settings. 1 hour, 3 hours....whatever.
I think I would prefer the engine to call me rather than waiting for me to ask. (I forget a lot  ;) )


I was perhaps unclear (not for the first time!) - if any of your sensors went out of range, you'd get a text from the engine; but if it's all normal, a regular "Hey, I'm still normal" message will quickly become tiresome I suspect... Maybe wrong, I just know I get irritated at the WEEKLY status texts my mobile provider sends me...
Cheers!
Ade.
--------------
Lister CS 6/1 with ST5
Lister JP4 looking for a purpose...
Looking for a Changfa in my life...

veggie


Jedon,

Yes, I have programmed an SMS routine to send a message in SMS format to my cell phone service provider.
The software assembles the necessary text message based on if/then conditions dictated by the event such as high temp, overspeed, or whatever sensors one may have.

AdeV,
You are forgetting the "cool" factor. Chicks really think it's cool when a nerd get's messages from a machine !  :D

Seriously though, it's a matter of confidence. At first, leaving it running remote for 1 hour is a big deal to me.
Over time, as I get confidence in my shutdowns and monitoring ability, I would scale the "All clear" message to a greater time period.
There's always the ghost of having bugs in the software. So I would watch the system like a hawk until it proves itself.

Cheers,
Veggie

AdeV

Quote from: veggie on October 29, 2009, 07:49:51 PM

AdeV,
You are forgetting the "cool" factor. Chicks really think it's cool when a nerd get's messages from a machine !  :D


Really ??? I must have been hanging around the wrong kind of chicks  ::) All mine was ever interested in was shopping...  :o

;D


Cheers!
Ade.
--------------
Lister CS 6/1 with ST5
Lister JP4 looking for a purpose...
Looking for a Changfa in my life...

dubbleUJay

Quote from: AdeV on October 29, 2009, 12:21:41 PM

That's usually the result of extracting without keeping the folder information; so the files "xyz\abc.txt" and "uvw\abc.txt" extract to the same place, hence errors.

WinZip...

Hi AdeV, I figured that was the problem, I tried WinZip, but still the same thing, I recon the folder structure are not in the TAR, but I might just be to flat-headed 2day!  ::)
Anyway, after a lot of reading & cursing, I found this "interface" for the Arduino called GoBetWino (Yeh, what a name ;-), that does exactly what I wanted to do, ie write the date to file, and it does a lot more that I might need in the future, like write to the Arduino, email integration exec.
http://mikmo.dk/gobetwino.html
The UI is a bit simplistic, but after a while I got the hang of it, it looks like a sheep in disguise, but quite powerful once one reads the manual included in the download.

Now the next thing is to get the graphing recorder (Kst) to read from this file, but this "should" be easy apparently. ::)
I've been installing/uninstalling programs left, right & center trying to find the right solution!  ;)
Once I have the basic programs in place and I'm recording data, I can start by expanding the Arduino hardware. (For now I'm still just recording 4x temp's as before just for testing)

I just want to make sure that the PC side of the project is do-able before I carry on with the fun stuff like interfacing the electronics. (In my books anyway)
An User Interface can always be done at a later stage once the electronics are working OK.

Maybe it was a blessing that I couldn't get the Java applet to work, we'll see, I'm off to bed, got a "VGA induced" headache like never before  :-[  ;D

dubbleUJay
dubbleUJay
Lister  - AK - CS6/1 - D - G1 - LR1 -
http://tinyurl.com/My-Listers

dubbleUJay

Another quick update 4 those that are interested:
I've now gotten to the stage where I can log 4x temperatures to a file on the PC and display it in real time on a graph.

I can now concentrate on the hardware interfacing as I cannot go much further with the software side of things without a steep learning curve in programming.

Next is to measure the AC Volts&Amps to calculate the power/frequency coming from a gen-head, (I've got a cct, just waiting for parts to arrive) and then engine speed directly from the flywheel of the engine. (I can calculate it from the gen hertz, but would rather have it from two sources.)
At some stage I would probably change the way I measure the temps to a 1-wire solution to free up some Analog ports on the controller for other uses.

I'm looking at monitoring the following for now:
1x Water Temp
1x HP Fuel line Temp (Maybe 2 places)
1x Exhaust Temp

AC Volts
AC Amps
AC Frequency (Calculate Engine speed)
AC Power used (Watts)

DC Volts
DC Amps
DC Power used (Watts)

Engine Speed from flywheel
A few Digital inputs for Low Fuel, Low Oil Pressure Exec.

Digital Outputs for Emergency Shutdown exec.

The controller side of the thing must be controlled/run/calculated by the board it self to work separate from the PC. The Data Acquisition side can work directly to PC, which can do the calculations. (Need to save as much space on the board's memory as possible)

Future features:
Governor control
A nice UI to display and store all these wonderful figures!  ;)

Everything is out there on the web, its just a matter of finding them and putting it all together in one place!  ::) There are probably a few more features, but these ones should keep me busy for a while.


dubbleUJay
Lister  - AK - CS6/1 - D - G1 - LR1 -
http://tinyurl.com/My-Listers

Jedon

Good work! I'll be sure to follow in your footsteps when I get time.

dubbleUJay

#26
Does anyone know of a simple electronic cct to monitor exhaust temperatures other than using MAX6675 or AD595  K-type thermocouple chips?
I have a Thermocouple Probe (K-type from an old meter rated at over 1500degC), but the IC's to interface it are quite expensive and not available in ZA that I know of.
Also, if someone are going to build one in the future for this project, it might be to expensive, I want to keep costs down as far as possible!
I do not need accurate readings, just want to shutdown the engine at say 400degC, but also log to a precision of about 10degC, so a simple temp switch will not work, but might be considered if nothing else are available. It would be nice to log the temp though.
The LM35 and DS18D20 cannot read above 120degC  :(

Amended/added:
What would you guys prefer to read the engine speed with, a magnetic pickup, IR reflective- or a IR "gap" distance sensor for counting the holes in the flywheel?
The latter seems less hassles as you do not have to put anything on the flywheel, but do all flywheels have holes ie changfa exec ???
dubbleUJay
Lister  - AK - CS6/1 - D - G1 - LR1 -
http://tinyurl.com/My-Listers

BruceM

WJ, An inductive sensor can sense flywheel spokes moving by, so will the Cherry brand (hall effect) gear tooth sensor.  These both generate a digital pulse for each flywheel spoke.  Many folks think IR or optical is a mistake in the dirty engine room.  Given the other options, I agree.

If you must make it analog, then look at some frequency to voltage converter chips (F/V converter).

You could also modify the AC signal to feed a frequency to voltage chip, and avoid any extra sensing hardware, if your Lister is going to be dedicated to generator duty. (Mine does air compressor duty as well, so I added the gear tooth sensor as shown in the photo.)


dubbleUJay

Thanks Bruce, I would rather use a sensor on the engine like you and have the AC as a backup or "checking cct"

I will use a digital input to count the pulses and then do the calculations. I want to open my cam end cover to see if there might be an easy way to fit a hall-sensor to read the locking pin coming past or something to that effect, but I might loose accuracy due to the fact that its turning at half the crank speed.

On the other hand, this will aid me in another idea I have of a crude diesel "timing light" ;)
dubbleUJay
Lister  - AK - CS6/1 - D - G1 - LR1 -
http://tinyurl.com/My-Listers

BruceM

#29
I use the basic "count" commad for 1 second for my 6 spoke flywheel sensor. It ties up the processor for the entire second on the Picaxe chip,  but required zero hardware. I use the one second count delay as the main engine monitoring program loop time delay.

At 650 rpm with 6 spokes it works out just fine, there is just enough resolution for monitoring the starter spin up processes and adequate run time resolution.