Closed juanjqo closed 2 days ago
Hi @bvadorno and @mmmarinho
I had a hard time implementing the @bvadorno's suggestion. But I think is ready. Thanks, @mmmarinho, for the clarification of some C++ concepts and for the implementation of the internal wrapper.
The current version of this PR only implements the class DQ_CoppeliaSimInterfaceZMQ
and its child class DQ_CoppeliaSimInterfaceZMQExperimental
. The former implements all methods from DQ_CoppeliaSimInterface
and some deprecated ones to ensure backward compatibility with the DQ_VrepInterface. On the other hand, DQ_CoppeliaSimInterfaceZMQExperimental
inherits the methods from DQ_CoppeliaSimInterfaceZMQ
and implements experimental methods.
The other classes, as DQ_CoppeliaSimRobotZMQ
, and some robot classes (e.g., FrankaEmikaPandaCoppeliaSimZMQRobot
or URXCoppeliaSimZMQRobot
will be added in a future PR.
Kind regards,
Juancho
Thanks @juanjqo.
@juanjqo and @bvadorno
I need to merge this pull request as a matter of urgency so that I can prepare my materials for next week's workshop. I'll add some other instructions to issue #1. These will include what @juanjqo mentioned about some remaining tasks to make this interface fully compatible.
It is better that we split this task into multiple pull requests otherwise we will have a difficult monster to handle. In addition, I'll have more experience with this interface to propose improvements.
Before I forget, @juanjqo, when you have the time, please adjust the UML to reflect what was done in this pull request.
Lastly, just FYI, to help disambiguate, I've added the string "[Murilo]" to the commits I made using the shared PC with Juan.
@dqrobotics/developers
This PR adds the first official version of the new DQ Robotics interface to connect with CoppeliaSim based on ZeroMQ remote API. This PR the abstract class
DQ_CoppeliaSimInterface()
, which I proposed here.The new class
DQ_CoppeliaSimZmqInterface()
implements all methods of the superclassDQ_CoppeliaSimInterface()
. Furthermore, the exclusive methods that are enabled by the ZeroMQ remote API are implemented in a different namespace called experimental. I added two examples in my own public repository https://github.com/juanjqo/dqrobotics-interface-coppeliasim-examples/tree/dqrobotics.Furthermore, this PR proposes the following classes
DQ_SerialCoppeliaSimRobot
,DQ_SerialCoppeliaSimZmqRobot
and, two robot classesURXCoppeliaSimZmqRobot
andFrankaEmikaPandaCoppeliaSimZmqRobot
.Initial propose
Final version
Best regards,
Juancho