HOME

シーケンス検定盤のシミュレータを作ってみました。

== こういうものです ==

画面をクリックすると動画がスタートします。

上の動画は、3級と2級の問題を組み合わせて作ったシーケンスプログラム(ラダー)で動かしています。

  1. 手動の場合、PB2で左行、PB3で右行。複数ボタン同時押しでは、先押し優先。
  2. 自動では、パレットが右端にあるときのみ起動する。
  3. パレット左端で、パレット番号を表示し、右行中はパレット番号とディップスイッチの値の積を表示する。
  4. 手動に切り替えると非常停止がかかり、PL4が点滅。PB4で非常停止解除。

PB1~PB5はそれぞれ、キーボードの「Z」「X」「C」「V」「B」に割り当てられており、2つ以上の同時押しも可能です。
また、SS0とSS1は「A」「S」、DIPSWのUP/DOWNは「D」「F」にそれぞれ割り当てられています。
(全ての操作はマウスでも可能です。ただし、その場合、複数ボタン同時押しは出来ません。)

シミュレータの完成形

シミュレータとラダーを並べて表示、作業を行うことが出来ます。
(以下の画像は全てクリックすると拡大します。)

== 使い方 ==

1.接続
 PLCとインターフェース回路の入出力ケーブルを適切に接続します。
 この時、PLCの電源はOFF、インターフェースのUSB端子は接続しない状態で行ってください。

2.起動手順
 2-1.USBケーブルでインターフェース回路とパソコンを接続してください。(インターフェース回路の電源がONします)
 2-2.パソコンのアプリケーションソフトを起動してください。インターフェース回路のポート番号が表示されます。
 2-3.表示されたポートを選択し、ONボタンをクリックしてください。
 2-4.PLCの電源をONにしてください。

== 画面の説明 ==

画面構成は以下の通りです。基本的には、実際の検定盤と同等の配置にしています。

パソコン画面
No.部品検定盤シミュレータ
1ポート選択インターフェース回路との接続ポートを選択します。
2電源ON電源スイッチ(ON)①で選択したポートに接続し、シミュレータを使用可能な状態にします。
3電源OFF電源スイッチ(OFF)ポートを解放し、シミュレータを終了します。
4電源インジケータ電源ランプシミュレータが使用可能な状態であることを示します。
5LS1右端リミットスイッチ㉗パレットが右端に到達したときONします。マウスでもON/OFF可能です。
6LS2左端リミットスイッチ㉗パレットが左端に到達したときONします。マウスでもON/OFF可能です。
7LS3パレットNo.読取スイッチ ㉗パレットが左端に到達したときONします。
㉘パレット設定と同じものがONになります。マウスでもON/OFF可能です。
LS3:bit1 LS4:bit2 LS3:bit3 です。
8LS4
9LS5
10SS0自動/手動スイッチマウスクリックまたは「A」キーによって、自動/手動を切り替えます。
11SS1オプションスイッチマウスクリックまたは「S」キーによって、ON/OFFを切り替えます。
12PB1押しボタン 1 マススクリックまたは、表示されたキーの押下(例:PB1=「Z」キー)でONします。
クリックしっぱなし、またはキー押しっぱなしでONしっぱなしとなります。
複数ボタン同時ONする場合には、キー押下を使ってください。(ON中はピンク色になります。)
13PB2押しボタン 2
14PB3押しボタン 3
15PB4押しボタン 4
16PB5非常停止ボタンマススクリックまたは、「B」キーでONします。
17DIP SWディップスイッチ数字上下のボタンをマウスクリックすると、数値が変化します。「D」「F」キーでも可。
18左行リレー左行モーター駆動リレー左行ON中は水色になります。
19右行リレー右行モーター駆動リレー右行ON中は水色になります。
20PL1パイロットランプ 1PL1~PL4がON中はライトグリーンになります。
21PL2パイロットランプ 2
22PL3パイロットランプ 3
23PL4パイロットランプ 4
24DPL17セグLED 1PLCからのBCD出力を受けて、00~99を表示します。
25DPL27セグLED 2
26コンベアベルトコンベアベルトコンベアを簡易アニメーションで表示します。
27パレットパレットパレットを簡易アニメーションで表示します。
28パレット設定パレットネジ:パレットNoを設定するためのチェックボックスです。LS3~5に対応します。
右端へ移動:パレットを強制的に右端に移動します。
左端へ移動:パレットを強制的に左端に移動します。
中央へ移動:パレットを強制的に中央に移動します。
SPEED:パレットの移動速度です。移動時間を稼ぎたいときなどに使います。

== 思い立った理由 ==

シーケンス技能検定の練習用検定盤の価格は、約10万円前後(以上?)するそうです。
練習用検定盤を何台も購入することは、多額の予算を必要とすることになります。
練習の時に、検定盤を使えない人も出てくる可能性があります。
そこで、安価に検定盤のシミュレーションが出来る装置を作成することにしました。
ただし、シミュレート出来るのは検定盤だけで、シーケンサ(PLC)は別途用意する必要があります。
ちなみに「シーケンサ」というのは、三菱電機の登録商標なので、以降は「PLC」と表記します。

== 基本構想 ==

シミュレータの基本構想

左の検定盤を右のようにパソコン上に再現することを目指します。

== システム構成 ==

本シミュレータを実現する上で、パソコン用ソフトウェアだけでなく、ハードウェア(パソコン-PLC間のインターフェース回路)
の開発が必要となります。全体のイメージ(ブロック図)を示します。

全体構成ブロック図

== ハードウェア仕様 ==

まずは、ハードウェアの仕様を考え、下記のように構想を固めていきます。
1.PLCの出力をマイコンで受け取る

PLC出力からマイコン入力

マイコンへの入力が、3.3V(HI)か0V(LO)かによって、PLCの出力状態を知ることが出来ます。
マイコン内部では常に入力をチェックし、前回の状態から変化した場合のみ、その情報をパソコンへ送ります。
(状態変化がない場合は、パソコンへの送信は行いません。)

2.マイコンの出力をPLCへ送る

マイコン出力からPLC入力

パソコンのソフトウェア上で、イベントが起きたとき(ボタンがクリックされた等)に、マイコンを通じて、PLCに対して出力します。
なお、実際にはマイコンの出力端子数が足りないため、マイコンとオープンコレクタ出力の間に拡張IOが入っていますが、割愛しています。

== ソフトウェア仕様 ==

1.ソフトウェアは以下の環境で開発しました。

PICマイコンIDEMPLABX無償
コンパイラxc8無償
デバッガpicKit有償
パソコン用アプリIDEVisual Studio C#無償

2.ソフトウェアの概要は以下の通りです。(一部、ハードウェアのところで書いたことと重複します)