I am considering getting an Arduino board to re-create a project I did a very long time ago using 555/556 Timers and Op-Amp IC's, for a homemade Chart Recorder that used servos to drive the pens.
The main control box circuit made use of VERY small sensor voltages, of about 100 to 150 mV when centered, and used the Op-Amps to amplify them up to 20 times so when adjusted correctly the centering voltage for servos was about 2.5 volts, .
The other part of the circuit was two servo control circuits, which used the voltage outputs of 2.5V from the Op-Amps to control two servos. Since the system ran on 5V, the 2.5 volts was the centering voltage.
One sensor was a temperature sensor using a 10k thermistor, arranged in a Wheatstone Bridge to produce a voltage of about 125 mV when centered, the voltage going up or down depending on the change in temperature since it was last centered. The other sensor was a wind velocity sensor, an anemometer using a small free-turning electric motor that acted like a generator when spun. Its voltage ranged from zero (dead calm) to 150-200 mV or more depending on the windspeed. I used a switch to change the output so it could be sensitive for low winds or less sensitive for high winds.
The servos had pens attached to them, to draw traces on paper. The paper was pin-feed continous paper, driven by a stepper motor moving the paper at 1 inch per 5 minutes.
Thing is, I made that in 1988 when I did not have very good soldering skills. It stopped working in 2002 and I never could work out what part of the rat's nest went bad.
I am torn between making a clone of the 1988 system, versus one using an Arduino.
I have read up on a lot of microcontroller boards like this thru the years. Parallax, and others. All had various limitations that would produce very crude results.
But on reading some more on the Arduino recently, I think the Arduino Uno board might be able to do it.
Now, my intention is to ONLY replace the the main control box part, which had the Op-Amps and Servo circuits. The same sensor inputs as before, 100 to 150 mV. And the same outputs, to drive the servos, with the pin-feed paper drive. For various reasons, that is still better for the end use than a display on a computer screen (although, possibly farther down the road there might be a Laptop version, or a second one that is Laptop based, but not this year).
Yes, I know there are modern temperature sensor chips. But the nature of this project is very unique. It is for real-time "instant" plotting of changes in temperature, and changes in wind velocity. The most sensitive rapid way to sense the temperature is with a thermistor with a VERY small head. So that it has very little thermal mass. So, it responds quickly to a change in temperature, compared to a larger thermistor. A temperature sensor chip has an even worse problem since its size and thermal mass is many times greater, so it could never react as quickly as a thermistor with a very small head. Do not need to find out what the temperature WAS doing 20-30 seconds ago, need to know now.
Now if there is a simpler/better way to do a wind velocity sensor, I'm fine with that. But for temperature I've not run across anything that can match a tiny-head thermistor in a Wheatstone bridge for high sensitivity real-time.
From what I have been reading, I can input to the Arduino a reference voltage for it to compare to. So let's say for example I could produce a reference voltage of exactly 1.023 volts for it. Does that mean that the Arduino would convert the sensor voltages to 1 millivolt steps? If I used a reference voltage of 0.255 volts, would the Arduino be able to convert the sensor voltages to .25 milivolt steps sensitivity?
That is a key thing. In previous research, a 1024 bit controller would use 5V as the reference, with far too crude results.
Now, most importantly, driving the servos. I need for the servos to be able to move very fine steps, over a small range of motion. Probably in a range of no more than 1.3 to 1.7 ms pulse width total range, so a range of 0.400 ms. To simplify the math example, let's say the total range needed was 0.511 ms. So, what I would want to be able to do would be to use the 1024 increments from the sensors, as described in the previous paragraph, to drive the servos in steps as fine as 0.005 ms, or 5 micro-seconds.
When I was looking at microcontrollers years ago, the finest servo pulse resolution was too crude for this chart recorder.
Does it seem like the Arduino can do this? I'm trying to get a handle on that before I buy one and start tinkering. I would definitely need some help with the programming. I can use some example codes to start, but I don't think I'd be able to do it all on my own (I did a little bit of very simple Basic program tinkering long long ago, very rusty. And I do not mean Basic Stamp, I mean Microsoft Basic in the 1980's!). Once I get a handle on it, and how the system works, then I ought to be able to tweak the numbers to get it to perform as it needs to.
Now, I know some might be curious as to what this is for. A weather station? Not exactly. I don't care about the actual temperature in degrees, or the actual windspeed in mph. What I do need to see is the relative changes in temperature, and windspeed, plotted out with high sensitivity real-time with no delay.
The purpose is for picking thermals, for flying models. For model rocket contests (to determine just the right moment to launch), and for Gliders. I got the idea from reading about Free Flight Model Airplane fliers who made a few recorders. Very often, a rise in temperature, and reduction in wind velocity (or big change in in wind direction) indicates a thermal core coming thru. And an increase in wind speed with temperature drop usually means the thermal has gone by, so forget flying till the next one comes by. Some of you may know them more as "Dust Devils" when a really strong one runs across an area of dust or dried grass that makes them visible.
This kind of thing is not foolproof, picking thermals from ground level is still a bit more of a learned art than science, but the Thermal Chart Recorder is the best equipment I ever used. The images below show the recorder (which I want to get running with a new main box), and one of the plots it used to be able to produce.
- George Gassaway