*** Wartungsfenster jeden ersten Mittwoch vormittag im Monat ***

Skip to content
Snippets Groups Projects

Adwin code for experminet control

Here all the ADwin code for the LEOLAB (Experimental Quantum Information) at TU Wien is stored. The Code is used for experiment control with the labscript-suite. The implementation of the ADwin device in labscript can be found in the other repository.

Filetypes

.bas Basic code written for ADwin (ADbasic or TiCoBasic)

.TCx Complied ADwin process from Basic code, x is the process number set at compilation time

.TIx Compiled process for TiCo processors, x is the process number set at compilation time

.BAK Backup of basic files (generated by ADwin IDEs)

Output channels

The analog output channels for both AOUT-8 modules are combined in one array with size 16, where the module AOUT1 is set to the values with indices 1-8 and AOUT2 to those with indices 9-16. The same is done for the two analog input modules AIN1 and AIN2.

Variables for Communication with ADwin

The global variables in the ADwin can be used for data transfer with the computer. In the list, all used variables in the processes are described. The datatypes are Long for all Par_xx, Double for FPar_xx, and Arrays for Data_xx (usually with datatype Long).

ADwin main processor

Name Description
Par_1 Process status (running=1, finshed=0)
Par_2 Stop time (in number of process cycles)
Par_10 Tico Process status of DIO1 at end of shot, running (fine) = 1, stopped (error) = 0
Par_20 Tico Process status of DIO2 at end of shot, running (fine) = 1, stopped (error) = 0
Par_13 Time for current event loop in number of CPU cycles (1ns)
Par_15 Process index, updated every event loop
Data_1 Times for setting new analog output (in number of process cycles)
Data_2 Analog output channel where output is updated at time from Data_1
Data_3 Output value ([-10,10]V digitized to 10 bit integer) for channel from Data_2 at time from Data_1
Data_4 Times for setting or changing PID channels (in number of process cycles)
Data_5 Analog output channel that is controlled by PID loop staring from time in Data_4
Data_6 Analog input channel used as feedback to stabilize channel in Data_5 via PID controller
Data_7 TODO input
Data_8 TODO input
Data_9 TODO input