I’m hoping to write a driver for the Precise Flex PF400. I noticed that PLR docs indicate a driver is coming soon-ish? Is there already a work in progress branch I can pull and contribute to? Or a defined ArmBackend base class in a branch?
Very happy to contribute to the development as well. Please let me know whether you want to make the branch or otherwise I’d make one in the next week - perfect timing
The Brooks Automation PreciseFlex 400 comes (to my knowledge) in many variations:
4 Factors:
Horizontal reach
standard reach: 433 mm - becomes 579 mm w// standard gripper
extended reach: 588 mm - becomes 734 mm w/ standard gripper
Vertical reach
400 mm
750 mm
1,160 mm
Integrated vision/Camera system
with camera
without camera
rail reach (when upgraded with the linear rail system):
1 meter
1.5 meter
2 meter
I think we can set up a general preciseflex class that can use these design configurations as input during instantiation.
Which one do you have, so we know which one to start with?
I don’t actually have a Precise Flex arm yet. I have some example client code, server code, and docs to build the driver from, for now. It should be enough to get some of the basics done until I can get access to a device.
Since there’s a few different forms, we can pick whatever form you’re working with. The 750 mm, no rail, no cam is probably a good starting point.
As for creating the branch, I don’t think I have the ability to create a branch on the PLR repo.
I submitted a PR to the main branch with a warning in the backend’s docstring saying it hasn’t been tested yet.
Hopefully the code’s not too far off the mark. Blind coding without the device connected usually ends up being pretty buggy.
No rush on testing from my end. I don’t have access to the device anyways, so it’s mostly just a rough template to build out an Orca adapter on my end, for now.
@CamilloMoschner, I haven’t written tests yet. For now, it’s just a draft until there’s a device connected. I should be able to get access to an arm around mid-August, I think.
@mike, great! Thanks for the help! I’ll send you a connection request.
user guide says “Open a browser in a PC that is connected to the robot via Ethernet. The user must know the IP address of the robot controller. Two common IP addresses are 192.168.0.1 and 192.168.0.10. The PC LAN interface address must be configured correctly (for example 192.168.0.100, with subnet mask 255.255.255.0).”
192.168.0.1 works for me (for web interface at least)