Closed ghost closed 6 years ago
Hi, currently our arm died. So we need to fix that first. We will test when it's working (likely after IROS though)
@mzillich @bajo the only working arm is in Vienna and they want to test the newest version of the driver as soon as possible, I will merge this and you only have to clone the upstream repository
@ipa-nhg @lokalmatador I was not in Vienna for a few weeks, so I am a little bit out of the loop. What and how should we test this pr?
Whether the controller does not publish when not actuated. So the requirement was to basically screw ros_control's design idea by making it only publish to the command topics when it really gets a command as otherwise, navigation would never be able to move the base. I think this was the problem. So you basically have to test whether our dirty hack works :D Another thing we also need to look into are the joint limits, which for now are not enforced as of the base (it only has velocity limits but no position limits resulting in that those limits for now appear to be zero which yields a robot that does not move at all!). In case, either you ask Michael or we can have a skype/hangout meeting tomorrow (after 3 pm) or on Friday.
Cheerio!
@ipa-nhg @lokalmatador Sorry for the late reply. I am unable to start the new control at all.
I tried it via roslaunch robotino_bringup tuw-robotino2.launch
and roslaunch squirrel_control squirrel_control.launch
Because of the new hardware and the fact that our hand is not yet back to Vienna I had to disable a few things in our tuw-robotino2.launch
After launching it I receive this output.
`roslaunch robotino_bringup tuw-robotino2.launch ... logging to /home/squirrel/.ros/log/668f2dfc-9ec6-11e7-bfb3-00190f153f00/roslaunch-robotino-15185.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://robotino:36343/
PARAMETERS
NODES /kinect/ depth_metric (nodelet/nodelet) depth_metric_rect (nodelet/nodelet) depth_points (nodelet/nodelet) depth_rectify_depth (nodelet/nodelet) depth_registered_hw_metric_rect (nodelet/nodelet) depth_registered_metric (nodelet/nodelet) depth_registered_rectify_depth (nodelet/nodelet) driver (nodelet/nodelet) kinect_nodelet_manager (nodelet/nodelet) points_xyzrgb_hw_registered (nodelet/nodelet) rgb_rectify_color (nodelet/nodelet) /arm_controller/ joint_states_relay (topic_tools/relay) ros_control_controller_manager (controller_manager/controller_manager) squirrel_control_node (squirrel_control/squirrel_hw_main) / airskin (airskin/airskin) bumper_sound (airskin/bumper_sound.py) hokuyo (hokuyo_node/hokuyo_node) kinect_base_link (tf/static_transform_publisher) kinect_base_link1 (tf/static_transform_publisher) kinect_base_link2 (tf/static_transform_publisher) kinect_base_link3 (tf/static_transform_publisher) origin_odom (tf/static_transform_publisher) robot_state_publisher (robot_state_publisher/robot_state_publisher) robotino_node (robotino_driver/robotino_driver) robotino_odometry_node (robotino_driver/robotino_odometry_node) robotino_pan_controller (robotino_driver/robotino_pan_controller) robotino_safety_node (robotino_safety/robotino_safety_node) robotino_tilt_controller (robotino_driver/robotino_tilt_controller) soundplay_node (sound_play/soundplay_node.py) twist_marker (twist_mux/twist_marker) twist_mux (twist_mux/twist_mux)
ROS_MASTER_URI=http://robotino:11311
core service [/rosout] found process[robot_state_publisher-1]: started with pid [15206] process[robotino_node-2]: started with pid [15207] process[robotino_safety_node-3]: started with pid [15208] process[airskin-4]: started with pid [15221] [ WARN] [1506000624.562152709]: The root link origin has an inertia specified in the URDF, but KDL does not support a root link with an inertia. As a workaround, you can add an extra dummy link to your URDF. process[bumper_sound-5]: started with pid [15232] process[soundplay_node-6]: started with pid [15246] process[robotino_odometry_node-7]: started with pid [15264] process[origin_odom-8]: started with pid [15269] [ INFO] [1506000624.620117909]: opening I2C device: '/dev/ttyAirskin' [ INFO] [1506000624.626748230]: Devantech USB-ISS adapter, rev. 6, serial number: 00021662
[ INFO] [1506000624.626867016]: using AirSkin sensor 5-forearm-end with I2C address (8 Bit) 08
[ INFO] [1506000624.626902528]: using AirSkin sensor 6-hand with I2C address (8 Bit) 0A
[ INFO] [1506000624.626935508]: using AirSkin sensor 4-forearm-top with I2C address (8 Bit) 0C
[ INFO] [1506000624.626963312]: using AirSkin sensor 2-upperarm-top with I2C address (8 Bit) 0E
[ INFO] [1506000624.626988218]: using AirSkin sensor 3-forearm-bottom with I2C address (8 Bit) 10
[ INFO] [1506000624.627015842]: using AirSkin sensor 1-upperarm-bottom with I2C address (8 Bit) 12
process[hokuyo-9]: started with pid [15277]
process[kinect/kinect_nodelet_manager-10]: started with pid [15299]
process[kinect/driver-11]: started with pid [15303]
process[kinect/rgb_rectify_color-12]: started with pid [15320]
process[kinect/depth_rectify_depth-13]: started with pid [15349]
process[kinect/depth_metric_rect-14]: started with pid [15359]
process[kinect/depth_metric-15]: started with pid [15392]
process[kinect/depth_points-16]: started with pid [15393]
process[kinect/depth_registered_rectify_depth-17]: started with pid [15401]
[ INFO] [1506000624.916232287]: Odometry connected to Robotino.
process[kinect/points_xyzrgb_hw_registered-18]: started with pid [15431]
[ INFO] [1506000624.936504155]: Initializing nodelet with 4 worker threads.
process[kinect/depth_registered_hw_metric_rect-19]: started with pid [15454]
[ INFO] [1506000624.969094479]: pad 5-forearm-end (addr 08) ready
process[kinect/depth_registered_metric-20]: started with pid [15458]
process[kinect_base_link-21]: started with pid [15483]
process[kinect_base_link1-22]: started with pid [15494]
process[kinect_base_link2-23]: started with pid [15502]
process[kinect_base_link3-24]: started with pid [15510]
process[robotino_tilt_controller-25]: started with pid [15518]
process[robotino_pan_controller-26]: started with pid [15529]
process[arm_controller/squirrel_control_node-27]: started with pid [15544]
process[arm_controller/ros_control_controller_manager-28]: started with pid [15550]
process[arm_controller/joint_states_relay-29]: started with pid [15556]
process[twist_mux-30]: started with pid [15564]
process[twist_marker-31]: started with pid [15580]
[ INFO] [1506000625.298380905]: Topic handler 'teleop' subscribed to topic 'cmd_teleop': timeout = 0.250000s, priority = 100
[ INFO] [1506000625.356535036]: Topic handler 'navigation' subscribed to topic 'cmd_navigation': timeout = 0.250000s, priority = 90
[ INFO] [1506000625.386325379]: Topic handler 'pushing' subscribed to topic 'cmd_pushing': timeout = 0.250000s, priority = 80
[ INFO] [1506000625.392758899]: Topic handler 'rotatory' subscribed to topic 'cmd_rotatory': timeout = 0.500000s, priority = 70
[ INFO] [1506000625.403104164]: Topic handler 'simulation' subscribed to topic 'cmd_sim': timeout = 0.500000s, priority = 1
[ INFO] [1506000625.416551219]: Topic handler 'pause_navigation' subscribed to topic 'twist_mux/locks/pause_navigation': timeout = None, priority = 101
[ INFO] [1506000625.426671491]: Topic handler 'pause_pushing' subscribed to topic 'twist_mux/locks/pause_pushing': timeout = None, priority = 91
[ INFO] [1506000625.447726858]: Topic handler 'pause_rotatory' subscribed to topic 'twist_mux/locks/pause_rotatory': timeout = None, priority = 81
[ INFO] [1506000625.458308308]: Topic handler 'pause_sim' subscribed to topic 'twist_mux/locks/pause_rotatory': timeout = None, priority = 1
[ERROR] [1506000626.093273269]: failed to get mean for pad 6-hand (addr 0A)
[ INFO] [1506000626.172874337]: RobotinoNode connected to Robotino.
[ INFO] [1506000626.263839171]: No matching device found.... waiting for devices. Reason: std::string openni2_wrapper::OpenNI2Driver::resolveDeviceURI(const string&) @ /tmp/binarydeb/ros-indigo-openni2-camera-0.2.8/src/openni2_driver.cpp @ 642 : Invalid device number 1, there are 0 devices connected.
[ INFO] [1506000626.377869698]: Waiting for model URDF on the ROS param server at location: //arm_controller/robot_description
[ INFO] [1506000626.418549498]: pad 4-forearm-top (addr 0C) ready
[ INFO] [1506000626.735025472]: pad 2-upperarm-top (addr 0E) ready
[ INFO] [1506000626.907019198]: Connected to device with ID: H0904773
[ INFO] [1506000627.005914136]: Starting calibration. This will take up a few seconds.
[ INFO] [1506000627.047208768]: pad 3-forearm-bottom (addr 10) ready
[ INFO] [1506000627.359046115]: pad 1-upperarm-bottom (addr 12) ready
[ INFO] [1506000627.360678379]: arm skin is ready
[ERROR] [1506000627.360745449]: Airskin is damaged
[airskin-4] process has finished cleanly
log file: /home/squirrel/.ros/log/668f2dfc-9ec6-11e7-bfb3-00190f153f00/airskin-4.log
Found 0 motors
Motors started.
[ INFO] [1506000629.048363903]: SquirrelHWInterface ready.
Intializing loop...
Looping...
[ INFO] [1506000629.264148836]: No matching device found.... waiting for devices. Reason: std::string openni2_wrapper::OpenNI2Driver::resolveDeviceURI(const string&) @ /tmp/binarydeb/ros-indigo-openni2-camera-0.2.8/src/openni2_driver.cpp @ 642 : Invalid device number 1, there are 0 devices connected.
[arm_controller/squirrel_control_node-27] process has died [pid 15544, exit code -11, cmd /home/squirrel/catkin_ws/devel/lib/squirrel_control/squirrel_hw_main name:=squirrel_control_node log:=/home/squirrel/.ros/log/668f2dfc-9ec6-11e7-bfb3-00190f153f00/arm_controller-squirrel_control_node-27.log].
log file: /home/squirrel/.ros/log/668f2dfc-9ec6-11e7-bfb3-00190f153f00/arm_controller-squirrel_control_node-27.log
[arm_controller/squirrel_control_node-27] restarting process
process[arm_controller/squirrel_control_node-27]: started with pid [16057]
[ INFO] [1506000630.097855518]: Calibration finished. Latency is: -0.0815
[ INFO] [1506000630.371139385]: Waiting for model URDF on the ROS param server at location: //arm_controller/robot_description
[ INFO] [1506000630.421700191]: Streaming data.
[ INFO] [1506000632.264417616]: No matching device found.... waiting for devices. Reason: std::string openni2_wrapper::OpenNI2Driver::resolveDeviceURI(const string&) @ /tmp/binarydeb/ros-indigo-openni2-camera-0.2.8/src/openni2_driver.cpp @ 642 : Invalid device number 1, there are 0 devices connected.
Found 0 motors
Motors started.
[ INFO] [1506000633.043999195]: SquirrelHWInterface ready.
Intializing loop...
Looping...
Traceback (most recent call last):
File "/opt/ros/indigo/lib/controller_manager/controller_manager", line 63, in
After that I killed it. What am I missing here? Thanks
@federico-b and @mzillich could you please test this?