-
Notifications
You must be signed in to change notification settings - Fork 5
User Interface
Upon starting BlackChirp, the user interface will launch and will look something like the screenshot below (note that some portions of the UI may not be visible depending on the program configuration, and your color scheme may be different):
In the upper left part of the user interface (UI), there are three menu items, as well as a toolbar with commonly-used actions.
- Start Experiment: Launches a wizard that allows the user to configure and initiate an acquisition session. This action is only available if all hardware has connected successfully and if there is no currently ongoing acquisition. More information on this topic can be found on Starting an Experiment.
- Quick Experiment: Start an experiment using the same settings as the previous experiment. This action is only available if at least one experiment has already been performed since the program started, and other conditions for starting an experiment are met.
- Start Sequence: Begin a series of identical experiments one after another, with an optional delay between them.
- Pause: Temporarily suspend an ongoing acquisition. Any FIDs acquired while the acquisition is paused will be ignored, and no other parts of the experiment (e.g., LIF) will advance.
- Resume: Resume a paused acquisition.
- Abort: Abort an ongoing acquisition. Note that aborting an acquisition is not necessarily an error: aborting is the only way to terminate a "Forever" experiment or a "Peak Up" session.
- Export Experiment: Write the last experiment to an ASCII format. More information on the output format can be found at BlackChirp Data Files.
- Export Batch: Export multiple experiments to ASCII. The user can enter any combination of numbers and ranges, with individal entries separated by a comma and ranges by a dash. For example, 3, 6-10, 12, 14 would export experiments 3, 6, 7, 8, 9, 10, 12, and 14.
- Sleep: Puts the program into or out of standby mode. Each HardwareObject may implement a sleep() function that will disable a certain aspect of its functionality until it is awakened. For instance, a FlowController object may turn off all of its flow channels to prevent gas from flowing, and a PulseGenerator may stop generating pulses.
- Communication: Configure and test communication for TCP, RS232, and GPIB instrments. If a communication problem occurs, it is often sufficient to simply open this menu and test the connection to the offending device to reset it and re-enable the program.
- Test all connections: Tests communication to all devices associated with the program.
Most of the items in the View menu simply refocus the program on the corresponding tab. However, there are some exceptions:
- Tracking>Autoscale All: Resets all plots on the tracking tab to their default axis ranges.
- Num Graphs: Change the nunmber of graphs displayed on the tracking tab.
- View Experiment: Launches a window that shows data from a past experiment. From this dialog, you can also resolve snapshots and perform an ASCII export.
- Expt: Shows the number of either the ongoing or last completed experiment, depending on whether an acquisition is active.
- Chamber Status: Shows current pressure in the chamber, if equipped with an appropriate sensor. If the chamber is equipped with a pressure controller, the LED indicates whether control mode is engaged.
-
Clocks: Shows last updated frequencies of various oscillators under the control of BlackChirp.
- UpLO: Frequency used for upconversion of chirp.
- DownLO: Frequency used for downconversion of FID.
- AwgRef: Frequency used as a reference for AWG sample clock.
- DrClock: Frequency used for double resonance experiment.
- DigRef: Frequency used as a reference for Digitizer sample clock.
- ComRef: Frequency of a common reference source (e.g., Rb Clock).
- Flow Status: Shows the most recently measured manifold pressure and gas flow rates, if connected to an actual flow control unit. If a virtual control unit is used, this displays the values entered on the control tab. The LED next to the pressure indicates whether pressure PID control is enabled, and the LED next to each channel indicates whether gas flow is enabled on that channel.
- Pulse Configuration: Indicates which pulse generator channels are currently active.
- FTMW Progress: During an ongoing acquisition that involves CP-FTMW spectroscopy, this bar shows an indication of the CP-FTMW experiment progress. During a "Forever" experiment, this will show a busy progress bar, and during a "Peak Up" session, this will show progress toward filling the number of shots requested in the rolling average.
- LIF Progress: During an ongoing acquisition that involves LIF, this bar shows an indication of the LIF experiment progress.
- Motor Status: Shows positions of three motor axes, status of the limit switches, and progress for a motor scan.
The control tab allows for real-time control of various parts of the instrument between experiments. Depending on the program configuration, not all parts of the UI will be available, and interaction with the controls is only possible when all hardware has connected successfully and no acquisition is ongoing.
The gas control box handles interactions with the gas flow controller, if enabled. If no flow controller is enabled, then this box can be used to record information about the sample composition. Each gas can be assigned a name which will be used elsewhere in the program and in the data files, and the first 8 characters of the name will appear in the gas flow display on the left panel. Entering a setpoint will communicate the new value to the gas flow control unit; if a device is actually connected, the value in the box will be overwritten by the value returned by the control unit once the new setting has been made.
If using a gas flow controller equipped with a pressure gauge for PID control, the pressure setpoint can be entered, and PID control initiated by pressing the "Pressure Control Mode" button. If your system operates in constant flow mode rather than constant pressure mode, it is recommended to use the pressure control mode button as a master on/off switch for all channels instead.
Presently, the units and number of decimal places on these boxes are hardcoded. In the event that more flexibility is needed, upvote issue 4.
If your chamber is equipped with a throttling valve or other PID-enabled device for regulating pressure, the setpoint, control mode, and valve status can be controlled here. If the chamber is only equipped with a sensor (or -1 is chosen for PC in config.pri), this box will not be visible.
At the bottom of the control tab, the program shows the current configuration of the pulse generator, along with a plot summarizing the current configuration. Like most other plots in the program, it can be zoomed with the mouse wheel and panned with the middle mouse button. At present, the pulse generator configuration assumes that all pulse timings are relative to a single clock pulse, and that the pulse rate can be controlled by the user. More complicated configurations may be possible, but are not (yet!) integrated with the software. If these are needed, please file an issue with details.
On the left side of the widget, the delay and pulse width for each channel can be controlled, as well as whether each channel is enabled. Additionally, the repetition rate for the pulser as a whole can be controlled. For each channel, there is a configuration button (indicated by a wrench icon) that allows for additional control:
The pulse channel name will be displayed on the UI. It is best to keep the name 4 characters or fewer. The "Active High/Active Low" button toggles the polarity of the pulse, and the step size boxes control how large of a step is taken when the user clicks one of the arrows or moves the mouse wheel in the corresponding control box for that channel. The "Role" box contains several known functions for pulses. For instance, the AWG role indicates that this pulse triggers the AWG, and BlackChirp will ensure that this channel is active for CP-FTMW experiments. The "Amp" and "Prot" roles, if designated, are used for gating a high-power amplifier and protection switch, respectively. If these pulse roles are active, BlackChirp will ensure that the timings of those channels are coordinated with the chirp duration and AWG trigger delay.
The LIF control panel allows configuration of parameters related to Laser-Induced Fluorescence experiments (only if the program is built with LIF support; see Installation and Configuration). The plot shows the current rolling average of the last several oscilloscope traces, and the controls on the right allow for configuring some of the oscilloscope settings:
Control options:
- LIF V Scale: Sets the vertical scale divisions for the LIF channel on the scope. This should be the channel that records the signal from the LIF detector (e.g., a PMT). Currently, the physical channel to which this corresponds must be hardcoded in the LifScope implementation, but this can be made more flexible in the future if needed.
- Sample Rate: Sets the horizontal sampling rate of the scope.
- Record Length: Sets the number of samples recorded per trigger event.
- Ref Enabled: If enabled, a second channel will be recorded. The integrated LIF signal will be divided by the integrated signal from this channel. This is intended for normalizing the LIF signal by the relative pulse intensity of the excitation laser.
- Ref V Scale: As LIF V scale, but for the reference channel.
More control options are accessible by right-clicking the LIF plot, which can be zoomed by using the mouse wheel and panned by middle-clicking and dragging:
- Autoscale: Reset plot to full scale.
- Wheel zoom factor: Control how strongly each plot axis zooms when scrolling mouse wheel.
- Change LIF Gate: Control the portion of the scope trace that is integrated to make the LIF signal. After choosing this option, use the mouse wheel to adjust the width of the gate (hold Ctrl to make the width change more quickly), and control the center position by moving the mouse. When finished, simply left-click the plot.
- Change Ref Gate: Similar to "Change LIF Gate," but for the reference channel.
- Reset Averages: Clear all averaged traces and restart averaging.
- Average X shots: Change number of shots included in the rolling average.
The LIF and/or ref channel visibilities can be toggled by clicking the corresponding legend item below the plot, and the color of each change can be change by right-clicking its legend entry.
Kyle N. Crabtree, [email protected]