質問編集履歴

1

デバイス名の調べ方を変更

2023/09/13 08:52

投稿

yukimeat1999
yukimeat1999

スコア20

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