Create custom ROS service call #570
Replies: 3 comments
-
Everything is possible, as this is all "just software". Depending on how much time you're willing to invest, it can be done. It would not be trivial though, seeing as you'd have to extend not just MotoROS (running on the controller), but also the underlying A bit of a plug perhaps, but for Yaskawa-Global/motoros2, we purposefully went with a(n almost) transparent bridge, which makes MotoROS2 (almost) a native ROS 2 node which can use regular ROS 2 message, service and action definitions. Adding a service there is some work, but not as involved as it would be here, in MotoROS. Note that INFORM job start/stop is on the roadmap of MotoROS2 as well. |
Beta Was this translation helpful? Give feedback.
-
There otherway that might be easier: You could use the existing I/O service to set and read I/Os and handshake for with the robot job.
When you call the robot_disable service the job could go through various instructions like the one above to determine what to do next. There are also various other communication protocol on the Yaskawa controller that allows you to set a job and start its execution. I would recommand looking at the High-Speed Ethernet Server. You can find details in chapter 3 of the Ethernet Function manual: 178942-1CD |
Beta Was this translation helpful? Give feedback.
-
Interesting ideas. Thanks @gavanderhoorn and @EricMarcil. I will definitely try digging into this as a side project. |
Beta Was this translation helpful? Give feedback.
-
Robot: GP4
Controller: YRC1000
ROS version: Noetic
Recently, by mistake, I added a
MOVJ
command in INIT_ROS (image attached)That changed the behavior of the ros service call
robot_disable
. The robot instead of stopping where it is, the robot went to a fixed location and stopped.Is it possible to create custom ros service calls to execute a job on a pendant? For example, if I call
exec_job1
, it executesjob1
preprogrammed on the pendant.Beta Was this translation helpful? Give feedback.
All reactions