From 161e2175ff75bcbe4588cee51e559eada9f99e53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathias=20L=C3=BCdtke?= Date: Wed, 14 Dec 2016 16:41:36 +0100 Subject: [PATCH 1/6] added external sync mode, generate CAN config on-the-fly --- cob_bringup/drivers/canopen_402.launch | 14 ++++++++++++-- cob_bringup/package.xml | 1 + 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/cob_bringup/drivers/canopen_402.launch b/cob_bringup/drivers/canopen_402.launch index ab8b0f265..6210ad33c 100644 --- a/cob_bringup/drivers/canopen_402.launch +++ b/cob_bringup/drivers/canopen_402.launch @@ -5,11 +5,21 @@ + + + + + + + + {bus: { device: $(arg can_device) }, sync: { interval_ms: $(arg interval_ms), overflow: $(arg overflow) } } + - + - $(arg can_device) + {bus: { device: $(arg can_device) }, sync: { interval_ms: $(arg interval_ms), overflow: $(arg overflow) } } + diff --git a/cob_bringup/package.xml b/cob_bringup/package.xml index efad3641b..ef99d4a9e 100644 --- a/cob_bringup/package.xml +++ b/cob_bringup/package.xml @@ -16,6 +16,7 @@ roslaunch camera1394 + canopen_chain_node canopen_motor_node cob_android_script_server cob_base_drive_chain From 86a47488f96409a36cbb4c3b1cbeba381411c9b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathias=20L=C3=BCdtke?= Date: Wed, 14 Dec 2016 16:51:34 +0100 Subject: [PATCH 2/6] overwrite sync interval only in external sync mode --- cob_bringup/drivers/canopen_402.launch | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cob_bringup/drivers/canopen_402.launch b/cob_bringup/drivers/canopen_402.launch index 6210ad33c..50461a2d9 100644 --- a/cob_bringup/drivers/canopen_402.launch +++ b/cob_bringup/drivers/canopen_402.launch @@ -18,7 +18,8 @@ - {bus: { device: $(arg can_device) }, sync: { interval_ms: $(arg interval_ms), overflow: $(arg overflow) } } + {bus: { device: $(arg can_device) } } + {sync: { interval_ms: $(arg interval_ms), overflow: $(arg overflow) } } From 6d5516efcd6aa4c40ad7679d1f2a4eda34ba4d0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathias=20L=C3=BCdtke?= Date: Wed, 14 Dec 2016 16:42:05 +0100 Subject: [PATCH 3/6] use external and shared sync mode on cob4-10 --- cob_bringup/robots/cob4-10.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cob_bringup/robots/cob4-10.xml b/cob_bringup/robots/cob4-10.xml index 75e00c279..84a45f560 100644 --- a/cob_bringup/robots/cob4-10.xml +++ b/cob_bringup/robots/cob4-10.xml @@ -123,6 +123,8 @@ + + @@ -130,6 +132,9 @@ + + + From 71dae05f256f6874ea89c681da00a66c678085e9 Mon Sep 17 00:00:00 2001 From: cob4-7 Date: Thu, 19 Jan 2017 20:16:16 +0100 Subject: [PATCH 4/6] head and sensorring on one bus --- cob_bringup/components/canopen_base.launch | 10 +++++++++- cob_bringup/components/canopen_generic.launch | 8 ++++++++ cob_bringup/drivers/canopen_402.launch | 8 ++++---- cob_bringup/robots/cob4-10.xml | 6 +----- cob_bringup/robots/cob4-7.xml | 9 ++++----- 5 files changed, 26 insertions(+), 15 deletions(-) diff --git a/cob_bringup/components/canopen_base.launch b/cob_bringup/components/canopen_base.launch index c386946b6..884bc6198 100644 --- a/cob_bringup/components/canopen_base.launch +++ b/cob_bringup/components/canopen_base.launch @@ -1,15 +1,23 @@ - + + + + + + + + + diff --git a/cob_bringup/components/canopen_generic.launch b/cob_bringup/components/canopen_generic.launch index 95d2b1e93..ad0b6a87c 100644 --- a/cob_bringup/components/canopen_generic.launch +++ b/cob_bringup/components/canopen_generic.launch @@ -2,7 +2,12 @@ + + + + + @@ -10,6 +15,9 @@ + + + diff --git a/cob_bringup/drivers/canopen_402.launch b/cob_bringup/drivers/canopen_402.launch index 50461a2d9..a5a0b7604 100644 --- a/cob_bringup/drivers/canopen_402.launch +++ b/cob_bringup/drivers/canopen_402.launch @@ -5,13 +5,13 @@ - + - - + + - + {bus: { device: $(arg can_device) }, sync: { interval_ms: $(arg interval_ms), overflow: $(arg overflow) } } diff --git a/cob_bringup/robots/cob4-10.xml b/cob_bringup/robots/cob4-10.xml index 84a45f560..1584701bd 100644 --- a/cob_bringup/robots/cob4-10.xml +++ b/cob_bringup/robots/cob4-10.xml @@ -116,7 +116,6 @@ - @@ -124,8 +123,7 @@ - - + @@ -134,8 +132,6 @@ - - diff --git a/cob_bringup/robots/cob4-7.xml b/cob_bringup/robots/cob4-7.xml index 9b858b304..d595595b4 100644 --- a/cob_bringup/robots/cob4-7.xml +++ b/cob_bringup/robots/cob4-7.xml @@ -116,35 +116,34 @@ - - - - + + - + + From 36241abdfaeaa63fd953336dc8e5843c9d13fae7 Mon Sep 17 00:00:00 2001 From: cob4-7 Date: Thu, 19 Jan 2017 20:17:47 +0100 Subject: [PATCH 5/6] adapt diagnostics --- .../cob4-1/config/diagnostics_analyzers.yaml | 18 ++++----------- .../cob4-10/config/diagnostics_analyzers.yaml | 18 ++++----------- .../cob4-2/config/diagnostics_analyzers.yaml | 22 ++++++------------ .../cob4-3/config/diagnostics_analyzers.yaml | 12 ++-------- .../cob4-4/config/diagnostics_analyzers.yaml | 12 ++-------- .../cob4-5/config/diagnostics_analyzers.yaml | 23 +++++++------------ .../cob4-6/config/diagnostics_analyzers.yaml | 12 ++-------- .../cob4-7/config/diagnostics_analyzers.yaml | 22 ++++++------------ 8 files changed, 38 insertions(+), 101 deletions(-) diff --git a/cob_hardware_config/cob4-1/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-1/config/diagnostics_analyzers.yaml index ba52d4d32..cf8a66fcb 100644 --- a/cob_hardware_config/cob4-1/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-1/config/diagnostics_analyzers.yaml @@ -104,27 +104,19 @@ analyzers: torso: type: diagnostic_aggregator/GenericAnalyzer path: Torso - contains: 'torso/driver' + contains: 'torso/' # head: # type: diagnostic_aggregator/GenericAnalyzer # path: Head -# contains: 'head/driver' +# contains: 'head/' # sensorring: # type: diagnostic_aggregator/GenericAnalyzer # path: Sensorring -# contains: 'sensorring/driver' +# contains: 'sensorring/' base: - type: diagnostic_aggregator/AnalyzerGroup + type: diagnostic_aggregator/GenericAnalyzer path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - contains: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' + contains: 'base/' safety: type: diagnostic_aggregator/GenericAnalyzer diff --git a/cob_hardware_config/cob4-10/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-10/config/diagnostics_analyzers.yaml index d69fb0467..0c98a49b5 100644 --- a/cob_hardware_config/cob4-10/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-10/config/diagnostics_analyzers.yaml @@ -104,27 +104,19 @@ analyzers: torso: type: diagnostic_aggregator/GenericAnalyzer path: Torso - contains: 'torso/driver' + contains: 'torso/' head: type: diagnostic_aggregator/GenericAnalyzer path: Head - contains: 'head/driver' + contains: 'head/' sensorring: type: diagnostic_aggregator/GenericAnalyzer path: Sensorring - contains: 'sensorring/driver' + contains: 'sensorring/' base: - type: diagnostic_aggregator/AnalyzerGroup + type: diagnostic_aggregator/GenericAnalyzer path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - contains: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' + contains: 'base/' safety: type: diagnostic_aggregator/GenericAnalyzer diff --git a/cob_hardware_config/cob4-2/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-2/config/diagnostics_analyzers.yaml index 7a78639cd..10e88d96b 100644 --- a/cob_hardware_config/cob4-2/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-2/config/diagnostics_analyzers.yaml @@ -104,35 +104,27 @@ analyzers: torso: type: diagnostic_aggregator/GenericAnalyzer path: Torso - contains: 'torso/driver' + contains: 'torso/' arm_right: type: diagnostic_aggregator/GenericAnalyzer path: Arm Right - contains: 'arm_right/driver' + contains: 'arm_right/' arm_left: type: diagnostic_aggregator/GenericAnalyzer path: Arm Left - contains: 'arm_left/driver' + contains: 'arm_left/' # sensorring: # type: diagnostic_aggregator/GenericAnalyzer # path: Sensorring -# contains: 'sensorring/driver' +# contains: 'sensorring/' # head: # type: diagnostic_aggregator/GenericAnalyzer # path: Head -# contains: 'head/driver' +# contains: 'head/' base: - type: diagnostic_aggregator/AnalyzerGroup + type: diagnostic_aggregator/GenericAnalyzer path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - contains: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' + contains: 'base/' safety: type: diagnostic_aggregator/GenericAnalyzer diff --git a/cob_hardware_config/cob4-3/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-3/config/diagnostics_analyzers.yaml index c9b06e8da..fc70f8ff3 100644 --- a/cob_hardware_config/cob4-3/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-3/config/diagnostics_analyzers.yaml @@ -24,17 +24,9 @@ analyzers: path: Actuators analyzers: base: - type: diagnostic_aggregator/AnalyzerGroup + type: diagnostic_aggregator/GenericAnalyzer path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - startswith: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' + contains: 'base/' sensors: type: diagnostic_aggregator/AnalyzerGroup diff --git a/cob_hardware_config/cob4-4/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-4/config/diagnostics_analyzers.yaml index 25c8290a5..5aff4031f 100644 --- a/cob_hardware_config/cob4-4/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-4/config/diagnostics_analyzers.yaml @@ -24,17 +24,9 @@ analyzers: path: Actuators analyzers: base: - type: diagnostic_aggregator/AnalyzerGroup + type: diagnostic_aggregator/GenericAnalyzer path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - startswith: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' + contains: 'base/' sensors: type: diagnostic_aggregator/AnalyzerGroup diff --git a/cob_hardware_config/cob4-5/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-5/config/diagnostics_analyzers.yaml index 84ac8190e..b4ae13c3f 100644 --- a/cob_hardware_config/cob4-5/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-5/config/diagnostics_analyzers.yaml @@ -81,26 +81,14 @@ analyzers: type: diagnostic_aggregator/AnalyzerGroup path: Actuators analyzers: - base: - type: diagnostic_aggregator/AnalyzerGroup - path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - contains: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' arm_left: type: diagnostic_aggregator/GenericAnalyzer path: Arm Left - contains: 'arm_left/driver' + contains: 'arm_left/' arm_right: type: diagnostic_aggregator/GenericAnalyzer path: Arm Right - contains: 'arm_right/driver' + contains: 'arm_right/' gripper_left: type: diagnostic_aggregator/GenericAnalyzer path: Gripper Left @@ -112,7 +100,12 @@ analyzers: sensorring: type: diagnostic_aggregator/GenericAnalyzer path: Sensorring - contains: 'sensorring/driver' + contains: 'sensorring/' + base: + type: diagnostic_aggregator/GenericAnalyzer + path: Base + contains: 'base/' + safety: type: diagnostic_aggregator/GenericAnalyzer path: Safety diff --git a/cob_hardware_config/cob4-6/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-6/config/diagnostics_analyzers.yaml index 25c8290a5..5aff4031f 100644 --- a/cob_hardware_config/cob4-6/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-6/config/diagnostics_analyzers.yaml @@ -24,17 +24,9 @@ analyzers: path: Actuators analyzers: base: - type: diagnostic_aggregator/AnalyzerGroup + type: diagnostic_aggregator/GenericAnalyzer path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - startswith: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' + contains: 'base/' sensors: type: diagnostic_aggregator/AnalyzerGroup diff --git a/cob_hardware_config/cob4-7/config/diagnostics_analyzers.yaml b/cob_hardware_config/cob4-7/config/diagnostics_analyzers.yaml index 3c1a666fe..0dcfdae98 100644 --- a/cob_hardware_config/cob4-7/config/diagnostics_analyzers.yaml +++ b/cob_hardware_config/cob4-7/config/diagnostics_analyzers.yaml @@ -104,35 +104,27 @@ analyzers: torso: type: diagnostic_aggregator/GenericAnalyzer path: Torso - contains: 'torso/driver' + contains: 'torso/' arm_right: type: diagnostic_aggregator/GenericAnalyzer path: Arm Right - contains: 'arm_right/driver' + contains: 'arm_right/' arm_left: type: diagnostic_aggregator/GenericAnalyzer path: Arm Left - contains: 'arm_left/driver' + contains: 'arm_left/' sensorring: type: diagnostic_aggregator/GenericAnalyzer path: Sensorring - contains: 'sensorring/driver' + contains: 'sensorring/' head: type: diagnostic_aggregator/GenericAnalyzer path: Head - contains: 'head/driver' + contains: 'head/' base: - type: diagnostic_aggregator/AnalyzerGroup + type: diagnostic_aggregator/GenericAnalyzer path: Base - analyzers: - base: - type: diagnostic_aggregator/GenericAnalyzer - path: drives - contains: 'base/driver' - base_twist_mux: - type: diagnostic_aggregator/GenericAnalyzer - path: twist_mux - contains: 'twist_mux' + contains: 'base/' safety: type: diagnostic_aggregator/GenericAnalyzer From 2604cae036b9f15cb8d11265ed443ddd06ae1b31 Mon Sep 17 00:00:00 2001 From: cob4-7 Date: Fri, 20 Jan 2017 16:44:20 +0100 Subject: [PATCH 6/6] activate 3dof head --- .../cob4-7/head_joint_configurations.yaml | 6 ++--- .../cob4-7/config/head_controller.yaml | 26 +++++++++---------- .../cob4-7/config/head_driver.yaml | 18 ++++++------- 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/cob_default_robot_config/cob4-7/head_joint_configurations.yaml b/cob_default_robot_config/cob4-7/head_joint_configurations.yaml index 15cbfa3d4..a42c7191b 100644 --- a/cob_default_robot_config/cob4-7/head_joint_configurations.yaml +++ b/cob_default_robot_config/cob4-7/head_joint_configurations.yaml @@ -1,4 +1,4 @@ -joint_names: ["head_2_joint","head_3_joint"] +joint_names: ["head_1_joint", "head_2_joint", "head_3_joint"] action_name: /head/joint_trajectory_controller/follow_joint_trajectory service_ns: /head/driver default_vel: 0.6 @@ -17,8 +17,8 @@ back_up_full: [[1.57, -3.14, 4.71]] back_down: [[-0.5, 1.0, 2.64]] back_down_full: [[-1.57, 3.14, 1.57]] -left: [[1.57, 0.0, 0.0]] -right: [[-1.57, 0.0, 0.0]] +left: [[0.0, 0.0, 1.57]] +right: [[0.0, 0.0, -1.57]] nod: [front_down, front] shake: [left, right, left, home] diff --git a/cob_hardware_config/cob4-7/config/head_controller.yaml b/cob_hardware_config/cob4-7/config/head_controller.yaml index 16e32410a..791d4a238 100644 --- a/cob_hardware_config/cob4-7/config/head_controller.yaml +++ b/cob_hardware_config/cob4-7/config/head_controller.yaml @@ -1,5 +1,5 @@ #all -joint_names: [head_2_joint, head_3_joint] #[head_1_joint, head_2_joint, head_3_joint] +joint_names: [head_1_joint, head_2_joint, head_3_joint] ## control_mode_adapter max_command_silence: 0.5 @@ -13,13 +13,13 @@ joint_state_controller: joint_trajectory_controller: type: position_controllers/JointTrajectoryController joints: -# - head_1_joint + - head_1_joint - head_2_joint - head_3_joint constraints: goal_time: 0.6 stopped_velocity_tolerance: 0.05 -# head_1_joint: {trajectory: 0.1, goal: 0.1} + head_1_joint: {trajectory: 0.1, goal: 0.1} head_2_joint: {trajectory: 0.1, goal: 0.1} head_3_joint: {trajectory: 0.1, goal: 0.1} stop_trajectory_duration: 0.5 @@ -32,15 +32,15 @@ joint_trajectory_controller: joint_group_position_controller: type: position_controllers/JointGroupPositionController joints: -# - head_1_joint + - head_1_joint - head_2_joint - head_3_joint required_drive_mode: 1 -#head_1_joint_position_controller: -# type: position_controllers/JointPositionController -# joint: head_1_joint -# required_drive_mode: 1 +head_1_joint_position_controller: + type: position_controllers/JointPositionController + joint: head_1_joint + required_drive_mode: 1 head_2_joint_position_controller: type: position_controllers/JointPositionController joint: head_2_joint @@ -55,15 +55,15 @@ head_3_joint_position_controller: joint_group_velocity_controller: type: velocity_controllers/JointGroupVelocityController joints: -# - head_1_joint + - head_1_joint - head_2_joint - head_3_joint required_drive_mode: 3 -#head_1_joint_velocity_controller: -# type: velocity_controllers/JointVelocityController -# joint: head_1_joint -# required_drive_mode: 3 +head_1_joint_velocity_controller: + type: velocity_controllers/JointVelocityController + joint: head_1_joint + required_drive_mode: 3 head_2_joint_velocity_controller: type: velocity_controllers/JointVelocityController joint: head_2_joint diff --git a/cob_hardware_config/cob4-7/config/head_driver.yaml b/cob_hardware_config/cob4-7/config/head_driver.yaml index dbe842347..55046b19c 100644 --- a/cob_hardware_config/cob4-7/config/head_driver.yaml +++ b/cob_hardware_config/cob4-7/config/head_driver.yaml @@ -17,15 +17,15 @@ defaults: "1016sub1" : "0x7F0064" # heartbeat timeout of 100 ms for master at 127 nodes: -# - name: head_1_joint -# id: 70 -# #publish: ["60C1sub1"] #trajectory -# #publish: ["60FF"] #velocity -# dcf_overlay: # "ObjectID": "ParameterValue" (both as strings) -# "6083": "300000" # profile acceleration, mgrad/sec^2 -# "6084": "300000" # profile deceleration, mgrad/sec^2 -# "60C5": "300000" # max acceleration, mgrad/sec^2 -# "60C6": "1000000" # max deceleration, mgrad/sec^2 + - name: head_1_joint + id: 70 + #publish: ["60C1sub1"] #trajectory + #publish: ["60FF"] #velocity + dcf_overlay: # "ObjectID": "ParameterValue" (both as strings) + "6083": "300000" # profile acceleration, mgrad/sec^2 + "6084": "300000" # profile deceleration, mgrad/sec^2 + "60C5": "300000" # max acceleration, mgrad/sec^2 + "60C6": "1000000" # max deceleration, mgrad/sec^2 - name: head_2_joint id: 71 #publish: ["60C1sub1"] #trajectory