Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file.
52 changes: 52 additions & 0 deletions iCubTemplates/iCubTemplateV6_0/calibrators/body_part-calib.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE devices PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">


<device xmlns:xi="http://www.w3.org/2001/XInclude" name="BodyPart-calibrator" type="parametricCalibratorEth"> <!-- NOTE: the name is used in wrapper files -->

<xi:include href="../general.xml" />

<group name="GENERAL">
<param name="joints"> number of joints of the robot part </param>
<param name="deviceName"> name choosen my user. It can be used for debug </param>
</group>

<group name="HOME">
<param name="positionHome"> position used to park the robot during shut down or used by by yarpmotorgui application to set "safe position" </param>
<param name="velocityHome"> the velocity used to move to home position. [degree/sec] </param>
</group>

<group name="CALIBRATION">
<param name="calibrationType"> Type of calibration: currently are available 12 type of calibration </param>
<param name="calibration1"> its meaning depending from calibration type. See documennt about calibration type. </param>
<param name="calibration2"> its meaning depending from calibration type. See documennt about calibration type. </param>
<param name="calibration3"> its meaning depending from calibration type. See documennt about calibration type. </param>

<param name="calibration4"> its meaning depending from calibration type. See documennt about calibration type. </param>
<param name="calibration5"> its meaning depending from calibration type. See documennt about calibration type. </param>

<param name="calibrationZero"> the zero of calibration [degree] . see documennt about calibration type. </param>
<param name="calibrationDelta"> the dalta to apply to calibrationZero. The user can change this value to tuning the calibration. [degree] See documennt about calibration type for more details </param>


<param name="startupPosition"> When the joint is calibrated, the calibrator moves the joint in this position. [degree] </param>
<param name="startupVelocity"> the velocity used to move to joints to startup position [degree/sec] </param>
<param name="startupMaxPwm"> the safe maximum value of pwm that the motor can uses during calibration procedure. [pwm raw value]</param>
<param name="startupPosThreshold"> this is the tolernace of startupPosition. [degree] </param>
</group>

<param name="CALIB_ORDER"> this is the order of joint in which the joints are calibrated.
The joints put in round bracket belong to the same joint set; the calibrantor sends command to joints in the same sets at the same time. </param>

<action phase="startup" level="10" type="calibrate">
<param name="target">body_part-mc_wrapper</param>
</action>

<action phase="interrupt1" level="1" type="park">
<param name="target">body_part-mc_wrapper</param>
</action>

<action phase="interrupt3" level="1" type="abort" />

</device>

Empty file.
Empty file.
Empty file.
2 changes: 2 additions & 0 deletions iCubTemplates/iCubTemplateV6_0/firmwareupdater.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[DRIVERS]
ETH "eth"
15 changes: 15 additions & 0 deletions iCubTemplates/iCubTemplateV6_0/general.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE params PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">

<params xmlns:xi="http://www.w3.org/2001/XInclude" robot="myrobot" build="1">

<group name="GENERAL">
<param name="skipCalibration"> If true, the motion control devices are running, but the calibration procedure is not performed; this means that it is not possible to move joints.
Note: joints have the pwm limited to the values written in "startupMaxPwm" parameter in calibration file.
Usually this parameter is false. </param>
<param name="useRawEncoderData"> It is used to read the raw value of joints encoders. Only maintainers should change this parameter.
ATTENTION: make sure you have pressed the fault button and have set "skipCalibration" parameter to true. </param>
<param name="useLimitedPWM"> Deprecated </param>
<param name="verbose"> Enable some more debug prints </param>
</group>
</params>
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE devices PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">

<!-- This file contains details of how the mais service is configured.
-->


<!-- This device name must be the same as specified in the wrapper xml file. It is of type embObjStrain. -->
<device xmlns:xi="http://www.w3.org/2001/XInclude" name="body_part-ebX" type="embObjStrain">

<!-- Include the file which specifies global configuration -->
<xi:include href="../../general.xml"/>

<!-- Include the file which specifies which ETH board hosts the service -->
<xi:include href="../../hardware/electronics/filenameOfETHboard-eln.xml" />

<!-- This group defines the service -->
<group name="SERVICE">

<!-- The type of service expressed as stringised values of eOmn_serv_type_t. For strain it must be eomn_serv_AS_strain -->
<param name="type"> eomn_serv_AS_strain </param>

<!-- This group defines the properties of the service -->
<group name="PROPERTIES">

<!-- This group defines the properties of the CAN boards -->
<group name="CANBOARDS">

<!-- This param tells the type expressed as stringised values of eObrd_type_t also in short version (short version: without prefix eobrd_)
so far it can be strain or strain2
-->
<param name="type"> eobrd_strain </param>

<!-- This param tells the protocol version required to run the service. Values are in range [0, 255]
if (0, 0) no check is done, otherwise there must be a CAN board with detected major = PROTOCOL.major and detected minor >= PROTOCOL.minor -->
<group name="PROTOCOL">
<param name="major"> 0 </param>
<param name="minor"> 0 </param>
</group>

<!-- This param tells the firmware version required to run the service. Values are in range [0, 255]
if (0, 0, 0) no check is done, otherwise there must be a CAN board with detected major = FIRMWARE.major and detected minor >= FIRMWARE.minor -->
<group name="FIRMWARE">
<param name="major"> 0 </param>
<param name="minor"> 0 </param>
<param name="build"> 0 </param>
</group>

</group>

<!-- This group defines the available sensors. They are those defined by production. In strain there is only one sensor -->
<group name="SENSORS">

<!-- This param is the id of the sensor. its name should be defined in production -->
<param name="id"> id_l_arm_strain </param>
<!-- This param is the type of the sensor. it must be eoas_strain -->
<param name="type"> eoas_strain </param>
<!-- This param is the address of the sensor. Its uses the format CANx:addr -->
<param name="location"> CAN2:7 </param>

</group>

</group>


<!-- This group defines the settings which can be applied to the available sensor. -->
<group name="SETTINGS">

<!-- The acquisition rate of all the sensor in ms. values are in range [1, 255]. Use 10 -->
<param name="acquisitionRate"> 10 </param>
<!-- The list of the enabled sensors ... there is always one and is the value of PROPERTIES.PROPERTIES.SENSORS.id -->
<param name="enabledSensors"> id_l_arm_strain </param>

</group>

<!-- This group defines the settings which apply to the strain only. -->
<group name="STRAIN_SETTINGS">

<!-- tells if the strain uses calivation or not. Values are true / false. -->
<param name="useCalibration"> true </param>

</group>

</group>

</device>




Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE devices PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">

<!-- This file contains details of how the strain service is configured. Attention: it is supported only from strain board version 2
-->


<!-- This device name must be the same as specified in the wrapper xml file. It is of type embObjFTsensor. -->
<device xmlns:xi="http://www.w3.org/2001/XInclude" name="body_part-ebX-FTsensor" type="embObjFTsensor">

<!-- Include the file which specifies global configuration -->
<xi:include href="../../general.xml"/>

<!-- Include the file which specifies which ETH board hosts the service -->
<xi:include href="../../hardware/electronics/filenameOfETHboard-eln.xml" />

<!-- This group defines the service -->
<group name="SERVICE">

<!-- The type of service expressed as stringised values of eOmn_serv_type_t. For strain it must be eomn_serv_AS_strain -->
<param name="type"> eomn_serv_AS_strain </param>

<!-- This group defines the properties of the service -->
<group name="PROPERTIES">

<!-- This group defines the properties of the CAN boards -->
<group name="CANBOARDS">

<!-- This param tells the type expressed as stringised values of eObrd_type_t also in short version (short version: without prefix eobrd_)
so far it can be only strain2
-->
<param name="type"> eobrd_strain2 </param>

<!-- This param tells the protocol version required to run the service. Values are in range [0, 255]
if (0, 0) no check is done, otherwise there must be a CAN board with detected major = PROTOCOL.major and detected minor >= PROTOCOL.minor -->
<group name="PROTOCOL">
<param name="major"> 0 </param>
<param name="minor"> 0 </param>
</group>

<!-- This param tells the firmware version required to run the service. Values are in range [0, 255]
if (0, 0, 0) no check is done, otherwise there must be a CAN board with detected major = FIRMWARE.major and detected minor >= FIRMWARE.minor -->
<group name="FIRMWARE">
<param name="major"> 0 </param>
<param name="minor"> 0 </param>
<param name="build"> 0 </param>
</group>

</group>

<!-- This group defines the available sensors. They are those defined by production. In FTsensor there is only one sensor -->
<group name="SENSORS">

<!-- This param is the id of the sensor. its name should be defined in production -->
<param name="id"> id_l_arm_strain </param>
<!-- This param is the type of the sensor. it must be eoas_strain2 -->
<param name="type"> eoas_strain2 </param>
<!-- This param is the address of the sensor. Its uses the format CANx:addr -->
<param name="location"> CAN2:7 </param>

</group>

</group>

<!-- This group defines the settings which can be applied to the available sensor. -->
<group name="SETTINGS">

<!-- The acquisition rate of all the sensor in ms. values are in range [1, 255]. Use 10 -->
<param name="acquisitionRate"> 10 </param>
<!-- The list of the enabled sensors ... there is always one and is the value of PROPERTIES.PROPERTIES.SENSORS.id -->
<param name="enabledSensors"> id_l_arm_strain </param>
<!-- The acquisition rate of all the sensor in ms. The minimun value is 1000 ms = 1 second -->
<param name="temperature-acquisitionRate"> 1000 </param>//1 seconds
</group>
<!-- This group defines the settings which apply to the strain only. -->
<group name="STRAIN_SETTINGS">

<!-- tells if the strain uses calivation or not. Values are true / false. -->
<param name="useCalibration"> true </param>

</group>

</group>

</device>

Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE devices PUBLIC "-//YARP//DTD yarprobotinterface 3.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV3.0.dtd">

<!-- This file contains details of how the mais service is configured.
-->


<!-- This device name must be the same as specified in the wrapper xml file. It is of type embObjMais. -->
<device xmlns:xi="http://www.w3.org/2001/XInclude" name="body_part_mais" type="embObjMais">

<!-- Include the file which specifies global configuration -->
<xi:include href="../../general.xml" />

<!-- Include the file which specifies which ETH board hosts the service -->
<xi:include href="../../hardware/electronics/body_part-ebX-jA_B-eln.xml" />

<!-- This group defines the service -->
<group name="SERVICE">

<!-- The type of service expressed as stringised values of eOmn_serv_type_t. For mais it must be eomn_serv_AS_mais -->
<param name="type"> eomn_serv_AS_mais </param>

<!-- This group defines the properties of the service -->
<group name="PROPERTIES">

<!-- This group defines the properties of the CAN boards -->
<group name="CANBOARDS">

<!-- This param tells the type expressed as stringised values of eObrd_type_t also in short version (short version: without prefix eobrd_)
so far it can be only mais
-->
<param name="type"> eobrd_mais </param>

<!-- This param tells the protocol version required to run the service. Values are in range [0, 255]
if (0, 0) no check is done, otherwise there must be a CAN board with detected major = PROTOCOL.major and detected minor >= PROTOCOL.minor -->
<group name="PROTOCOL">
<param name="major"> 0 </param>
<param name="minor"> 0 </param>
</group>

<!-- This param tells the firmware version required to run the service. Values are in range [0, 255]
if (0, 0, 0) no check is done, otherwise there must be a CAN board with detected major = FIRMWARE.major and detected minor >= FIRMWARE.minor -->
<group name="FIRMWARE">
<param name="major"> 0 </param>
<param name="minor"> 0 </param>
<param name="build"> 0 </param>
</group>

</group>

<!-- This group defines the available sensors. They are those defined by production. In mais there is only one sensor -->
<group name="SENSORS">

<!-- This param is the id of the sensor. its name should be defined in production -->
<param name="id"> id_l_hand_mais </param>
<!-- This param is the type of the sensor. it must be eoas_mais -->
<param name="type"> eoas_mais </param>
<!-- This param is the address of the sensor. Its uses the format CANx:addr -->
<param name="location"> CAN1:14 </param>

</group>

</group>

<!-- This group defines the settings which can be applied to the available sensor. -->
<group name="SETTINGS">

<!-- The acquisition rate of all the sensor in ms. values are in range [1, 255]. Use 10 -->
<param name="acquisitionRate"> 10 </param>
<!-- The list of the enabled sensors ... there is always one and is the value of PROPERTIES.PROPERTIES.SENSORS.id -->
<param name="enabledSensors"> id_l_hand_mais </param>

</group>

</group>

</device>




Loading