I moved the circuits to the electronics lab to test it there, and I recreated the situation that was occuring in the lab. I found that when the current limit knob on the power supply was turned down, I consistently got the same response as I was getting in the lab, where the sensor reading would dip when the control voltage turned on, and then rise back up when the control voltage shut off, but the power supply did not display that it was current limited. I then turned the current limit knob all the way up and didn't get this dipping problem (I tried this for >10 toggles). So I think the problems from before are just a result of not having enough current, so I will try to set it up again with the power supply from the electronics lab and see what happens. Some oscilloscope (of the temperature sensor signal) pictures below:
Current limited, toggle control voltage on:
Current limited, toggle control voltage off:
Current not limited, toggle control voltage on (the little bump I think actually corresponds to a rise in temperature from the heater being on):
Current not limited, toggle control voltage off (note decay in temperature reading ~5s in from left edge):
Andrew and I did some stuff in the lab today:
-Taped up the cavity and added some insulation.
-Got the Python version of the PID script running on the acromag computer (including installing the prerequisite libraries epics and cdsutils). The script is attached.
-There were some bursts of noise in the error signal that was messing with the PID loop. Andrew fixed this by increasing the "fast gain" knob on the control box.
-Tuned the PID gains to get the desired response. The gains ended up being Kp = 0, Ki = 0.0021, and Kd = .0014. It seemed like the Kd was acting like how you would expect Kp to, which didn't really make sense to me, but we got a pretty good response from these gains.
Edit: Reattaching script, there was a change in it made on the acromag computer that wasn't reflected in the version I uploaded earlier.
from ezca import Ezca
#A python translation of the RCAV_thermalPID.pl/SLOW_PID.pl script
#translated from perl script