Analog: Force/Drag Simulation (publ. 2025-05-23)
I recently setup a simulation that involves modeling the movement of a projectile in a straight line, taking into account simply the force from the engine (for example, rocket output) and the air drag. Air (or fluid) drag increases proportionally to the square of velocity, meaning air drag increases dramatically the faster you are going. The link below is a screenshot of simulation run results, with engine force on the top and the velocity of the projectile on the bottom. Because the signals are inverted, you must understand that a lower signal value means a higher simulation value, i.e., a lower line means more force or more velocity.
Simulation results in a model including engine force (thrust) and air drag. Signal outputs are inverted, so down means more force or velocity.
The model involves three coefficient potentiometers, one for engine thrust, one for the mass of the projectile, and one for the air drag factor. That third coefficient potentiometer combines into one the various things that go into air drag, i.e., air density, shape of the projectile, and cross-sectional area. Another potentiometer is used to scale the force down by ten, to match up with the built-in scaling from the multiplier chip.
Air drag causes your projectile to eventually reach a terminal velocity, hence the reason that the projectile does not keep accelerating forever in the simulation, which the engine is turned on. Also air drag causes you to gradually slow down when the engine is turned off.
diagram of the model: v̇ = (F-kv²)/m
The model does not deal with loss of mass due to burning up fuel, which is significant on a rocket. This model could also apply to cars and trucks except that it does not model rolling friction, which is very important especially at lower speeds.
I want also to work out another run with scaled values from real data points (force in Newtons, mass in kilograms, etc.) but learning how to do the scaling is challenging and I am still working on that.
One problem with this model is that, since the velocity is squared, the sign of the velocity is lost. This means the air drag applies only in one direction no matter what. Consequently, if I let the velocity down to 0, and then the velocity drifts down any tiny amount into the negative — say due to noise or offset problems — then the air drag will cause the velocity to start rapidly increasing further into the negative. This would be like if you put your vehicle into reverse, and suddenly the air drag from your small movement started to push you backwards faster, and pretty soon you were careening backwards at hundreds of miles per hour. Thankfully, God created a more sensible and consistent universe than that. The model could be easily fixed with a comparator but I don't have any comparators on my computer.
I've learned a lot more about the problems and limitations with my analog computer design, but the lunch break is over and I'll have to save that for a later post.
Copyright
This work © 2025 by Christopher Howard is licensed under Attribution-ShareAlike 4.0 International.
CC BY-SA 4.0 Deed