|
YARP CiA-402 EtherCAT Device 0.6.0
YARP device plugin for EtherCAT CiA-402 drives
|
After a homing / calibration run (performed by CiA402::StoreHome37), the encoder positions are persisted on each drive's non-volatile memory and a TOML snapshot is written to disk. Over time — due to mechanical play, power cycles, firmware updates, or unexpected faults — the actual encoder readings may drift from the reference values recorded in that TOML file.
check-encoder-calibration is a read-only diagnostic tool that:
store-home-position.The ring stays in SAFE-OP / PRE-OP throughout; no drive parameters are modified.
| SDO | Sub | Type | Description |
|---|---|---|---|
0x2110 | :03 | UDINT | Encoder 1 resolution (counts/rev) |
0x2111 | :01 | UDINT | Encoder 1 raw position |
0x2111 | :02 | DINT | Encoder 1 adjusted position |
0x2112 | :03 | UDINT | Encoder 2 resolution (counts/rev) |
0x2113 | :01 | UDINT | Encoder 2 raw position |
0x2113 | :02 | DINT | Encoder 2 adjusted position |
These are the same objects written to the TOML snapshot by CiA402::StoreHome37 — see EtherCAT protocol map (PDOs and SDOs) for the full object dictionary.
| Key | Type | Description | Default |
|---|---|---|---|
ifname | string | Network interface used by SOEM | eth0 |
toml-input | string | (required) Reference TOML file from store-home-position | — |
report-output | string | Path of the Markdown report to write | encoder_calibration_check_YYYY_MM_DD_HH_MM_SS.md |
Parameters can also be provided via a YARP .ini file:
The generated Markdown file has three sections:
| Date | 2026-03-05 14:30:00 |
| Reference TOML | joint_calibration_2026_03_04_18_54_35.toml |
| Slaves checked | 3 |
One row per slave with the adjusted-position delta in degrees for quick pass / fail inspection:
| Slave | Name | Enc1 Adj Δ (deg) | Enc2 Adj Δ (deg) |
|---|---|---|---|
| 1 | SOMANET | +0.001234 | −0.000567 |
| 2 | SOMANET | +0.000000 | +0.000012 |
Two tables per slave (Encoder 1, Encoder 2) with full comparison:
| Metric | Reference (TOML) | Current (Live) | Delta |
|---|---|---|---|
| Raw position (counts) | 2461952 | 2461960 | +8 |
| Raw position (deg) | 350.753906 | 350.754047 | +0.000141 |
| Adjusted position (counts) | 2461952 | 2461960 | +8 |
| Adjusted position (deg) | 350.753906 | 350.754047 | +0.000141 |
| Counts per revolution | 2527232 | 2527232 | 0 |
| Raw-to-degrees factor | 0.000142 | 0.000142 | +0.000000 |