---+ Users Guide

This page describes (some) of the classes,methods and scripts available on the crython git repository. For an introduction into the crython interface see GettingStartedWithCrython.

Cryogenic Hardware Objects


A python module called fridge.py has been created which defines a number of classes useful for the Cryoboard. The module has the following classes.

1 Thermometer
1 Heater
1 FridgeSwitch
1 FridgePump
1 CryoFridge


In this module, the Thermometer object can get the temperature. The heater can get a voltage and set a voltage. The FridgeSwitch and FridgePump objects are both a theremometer and a heater object and represet the base components of a Chase Soprtion Fridge.

Fridge methods


When operating a fridge there are few basic processes that will be useful. For example a script which cycles the fridge. The following is a sample of some of the scripts used at McGill, what they do, and how we use them. They are all availble in the git repository

cryocycle.py

      $ Usage: cryocycle.py [options] board_ip  
       Options:
            -h, --help show this help message and exit
            -T TEMPS, --temps=TEMPS Temperature to heat pumps to. Default is 35 K
            -I INTERMEDIATE_TEMP, --intermediate_temp=INTERMEDIATE_TEMP Intermediate temperature. To heat in stages. Default is 25 K
            -m MAINPLATE_TEMP, --mainplate_temp=MAINPLATE_TEMP Main plate base temperature. Default is 4.7 K

This script cycles a He10 fridge. It first instantiates a fridge object corresponding to the fridge connected to the cryoelectronics board with an ip address: board_ip. The script heats the pumps to a temperature given by temps and then waits until the mainplate has cooled to mainplate_temp. At that point it starts the He4 cycle by cooling the He4 pump. Once the He4 has been exhausted the He3 cycle starts by cooling the He3 pumps. This script can be run from the command line. eg.

       >> ./cryocycle.py -T35 -I25 -m4.7 192.168.1.139  
       

The following methods can be found in the crython/mcgill/ directory of the crython repository

tc_pid.py

     Usage: tc_PID.py [options] board_ip feedback_sensor_channel feedback_heater_channel
     Options:
     -h, --help            show this help message and exit
     -r RATE, --rate=RATE  Set the PID controlled cooling/warming rate (in mK/sec). Default = 0.075 mK/sec
                        
     -L LOW, --Low=LOW     Set the low temperature turnaround point for the PID.  Default = 300 mK
                       
     -H HIGH, --High=HIGH  Set the high temperature stop point for the PID. Default = 700 mK

This method is a PID to control the rate at which the the temperature of the ultrahead changes (or whatever the ultrahead is connected to). It uses a heater and a sensor to first bring the temperature above that set by HIGH, then is cools the sensor at the rate RATE to the low temperature threshold set by LOW. It then warms the sensor at the same rate. This is useful for measuring Tc of superconducting detectors since you can slowly sweep through the expected Tc range.

       >> ./tc_pid.py -r0.05 -H750 -L325 192.168.1.139 11 8  
       

bring_bolo_above_Tc.py

    Usage: bring_bolo_above_Tc.py [options] board_ip feedback_sensor
    Options:
    -h, --help  show this help message and exit

This method slowly heats the He3 pumps to raise the feedback_sensor (UChead or Bolo) temperature above Tc. The Bolos should reach ~ 850 mK.

       >> ./bring_bolo_above_Tc.py 192.168.1.139 11  
       

drop_bolos.py

    Usage: drop_bolos.py [options] board_ip
    Options:
    -h, --help  show this help message and exit

This method slowly cools the He3 pumps to drop the bolos below their Tc value. It monitors the fridge mainplate temperature to keep it cold.

       >> ./drop_bolos.py 192.168.1.139  
 

cool_down_script.py

    Usage: cool_down_script.py [options] board_ip thermometer
    Options:
     -h, --help            show this help message and exit
     -c, --cron            Set cryocycle.py in crontab.  Note: If you're not on
                               LotusFlowerTower, this may get confusing.  Default is
                               4am
     -H HOUR, --hour=HOUR  Hour to set the cryocycle in the crontab.
     -m MIN, --min=MIN     Minute to set the cryocycle in the crontab.
     -L, --log      Save the output of the cryocycle logs in the
                       CryoMonitoring directory (only works on computers with
                       access to /workspace

This script is used when cooling the cryostat from room temperature to base temp. It keeps the He pumps hot while attempting to keep the Fridge mainplate cold. It monitors the feedback_thermometer to estimate when to start considering the mainplate temperature. At the end of the script a cryocycle is run. The c,H,m options can be used to put the cryocycle in the crontab. Without H or m the c option defaults to 4 am. The L option sets the output from the crontab cryocycles to be logged. It is hardcoded to write to /workspace/daquser/CryoMonitoring/ directory.

       >> ./cool_down_script.py -c -H3 -m30 -L 192.168.1.139 11
       

warm_up_script.py

     Usage: warm_up_script.py [options] board_ip
     Options:
     -h, --help  show this help message and exit
     -c, --cron  Set to kill the cryocycle in the crontab.

This script is used when warming up the cryostat from the base temperature to room temperature. It sets a voltage on all available heaters. The c option will remove any crontab command that uses the cryoboard IP address

       >> ./warm_up_script.py -c 192.168.1.139


This topic: CryoElectronics > WebHome > UsersGuide Topic revision: r2 - 2012-08-16 - JamesKennedy
© 2020 Winterland Cosmology Lab, McGill University, Montréal, Québec, Canada