Peter Plays with Python and PID

Attached is a python file that can simulate move absolute commands. The picture shows a simple move using only proportional gain. At this time there are no feed forwards.
The simplest way to run the software is to download Anaconda
and install it. There is an editor or IDE called Spyder that will run the program.
You could download python, numpy, scipy and matplotlib separately for a leaner installation but it takes a little work to get these packages working.

The goal is to provide a simple way of testing how different controller gains and system parameters affect the motion.
This is not a work of art…yet. (2.71 KB)

It is a three order profile

This is a second order motion profile.
pos(t)=a+bt+ct^2 when accelerating and decelerating.
The velocity profile is linear.
The acceleration is c/2 or 0.
on I show s-curve ramps using sin() and cos() functions.

Third order motion profiles require a lot of code.
This is a third order motion profile
A proper third order motion profile is very complicated.

I have updated the HydSim program. The program was getting too big so now it is broken up into smaller modules.
I added a different way of plotting. It is much simpler.
I fixed numerous small bugs.
I added more control options and a cosine target generator.