質問編集履歴
1
デバイス名の調べ方を変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -37,51 +37,34 @@
|
|
37
37
|
$ . install/local_setup.bash
|
38
38
|
```
|
39
39
|
```Linux
|
40
|
-
$ ls /dev/tty*
|
41
|
-
/dev/tty /dev/tty45 /dev/ttyaf /dev/ttyd8 /dev/ttyq0 /dev/ttys9 /dev/ttyv2 /dev/ttyxb
|
42
|
-
/dev/tty0 /dev/tty46 /dev/ttyb0 /dev/ttyd9 /dev/ttyq1 /dev/ttysa /dev/ttyv3 /dev/ttyxc
|
43
|
-
/dev/tty1 /dev/tty47 /dev/ttyb1 /dev/ttyda /dev/ttyq2 /dev/ttysb /dev/ttyv4 /dev/ttyxd
|
44
|
-
/dev/tty10 /dev/tty48 /dev/ttyb2 /dev/ttydb /dev/ttyq3 /dev/ttysc /dev/ttyv5 /dev/ttyxe
|
45
|
-
/dev/tty11 /dev/tty49 /dev/ttyb3 /dev/ttydc /dev/ttyq4 /dev/ttysd /dev/ttyv6 /dev/ttyxf
|
46
|
-
/dev/tty12 /dev/tty5 /dev/ttyb4 /dev/ttydd /dev/ttyq5 /dev/ttyse /dev/ttyv7 /dev/ttyy0
|
47
|
-
/dev/tty13 /dev/tty50 /dev/ttyb5 /dev/ttyde /dev/ttyq6 /dev/ttysf /dev/ttyv8 /dev/ttyy1
|
48
|
-
/dev/tty14 /dev/tty51 /dev/ttyb6 /dev/ttydf /dev/ttyq7 /dev/ttyt0 /dev/ttyv9 /dev/ttyy2
|
49
|
-
/dev/tty15 /dev/tty52 /dev/ttyb7 /dev/ttye0 /dev/ttyq8 /dev/ttyt1 /dev/ttyva /dev/ttyy3
|
50
|
-
/dev/tty16 /dev/tty53 /dev/ttyb8 /dev/ttye1 /dev/ttyq9 /dev/ttyt2 /dev/ttyvb /dev/ttyy4
|
51
|
-
/dev/tty17 /dev/tty54 /dev/ttyb9 /dev/ttye2 /dev/ttyqa /dev/ttyt3 /dev/ttyvc /dev/ttyy5
|
52
|
-
/dev/tty18 /dev/tty55 /dev/ttyba /dev/ttye3 /dev/ttyqb /dev/ttyt4 /dev/ttyvd /dev/ttyy6
|
53
|
-
/dev/tty19 /dev/tty56 /dev/ttybb /dev/ttye4 /dev/ttyqc /dev/ttyt5 /dev/ttyve /dev/ttyy7
|
54
|
-
/dev/tty2 /dev/tty57 /dev/ttybc /dev/ttye5 /dev/ttyqd /dev/ttyt6 /dev/ttyvf /dev/ttyy8
|
55
|
-
/dev/tty20 /dev/tty58 /dev/ttybd /dev/ttye6 /dev/ttyqe /dev/ttyt7 /dev/ttyw0 /dev/ttyy9
|
56
|
-
/dev/tty21 /dev/tty59 /dev/ttybe /dev/ttye7 /dev/ttyqf /dev/ttyt8 /dev/ttyw1 /dev/ttyya
|
57
|
-
/dev/tty22 /dev/tty6 /dev/ttybf /dev/ttye8 /dev/ttyr0 /dev/ttyt9 /dev/ttyw2 /dev/ttyyb
|
58
|
-
/dev/tty23 /dev/tty60 /dev/ttyc0 /dev/ttye9 /dev/ttyr1 /dev/ttyta /dev/ttyw3 /dev/ttyyc
|
59
|
-
/dev/tty24 /dev/tty61 /dev/ttyc1 /dev/ttyea /dev/ttyr2 /dev/ttytb /dev/ttyw4 /dev/ttyyd
|
60
|
-
/dev/tty25 /dev/tty62 /dev/ttyc2 /dev/ttyeb /dev/ttyr3 /dev/ttytc /dev/ttyw5 /dev/ttyye
|
61
|
-
/dev/tty26 /dev/tty63 /dev/ttyc3 /dev/ttyec /dev/ttyr4 /dev/ttytd /dev/ttyw6 /dev/ttyyf
|
62
|
-
/dev/tty27 /dev/tty7 /dev/ttyc4 /dev/ttyed /dev/ttyr5 /dev/ttyte /dev/ttyw7 /dev/ttyz0
|
63
|
-
/dev/tty28 /dev/tty8 /dev/ttyc5 /dev/ttyee /dev/ttyr6 /dev/ttytf /dev/ttyw8 /dev/ttyz1
|
64
|
-
/dev/tty29 /dev/tty9 /dev/ttyc6 /dev/ttyef /dev/ttyr7 /dev/ttyu0 /dev/ttyw9 /dev/ttyz2
|
65
|
-
/dev/tty3 /dev/ttyAMA0 /dev/ttyc7 /dev/ttyp0 /dev/ttyr8 /dev/ttyu1 /dev/ttywa /dev/ttyz3
|
66
|
-
/dev/tty30 /dev/ttyUSB0 /dev/ttyc8 /dev/ttyp1 /dev/ttyr9 /dev/ttyu2 /dev/ttywb /dev/ttyz4
|
67
|
-
/dev/tty31 /dev/ttya0 /dev/ttyc9 /dev/ttyp2 /dev/ttyra /dev/ttyu3 /dev/ttywc /dev/ttyz5
|
68
|
-
/dev/tty32 /dev/ttya1 /dev/ttyca /dev/ttyp3 /dev/ttyrb /dev/ttyu4 /dev/ttywd /dev/ttyz6
|
69
|
-
/dev/tty33 /dev/ttya2 /dev/ttycb /dev/ttyp4 /dev/ttyrc /dev/ttyu5 /dev/ttywe /dev/ttyz7
|
70
|
-
/dev/tty34 /dev/ttya3 /dev/ttycc /dev/ttyp5 /dev/ttyrd /dev/ttyu6 /dev/ttywf /dev/ttyz8
|
71
|
-
/dev/tty35 /dev/ttya4 /dev/ttycd /dev/ttyp6 /dev/ttyre /dev/ttyu7 /dev/ttyx0 /dev/ttyz9
|
72
|
-
/dev/tty36 /dev/ttya5 /dev/ttyce /dev/ttyp7 /dev/ttyrf /dev/ttyu8 /dev/ttyx1 /dev/ttyza
|
73
|
-
/dev/tty37 /dev/ttya6 /dev/ttycf /dev/ttyp8 /dev/ttys0 /dev/ttyu9 /dev/ttyx2 /dev/ttyzb
|
74
|
-
/dev/tty38 /dev/ttya7 /dev/ttyd0 /dev/ttyp9 /dev/ttys1 /dev/ttyua /dev/ttyx3 /dev/ttyzc
|
75
|
-
/dev/tty39 /dev/ttya8 /dev/ttyd1 /dev/ttypa /dev/ttys2 /dev/ttyub /dev/ttyx4 /dev/ttyzd
|
76
|
-
/dev/tty4 /dev/ttya9 /dev/ttyd2 /dev/ttypb /dev/ttys3 /dev/ttyuc /dev/ttyx5 /dev/ttyze
|
77
|
-
/dev/tty40 /dev/ttyaa /dev/ttyd3 /dev/ttypc /dev/ttys4 /dev/ttyud /dev/ttyx6 /dev/ttyzf
|
78
|
-
/dev/tty41 /dev/ttyab /dev/ttyd4 /dev/ttypd /dev/ttys5 /dev/ttyue /dev/ttyx7
|
79
|
-
/dev/tty42 /dev/ttyac /dev/ttyd5 /dev/ttype /dev/ttys6 /dev/ttyuf /dev/ttyx8
|
80
|
-
/dev/tty43 /dev/ttyad /dev/ttyd6 /dev/ttypf /dev/ttys7 /dev/ttyv0 /dev/ttyx9
|
81
|
-
/dev/tty44 /dev/ttyae /dev/ttyd7 /dev/ttyprintk /dev/ttys8 /dev/ttyv1 /dev/ttyxa
|
82
|
-
|
83
40
|
$ sudo usermod -aG dialout <linux_account>(自分のRPiのyukiと入れた)
|
84
41
|
```
|
42
|
+
|
43
|
+
デバイス名を調べる。
|
44
|
+
```Linux
|
45
|
+
root@yuki-RPi:/home/yuki# sudo su
|
46
|
+
root@yuki-RPi:/home/yuki# dmesg | grep tty
|
47
|
+
[ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=0
|
48
|
+
snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1
|
49
|
+
video=HDMI-A-1:720x480M@60 smsc95xx.macaddr=DC:A6:32:DB:A2:DC
|
50
|
+
vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 zswap.enabled=1
|
51
|
+
zswap.zpool=z3fold zswap.compressor=zstd dwc_otg.lpm_enable=0 console=tty1
|
52
|
+
root=LABEL=writable rootfstype=ext4 rootwait fixrtc quiet splash
|
53
|
+
[ 0.000434] printk: console [tty1] enabled
|
54
|
+
[ 0.880312] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 19, base_baud = 0) is a
|
55
|
+
PL011 rev2
|
56
|
+
[ 7.402851] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0
|
57
|
+
[ 80.457996] input: ELECOM TK-FBP102 Keyboard as
|
58
|
+
/devices/platform/soc/fe201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:056E:1068.0005/input/i
|
59
|
+
nput8
|
60
|
+
[ 4777.088469] input: ELECOM TK-FBP102 Keyboard as
|
61
|
+
/devices/platform/soc/fe201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:056E:1068.0006/input/i
|
62
|
+
nput9
|
63
|
+
[ 4899.391092] input: ELECOM TK-FBP102 Keyboard as
|
64
|
+
/devices/platform/soc/fe201000.serial/tty/ttyAMA0/hci0/hci0:11/0005:056E:1068.0007/input/i
|
65
|
+
nput10
|
66
|
+
```
|
67
|
+
これより、デバイス名は```/dev/ttyUSB0```とわかる。
|
85
68
|
|
86
69
|
次にサンプルプログラムを修正。
|
87
70
|
```dynamixel_sdk_examples/src```にある```read_write_node.cpp```のデフォルトセッティングのうちボーレートとシリアル通信のデバイス名を変更。
|
@@ -93,22 +76,23 @@
|
|
93
76
|
#define BAUDRATE 57600 // Default Baudrate of DYNAMIXEL X series
|
94
77
|
#define DEVICE_NAME "/dev/ttyUSB0" // [Linux] To find assigned port, use "$ ls /dev/ttyUSB*" command
|
95
78
|
```
|
96
|
-
|
79
|
+
今回はそのまま
|
97
|
-
```cpp
|
98
|
-
// Default setting
|
99
|
-
#define DXL1_ID 1 // DXL1 ID
|
100
|
-
#define DXL2_ID 2 // DXL2 ID
|
101
|
-
#define BAUDRATE 57600 // Default Baudrate of DYNAMIXEL X series
|
102
|
-
#define DEVICE_NAME "/dev/serial" // [Linux] To find assigned port, use "$ ls /dev/ttyUSB*" command
|
103
|
-
```
|
104
80
|
|
105
81
|
それから、実際に動作させてみる。
|
106
82
|
```Linux
|
107
83
|
$ ros2 run dynamixel_sdk_examples read_write_node
|
108
84
|
Package 'dynamixel_sdk_examples' not found
|
85
|
+
~$ ros2 topic pub -1 /set_position dynamixel_sdk_custom_interfaces/SetPosition "{id: 1,
|
86
|
+
position: 1000}"
|
87
|
+
1694594854.798480 [1] ros2: config:
|
88
|
+
//CycloneDDS/Domain/Internal/MinimumSocketReceiveBufferSize: setting moved to
|
89
|
+
//CycloneDDS/Domain/Internal/SocketReceiveBufferSize[@min]
|
90
|
+
(/home/yuki/cyclonedds_config/cyclonedds_config.xml line 6)
|
91
|
+
Waiting for at least 1 matching subscription(s)...
|
92
|
+
Waiting for at least 1 matching subscription(s)...
|
93
|
+
^C
|
109
94
|
```
|
110
|
-
|
95
|
+
一応パッケージはないけど、メモ代わりにtopicの方も載せてます。
|
111
|
-
|
112
96
|
|
113
97
|
### 補足情報(FW/ツールのバージョンなど)
|
114
98
|
|