ブログ

Armadillo-X1/IoT(G3/G3L):ser2net(シリアルポートをtelnet/TCPに接続するソフト)を動かす

at_kazutaka.bito
2018年9月3日 10時00分

Armadillo-X1/IoT(G3/G3L)で、ser2net(シリアルポートをtelnet/TCPに接続するソフト)を動してみました。

例えば、
PC--(LANインタフェース)--Armadillo-X1--(シリアルインタフェース)--装置
のような構成で、PCのLANインタフェースで装置とシリアル通信する用途に使えます。

以下、Armadillo-X1の場合で説明していますが、Armadillo-IoT(G3/G3L)でも手順は同様です。

1.ser2netのインストール

Armadillo-X1をインターネットに接続できるネットワークに有線LANで接続します。
以下、Armadillo-X1のコンソール上での操作になります。

ser2netをインストールします。

root@armadillo:~# apt-get update
root@armadillo:~# apt-get upgrade
root@armadillo:~# apt-get install ser2net

2.ser2netの設定

インストールが完了したら、telnet/TCP接続する装置(PC等)に有線LANを接続します。
有線LAN(ここでは、eth0)のネットワークを接続しなおします。
(下記は、一度切断して、接続しなおしてます。)

root@armadillo:~# ifdown eth0
root@armadillo:~# ifup eth0

ser2netの設定ファイルを編集します。
エディタ(下記はviエディタの場合)で、ser2net.confを開きます。

root@armadillo:~# vi /etc/ser2net.conf

ser2net.conf内の下記の行

BANNER:banner:\r\nser2net port \p device \d [\s] (Debian GNU/Linux)\r\n\r\n

2000:telnet:600:/dev/ttyS0:9600 8DATABITS NONE 1STOPBIT banner
2001:telnet:600:/dev/ttyS1:9600 8DATABITS NONE 1STOPBIT banner
3000:telnet:600:/dev/ttyS0:19200 8DATABITS NONE 1STOPBIT banner
3001:telnet:600:/dev/ttyS1:19200 8DATABITS NONE 1STOPBIT banner

を削除、または、下記のようにコメントアウト(行頭に#をつける)します。

#BANNER:banner:\r\nser2net port \p device \d [\s] (Debian GNU/Linux)\r\n\r\n

#2000:telnet:600:/dev/ttyS0:9600 8DATABITS NONE 1STOPBIT banner
#2001:telnet:600:/dev/ttyS1:9600 8DATABITS NONE 1STOPBIT banner
#3000:telnet:600:/dev/ttyS0:19200 8DATABITS NONE 1STOPBIT banner
#3001:telnet:600:/dev/ttyS1:19200 8DATABITS NONE 1STOPBIT banner

ser2net.confに下記(※1)の内容を追加します。

BANNER:banner

8080:telnet:600:/dev/ttymxc6:115200 8DATABITS NONE 1STOPBIT banner

※1)上記は、シリアルポートとtelnet/TCPとの接続の設定として、

telnet/TCPのポート:8080
シリアルポート:/dev/ttymxc6(※2)
ボーレート:115200

に設定する例です。

※2)/dev/ttymxc6は、Armadillo-X1のアドオンインタフェース(CON7)で、
Armadillo-X1製品マニュアル
6.9. Armadillo-IoT RS232Cアドオンモジュール RS00
のRS232C、
6.10. Armadillo-IoT 絶縁RS232C/422/485アドオンモジュール RS01
のRS232C/RS422/RS485を使用する場合のシリアルポートのデバイスファイル名です。
Armadillo-X1の他のシリアルポートを使う場合や、Armadillo-IoT(G3/G3L)の場合は、
実際に使用するシリアルポートのデバイスファイル名に読み替えてください。

3.ser2netを動かす

ser2netを実行します。

root@armadillo:~# ser2net

上記例の設定の場合、LANインタフェース側(PC等)でシリアル通信ソフト(TeraTerm等)を使って、
Armadillo-X1のIPアドレスのポート8080にtelnet/TCPで接続すると、
Armadillo-X1のアドオンインタフェース(CON7)の
6.9. Armadillo-IoT RS232Cアドオンモジュール RS00
または
6.10. Armadillo-IoT 絶縁RS232C/422/485アドオンモジュール RS01
に接続した装置とシリアル通信できます。