7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Arduino PLC IDE 備忘録 随時更新?

Last updated at Posted at 2022-12-17

 2020年12月に入ってArduino.ccからArduino PLC IDE 1.0がダウンロードできるようになりました。Arduino IDE 2.xが長期にわたってベータ版だったのに比べ、最初から1.0です。
 Arduino Optaというハードウェアのアナウンスで登場した開発ツールですが、2020年12月17日現在、Arduino Optaは発売されていません。
  Arduino Opta
 3モデルありますが、一度RS-485のモデルが140ドルで表示されたことがありましたが、今は見えません。
(2023/01/05現在)価格表が追加されました。Opta Liteが$146.40、Opta RS485が$160.80、Opta WiFiが$193.20。
(2023/01/15現在)2022年12月発売の表示が2023年2月発売に変更されています。
(2023/03/03現在)発売開始。知りえた時間帯で、残っているのはOpta RS485だけだった。
(2023/3/17現在) OptaをArduino IDE 2.xで始める記事が公開された Getting Started with Opta しかし、Arduino PLC IDE用に必要なファイルは存在しない。
(2023/3/28現在) Arduino PLC IDE 1.0.3がダウンロードできるようになった。Arduino IDE 2.x用AIPlc_Optaがインストールできるようになった。

 Arduino PLC IDE 1.0を動かすと、Portenta Machine Controlのハードが使われるようになっています。I/OはGPIO以外にCANバスのCANopenがサポートされています(FBDは現在見つからない。Motion関連もアナウンスはない)。

 エラーメッセージは、このファイルが該当するかもしれない。https://files.elsist.biz/forum/20130919141900.pdf

Arduino PLC IDE 1.0関連のURL

 ダウンロードは無料です。Downloadsのページ
 ドキュメントのトップです。Docs Arduino PLC IDE
 ハード1台に付きライセンスが一つ必要なようです。17.6ドル PLC key Portenta Machine Control

(2023/01/05現在)普通のWindows10 PC 2台にインストールしましたが、落ちます。英語版Windows10を用意して実行したら、問題なく動いています。日本語版では、ユーザ名はアルファベットを使っています。落ちる理由は、ほかにあるようです。コンパイルするmbed処理系は、Arduino IDE 2.xと同じ場所にインストールされます。このツールのベータ版時代、パス名が長くてインストールできなかったり、実行時に落ちていました。最終のベータ版になって落ちなくなりました。

記述言語

 Arduino PLC IDE 1.0では、従来のスケッチと、IEC 61131-3が使えます。
 スケッチのエディタの画面です。
2022-12-15 (1).png
 IEC 61131-3はFA用の言語群で、五つの言語が使え、混在?ができます。

  • IL(Instruction List;インストラクション・リスト)
  • LD(Ladder Diagram;ラダー・ダイアグラム)
  • SFC(Sequential Function Chart;シーケンシャル・ファンクション・チャート)
  • FBD(Function Block Diagram;ファンクション・ブロック・ダイアグラム)
  • ST(Structured Text;ストラクチャード・テキスト)

 過去記事では、ST言語とFBDをTwinCAT3(EtherCAT)で使いました。
 グローバル変数や構造体は、言語にかかわらず共用できるような言語体系なはずです。スケッチも、たぶん。

  イントロのページProgramming Introduction With Arduino PLC IDE

スタイル
  • Init: 初期化時に行われる、割り当てられたプログラムの単一実行
  • Fast: デフォルトで 10ms ごとに、付属のプログラムを実行するループ (変更可能)
  • Slow: 100msごとに付属のプログラムを実行するループは変更不可
  • Background: 500msごとに付属のプログラムを実行するループは変更不可

2022-12-15.png

対応モジュール?

 RS-485ではModbus/RTUがサポートされます。EthernetではModbus/TCPがサポートされます。CANではCANopenがサポートされます。
 Modbus/RTUの対応画面です。
2022-12-16 (1).png

 CANopenの対応画面です。
2022-12-15 (2).png
 Modbus Custom Editorの画面です。
image.png

 CANopen Custom Editorの画面です。EDSが見えています。
image.png

  ModBus Setup with Arduino PLC IDEのページ

  CAN Bus Setup with Arduino PLC IDEのページ

 FBDのライブラリです。CANopenはまだないようです。
fbd.png

 貼り付けたところです。

image.png

参考

 IEC 61131-3日本語関連 https://www.plcopen-japan.jp/beginners/
 
 omron PLCの国際標準プログラミング:IEC 61131-3とは?

 PLCopen ダウンロードのページ

検索で見つかったFBD関連リンク

 オフィシャル https://www.youtube.com/watch?v=l1L4jzDVKyE&t=32s
 FBDの日本語解説 FBD言語を使用したPLCプログラミング
 PLCopenのintroduction Function Block Diagram(FBD)(pptx)

 https://youtube.com/watch?v=l1L4jzDVKyE&t=32s
 https://softech.co.jp/mm_160803_plc.htm
 https://youtube.com/watch?v=hdTHl-5WxiA
 https://youtube.com/watch?v=X5UnbqBnZss

Soup氏の日本語の解説

1回目  ArduinoOPTA#Arduino PLC IDE始めよう!

Jakob Sagatowski氏の解説

1回目  https://www.youtube.com/watch?v=mq1xgubaQeA
? Modbus/TCP https://www.youtube.com/watch?v=G4LdrMfbTOc&t=530s

Arduino OPTA PLC
1回目 箱を開ける
2回目 ?? Programming the Arduino OPTA

JugaadTech氏の解説

1回目 Arduino PLC - IDE Overview & Basic Programming Part 1
2回目 Arduino PLC IDE Programming Part 2
3回目 Arduino PLC IDE Programming OOPS Part 3
4回目 Arduino PLC IDE Hardware ,Documentation & Codesys Comparison Part 4
5回目 Arduino PLC - IDE PART 5 Different Features

control.comの解説

1回目 How To: Use the Arduino PLC IDE to Build Basic Ladder Diagrams Lチカができる解説
2回目 Analog I/O and External Devices

104氏の解説

2回目 https://www.youtube.com/watch?v=LSwB-OE0_KY

JugaadTech氏の解説

1回目 Arduino PLC - IDE Overview & Basic Programming Part 1
2回目 Arduino PLC IDE Programming Part 2 Hindi

追加;補足 バックグラウンド

 Arduino PLC IDEはFA用の開発ソフトです。PLCと言えば、日本では三菱電機です。世界ではシーメンスのシェアが高いようです。
 PLCと言えば、ラダー・プログラムですが、世界は、そこからIEC 61131-3に踏み出しています。五つの言語が使え、ラダーも含まれます。
 この開発環境では、codesysが有名です。ソフト自体は無料です。Arduino PLC IDEと同じですね。デプロイするマイコンに課金されます。ラズパイだと昔、50ドル?だったようです。また、昔は5時間はフリーで使えたようです。今はわかりません。
 codesysベースに、EtherCATではベッコフのTwinCAT3が、国産のソフトも、codesysがベースになっているところもあるようです。
 残念ながら、日本語の解説書はないです。仕様書はあるけど、解説ではないです。TwinCAT3のマニュアルは日本語化されていますが、読んでもわけがわかりません。
 要は、最初、どうすべきかということが書かれていないからです。
 上記のJakob Sagatowski氏のyoutubeは、それらが詳しいですが、とても長いです。教科書的です。

 Industry4は、フィールド・バスを使います。多くは時間管理がなされます。TwinCATでは、メッセージはたとえば2msごとに送信と受信が行われます。RS-485を使ったCANバスのCANopenは100msなどです。Modbusにはそのような制約はありません。Modbusには規約書がありますが、準拠と言っている日本や中国の会社には、それを守っていないところはたくさん見かけます。TwinCATは7日有効なライセンスがいつでも発行されるので、実質、開発ソフトの費用は掛かりません。Omronの開発ソフトは相当高価です。お試し版はありません。CANopenやModbusもそれ自体はライセンス料はかかりません。CANopenのプロトコルを解釈するスキャナ・ソフトは10~20万円ほどします。Modbus用のフリーのスキャナは実用的なのが二つほどあります。
 フィールド・バスで一番利用が多いのはシーメンスのPROFIBUSです。筆者は使ったことはありません。約10年前、トヨタは、工場ではEtherCATを使うというアナウンスがなされました。EtherCATではCANopenの規約が使われ、高速です。

 IEC 61131-3のどの言語も、プログラム本体、外部参照変数、構造体などを定義して利用を始めます。プログラムの中も、ローカル変数とコードは分離されます。プログラムは複数に分割できます。ST言語で作ったものと、FBDで作ったものが、外部変数でやり取りするという作りにできます。
 変数は、物理的にGPIOポートとリンクさせるように記述ができます。

7
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?