-
Notifications
You must be signed in to change notification settings - Fork 174
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[dynamixel_workbench_controllers] Protocol 2.0 servos with Present Load Registers #322
Comments
Hi @swiz23, You are right. |
Wait... I checked the convertValue2Load() function. That function is meant to convert raw register values that go from 0 - 2047 as explained here by the xl320 or a similar servo. The purpose is to map the values from -1022 to 1022. However, the xl430 servo doesn't need this function as its raw register value already is mapped from -1000 to +1000 (as shown here). So why should those dynamixels need to use the convertvalue2load function? Also, what do you mean that the the dynamixel workbench will be replaced by the Dynamixel SDK? Are you saying that the dynamixel_workbench_toolbox api will no longer be maintained, and only the lower level dynamixel_sdk repo will be supported? |
@swiz23 DYNAMIXEL Workbench was initially designed to support DYNAMIXEL configuration under Linux environment, and some additional packages had been appended to support ROS. |
One of the really nice things about the dynamixel_workbench_toolbox package though (specifically the toolbox package as opposed to the dynamixel_workbench_controllers or dynamixel_workbench_operators packages) is that it abstracts away all register addresses, and provides a higher level api for developers to use. Will this package be ported over into the dynamixel_sdk? Or will it be totally redesigned? Or will it just not be included? I've done a bunch of development on-top of the dynamixel_workbench_toolbox package (like 25 different types of robots I wrote software for use it), so I'm kind of freaking out now :/ Also, I thought that the Dynamixel Wizard 2.0 tool isn't something you can develop on - it's just a really good debugging and testing utility... |
@swiz23 |
Hi,
I noticed at...
dynamixel-workbench/dynamixel_workbench_controllers/src/dynamixel_workbench_controllers.cpp
Line 483 in 455fb5a
...that even if a Protocol 2.0 servo does not have a Present_Current register, but a Present_Load register, the line mentioned above still converts the raw load value to a current (by mutliplying by 2.69). I was just curious to know if this was done on purpose as opposed to just putting the raw load value directly into the joint states topic? Or does multiplying by 2.69 actually give a more accurate representation of what the current might be?
The text was updated successfully, but these errors were encountered: