-
Notifications
You must be signed in to change notification settings - Fork 2
Description
As a scientist using HIFI under IBEX I want to be able to view my corrected fields.
Acceptance Criteria
What is the acceptance criteria?
- Verify with the instrument scientists that this is readback only, no control was apparent in the Group 3 Hall Probe VI before undertaking this work, and how it needs to appear
- Create the wireframe adapted from the VI front panel after a discussion with the instrument scientsts
- An IOC exists for this functionality
- An OPI exists for this functionality
- Appropriate tests and emulators exist
Extra Information
-
This is a spin off ticket from HIFI: IOC and OPI for Group 3 Hall Probe #6088 6088 and there is more detail in there of background
-
The Front panel of that VI is a messy starting point for the one here

-
The field readings will come from the Group 3 Hall Probe (Ticket HIFI: Group 3 Hall Probe #8400) IOC
-
The output values for the PSU Current Readback will come from the appropriate magnets which are served from the cryomagnet system
-
The coil inhomogenities field table is a matrix specified in an ini file at present, this may be achievable as macros, or other file system
-
The persistent gradients are an array specified in an ini file at present, this may be achievable as macros, or other file system
-
The logic to reach the required values is as follows:
Adjusted Fields = Array of field readingsInterim coil values (context for ease of understanding the next displayed items) = For each PSU: {Adjusted Fields = Adjusted Fields - (multiply each value in the appropriate column in the coil inhomogenities field table with the PSU current readback)}- The appropriate columns are x = 0, y = 1, and z = 2
Corrected for coils = Interim coil values + [x current, y current, z current, x current, y current, z current]Persistent grad value = Interim Coil Values[4] - Interim Coil Values[1]corrected for persistent fields (context value again) = Interim coil values - (persistent gradients*persistent grad value)- Split the corrected for persistent fields into two arrays, elements 0,1,2 in one and 3,4,5 in the other. Add these two arrays together and divide by 2, and subtract the final offsets, then add these values to the psu current readback to get X, Y, and Z.
-
There is a "cleaner" VI Array Maths Example that may make this easier to understand, ask if access is needed, it is the repo for the old LabVIEW modules, and not available via GitHub
How to Test
verbose instructions for reviewer to test changes
(Add before making a PR)
Time in recording of planning meeting: 01h07m 2024/11/28