Sisters Dell ROS 2 Dashing 202004 Part 2 Note and Log
From wikidb
openManipulatorROS220200421.txt 4/21/20 should not have skipped this in the ros install https://raw.githubusercontent.com/ROBOTIS-GIT/open_manipulator/ros2/install_ros_dashing.sh eepp@sisters:~$ mv robotis_ws/ goofed_robotis_ws eepp@sisters:~$ eepp@sisters:~$ eepp@sisters:~$ eepp@sisters:~$ mkdir -p robotis_ws/src eepp@sisters:~$ cd robotis_ws/ eepp@sisters:robotis_ws$ colcon build --symlink-install Summary: 0 packages finished [0.12s] eepp@sisters:robotis_ws$ ls build install log src eepp@sisters:robotis_ws$ this is the key thing I missed eepp@sisters:robotis_ws$ cd eepp@sisters:~$ source robotis_ws/install/local_setup.bash eepp@sisters:~$ emacs .bashrc& [2] 14122 now back to section 10.3 Install ROS 2 Packages http://emanual.robotis.com/docs/en/platform/openmanipulator_x/ros2_setup/#ros-setup Start clean. Not necessary but safer this should have been done so nothing should happen eepp@sisters:~$ sudo apt install ros-dashing-python* ros-dashing-rqt [sudo] password for eepp: Reading package lists... Done Building dependency tree Reading state information... Done Note, selecting 'ros-dashing-python-cmake-module' for glob 'ros-dashing-python*' Note, selecting 'ros-dashing-python-qt-binding' for glob 'ros-dashing-python*' ros-dashing-python-cmake-module is already the newest version (0.7.10-1bionic.20191205.183959). ros-dashing-python-qt-binding is already the newest version (1.0.2-1bionic.20191205.184031). ros-dashing-rqt is already the newest version (1.0.5-1bionic.20200318.045531). 0 upgraded, 0 newly installed, 0 to remove and 15 not upgraded. eepp@sisters:~$ eepp@sisters:~$ eepp@sisters:~$ eepp@sisters:~$ eepp@sisters:~$ cd robotis_ws/src/ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ git clone -b ros2 https://github.com/ROBOTIS-GIT/DynamixelSDK.git Cloning into 'DynamixelSDK'... remote: Enumerating objects: 60, done. remote: Counting objects: 100% (60/60), done. remote: Compressing objects: 100% (47/47), done. remote: Total 12361 (delta 25), reused 28 (delta 9), pack-reused 12301 Receiving objects: 100% (12361/12361), 27.51 MiB | 1.90 MiB/s, done. Resolving deltas: 100% (7076/7076), done. eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ git clone -b ros2 https://github.com/ROBOTIS-GIT/dynamixel-workbench.git Cloning into 'dynamixel-workbench'... remote: Enumerating objects: 19, done. remote: Counting objects: 100% (19/19), done. remote: Compressing objects: 100% (18/18), done. remote: Total 5915 (delta 6), reused 7 (delta 1), pack-reused 5896 Receiving objects: 100% (5915/5915), 1.19 MiB | 688.00 KiB/s, done. Resolving deltas: 100% (3938/3938), done. eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ git clone -b ros2 https://github.com/ROBOTIS-GIT/open_manipulator.git Cloning into 'open_manipulator'... remote: Enumerating objects: 387, done. remote: Counting objects: 100% (387/387), done. remote: Compressing objects: 100% (257/257), done. remote: Total 5396 (delta 183), reused 287 (delta 125), pack-reused 5009 Receiving objects: 100% (5396/5396), 23.06 MiB | 5.04 MiB/s, done. Resolving deltas: 100% (3169/3169), done. eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ git clone -b ros2 https://github.com/ROBOTIS-GIT/open_manipulator_msgs.git Cloning into 'open_manipulator_msgs'... remote: Enumerating objects: 10, done. remote: Counting objects: 100% (10/10), done. remote: Compressing objects: 100% (10/10), done. remote: Total 131 (delta 0), reused 4 (delta 0), pack-reused 121 Receiving objects: 100% (131/131), 26.39 KiB | 2.40 MiB/s, done. Resolving deltas: 100% (59/59), done. eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ git clone -b ros2 https://github.com/ROBOTIS-GIT/open_manipulator_dependencies.git Cloning into 'open_manipulator_dependencies'... remote: Enumerating objects: 65, done. remote: Counting objects: 100% (65/65), done. remote: Compressing objects: 100% (47/47), done. remote: Total 65 (delta 13), reused 65 (delta 13), pack-reused 0 Unpacking objects: 100% (65/65), done. eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ git clone -b ros2 https://github.com/ROBOTIS-GIT/robotis_manipulator.git Cloning into 'robotis_manipulator'... remote: Enumerating objects: 104, done. remote: Counting objects: 100% (104/104), done. remote: Compressing objects: 100% (63/63), done. remote: Total 1182 (delta 61), reused 64 (delta 33), pack-reused 1078 Receiving objects: 100% (1182/1182), 306.03 KiB | 2.22 MiB/s, done. Resolving deltas: 100% (847/847), done. eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ eepp@sisters:src$ cd ~/robotis_ws eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ colcon build --symlink-install Starting >>> dynamixel_sdk Starting >>> cmake_modules Starting >>> open_manipulator_msgs Starting >>> joint_state_publisher Finished <<< joint_state_publisher [1.14s] Starting >>> open_manipulator_x_description Finished <<< cmake_modules [3.70s] Starting >>> robotis_manipulator Finished <<< open_manipulator_x_description [3.52s] Finished <<< dynamixel_sdk [4.73s] Starting >>> dynamixel_workbench_toolbox --- stderr: dynamixel_workbench_toolbox /home/eepp/robotis_ws/src/dynamixel-workbench/dynamixel_workbench_toolbox/src/dynamixel_workbench_toolbox/dynamixel_driver.cpp: In member function ‘bool DynamixelDriver::readRegister(uint8_t, uint16_t, uint16_t, uint32_t*, const char**)’: /home/eepp/robotis_ws/src/dynamixel-workbench/dynamixel_workbench_toolbox/src/dynamixel_workbench_toolbox/dynamixel_driver.cpp:776:27: warning: ISO C++ forbids variable length array ‘data_read’ [-Wvla] uint8_t data_read[length]; ^ /home/eepp/robotis_ws/src/dynamixel-workbench/dynamixel_workbench_toolbox/src/dynamixel_workbench_toolbox/dynamixel_driver.cpp: In member function ‘bool DynamixelDriver::syncWrite(uint8_t, uint8_t*, uint8_t, int32_t*, uint8_t, const char**)’: /home/eepp/robotis_ws/src/dynamixel-workbench/dynamixel_workbench_toolbox/src/dynamixel_workbench_toolbox/dynamixel_driver.cpp:1012:49: warning: ISO C++ forbids variable length array ‘multi_parameter’ [-Wvla] uint8_t multi_parameter[4*data_num_for_each_id]; ^ --- Finished <<< dynamixel_workbench_toolbox [7.70s] Starting >>> dynamixel_workbench Finished <<< dynamixel_workbench [5.31s] Finished <<< robotis_manipulator [18.3s] Starting >>> open_manipulator_x_libs Finished <<< open_manipulator_msgs [29.7s] Starting >>> open_manipulator_x_teleop --- stderr: open_manipulator_x_libs /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp: In member function ‘virtual void kinematics::SolverUsingCRAndJacobian::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp:27:54: warning: unused parameter ‘arg’ [-Wunused-parameter] void SolverUsingCRAndJacobian::setOption(const void *arg){} ^~~ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp: In member function ‘bool dynamixel::JointDynamixel::write_goal_position(std::vector<unsigned char>, std::vector<double>)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:270:38: warning: ISO C++ forbids variable length array ‘id_array’ [-Wvla] uint8_t id_array[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:271:43: warning: ISO C++ forbids variable length array ‘goal_position’ [-Wvla] int32_t goal_position[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp: In member function ‘std::vector<robotis_manipulator::_Point> dynamixel::JointDynamixel::receive_all_dynamixel_value(std::vector<unsigned char>)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:295:38: warning: ISO C++ forbids variable length array ‘id_array’ [-Wvla] uint8_t id_array[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:299:41: warning: ISO C++ forbids variable length array ‘get_current’ [-Wvla] int32_t get_current[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:300:42: warning: ISO C++ forbids variable length array ‘get_velocity’ [-Wvla] int32_t get_velocity[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:301:42: warning: ISO C++ forbids variable length array ‘get_position’ [-Wvla] int32_t get_position[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp: In member function ‘bool dynamixel::JointDynamixelProfileControl::write_goal_profiling_control_value(std::vector<unsigned char>, std::vector<robotis_manipulator::_Point>)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:606:38: warning: ISO C++ forbids variable length array ‘id_array’ [-Wvla] uint8_t id_array[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:607:40: warning: ISO C++ forbids variable length array ‘goal_value’ [-Wvla] int32_t goal_value[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp: In member function ‘std::vector<robotis_manipulator::_Point> dynamixel::JointDynamixelProfileControl::receive_all_dynamixel_value(std::vector<unsigned char>)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:643:38: warning: ISO C++ forbids variable length array ‘id_array’ [-Wvla] uint8_t id_array[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:647:41: warning: ISO C++ forbids variable length array ‘get_current’ [-Wvla] int32_t get_current[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:648:42: warning: ISO C++ forbids variable length array ‘get_velocity’ [-Wvla] int32_t get_velocity[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/dynamixel.cpp:649:42: warning: ISO C++ forbids variable length array ‘get_position’ [-Wvla] int32_t get_position[actuator_id.size()]; ^ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp: In member function ‘virtual void custom_trajectory::Line::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp:95:34: warning: unused parameter ‘arg’ [-Wunused-parameter] void Line::setOption(const void *arg) {} ^~~ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp: In member function ‘virtual void custom_trajectory::Circle::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp:169:36: warning: unused parameter ‘arg’ [-Wunused-parameter] void Circle::setOption(const void *arg){} ^~~ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp: In member function ‘virtual void custom_trajectory::Rhombus::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp:262:37: warning: unused parameter ‘arg’ [-Wunused-parameter] void Rhombus::setOption(const void *arg){} ^~~ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp: In member function ‘virtual void custom_trajectory::Heart::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/custom_trajectory.cpp:336:35: warning: unused parameter ‘arg’ [-Wunused-parameter] void Heart::setOption(const void *arg){} ^~~ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp: In member function ‘virtual void kinematics::SolverUsingCRAndSRJacobian::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp:181:56: warning: unused parameter ‘arg’ [-Wunused-parameter] void SolverUsingCRAndSRJacobian::setOption(const void *arg){} ^~~ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp: In member function ‘virtual void kinematics::SolverUsingCRAndSRPositionOnlyJacobian::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp:447:68: warning: unused parameter ‘arg’ [-Wunused-parameter] void SolverUsingCRAndSRPositionOnlyJacobian::setOption(const void *arg){} ^~~ /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp: In member function ‘virtual void kinematics::SolverCustomizedforOMChain::setOption(const void*)’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_libs/src/kinematics.cpp:713:56: warning: unused parameter ‘arg’ [-Wunused-parameter] void SolverCustomizedforOMChain::setOption(const void *arg){} ^~~ --- Finished <<< open_manipulator_x_libs [14.7s] Starting >>> open_manipulator_x_controller Finished <<< open_manipulator_x_teleop [9.72s] --- stderr: open_manipulator_x_controller /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_controller/src/open_manipulator_x_controller.cpp: In member function ‘void open_manipulator_x_controller::OpenManipulatorXController::init_publisher()’: /home/eepp/robotis_ws/src/open_manipulator/open_manipulator_x_controller/src/open_manipulator_x_controller.cpp:104:21: warning: unused variable ‘name’ [-Wunused-variable] for (auto const & name:tools_name) ^~~~ --- Finished <<< open_manipulator_x_controller [9.35s] Starting >>> open_manipulator_x Finished <<< open_manipulator_x [1.58s] Summary: 12 packages finished [47.9s] 3 packages had stderr output: dynamixel_workbench_toolbox open_manipulator_x_controller open_manipulator_x_libs eepp@sisters:robotis_ws$ Need the full path to the setup file in robotis_ws # Temp disabled because of upgrade to 18.04 source /opt/ros/dashing/setup.bash source /home/eepp/robotis_ws/install/local_setup.bash # source ~/catkin_ws/devel/setup.bash # export ROS_MASTER_URI=http://10.0.0.159:11311 eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ source ../.bashrc bash: robotis_ws/install/local_setup.bash: No such file or directory eepp@sisters:robotis_ws$ emacs ~/.bashrc& [1] 21838 eepp@sisters:robotis_ws$ source ../.bashrc eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ eepp@sisters:robotis_ws$ colcon build --symlink-install Starting >>> dynamixel_sdk Starting >>> cmake_modules Starting >>> open_manipulator_msgs Starting >>> joint_state_publisher Finished <<< cmake_modules [0.61s] Starting >>> robotis_manipulator Finished <<< dynamixel_sdk [0.67s] Starting >>> dynamixel_workbench_toolbox Finished <<< robotis_manipulator [0.50s] Finished <<< dynamixel_workbench_toolbox [0.46s] Starting >>> open_manipulator_x_libs Starting >>> dynamixel_workbench Finished <<< joint_state_publisher [1.16s] Starting >>> open_manipulator_x_description Finished <<< dynamixel_workbench [0.33s] Finished <<< open_manipulator_x_description [0.33s] Finished <<< open_manipulator_x_libs [0.43s] Finished <<< open_manipulator_msgs [1.58s] Starting >>> open_manipulator_x_teleop Starting >>> open_manipulator_x_controller Finished <<< open_manipulator_x_teleop [0.30s] Finished <<< open_manipulator_x_controller [0.30s] Starting >>> open_manipulator_x Finished <<< open_manipulator_x [0.17s] Summary: 12 packages finished [2.27s] eepp@sisters:robotis_ws$ ------ eepp@sisters:~$ eepp@sisters:~$ ros2 launch open_manipulator_x_controller open_manipulator_x_controller.launch.py [INFO] [launch]: All log files can be found below /home/eepp/.ros/log/2020-04-21-10-19-35-905781-sisters-26572 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [launch.user]: Execute OpenManipulator-X Controller!! [INFO] [open_manipulator_x_controller-1]: process started with pid [26585] [ERROR] [open_manipulator_x_controller-1]: process has died [pid 26585, exit code -11, cmd '/home/eepp/robotis_ws/install/open_manipulator_x_controller/lib/open_manipulator_x_controller/open_manipulator_x_controller -d /dev/ttyUSB0 1000000 __node:=open_manipulator_x_controller __params:=/home/eepp/robotis_ws/install/open_manipulator_x_controller/share/open_manipulator_x_controller/param/open_manipulator_x_controller_params.yaml']. eepp@sisters:~$ Is this because no servo has id 11????? eepp@sisters:open_manipulator_x_controller$ ll /dev/ttyACM0 crw-rw---- 1 root dialout 166, 0 Apr 21 09:00 /dev/ttyACM0 eepp@sisters:open_manipulator_x_controller$ sudo chmod 666 /dev/ttyACM0 [sudo] password for eepp: eepp@sisters:robotis_ws$ ros2 launch open_manipulator_x_controller open_manipulator_x_controller.launch.py [INFO] [launch]: All log files can be found below /home/eepp/.ros/log/2020-04-21-10-53-16-803756-sisters-28865 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [launch.user]: Execute OpenManipulator-X Controller!! [INFO] [open_manipulator_x_controller-1]: process started with pid [28878] [ERROR] [open_manipulator_x_controller-1]: process has died [pid 28878, exit code -11, cmd '/home/eepp/robotis_ws/install/open_manipulator_x_controller/lib/open_manipulator_x_controller/open_manipulator_x_controller -d /dev/ttyUSB0 1000000 __node:=open_manipulator_x_controller __params:=/home/eepp/robotis_ws/install/open_manipulator_x_controller/share/open_manipulator_x_controller/param/open_manipulator_x_controller_params.yaml']. eepp@sisters:robotis_ws$ http://wiki.ros.org/open_manipulator http://wiki.ros.org/open_manipulator_control_gui ------ eepp@sisters:dynamixel-workbench$ eepp@sisters:dynamixel-workbench$ pwd /home/eepp/robotis_ws/src/dynamixel-workbench eepp@sisters:dynamixel-workbench$ more README.md