Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SXD: Solution for AttoCube #6056

Open
3 tasks done
kjwoodsISIS opened this issue Jan 8, 2021 · 5 comments
Open
3 tasks done

SXD: Solution for AttoCube #6056

kjwoodsISIS opened this issue Jan 8, 2021 · 5 comments

Comments

@kjwoodsISIS
Copy link
Contributor

kjwoodsISIS commented Jan 8, 2021

As a scientist I want to be able to control the AttoCube, so that I can control the orientation of the sample in my experiments.

Acceptance Criteria

  • A stream device IOC exists for the AttoCube.
  • An emulator and tests exist.
  • An OPI exists.

Notes

  1. The OPI must offer functionality equivalent to the existing SXD AttoCube positioner VI (located here: C:\LabVIEW Modules\Instruments\SXD\AttoCube).
    1. The AttoCube is driven by a Galil.
    2. Controlled via a Galil using direct commands, so not via standard motor record

Time in Planning

00:15:15 02/05/24

@kjwoodsISIS kjwoodsISIS mentioned this issue Jan 8, 2021
10 tasks
@KathrynBaker KathrynBaker added the 3 label Mar 7, 2024
@KathrynBaker KathrynBaker added this to the SPRINT_2024_03_07 milestone Mar 7, 2024
@github-actions github-actions bot added ready and removed proposal labels Mar 7, 2024
@KathrynBaker KathrynBaker moved this to Backlog in PI_2024_02 Mar 7, 2024
@LowriJenkins LowriJenkins changed the title SXD: OPI for AttoCube SXD: Solution for AttoCube Mar 7, 2024
@LowriJenkins LowriJenkins removed this from the SPRINT_2024_03_07 milestone Mar 8, 2024
@LowriJenkins LowriJenkins removed the status in PI_2024_02 May 1, 2024
@KathrynBaker
Copy link
Member

The front panel of the existing VI is:
image

@KathrynBaker
Copy link
Member

The Galil code for this is proving hard to track down at present, but it is important to note that is not run as a motor by LabVIEW, and as such, it may be best to treat this as a specific piece of equipment using the data set below.

On initialisation the following commands should be sent (in this order):

VERBOSE=0
AB0
MO
XQ #SXD
MG "stop 1" {P2}

BUSY is determined by comparing the response to BUSY= with \s0.0000\r\n:, if they match the system is not busy.
ATANGLE= returns the Angle Postion
Y= returns the Arc Position
If setting the angle send ATTO= with a double between +170 and -170, followed by ATGO=1
If setting the arc send ARK= with a double between -19 and +19, followed by ARGO=1
If stop has been requested send the same set of commands as on initialisation, AB0, MO, XQ #SXD, MG "stop 1" {P2}

In summary there are three values to send, and three values to read.

@GRyall
Copy link
Member

GRyall commented Oct 16, 2024

@GRyall
Copy link
Member

GRyall commented Oct 23, 2024

I am moving this to impeded until we have chance to test with the hardware (request in progress via @LowriJenkins)

@GRyall GRyall moved this from In Progress to Impeded in PI_2024_08 Oct 23, 2024
@KathrynBaker KathrynBaker moved this to Impeded in PI_2025_02 Jan 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Impeded
Status: In Progress
Development

No branches or pull requests

6 participants