ultracoldYEG / cycle-control

Controls various hardware for digital, analog, and radio-frequency signals
MIT License
1 stars 0 forks source link

External trigger for individual sequence steps #4

Open bdsmith147 opened 6 years ago

bdsmith147 commented 6 years ago

We want to make any given sequence step to wait for a trigger pulse before it executes. The source for the trigger is the 60 Hz AC line noise in the room. This noise is awful because it destabilizes the magnetic field at the atom cloud. By triggering the sequence steps in this manner, we can make sure that the atom cloud "sees" the same phase of the AC signal from shot to shot - thus eliminating what appear to be "random fluctuations" from the 60 Hz noise.

lindsayleblanc81 commented 6 years ago

Looking into this, I think we want to activate the "Wait for Event" function of the pulseblaster at a time of our choosing. This is, I think, "OPcode" 8 = WAIT

http://www.spincore.com/support/spinapi/using_spin_api_pb.shtml#Instruction http://www.spincore.com/support/spinapi/using_spin_api_pb.shtml#Triggering

Eg, we would like to 1) execute a number of instructions (MOT, Molasses, Btrapping, RF-evaporation, optical trapping.) 2) send the "Wait" instruction to the pulseblaster 3) Wait until a trigger is sent (somewhere? Should be to the "hardware trigger" pin 2 of the IDC connector, pin 1 on the male DB-9, pin 5 on female DB-9; p 18-19 of PulseBlaster manual) that is synchronized to the 60 Hz line, so that the trigger fires at the same phase of the 60 Hz cycle each time. This wait time will be upto 17 ms in general, but it's probably okay if it's a second cycle. 4) The rest of the cycle should then execute with the set of instructions to do the actual measurement, then imaging.