2020年12月に入ってArduino.ccから新しい開発環境のArduino PLC IDE 1.0がダウンロードできるようになりました。
Arduino Optaというハードウェアのアナウンスで登場した開発ツールです。2023/03現在、このハードウェア以外には、Portenta Machine Controlがサポートされています。
2023/03/03にArduino Optaの販売が開始されました。
このブログでは、Arduino PLC IDE開発環境を使ってST言語などで制御を記述し、I/Oのコントロールを行います。

●動作環境
普通の日本語環境Windows10 PC 2台にインストールしましたが、落ちます。このブログ記事は、英語版のWindows10で動作をさせています。
Arduino Optaは3種類ありますが、ここでは、Arduino Opta RS485を利用します。
もう一つのハードウェアPortenta Machine Controlは、Modbusサーバは利用できなく、CANopenが記述できるようなのですが、詳細は不明です。
●Arduino PLC IDEは無償のソフトPLC開発環境
開発ソフト自体は、無償ですが、動作をさせるハードウェアにPLC key Portenta Machine Controlのライセンスが必要です。購入すると、コードが送られてきます。
従来のArduino IDE 2.0はスケッチというプログラムでArduino UNOなどのマイコン・ボードを動作させますが、Arduino PLC IDEでも、利用できます。メインは、新しいIEC 61131-3の言語群が使えます。
IEC 61131-3はFA用の言語群で、五つの種類が使え、混在?ができます。
- IL(Instruction List;インストラクション・リスト)
- LD(Ladder Diagram;ラダー・ダイアグラム)
- SFC(Sequential Function Chart;シーケンシャル・ファンクション・チャート)
- FBD(Function Block Diagram;ファンクション・ブロック・ダイアグラム)
- ST(Structured Text;ストラクチャード・テキスト)
調べると、FA用にはラダー言語が使われるのが普通のようです。
●FA用途とは
工場やビルなどの機材を制御するためにフィールド・バスと呼ばれる通信媒体があります。
イーサネットは、通信自体が行き当たりばったりで、一定時間内応答することが確約されていません。実際は、十分高速で混雑していなければ問題はないと思われますが、FA用途ではリアルタイム性をうたった仕様のイーサネットがいくつか利用されています。
- PROFIBUS
- DeviceNet
- EtherNet/IP
- EtherCAT
時間の規定がないのがModbus/TCPです。RS-485を使うのがModbus/RTUです。
日本では三菱電機のCC-Linkが有名ですが、どういうものかは知らないです。
●Arduino Opta RS485の対応しているプロトコルと入出力
Arduino Opta RS485では、Modbus/TCPとModbus/RTUが利用できます。そのほかにも、ディジタルもしくはアナログ(0~10V)の入力が8個、250 V AC - 10 Aの出力が4個内蔵されています。

●電源電圧は12~24V
FA用の電子機器は、24Vが使われるようです。Arduino Optaは。12~24Vに対抗しているので、電源はACアダプタが利用できます。電源端子はターミナル端子でねじ止めをするので、DCジャックの直径の規格などを気にすることなく使えます。
電源の容量は、現時点でみつかっていません。
(2023/3/16) USBケーブルをつないだだけで動作するようです。
Getting Started with Optaに、
- Power supply of 12-24V DC, 1A (optional if not running the section related to the relays) (x1)
と書かれています。出力のリレーを利用するときには、外部電源が必要なようです。