NoMagicAi / abb_librws

A C++ library for interfacing with ABB robot controllers supporting Robot Web Services
BSD 3-Clause "New" or "Revised" License
0 stars 5 forks source link

Contribute #24

Open herrvonregen opened 2 years ago

herrvonregen commented 2 years ago

Hey @mkatliar I would like to contribute to use the library with the ABB ROS Driver. I saw that you made a lot of recent changes so I'd like to ask where to start so we can work together.

My guess to start would be to alter the rws_state_machine_interface to use both v1_0 and v2_0 depending on the controller it communicates with.

mkatliar commented 2 years ago

Hello @herrvonregen ! I am glad that you want to contribute. Here are the main development directions in our fork of abb_librws:

  1. Deprecate the RWSInterface class and split its interface into free functions. The functions live in namespaces corresponding to RWS services, e.g. abb::rws::v1_0::rw::rapid.
  2. Remove all functionality related to RWS services from RWSClient, s.t. it only manages REST-style communication with the server, being unaware of RWS-specific details.
  3. Merge POCOClient into RWSClient.
  4. Review and improve the Subscription service implementation.
  5. Add tests.

You are welcome to contribute to any of those, as well as make your own improvements. I personally never used rws_state_machine_interface, but if you think it is useful to make it work with RWS 2.0, go ahead!