Make this method stub do the calculations we need. The docstring includes things that @aps-7bm included in their position class, but we may or may not need those.
I wrote a test for this here that should check the calculations for the output parameters. I think those are the only ones we need to set up the PSO commands, but maybe I missed some.
A note on units
Units will be tricky here since some values are in the engineering units of the motor, and some are encoder pulses. We should strongly consider using a library like pint to handle unit convertions. I set up a property (motor_egu_pint) to get the pint unit for the motor.
Make this method stub do the calculations we need. The docstring includes things that @aps-7bm included in their position class, but we may or may not need those.
I wrote a test for this here that should check the calculations for the output parameters. I think those are the only ones we need to set up the PSO commands, but maybe I missed some.
A note on units
Units will be tricky here since some values are in the engineering units of the motor, and some are encoder pulses. We should strongly consider using a library like pint to handle unit convertions. I set up a property (
motor_egu_pint
) to get the pint unit for the motor.See Alan's fly_scan_script.py file for calculations to do: https://anl.app.box.com/file/1255083673376
Also, some useful resources: