Takuya Anzai
MCU Engineer

はじめまして。新米エンジニアの安齊です。
日々、業務と並行してマイコンの技術習得に励んでいます。
さて、皆さんは産業ネットワーク機器の開発と聞くと何を思い浮かべますか?

プロトコルに適したチップの選定や面倒なチップの初期設定、複数プロトコルへの対応など先が見えない開発の数々に想像しただけで私は頭を抱えてしまいます。

もし、複数プロトコルに対応したマイコンがあり、それの初期設定や最適化されたプロトコルスタックが準備されていたら、開発工数が大幅に削減できて、非常に便利だと思いませんか。

32ビットマイコンRX72Mで用意されている産業ネットワークソリューションはまさにユーザの悩みを解決し、開発期間短縮に貢献するソリューションです。

まずはソリューションで提供されるアイテムを見てみましょう。
提供されるアイテムは以下の2点です。

  • 産業ネットワークの評価・開発に適した評価ボード(RSK+ for RX72M,テセラ・テクノロジー社製ボード) 

rsk for rx72m

  • EtherCATをはじめとした10種類のプロトコルスタックのサンプルプログラム

logos

ユーザはこれらを活用することにより試作基板の準備やプロトコル層、マイコンの初期設定などの開発環境立上げを簡単かつスピーディに完了することができ、アプリケーション層の開発に注力することができます。

特にEtherCATは、年々シェアが拡大している注目のプロトコルです。最大の特長は汎用Ethernetやその他の産業ネットワークと比べて、高速処理・機器間の高精度な同期制御を可能としています。ですので、工場内のセンサおよびロボット、PLCなどあらゆる産業向けアプリケーションに適したプロトコルとなっています。

この注目を集めるEtherCATを題材として、環境開発立上げをしてみます。

*立上げ作業は、サンプルプログラムに入っているアプリケーションノート:通信ボード EtherCATスタートアップマニュアル(R01AN4672JJ0100)を参考にしています。

まずは、事前準備として、以下の物が必要となります。

ethercat

   
PC e2 studio、SSC tool、TwinCAT3(EtherCAT Technology Group(通称:ETG)からダウンロード 
エミュレータ E2エミュレータLite
評価ボード テセラ・テクノロジー社製ボード  (TS-RX72M-COM)

準備が整いましたら、サンプルプログラムをルネサスのwebサイトからダウンロードします。

ダウンロードしたZIPファイルの中に10種類のプロトコルスタックとアプリケーションノートが格納されています。

EtherCATのサンプルプログラムはecat_demo_comrx72m.zipです。
サンプルプログラム内には、RX72Mの初期設定とEtherCAT通信を確認するためのプログラムなどが格納されています。EtherCATのプロトコルスタックは同梱されていないため、SSC toolを使用して、プロトコルスタックを生成します。

*なぜ、プロトコルスタックが同梱されていないのか先輩に聞いてみたところ、ETGのルール上、SC toolで生成したプロトコルスタックを直接ユーザに配布することは禁止されているためだそうです。 

サンプルプログラム内にあるコンフィグファイルをSSC Toolに読み込むだけで、RX72Mに適したコードを生成できますので、プロトコルの知識がない私でも簡単に操作できました。

slave-stack-code-tool

プログラムの下準備は完了しましたので、e2 studioにてサンプルプログラムを評価ボードに実装します。

これにて開発環境立上げは完了です。所要時間はなんと10分!

マニュアルを睨みながらのマイコンの初期設定や気の遠くなるようなプロトコル層の開発も不要なので、私のような組込み開発初心者でもサクサク進めることができました!

つぎに、EtherCAT通信を確認していきます。

マスタとなるPLC実機が手元にないので、マスタ機器との接続をPC上でシミュレーションできる便利なソフトウェア”TwinCAT3”を使用します。
 

visual studio screen

TwinCAT3の代表的な機能を使って接続チェックを行います。

まず、バススキャン機能。評価ボードのLAN接続、PHYが認識されているか確認できます。

次は実際の通信を行っていきます。EtherCATの代表的な通信は周期通信(PDO)とSDO(非同期通信)の2つありますが、今回はPDOアクセスでスレーブのObjectを書き換えます。サンプルプログラムのObjectの初期状態は0000h(LED消灯)となっていて、任意の4ビットに書き換えて、LED点灯・消灯を制御する仕組みとなっています。

今回入力した値は”1111”なので、赤色LEDが全点灯すれば通信成功ですが。。。

ethercat board led

見事!LED点灯に成功しました!

今日までTwinCAT3を使った事がない私でもアプリケーションノートの手順に従えば、TwinCAT3の操作からLED点灯まで10分程度で作業が完了しました。EtherCAT通信をこれから検討するユーザの方にもおススメのサンプルですね!

今回は一例としてEtherCATの紹介をしましたが、その他のプロトコルにも同様のサンプルプログラムとアプリケーションノートがあるため、簡単かつスピーディに開発環境を構築できます。

産業用スレーブ機器を開発する際は是非RX72M産業ネットワークソリューションをご活用ください。

*EtherCAT®は、Beckhoff Automation GmbH(ドイツ)よりライセンスを受けた特許取得済み技術であり登録商標です。

Log in or register to post comments