Skip to content

Commit a6d2d96

Browse files
committed
Merge branch 'master' into devel
2 parents 4fd1e10 + 043f641 commit a6d2d96

File tree

206 files changed

+10061
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

206 files changed

+10061
-0
lines changed

all_robots.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,4 +64,5 @@
6464
<xi:include href="./iCubGenova08/icub_all.xml" />
6565
<xi:include href="./iCubWaterloo01/icub_all.xml" />
6666
<xi:include href="./iCubZagreb01/icub_all.xml" />
67+
<xi:include href="./iCubPrague01/icub_all.xml" />
6768
</robot_database >

iCubPrague01/CMakeLists.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
set(appname iCubPrague01)
2+
3+
file(GLOB xml ${CMAKE_CURRENT_SOURCE_DIR}/*.xml)
4+
file(GLOB ini ${CMAKE_CURRENT_SOURCE_DIR}/*.ini)
5+
6+
yarp_install(FILES ${xml} DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})
7+
yarp_install(FILES ${ini} DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})
8+
yarp_install(DIRECTORY calibrators DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})
9+
yarp_install(DIRECTORY cartesian DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})
10+
yarp_install(DIRECTORY wrappers DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})
11+
yarp_install(DIRECTORY hardware DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})
12+
yarp_install(DIRECTORY camera DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})
13+
yarp_install(DIRECTORY estimators DESTINATION ${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${appname})

iCubPrague01/calib_all_joints.xml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE robot PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
<robot name="iCubPrague01" portprefix="icub" build="1">
5+
6+
<devices>
7+
8+
<!-- HEAD -->
9+
<xi:include href="./hardware/motorControl/head-eb20-j0_1-mc.xml" />
10+
<xi:include href="./hardware/motorControl/head-eb21-j2_5-mc.xml" />
11+
<xi:include href="./wrappers/motorControl/head-mc_wrapper.xml" />
12+
13+
<!-- FACE -->
14+
<xi:include href="./hardware/motorControl/face-eb22-j0-mc.xml" />
15+
<xi:include href="./wrappers/motorControl/face-mc_wrapper.xml" />
16+
17+
<!-- LEFT ARM -->
18+
<xi:include href="hardware/motorControl/left_arm-eb1-j0_3-mc.xml" />
19+
<xi:include href="hardware/motorControl/left_arm-eb24-j4_7-mc.xml" />
20+
<xi:include href="hardware/motorControl/left_arm-eb25-j8_11-mc.xml" />
21+
<xi:include href="hardware/motorControl/left_arm-eb26-j12_15-mc.xml" />
22+
<xi:include href="wrappers/motorControl/left_arm-mc_wrapper.xml" />
23+
24+
<!-- RIGHT ARM -->
25+
<xi:include href="hardware/motorControl/right_arm-eb3-j0_3-mc.xml" />
26+
<xi:include href="hardware/motorControl/right_arm-eb27-j4_7-mc.xml" />
27+
<xi:include href="hardware/motorControl/right_arm-eb28-j8_11-mc.xml" />
28+
<xi:include href="hardware/motorControl/right_arm-eb29-j12_15-mc.xml" />
29+
<xi:include href="wrappers/motorControl/right_arm-mc_wrapper.xml" />
30+
31+
<!-- ANALOG SENSOR MAIS -->
32+
<xi:include href="wrappers/MAIS/left_arm-mais_wrapper.xml" />
33+
<xi:include href="wrappers/MAIS/right_arm-mais_wrapper.xml" />
34+
<xi:include href="hardware/MAIS/left_arm-eb26-j12_15-mais.xml" />
35+
<xi:include href="hardware/MAIS/right_arm-eb29-j12_15-mais.xml" />
36+
37+
38+
<!-- TORSO -->
39+
<xi:include href="hardware/motorControl/torso-eb5-j0_2-mc.xml" />
40+
<xi:include href="wrappers/motorControl/torso-mc_wrapper.xml" />
41+
42+
43+
<!-- LEFT LEG -->
44+
<xi:include href="hardware/motorControl/left_leg-eb6-j0_3-mc.xml" />
45+
<xi:include href="hardware/motorControl/left_leg-eb7-j4_5-mc.xml" />
46+
<xi:include href="wrappers/motorControl/left_leg-mc_wrapper.xml" />
47+
48+
<!-- RIGHT LEG -->
49+
<xi:include href="hardware/motorControl/right_leg-eb8-j0_3-mc.xml" />
50+
<xi:include href="hardware/motorControl/right_leg-eb9-j4_5-mc.xml" />
51+
<xi:include href="wrappers/motorControl/right_leg-mc_wrapper.xml" />
52+
53+
54+
<!-- CALIBRATORS -->
55+
<xi:include href="calibrators/left_arm-calib.xml" />
56+
<xi:include href="calibrators/right_arm-calib.xml" />
57+
<xi:include href="calibrators/head-calib.xml" />
58+
<xi:include href="calibrators/left_leg-calib.xml" />
59+
<xi:include href="calibrators/right_leg-calib.xml" />
60+
<xi:include href="calibrators/torso-calib.xml" />
61+
<xi:include href="calibrators/face-calib.xml" />
62+
63+
</devices>
64+
</robot>

iCubPrague01/calib_head.xml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE robot PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
<robot name="iCubPrague01" build="1">
5+
6+
<params>
7+
<xi:include href="hardware/electronics/pc104.xml" />
8+
</params>
9+
10+
<devices>
11+
12+
<!-- HEAD -->
13+
<xi:include href="./hardware/motorControl/head-eb20-j0_1-mc.xml" />
14+
<xi:include href="./hardware/motorControl/head-eb21-j2_5-mc.xml" />
15+
<xi:include href="./wrappers/motorControl/head-mc_wrapper.xml" />
16+
17+
<!-- FACE -->
18+
<xi:include href="./hardware/motorControl/face-eb22-j0-mc.xml" />
19+
<xi:include href="./wrappers/motorControl/face-mc_wrapper.xml" />
20+
21+
22+
<xi:include href="calibrators/head-calib.xml" />
23+
<xi:include href="calibrators/face-calib.xml" />
24+
</devices>
25+
</robot>

iCubPrague01/calib_lowerbody.xml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE robot PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
<robot name="iCubPrague01" portprefix="icub" build="1">
5+
<params>
6+
<xi:include href="hardware/electronics/pc104.xml" />
7+
</params>
8+
9+
<devices>
10+
11+
12+
<!-- TORSO -->
13+
<xi:include href="hardware/motorControl/torso-eb5-j0_2-mc.xml" />
14+
<xi:include href="wrappers/motorControl/torso-mc_wrapper.xml" />
15+
16+
17+
<!-- LEFT LEG -->
18+
<xi:include href="hardware/motorControl/left_leg-eb6-j0_3-mc.xml" />
19+
<xi:include href="hardware/motorControl/left_leg-eb7-j4_5-mc.xml" />
20+
<xi:include href="wrappers/motorControl/left_leg-mc_wrapper.xml" />
21+
22+
<!-- RIGHT LEG -->
23+
<xi:include href="hardware/motorControl/right_leg-eb8-j0_3-mc.xml" />
24+
<xi:include href="hardware/motorControl/right_leg-eb9-j4_5-mc.xml" />
25+
<xi:include href="wrappers/motorControl/right_leg-mc_wrapper.xml" />
26+
27+
28+
<!-- CALIBRATORS -->
29+
<xi:include href="calibrators/left_leg-calib.xml" />
30+
<xi:include href="calibrators/right_leg-calib.xml" />
31+
<xi:include href="calibrators/torso-calib.xml" />
32+
33+
</devices>
34+
</robot>

iCubPrague01/calib_torso.xml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE robot PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
<robot name="iCubPrague01" portprefix="icub" build="1">
5+
<params>
6+
<xi:include href="hardware/electronics/pc104.xml" />
7+
</params>
8+
9+
<devices>
10+
11+
12+
<!-- TORSO -->
13+
<xi:include href="hardware/motorControl/torso-eb5-j0_2-mc.xml" />
14+
<xi:include href="wrappers/motorControl/torso-mc_wrapper.xml" />
15+
16+
17+
18+
<!-- CALIBRATORS -->
19+
<xi:include href="calibrators/torso-calib.xml" />
20+
21+
</devices>
22+
</robot>

iCubPrague01/calib_upperbody.xml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE robot PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
<robot name="iCubPrague01" portprefix="icub" build="1">
5+
<params>
6+
<xi:include href="hardware/electronics/pc104.xml" />
7+
</params>
8+
9+
<devices>
10+
11+
12+
<!-- HEAD -->
13+
<xi:include href="./hardware/motorControl/head-eb20-j0_1-mc.xml" />
14+
<xi:include href="./hardware/motorControl/head-eb21-j2_5-mc.xml" />
15+
<xi:include href="./wrappers/motorControl/head-mc_wrapper.xml" />
16+
17+
<!-- FACE -->
18+
<xi:include href="./hardware/motorControl/face-eb22-j0-mc.xml" />
19+
<xi:include href="./wrappers/motorControl/face-mc_wrapper.xml" />
20+
21+
<!-- LEFT ARM -->
22+
<xi:include href="hardware/motorControl/left_arm-eb1-j0_3-mc.xml" />
23+
<xi:include href="hardware/motorControl/left_arm-eb24-j4_7-mc.xml" />
24+
<xi:include href="hardware/motorControl/left_arm-eb25-j8_11-mc.xml" />
25+
<xi:include href="hardware/motorControl/left_arm-eb26-j12_15-mc.xml" />
26+
<xi:include href="wrappers/motorControl/left_arm-mc_wrapper.xml" />
27+
28+
<!-- RIGHT ARM -->
29+
<xi:include href="hardware/motorControl/right_arm-eb3-j0_3-mc.xml" />
30+
<xi:include href="hardware/motorControl/right_arm-eb27-j4_7-mc.xml" />
31+
<xi:include href="hardware/motorControl/right_arm-eb28-j8_11-mc.xml" />
32+
<xi:include href="hardware/motorControl/right_arm-eb29-j12_15-mc.xml" />
33+
<xi:include href="wrappers/motorControl/right_arm-mc_wrapper.xml" />
34+
35+
<!-- ANALOG SENSOR MAIS -->
36+
<xi:include href="wrappers/MAIS/left_arm-mais_wrapper.xml" />
37+
<xi:include href="wrappers/MAIS/right_arm-mais_wrapper.xml" />
38+
<xi:include href="hardware/MAIS/left_arm-eb26-j12_15-mais.xml" />
39+
<xi:include href="hardware/MAIS/right_arm-eb29-j12_15-mais.xml" />
40+
41+
<!-- CALIBRATORS -->
42+
<xi:include href="calibrators/left_arm-calib.xml" />
43+
<xi:include href="calibrators/right_arm-calib.xml" />
44+
<xi:include href="calibrators/head-calib.xml" />
45+
<xi:include href="calibrators/face-calib.xml" />
46+
47+
</devices>
48+
</robot>
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE devices PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
5+
<device xmlns:xi="http://www.w3.org/2001/XInclude" name="face-calibrator" type="parametricCalibratorEth">
6+
7+
<xi:include href="../general.xml" />
8+
9+
<group name="GENERAL">
10+
<param name="joints"> 1 </param> <!-- the number of joints of the robot part -->
11+
<param name="deviceName"> FaceV3_Calibrator </param> <!-- this name is used for high-level debug -->
12+
</group>
13+
14+
<group name="HOME">
15+
<param name="positionHome"> 0 </param>
16+
<param name="velocityHome"> 10 </param>
17+
</group>
18+
19+
<!-- joint logical number 0 -->
20+
<!-- joint name eyelids -->
21+
<group name="CALIBRATION">
22+
<param name="calibrationType"> 12 </param>
23+
<!-- The value of the raw encoder needs to be with sign -->
24+
<param name="calibration1"> 282 </param>
25+
<param name="calibration2"> 0 </param>
26+
<param name="calibration3"> 0 </param>
27+
28+
<param name="calibration4"> 0 </param>
29+
<param name="calibration5"> 0 </param>
30+
31+
<param name="calibrationZero"> 0 </param>
32+
<param name="calibrationDelta"> 0 </param>
33+
34+
<param name="startupPosition"> 0 </param>
35+
<param name="startupVelocity"> 10 </param>
36+
<param name="startupMaxPwm"> 3360 </param>
37+
<param name="startupPosThreshold"> 90 </param>
38+
</group>
39+
40+
<!-- calibration of eyelids where Gearbox_E2J is != 1:
41+
1. in general.xml we set useRawEncoderData = true [as for any type3 calib].
42+
2. retrieve the encoder reading of joint placed in zero position [as for any type3 calib].
43+
3. for computation of calibration3 param use the standard excel formula [as for any type3 calib].
44+
4. for calibrationZero (and VERY IMPORTANT: value of zero in execl formula) use a correction factor of 1/Gearbox_E2J.
45+
As an example, to move away from zero crossing use zero = (+/-) 180 / Gearbox_E2J, where the sign is the same as the encoder reading.
46+
47+
-->
48+
<param name="CALIB_ORDER"> (0) </param> <!-- we can calibrate all joints in parallel (for now not the jaw yet)-->
49+
50+
<action phase="startup" level="10" type="calibrate">
51+
<param name="target">face-mc_wrapper</param>
52+
</action>
53+
54+
<action phase="interrupt1" level="1" type="park">
55+
<param name="target">face-mc_wrapper</param>
56+
</action>
57+
58+
<action phase="interrupt3" level="1" type="abort" />
59+
60+
</device>
61+
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE devices PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
5+
<device xmlns:xi="http://www.w3.org/2001/XInclude" name="head-calibrator" type="parametricCalibratorEth">
6+
7+
<xi:include href="../general.xml" />
8+
9+
<group name="GENERAL">
10+
<param name="joints"> 6 </param> <!-- the number of joints of the robot part -->
11+
<param name="deviceName"> HeadV3_Calibrator </param> <!-- this name is used for high-level debug -->
12+
</group>
13+
14+
<group name="HOME">
15+
<param name="positionHome"> 0 0 0 0 0 0 </param>
16+
<param name="velocityHome"> 10 10 10 10 10 10 </param>
17+
</group>
18+
19+
<!-- joint logical number 0 1 2 3 4 5 -->
20+
<!-- joint name neck-pitch neck-roll neck-yaw eyes-tilt eyes-vers eyes-verg --> <!-- j4 is right-eye, j5 is left-eye -->
21+
<group name="CALIBRATION">
22+
<param name="calibrationType"> 12 12 12 12 5 5 </param>
23+
<param name="calibration1"> 64975 45999 13119 47103 3000 3000 </param>
24+
<param name="calibration2"> 0 0 0 0 8192 8192 </param>
25+
<param name="calibration3"> 0 0 0 0 0 0 </param>
26+
<param name="calibration4"> 0 0 0 0 0 0 </param>
27+
<param name="calibration5"> 0 0 0 0 0 0 </param>
28+
<param name="calibrationZero"> 0 0 0 0 0 0 </param>
29+
<param name="calibrationDelta"> 0 0 0 0 -3.6 -3.6 </param>
30+
31+
<param name="startupPosition"> 0 0 0 0 0 0 </param>
32+
<param name="startupVelocity"> 10 10 20 20 20 20 </param>
33+
<param name="startupMaxPwm"> 3000 3000 3000 3000 0 0 </param>
34+
<param name="startupPosThreshold"> 90 90 2 2 2 2 </param>
35+
</group>
36+
37+
<param name="CALIB_ORDER"> (0 1 2) (3) (4 5) </param>
38+
39+
<action phase="startup" level="10" type="calibrate">
40+
<param name="target">head-mc_wrapper</param>
41+
</action>
42+
43+
<action phase="interrupt1" level="1" type="park">
44+
<param name="target">head-mc_wrapper</param>
45+
</action>
46+
47+
<action phase="interrupt3" level="1" type="abort" />
48+
49+
</device>
50+
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<!DOCTYPE devices PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">
3+
4+
5+
<device xmlns:xi="http://www.w3.org/2001/XInclude" name="left_arm-calibrator" type="parametricCalibratorEth">
6+
<xi:include href="../general.xml" />
7+
8+
<group name="GENERAL">
9+
<param name="joints">16</param> <!-- the number of joints of the robot part -->
10+
<param name="deviceName"> Left_Arm_Calibrator </param>
11+
</group>
12+
<!-- joint logical number 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 -->
13+
<group name="HOME">
14+
<param name="positionHome"> -30 30 0 45 0 0 0 35 65 0 0 0 0 0 0 0 </param>
15+
<param name="velocityHome"> 10 10 10 10 30 30 30 60 30 30 30 30 30 30 30 30 </param>
16+
</group>
17+
18+
<group name="CALIBRATION">
19+
<param name="calibrationType"> 12 12 12 12 5 12 12 7 7 6 6 6 6 6 6 6 </param>
20+
<param name="calibration1"> 42767 4880 32415 58031 -1500 37087 45583 0 0 0 0 0 0 0 0 0 </param>
21+
<param name="calibration2"> 0 0 0 0 16384 0 0 0 0 9102 9102 9102 9102 9102 9102 10000 </param>
22+
<param name="calibration3"> 0 0 0 0 0 0 0 0 0 -1 1 -1 1 -1 1 1 </param>
23+
<param name="calibration4"> 0 0 0 0 0 0 0 2500 670 251 474 236 486 255 464 748 </param>
24+
<param name="calibration5"> 0 0 0 0 0 0 0 2860 4312 0 0 0 37 9 2 90 </param>
25+
<param name="calibrationZero"> 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 </param>
26+
<param name="calibrationDelta"> -3.13 5.29 -8.28 -1.75 0 0 0 0 0 0 0 0 0 0 0 0 </param>
27+
28+
<param name="startupPosition"> -35 30 0 50 0 0 0 15 30 0 0 0 0 0 0 0 </param>
29+
<param name="startupVelocity"> 10 10 10 10 30 30 30 100 100 100 100 100 100 100 100 100 </param>
30+
<param name="startupMaxPwm"> 2000 2000 2000 2000 2000 0 0 0 0 0 0 0 0 0 0 0 </param>
31+
<param name="startupPosThreshold"> 2 2 2 2 90 90 90 90 90 90 90 90 90 90 90 90 </param>
32+
</group>
33+
34+
<param name="CALIB_ORDER">(0 1 2 3) (4) (5 6 7) (8 9 11 13) (10 12 14 15) </param>
35+
36+
37+
<action phase="startup" level="10" type="calibrate">
38+
<param name="target">left_arm-mc_wrapper</param>
39+
</action>
40+
41+
<action phase="interrupt1" level="1" type="park">
42+
<param name="target">left_arm-mc_wrapper</param>
43+
</action>
44+
45+
<action phase="interrupt3" level="1" type="abort" />
46+
47+
</device>
48+
49+
50+

0 commit comments

Comments
 (0)