pcdshub / Bug-Reports-and-Requests

Issue Tracking for PCDS Software
BSD 3-Clause "New" or "Revised" License
1 stars 1 forks source link

Pseudopositioners / Kappa motors for XPP Gon #56

Closed silkenelson closed 3 years ago

silkenelson commented 4 years ago

Feature Request The upcoming XPP experiments will use the kappa setup for the XPP goniometer. The physical 3 motors are combined into virtual motors that make sense for the physics people are looking at. We have an implementation in the old beamlinepython: /reg/g/pcds/pyps/xpp/dev/xpp/xppkappa.py

Existing Alternatives Use old python

Context The scientists will use the old python if they need too. The old python will hopefully make clean what we need. Typically, we either have the XYZ motors connected or the Kappa motors: if the kappa motors are 'active', these motors would also be created in a beam line session. Takahiro can answer questions if they arise.

ZLLentz commented 3 years ago

I remember these being coordinate transforms- somewhat simpler than the other calculated motors to implement.

How do we know whether or not the kappa motors are active? Is there any automatic way to tell? (alarm state? double limit hits?)

silkenelson commented 3 years ago

We should: the kappa motors are smart motors, so the state of the PVs should indicate if the kappa is there or not. The old beamline python did that if I remember right.

ZLLentz commented 3 years ago

One more question: the old code did a check/confirm if the user asked for a move greater than a certain distance threshold- presumably because the kappa is big and scary. Should we recreate that here?

silkenelson commented 3 years ago

I think we should reproduce what we have. How far is this? The experiment is on Friday (though I have to reconfirm if the current geometry required the combined motion).

cristinasewell commented 3 years ago

I think I pretty much reproduced what we had with the calculations, but that PR needs some more review. I have the mv_e_eta, mv_e_chi and mv_e_phi which check for the step, but I was not sure if I should somehow include the check/confirm into the forward as well?