LoginSignup
1
1

More than 1 year has passed since last update.

OpenPLC用 Arduino UNO用テストベンチボードを作ってみました ラダープログラム編

Posted at

前回Arduino UNO用のベンチボードの紹介をしました。
前回の記事

前回の記事の中にArduino IDEで作成したサンプルプログラムを掲載していますが
今回はそれと同等の動きをするラダープログラムをOpenPLCで作ってみました。

先ずはOpenPLCのページから OPENPLC EDITORRuntime をダウンロードします。
Windows への OpenPLC ランタイムのインストール
Linux への OpenPLC ランタイムのインストール

OpenPLCのインストールに関してはYoutubeの
Next Step の Open PLC で ラダープログラム 基礎編 01
こちらを参考にしてください。

OpenPLC Editerを起動して新しいプロジェクトを作成します。
ここでは OpenPLC_test_01 としました。
2023-01-05.png
また LanguageLD (ラダー言語)を選択します。
2023-01-05 (1).png

入力と出力の設定は次のように設定します。
2023-01-05 (3).png

ラダープログラムは次のようになります
(プログラムの説明は別の機会に行います)
2023-01-05 (6).png

作成したラダープログラムを保存します。
オレンジ色の下矢印のアイコンをクリックしてください。
2023-01-05 (6).png
ファイル名を指定して保存します。
今回はOpenPLC_test にしました。(拡張子の .st は自動で付加されます)
2023-01-05 (4).png

これでラダープログラムの準備は終了です。

次にArduino UNOでこのラダープログラムを実行する準備を行います。

Arduino UNO用のFarmwareをダウンロードして Arduino IDE で書き込みます。
Farmwareダウンロードページ

Firmwareの書き込みが終了したら Arduino IDE を閉じておいてください。
(OpenPLC Runtimeとの通信に同じシリアルポートを使っているので競合してしまうので)

次に OpenPLC Runtime を起動します。
ターミナルが起動して次のように表示されます。
image.png

OpenPLC Runtime が起動したら ブラウザから localhost:8080 にアクセスします。
ユーザー名、パスワード共に openplc と入力します。
2023-01-05 (9).png

認証に成功すると以下の画面になります
2023-01-05 (10).png

次にProgramのページで、先ほどOpenPLC Editer で保存した .stファイルを開きます。
2023-01-05 (24).png2023-01-05 (28).png
2023-01-05 (27).png
Nemeの欄に適当な名前を入力して upload program をクリックします。
2023-01-05 (29).png

Go to Dashboardボタンが赤くなったらアップロード終了です。
2023-01-05 (30).png
Go to Dashboard ボタン を押して Dashboard に戻ります。
次に Slave Devices をクリックして Arduino UNO を登録します。
2023-01-05 (31).png
Add new device をクリックします。
Device Type で Arduino UNO を選択して arduino UNO がつながっているシリアルポートを選択します。
Device Name は何でも良いのですが Arduino UNO としておきます。
(他の項目は変更出来ません)
Save deviceボタンを押してセーブします。
Slave Devices のページに今追加した Arduino UNOが表示されます。
2023-01-05 (34).png
Start PLCボタン を押すと Status: が Runningになります。
この時点でArduino UNOでラダープログラムが走っています。
2023-01-05 (35).png
Monitoringページ入出力のモニタが出来ます。
Degital_in_0のスイッチを押したらDegital_out_0がオンになりました。
2023-01-05 (36).png
Analog_in_0の半固定抵抗を回すとAnalog_in_0の値とAnalog_out_0の値が変わります。
2023-01-05 (37).png

以上で Arduino UNO 上でOpenPLCのプログラムが走りました。
ただ、これだとArduino UNO単体ではラダープログラムの実行が出来ません。
ラダープログラムの学習にはなりますが、機械に組み込んでの制御は出来ません。

次回はArduino UNO単体でも OpenPLCのプログラムを実行する方法を解説します。

1
1
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
1
1