Skip to content
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

Arbotix-m board instead of USB2Dynamixel controller #6

Open
Abduoit opened this issue Oct 17, 2017 · 0 comments
Open

Arbotix-m board instead of USB2Dynamixel controller #6

Abduoit opened this issue Oct 17, 2017 · 0 comments

Comments

@Abduoit
Copy link

Abduoit commented Oct 17, 2017

Hi @pirobot

I am following ros-by-example volume 1 for Tracking a visual target, it is really useful.

I am on ros-indigo now, I want to use same material to control Phantomx Pincher robotic arm, since it uses same type of servos which are dynamixel ax-12a

However, I am encountering a problem, I am using arbotix-m board, and in the book they used USB2Dynamixel controller, so the launch file is different.

I want to control the servo id 1 based on the motion of a detected object.

What I did so far is as follow

I run

roslaunch rbx1_vision usb_cam.launch
roslaunch rbx1_vision camshift.launch

When I run roslaunch rbx1_dynamixels head_tracker.launch

The output is

[INFO] [WallTime: 1508247666.419934] Waiting for joint controllers services...

Then I run following launch that I created it by myself since I am using arbotix-m board

roslaunch rbx1_dynamixels arbotix.launch

The content is

<launch>
    <node name="arbotix" pkg="arbotix_python" type="arbotix_driver" output="screen">
        <rosparam file="$(find rbx1_dynamixels)/config/arbotix_params.yaml" command="load" />
    </node>
    
  <node name="gripper_controller" pkg="arbotix_controllers" type="gripper_controller">
      <param name="model" value="singlesided"/>
      <param name="invert" value="true"/>
      <param name="pad_width" value="0.0254"/>
  </node>

</launch>

The file arbotix_params.yaml is

source: pincher_arm.yaml
port: /dev/ttyUSB0
baud: 115200
rate: 20
sync_write: True
sync_read: True
read_rate: 15
write_rate: 25
joints: {
    head_pan_joint: {id: 1, cwlimit: 35,  ccwlimit: 900, offset: 511, speed: 40},
    arm_shoulder_lift_joint: {id: 2, cwlimit: 100, ccwlimit: 900, offset: 511, speed: 40},
    arm_elbow_flex_joint: {id: 3, cwlimit: 100, ccwlimit: 900, offset: 511, speed: 40},
    arm_wrist_flex_joint: {id: 4, cwlimit: 180, ccwlimit: 900, offset: 511, speed: 40},
    gripper_joint: {id: 5, cwlimit: 30,  ccwlimit: 400, offset: 215, speed: 40}
}

ArbotiX is connected BUT when I run rostopic info /roi I see the following output, which is not correct.

imr@IMR-PC:~$ rostopic info /roi
Type: sensor_msgs/RegionOfInterest

Publishers: 
 * /camshift (http://localhost:42869/)

Subscribers: None

The book is giving instruction for USB2Dynamixel controller only, but I am using arbotix-m board.

I am so confusing now, please tell me where I am mistaken !!!!

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant