40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  PSL  Not logged in ELOG logo
Message ID: 2255     Entry time: Wed Nov 21 17:54:00 2018
Author: anchal 
Type: DailyProgress 
Category: TempCtrl 
Subject: Notes about Cavity Heater PID 

Last night I ran PIDAutoTune.py for Cavity heaters.


Breif description of this code:
PIDAutoTune.py : Originally written by awade, this code implements Relay method to find PID constants for a  general PID setup with EPICS channel. For now, one needs to make some changes in the code itself for different setups, but I'm trying to make it more general slowly. Relay Methos involves in actuating in a hard step function manner. The code simply switched back and forth between +h and -h (h is called Relay Amplitude ahead) according to which side of setpoint the process is. The system ideally reaches an oscillatory state and the amplitude and time period of these oscillations provide means to estimating the PID constants. Refer 'Relay-based PID Tuning' by D. Williams for more details.


So after running this code for the first time, I understood the direction (or sign of Kp) required. Using these and with a more settled pre-cavity beat frequency, I ran the code again with the following parameters:
Relay Amplitude = 1.0 W
Initial Differential Heating (Actuator) = 0.0 W
Common Heating = 0.5 W
Setpoint = 500 MHz
This gave the following results:
Critical Gain, Kc = 0.107
Critical Time Period = 1663 s (Note the high oscillation time)
PID constants: Kp = 0.0214, Ki = 2,576e-5, Kd = 11.87


Manual feedback:

So the above values obviously didn't work like any other first result. But I found important insights from them (listed below). Then I just manually tried to bring the frequency down to the region of interest (around 27 MHz) and this manual tweaking also gave me some intelligence about these cavity heaters (listed below). I was able to reach around 34 MHz with an almost stable beatnote.


Conclusions from this run:

  • The heaters of the two cavities are not equally effective. The South Cavity heater is almost twice as better as the North one. So because of this, with our present PID which uses differential heating, we can not do this very well. So I will probably make a provision for setting an offset from 0 around which the differential heating should be actuating.

  • The PIDlocker needs to be adapted with lasers crossing each other in frequency. This basically changes the required direction of actuation. We need to put in something which detects if the lasers are flipped so that the sign of PID constants is changed. For this, I'll put in a new channel for changing signs of the constants and modify PID locker accordingly.

  • Because of the long critical time period, the Kd constant will probably need to be much more than the allowed region in HOPR and LOPR. I have already made it +-50 in the database file.


Current measurement:

I'm running a new PIDAutoTuner measurement:
RelayAmplitude = 0.75 W
Offset = 0.25 W (So Differential Heater switches between -0.5W to 1W)
Setpoint = 34 MHz
Initial Differential Heater (Actuator) = 0 W
Common Heater = 0.5 W
Runtime = 15 hrs
I'm hoping I'll get more accurate data this time as the frequency is very stable with at most 100 kHz fluctuations pk-pk.

 

ELOG V3.1.3-