Clarifying PLR iswap terms

someone asked me a question about iswap terminology. i will copy my answer here so everyone can read it:

For Hamilton STAR iSWAP, is the naming of the wrist rotation different between firmware documentation and PLR?

rotate_iswap_rotation_drive and rotate_iswap_wrist control the individual drives. for rotate_iswap_wrist , WristOrientation.straight and WristOrientation.reverse refer to the wrist drive wrt rotation drive. “straight” and “reverse” are local terms. straight is extension, reverse ie opposite direction. so straight can be any of the four deck directions (front,back,left,right), it depends on the rotation drive.

iswap_rotate has a rotation_drive parameter, but also grip_direction. grip_direction is a PLR term and ‘global’ (wrt deck). because that is much easier than ‘straight’ & ‘reverse’

GripDirection (global):

  • left
  • right
  • front
  • back

grip direction is used by high level PLR commands like pick_up_resource and drop_resource

WristOrientation (iswap specific, wrt rotation drive)

  • straight
  • left
  • right
  • reverse

RotationDriveOrientation (iswap specific, wrt deck)

  • left
  • right
  • front

extended the docs to be clearer extend iswap module docs · PyLabRobot/pylabrobot@62b94f0 · GitHub

Thank you @rickwierenga, this is very useful!

May I ask, what is meant by “module” in this context?

Is it the command module R0 (i.e. code) or is it the physical channel with the SCARA arm attached to it, combined called internal swivel arm plate handler (iSWAP)?

in the page title? it is documenting how to use the robot iswap in PLR (for robots that have one)

there are separate hardware guides, many about iswap, in the hardware section under hamilton star

Yes of exactly, what is meant by “module” in the title, the firmware command module or the entire physical entity?

the entire concept, including firmware, plr interface, hardware relevant to those things. pure hardware guides are an exclusion, because they live in the hardware guide

1 Like