sbgisen / vesc

VESC Interface for ROS
Apache License 2.0
44 stars 33 forks source link

Add samples of vesc_hw_interface #14

Closed ssr-yuki closed 3 years ago

ssr-yuki commented 3 years ago

No sample launch file exists in vesc_hw_interface package now.

yyagin commented 3 years ago

Hello, @ssr-yuki I want to integrade four vescs using vesc_hw_interface but I don't sure how am i suppose to implement it. Any help will be appreciated.

ssr-yuki commented 3 years ago

Hi @yyagin , thank you for your interest.

We use CombinedRobotHW to drive multiple VESCs, without any additional implements on vesc_hw_interface. In the framework, we just load multiple vesc_hw_interface-s. Please see https://github.com/ros-controls/ros_control/wiki/Writing-CombinedRobotHW

mzahana commented 2 years ago

@ssr-yuki I am trying to use vesc_hw_interface ti interface two VESC controllers. Is there an example launch files and yaml files that demonstrated how to do that?

Here is what I did, but I am unable to interface both controllers.

<launch>

    <arg name="urdf_file" default="$(find amir_robot_description)/urdf/amir.urdf"/>
    <arg name="left_wheel_yaml" default="$(find amir_hardware)/config/left_wheel.yaml"/>
    <arg name="right_wheel_yaml" default="$(find amir_hardware)/config/right_wheel.yaml"/>

    <!-- Robot URDF -->
    <param name="robot_description" textfile="$(arg urdf_file)" />

    <!-- Boot hardware interfaces -->
    <node name="left_wheel_vesc" pkg="vesc_hw_interface" type="vesc_hw_interface_node" output="screen">
        <rosparam command="load" file="$(arg left_wheel_yaml)" />
    </node>

    <node name="right_wheel_vesc" pkg="vesc_hw_interface" type="vesc_hw_interface_node" output="screen">
        <rosparam command="load" file="$(arg right_wheel_yaml)" />
    </node>

</launch>

Why the above launch file won't work?

Thanks in advance.