-
Notifications
You must be signed in to change notification settings - Fork 122
PreciseFlex Arm Driver #619
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
base: main
Are you sure you want to change the base?
Conversation
49a6770 to
159fd78
Compare
bffeb24 to
a1d61b7
Compare
… the Backend abstractmethods
…unndant method, chenge default ip address, change test_get_base assertion to tuple, add sleep to test_set_power
…lidation - Updated get_signal to correctly parse response and return signal value. - Modified get_location_z_clearance to return z_world as a boolean. - Enhanced set_location_z_clearance to convert z_world to an integer for command. - Improved get_location_config and set_location_config to handle bit mask configurations with validation checks.
…refactor speed handling and location management
…onfiguration tests
|
@rickwierenga combining the two would be fine if you think it'll lower complexity. |
…e operations - Introduced VerticalAccess and HorizontalAccess data classes to define access patterns. - Updated approach, pick_plate, and place_plate methods to accept access patterns. - Improved documentation for methods to clarify usage and default behaviors.
|
@rickwierenga I also wanted to mention a complication with the pick/place/approach methods. These work by setting a station location in the robot's memory. Then the robot grabs from from that location. But it grabs differently depending what access type is set to that station. This is an internal flag it keeps with each station.
So the movement changes for each:
Depending on access type, the z-clearance changes meaning:
So this can be a bit confusing... plus theres a few other access parameters that can be changed. I've added a commit here to fix this with a AccessConfig dataclass to describe how to access the plate. Let me know your thoughts. |
|
awesome, thank you! |
|
|
Im not too sure off the top of my head. I was working with the pf3400 and setup the pf400 as a bit of place holder to work with in the future. I can't remember if I looked up the info when I did that. I'll need to review some things to get the answer to you. With the PF3400, I don't think it has a grip width. It's either open or close. I'm not sure if this is true with the PF400 or not. I'll look into it a bit more tonight or tomorrow once I'm home. |
|
with the pf400 (which we have) I have been using |
eabfeb5 to
2624bf7
Compare
|
I looked through the docs and code some but can't find the definitive answer I'm looking for to answer your questions about the gripping and the ElbowOrientation. My thoughts are that the ElbowOrientation was different due to a difference in the number of joints between PF3400 and PF400. And that the use of the commands between grip width and binary open/close is more dependent on the gripper attached than the actual model of arm. I'm going to be on-site with them Monday, so it might just be best to ask them. |
|
I see the ElbowOrientation swap you were talking about now. That was wrong, both arms use 1 = LEFT and 2 = RIGHT. I just made a commit to fix that. |
… for MultiHeadDispenseContainer
Untested Driver
This adds:
Docs haven't been updated yet.
There's a warning included in the PreciseFlexBackend docstring that it's untested.