一往確認日記

有限会社伊藤ソフトデザインの代表をしています。

PLCでテストするとはどういう事?

PLCでのテストは入力条件を与えた時に出力がどうなるかを確認することになる。
下のラダーではスタートスイッチ(X1)、ストップスイッチ(X2)が入力になり、モーター出力(Y53)が出力になります。

真理値表では次の様になることが期待されます。  

Y53がOFFの状態の時

X1 X2 Y53
OFF OFF OFF
ON OFF ON
OFF ON OFF
ON ON OFF

Y53がOFFの状態の時

X1 X2 Y53
OFF OFF ON
ON OFF ON
OFF ON OFF
ON ON OFF

シミュレーターではマウスでクリックしながら入力を与えて目で出力を確認するという具合でした。
これをプログラム的に自動で確認していくのがテストになります。

シミュレーターでのテスト

PLCのテストをシミュレーターでする場合について

動画ではスタート、ストップスイッチでモーターを動作させる例です。非常停止もあります。

youtu.be

  1. 非常停止が入らない様にPLC起動前に非常停止入力がONになる様に設定しています。(初期設定)
  2. スタートスイッチでモーターが動作しストップスイッチで停止するのを確認しています。
  3. モーター動作中に非常停止が入ると停止するのを確認しています。
  4. 非常停止中はスタートスイッチを押してもモーターが動作しないことを確認しています。

簡単な回路ですがマウス操作がけっこうあります。
もっと複雑な場合はエラーが発生しない様にやセンサーの状態など初期設定がかなり大変になってきます。
テストで確認するところまで辿り着く前に嫌になってきます。

PLCのテストについて

先日ソフト変更してもらったのを他の人から動作確認してもらうことがありました。 机上での確認のみなので、確認しきれず間違っている箇所はある訳で、やっぱりきちんとテストするべきだなと思いました。

PLCのテストはどうするかというのはあるんですが、

  1. 机上で頑張る
  2. シミュレーターで確認する
  3. 実機で確認する
  4. テストフレームワークを使って確認する

机上で頑張る

机上で確認というのも良くありますが、入力ミスはなかなか気づけません。
コピーしながら作っていると自己保持のデバイスを変更するのを忘れて、実機で確認した時に変な動きをしてしまって原因がなかなか分からないということもあります。(今回もそうだったのですが)
信号をトレースできれば追って行けたりしますが、機種によってはトレースできなかったりするのでその場合は手を焼きます。

シミュレーターで確認する

シミュレーターで確認する場合に初期状態を作るのが大変です。
例えばシミュレーター立ち上げ直後に非常停止やアラーム条件が入っている状態になっていると、それらを正常な状態にいちいちセットしていく必要があります。
そうしてアラームを解除してから確認できる様になりますが、ここまでの手間が結構大変です。
シミュレーターによってはデバイス値を保存して一括で書き込むという方法もあるかもしれませんが、それでも面倒だと思います。

実機で確認する

実機で確認するというのが多いと思いますが、装置によっては材料が流せないなどで十分確認できないことも良くあり、実稼働が始まってから色々問題が発覚してしまうという最悪の状況に出くわすこともあり、できれば避けたいです。

テストフレームワークを使って確認する

前のブログでも何回か書いてますが、プログラム言語ベースのプログラムではテストフレームワークというのがありそれを活用する方法です。
過去にはPLC用のテスト用プログラムを作ったことはありましたが、自分でテストする分には使いにくくて既存のテストフレームワークを使う方が使いやすかったというのがあります。
自分で使う分にはテストフレームワークでいいのですが、誰でも使える様に一般化したい場合はどうしたらいいかというのをずっと思案していますが、未だに思いついてないのですが、これから書いていくうちにまとまるといいのですが…

irBoard 2.6.0がリリースになりました。

irboard.itosoft.com

irBoard 2.6.0では新たにメッセージ部品を追加しました。
これによりアラーム表示や起動条件が揃っていない項目などを表示することができる様になりました。

チュートリアル"3. 部品を使ってみよう。"で確認できます。

項目を押すと詳細を表示することもできて、発生したアラームの対処方法などを表示することもできます。

通常のタッチパネルでは履歴表示機能もありますが、iOSバイスは使用する時だけ使うようにデザインされていますので、使っていない間に発生したアラームは取りこぼしてしまうので履歴表示機能は実装するつもりはありません。
同様に発生時刻の表示も正確に表せないためこちらも実装しません。

ioTouch2 ver 2.1.2 と irPanel ver 2.1.3 がリリースになりました。

irPanelのユーザーよりiOS 18で動作しないという報告がありました。
手元では確認できませんでしたが、最新のSDKでビルドし直し動作することを確認していただきました。

iOS 18で動作しない場合はバージョンアップしてみてください。

irboard.itosoft.com

画像追加時に画面が戻ってしまい画像を選択できない。

irBoardで画像を追加する際に、+ ボタンを押して画像を選択する画面が出ますが、画像を選択する前に前の画面に戻って選択できない状態になることがあります。

左上の丸で囲まれた+ボタンを押して表示された選択画面がすぐに閉じられてしまう。

その際は一度別の部品を選択してから再度試してください。

iOSのバージョンアップに伴って発生する様になった現象で、解決するまでは上記手順で対応をお願いいたします。

メトリーでirBoardが紹介されました

研究者・エンジニア向けのメーカー・代理店比較の「メトリー」irBoard / Lite / Enterprise / Player for Deviceが、紹介されました。

metoree.com

遠隔監視システムカテゴリー内でも参照いただけます。

metoree.com