検索
連載

メイドたちよ、“意識高い系”を現実世界に引き戻してやれ!江端さんのDIY奮闘記 EtherCATでホームセキュリティシステムを作る(最終回)(6/11 ページ)

「ご主人様とメイド」の例えで産業用ネットワーク「EtherCAT」の世界を紹介してきた本連載も、いよいよ最終回です。今回も、前回に引き続いて、EtherCATを開発したベッコフとEtherCAT Technology Groupの方々へのインタビューの模様をご紹介しつつ、「EtherCAT」への熱い想いで締めくくります。

Share
Tweet
LINE
Hatena

Q:EtherCATって、何がセールストークになるんですか?

江端 EtherCATには、強力な競争相手がたくさんいますよね(参考記事)。EtherCATは、何をセールストークとして売っているんですか?

川野さん これは明解で、「『高速』『同期』『省配線』の3つの特長を紹介し、「これらの3つが、どの規格よりも優れている」とだけいいます。実際その通りですから、それ以上を語る必要がないのです。

江端 私調べてみたのですが、EtherCATって、論理上の性能限界まで、仕様として定義されていますよね*4,5)

*4)(興味のある方は、連載第1回に記載した「最短送出間隔は125マイクロ秒に設定」のくだりを読んでください)
*5)実は、以前、TwinCAT3のユーザーである読者さんより「ウチでは8000個/秒よりもっと高速ですよ」とのご指摘をいただいており、気にしていたのですが、今回、川野さんより「実際はEtherCATで1500バイトをフルフルで使うケースはまれで、実証されているEtherCATの最小サイクルタイムは12.5マイクロ秒、つまり1秒間で最大80000個のフレームの転送が可能です」と教えていただきました。

川野さん 今のEtherCATは、100Mbpsのネットワークリソースの全てを使い果します。無駄なヘッダは1ビットたりともありません。営業でも、スペックで語る必要がないのはラクですよ。「これ以上、改善すべき点はありません」と自信を持って言い切れるんですから。私がそうであったように、エンジニアならみんなホレちゃうと思います。

江端 ええ、ホレちゃいました。私は、EtherCATの仕様を読んだ時に、『久々に圧倒的な美しさ』を見た、と思いました。まさに「エンジニアチョイス」です。あれほど美しい技術仕様は、GPSの伝送方式と測位方式と理解した時以来です。

 この時、今回のインタビューの中、唯一の非エンジニアである村尾麻悠子さんが、硬派のエンジニアたちに対して、迂闊(うかつ)な質問をしてしまいます。

村尾さん 私はエンジニアではないからよく分からないんですけど……
EtherCATの仕様って、そんなに美しいのですか?

 ここで、我が意を得たりと、村尾さんを除く全員が、マシンガンのように熱く語り始めてしまいます。

江端 考えうる無駄を全部そぎ落した最終型が、EtherCATになるという感じでしょうか。冗長という言葉がどこにもない、といった感じですよね。

川野さん 1ビットたりとも無駄にしないという思想です。EtherCATはベッコフのエンジニアたちが、長い間、ネチネチと考えぬいた至宝の仕様ですよ。

江端 ビット単位で対象(センサーとかロボットとか)を分離管理するという発想が、狂気を感じます。「8ビットの中に4つのセンサー情報を入れる」って普通じゃないですよ。

小幡さん イーサネットフレームは1500バイトもあるから、ついついジャブジャブ使ってしまえと考えてしまうのですが、EtherCATは常にビットで考えて作られています。

江端 ですから、私はENI*6)ファイルやESI*7)ファイルなしに、SOEMでマスタをハードコーディングで実装したんですが、ビット計算で死にそうになりました。

*6)ENI:EtherCAT Network Information / *7)ESI:EtherCAT Slave Information

川野さん だから、そういう面倒くさいスレーブのオブジェクト管理やステータス管理は、TwinCAT3に押しつけてしまえばいいんですよ。

 村尾さんは、私たちが何をしゃべっているのか、全然分からなかったと思います。(今、原稿書きながら)本当に申し訳なく思っています。

川野さん TwinCAT、タダですからね。じゃんじゃん使ってもらえればいいんですよ。

小幡さん 普通の制御プログラムはラダーとかドライバ開発用のC++なので一般の人にはハードルが高いですが、TwinCATにはちょっと変わったライブラリーがあって、TwinCATを経由して、普通のVBやC#からEtherCATのI/Oを直接操作することができます。

 例えば、普通のBASICやCのプログラムで、LEDを点滅させてみたり、ブザーを鳴らしてみたりとかができるのです。

川野さん Windowsプログラムからdllを呼ぶだけで、EtherCATスレーブのI/Oが読み書きができてしまいます。それに、PLC言語を使うための開発環境は無料で、ランタイムも、7日間おきに更新さえしていただければ、連続してお使いいただけます。

 ランタイムの商用利用をご希望の方には、マスタのPCのコアの数と機能に応じた料金メニューがございます。

 数千円から数十万円までいろいろありますので、用途を相談してもらえれば最適な構成をご案内しますよ。

 ベッコフは、今、TwinCAT3の大盤振る舞い(繰り返し更新可能な期間限定の無料利用)をしているようですから、もしあなたが、EtherCATにご興味があるなら、1度、試してみてはいかがでしょうか?

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る