ros-industrial / abb_libegm

A C++ library for interfacing with ABB robot controllers supporting Externally Guided Motion (689-1)
BSD 3-Clause "New" or "Revised" License
93 stars 53 forks source link

Controlling External Axis and Robot #57

Closed jbeck28 closed 4 years ago

jbeck28 commented 5 years ago

I have a bottom-mounted servo (M7DM1), which I'm hoping to control at the same time as the robot arm via EGM. I'm curious if this is possible, and if so what modifications (if any) would need to be incorporated in the state machine to allow such functionality?

Thanks in advance, Josh

gavanderhoorn commented 5 years ago

Yes, starting with recent RWs this is supported. I've discussed setups like this with @jontje recently.

Each mechanism essentially requires one EGM session IIRC.

jontje commented 5 years ago

I have a bottom-mounted servo (M7DM1), which I'm hoping to control at the same time as the robot arm via EGM

Last time I tested controlling an external axis and a robot at the same time with EGM was in RobotWare 6.07. At that time, it required a separate RAPID motion task for each mechanical unit. Then, as @gavanderhoorn mentioned, it required an EGM session in each of those motion tasks (controlling the respective mechanical unit).

I'm curious if this is possible, and if so what modifications (if any) would need to be incorporated in the state machine to allow such functionality?

More or less everything from the TRobEGM module can be reused, as well as the TRobMain module. It would require a couple of system configurations as well.

Also, I took a quick peek in the abb_libegm code and it would require a little bit of work to get it to work properly when an EGM session control an external axis only. Unfortunately, I do not have time to enable that at the moment.

gavanderhoorn commented 4 years ago

Due to no activity I'm going to close this.

As always: feel free to keep commenting on the issue.

We might want to see whether documenting a setup with an external axes makes sense @jontje, now that recent RWs start supporting this.

marekcygan commented 3 years ago

We might want to see whether documenting a setup with an external axes makes sense @jontje, now that recent RWs start supporting this.

@gavanderhoorn @jontje I would like to use EGM together with external axis (rail), if there is some documentation that you could point me to it would be helpful.

jontje commented 3 years ago

@marekcygan, there is no finished documentation yet, but you should be able to follow the example here: https://github.com/ros-industrial/abb_libegm/issues/107#issuecomment-697335285