76 TinyPID

76 : TinyPID

Design renderSelect Project123456789ONSW2
  • Author: Aidan Medcalf
  • Description: Tiny PID controller with SPI configuration channel, SPI ADC and DAC driver
  • GitHub repository
  • Clock: 1 Hz

How it works

TinyPID reads from a shift register, calculates error and PID values, and writes to a shift register. All parameters of this process are configurable.

How to test

Shift in config, then shift in PV input and see what happens. There are three bytes of configuration (setpoint, kp, ki), which are zero on startup.

External hardware

One shift register / ADC for PV read, one shift register / DAC for stimulus output.

IO

#InputOutput
0clockpv_in_clk
1resetpv_in_cs
2out_clk
3cfg_clkout_mosi
4cfg_mosiout_cs
5
6cfg_cs
7pv_in_miso