- michaelSParticipantOctober 26, 2018 at 3:36 pmPost count: 4
I’d love specific info on how the drill and wall drawing demos were created, but even a description of the general approach would be great. Can this be done through Niryo Studio through a series of saved positions or poses? Or, does this require more low level control through ROS or an external Arduino?
I have been reading about IK solutions within ROS, but before I jump into learning all this I would really like to know if there is a simpler approach.
Thank you!Edouard RenardKeymasterNovember 8, 2018 at 1:51 pmPost count: 239
First of all, we have removed the drill and pen holder due to the lack of precision of the robot for drilling and drawing tasks + security issues with the drill (we didn’t want to take the risk that someone would be hurt).
However, if you want to do drilling or drawing tasks (which are basically the same from a programming point of view), it’s still possible. You can create your own tool handler to plug on the tool adapter (you can find the mechanical specs on our website). For the drill, you can take a 12V DC motor, plug it to SW1 or SW2 at the back of the robot, and power it ON and OFF with the digital pin panel (or using the SW functionality in Blockly)
For the trajectories: we only handle point to point movement without constraint on trajectory, in Niryo One Studio. However, in the code we have also implemented a functionality to save and replay trajectories (here on github). So you can create your own trajectory with whatever constraints you want, save them, and replay them.michaelSParticipantNovember 22, 2018 at 4:33 amPost count: 4
Thank you for the clarification. I must be way over my head as I’m not able to see how to get started with the linked trajectory file or even how that would work. I’ll try to get started learning ROS to see if I can understand this better though.
In the meantime, would you please answer a couple questions about this in general?
- Would a trajectory define the movement the tool along a predefined path, or is it the rotation of one or more joints?
- Do I need to use an IK program to move the tool along a predefined path?
- Do you have plans to add this type of functionality to Niryo Studio, or would this need to be developed on my own in ROS?
Thank youEdouard RenardKeymasterNovember 22, 2018 at 5:57 pmPost count: 239
We have created a small guide to give you more info if you want to start with Niryo One and ROS, I encourage you to read it first.
Also, after you learn a little bit about ROS, you might want to check out the Moveit! library and especially the Move Group class (tuto here).
For your questions:
- In fact it’s both. A trajectory is a list of points to reach. For each point you get the rotation for each axis. And of course, the points are computed so the movement of the TCP (Tool Center Point) will follow a predefined path (if any). Then, the controller (low level) will interpolate through those points and will make sure the hardware (motors) is following.
- There is already an IK solver included in Moveit that you can use. You can either: use some Moveit functionalities, like cartesian path, or create your own path and use the IK solver for each intermediate point of the path.
- For now we don’t have plan to add more complex trajectory options in Niryo One Studio. This will be something that you have to do using the ROS functionalities (and Moveit)
Feel free to share your progress with the Niryo community ! 🙂
- You must be logged in to reply to this topic.