Write at the top
My computer got some silly problem with the typing software that my Chinese IM does’t work again. So I’ll try to record the things happened in English.
If any error,DM me plz.
BUGs
BUG1
Undefined symbol Identifier “CLOCK_MONOTONIC”
Undefined symbol Identifier “TIMER_ABSTIME”
Solution
In your main cpp file, add this in the first line:
#define _GNU_SOURCE
Notes
Command Line Notes
- 0x1c12(SM2)
0x1c12 is SM2 Related Index , Specially used in EtherCAT over the CANOpen.
Aimed to set the RPDO settings.
sudo ethercat upload -t int8 -p 3 -a 0 0x1c12 00
0x01 1
sudo ethercat upload -t int16 -p 3 -a 0 0x1c12 01
0x1600 5632
sudo ethercat upload -t int16 -p 3 -a 0 0x1c12 31
SDO transfer aborted with code 0x06090011: Subindex does not exist
sudo ethercat upload -t int16 -p 3 -a 0 0x1c12 30
0x1621 5665
| Index | SubIndex | Size | Default Value |
|---|---|---|---|
| 0x1c12 | 00 | int8 | 0x01 |
| 0x1c12 | 01 | int16 | 0x1600(5632) |
| 0x1c12 | 02 | int16 | 0x1601(5634) |
| … | … | … | … |
| 0x1c12 | 29 | int16 | 0x1620(5664) |
| 0x1c12 | 30 | int16 | 0x1621(5665) |
| Index | SubIndex | Size | Default Value |
|---|---|---|---|
| 0x1600 | 00 | int8 | 0x03 |
| 0x1600 | 01 | int32 | 0x607a0020(1618608160) |
| 0x1600 | 02 | int32 | 0x60fe0120(1627259168) |
| 0x1600 | 03 | int32 | 0x60400010(1614807056) |
2.0x1c13(SM3)
| Index | SubIndex | Size | Default Value |
|---|---|---|---|
| 0x1c13 | 00 | int8 | 0x01 |
| 0x1c13 | 01 | int16 | 0x1a00(6656) |
| 0x1c13 | 02 | int16 | 0x1a01(6657) |
| … | … | … | … |
| 0x1c13 | 33 | int16 | 0x1a24(6692) |
| 0x1c13 | 34 | int16 | 0x1a26(6694) |
| 0x1c13 | 35 | int16 | 0x0000(0) |
Set 0x1c12 0 to 0
Then set it to the true number
Set 0x1600 0 to 0
Then set it to the true number 1
Set 0x1601 0 to 0
Then set it to the true number 1
文章描述了作者在电脑上遇到的typing软件问题,涉及undefinedsymbol错误,解决方案是添加预处理器宏_GNU_SOURCE。还提到在EtherCATCANOpen中对SM2和SM3相关索引进行设置的操作,以及一些具体的SDO传输和子索引值的调整。

2862

被折叠的 条评论
为什么被折叠?



