Newsgroups: comp.robotics
From: lyndond@roverpte.demon.co.uk (Lyndond David)
Path: brunix!news.Brown.EDU!noc.near.net!howland.reston.ans.net!pipex!uknet!demon!roverpte.demon.co.uk!lyndond
Subject: Re: PID motor routines 
Distribution: world
References: <sdoran.751154716@cygnus.cis.ksu.edu.cis.ksu.edu>
Organization: Rover Group
Reply-To: Lyndond@roverpte.demon.co.uk
X-Newsreader: Simple NEWS 1.90 (ka9q DIS 1.21)
Lines: 19
Date: Fri, 22 Oct 1993 00:08:21 +0000
Message-ID: <751248501snz@roverpte.demon.co.uk>
Sender: usenet@demon.co.uk

Sounds like what you need are Z transforms. Just the ticket. You
design your pid in the s domain as normal, substitute s for an equation
in z that moves you into the discrete time domain and a bit of algebraic
jiggery pokery later you have an equation of the form

az+bz-1+cz-2

Where a,b,c are constants, z-1 is the last value output, z-2 is the value
before that etc. Just remains to keep a list of past values and start
multiplying. Get a good book, a starting place is Modern control systems
by Dorf.

These do more than just pid, you can do anything that you can describe with
s transforms and hence linear differential equations. Filters, easy. Especially
if you have a filter cookbook.
-- 
Lyndon David
Rover Group - Vehicle and Powertrain Electronics
My views not of my employer etc.....
