Open julianher opened 3 years ago
Hi @julianher I'll review this issue and get back to you. In the meantime, could you list up the commands you ran? Thanks.
Hi @julianher I'll review this issue and get back to you. In the meantime, could you list up the commands you ran? Thanks.
Hi thank you for helping me with this.
ok so first I am using ROS melodic, AX-12A, USB2Dynamixel and the corresponding power supply.
I'm following this tutorial: https://emanual.robotis.com/docs/en/software/dynamixel/dynamixel_workbench/
the commands I ran are:
In order to give permissions on the USB
$ sudo chmod 777 /dev/ttyUSB0
To find my Servo, ID and baut rate: $rosrun dynamixel_workbench_controllers find_dynamixel /dev/ttyUSB0 the result is this:
As you can see the servo has an ID of 1 and a baut rate of 1000000
and the result of this is:
The launch file is this:
where you can see that I have set the baut rate to 1000000
and the yaml file is this:
Hi @julianher I'll review this issue and get back to you. In the meantime, could you list up the commands you ran? Thanks.
I think making any change in the .launch file is having no effect. I mean, I am supposed to set the baud rate in this file.
To check if any change in this file has effect I deleted all the information in this file and the result is the same. I have even deleted the file and when I call roslaunch dynamixel_workbench_controllers dynamixel_controllers.launch it still does the same. shouldn't I get a no launch found error? I have also done catkin build in my ws. Thus I think when I am setting baud rate to 1000000 this changes are having no effect.
Hi @julianher I have tested with my AX-18A with U2D2. When you are modifying the yaml or launch file, you don't have to rebuild the source.
file structure and build
catkin_make
on /home/willson/catkin_ws
basic.yaml file
pan:
ID: 1
Return_Delay_Time: 0
# tilt:
# ID: 2
# Return_Delay_Time: 0
dynamixel_controllers.launch file
<launch>
<arg name="usb_port" default="/dev/ttyUSB0"/>
<arg name="dxl_baud_rate" default="1000000"/>
<arg name="namespace" default="dynamixel_workbench"/>
...
Result
roscore
on the top terminalrosrun dynamixel_workbench_controllers find_dynamixel /dev/ttyUSB0
and roslaunch dynamixel_workbench_controllers dynamixel_controllers.launch
on the bottom terminal
@ROBOTIS-Will yes it worked. My actual dynamixel_workbench is installed as an apt so the .launch file I am supposed to modify is located in the /opt ... I modified the .launch and the .yaml using sudo gedit.
this happened because I used sudo apt-get install instead of git clone
@ROBOTIS-Will I also need your help.
I have the similar issue with @julianher, so I tired your solution. But it didn't work and I still the problem.
I use XL-320 and USB2Dynamixel. ID: 3 Baud Rate of Dynamixels 1000000 Protocol Version : 2.0
I'll show the situation below.
As you can see, ID is found but items is not. I doublechecked items on https://emanual.robotis.com/docs/en/dxl/x/xl320/ . I can't understand why the program failed to write Return_Delay_Time to Dynamixel.
I tried to fix it by myself over and over but I couldn't. I hope your help. thank you
@yuya-0411 The default baudrate of XL-320 is 1000000bps. Have you checked the dxl_baud_rate argument in the launch file? https://github.com/ROBOTIS-GIT/dynamixel-workbench/blob/master/dynamixel_workbench_controllers/launch/dynamixel_controllers.launch#L3
@ROBOTIS-Will Thank you for your reply.
I checked it over and over. And I doublechecked the baud rate of dynamixels I use. However, the same error appears.
I think baud rate and connection of dynamixels are well because all dynamixels can be found in 1000000 bps when I also run find_dynamixel program.
I'm not sure though, is VMware related to the error? I have ROS on Ubuntu18.04 on VMware.
@yuya-0411 Hmmm... I haven't run on a virtual machine, but I don't think it is much different.
Make sure that the physical USB port is connected to the VMware and check if your VMware uses the same port(/dev/ttyUSB0
) addressed in the launch file.
USB2Dynamixel has a TTL / RS-485 conversion switch and check if this switch is properly set to TTL
side.
Have you also configured the basic.yaml file to match your DYNAMIXEL? https://github.com/ROBOTIS-GIT/dynamixel-workbench/blob/master/dynamixel_workbench_controllers/config/basic.yaml
@ROBOTIS-Will
I checked USB port. It is /dev/ttyUSB0. Actually, I use its port when I run find_dynamixel program.
I always make sure that a switch on USB2Dynamixel is set to TTL side.
I've configured the basic.yaml file along with XL-320 specification. https://emanual.robotis.com/docs/en/dxl/x/xl320/ I will show my basic.yaml and error the below. I don't know why the error is different with what I showed before a little bit. But there is still 'no status packet' message. These errors last until C-ctrl is pressed.
Are there anything wrong in my basic.yaml?
@yuya-0411 I'm sorry for taking long to get back on this. Has this issue been resolved?
@ROBOTIS-Will
I couldn't solve the above problem. But I leaned to use dynamixels on ROS by shifting from dynamixel_workbench to DynamixelSDK. DynamixelSDK allow me to use dynamixels by just doing the below.
~/catkin/src
git clone https://github.com/ROBOTIS-GIT/DynamixelSDK.git
cd ..
catkin_make
Of course, I need to check USB PORT. I actually control dynamixels (not only XL-320 but also XM430-W350-R).
However other problem happened. somehow, some of 5 dynamixels can't constantly receive command. That's why, the robot behaves a little bit weirdly. But this problem is not related to here problem.
thank you
@yuya-0411 Thank you for the updates. Please feel free to create a new issue thread in DYNAMIXEL SDK regarding the problem you are experiencing so we can freely discuss more about it as well as creating some useful examples to resolve your problem. Thank you.
I also encounter this issue when I used a USB-RS485 transfer instead of D2D to connect XM430-W350 motors. So I am curious whether the workbence can also be used to communicate with dyanmixel motors via a common USB-RS485 transfer, such as FTDI FT2232H.
Hi @sunzhon
In case of customized communication interface, I cannot guarantee whether will it work or not. The Workbench should be working fine if the interface device works correctly. Thank you.
ISSUE TEMPLATE ver. 1.0.0
Before you open issue, please refer to ROBOTIS e-Manual
How to setup? (ex, U2D2, OpenCR,...) USB2Dynamixel
Which Dynamixel have you used? and how many? (Please describe below format to all connected Dynamixels)
Model Name AX-12A
ID 1
Baud Rate of Dynamixels 1000000
Protocol Version i guess 1
Write down the commands you used in order
it found my servo:
[ INFO] [1604200550.830647675]: Succeed to init(1000000) [ INFO] [1604200550.830667731]: Wait for scanning... [ INFO] [1604200559.467147520]: Find 1 Dynamixels [ INFO] [1604200559.467172052]: id : 1, model name : AX-12A
but then when I try: