プロが教える店舗&オフィスのセキュリティ対策術

オムロン PLC 入手力回路について(出力を入力に入れ順次繰返す回路で途中停止してしまう)

はじめまして。
フラットケーブル(両端コネクタIN/OUT)の導通および隣pinとの短絡を確認するチェック機を、勉強のため製作しています。

表題の内容について途中で動作が止まってしまい、うまくいかないためお知恵をお借りしたいです。

使用しているPLCはオムロンの「CJ1G」というものです。
チェックしたいフラットケーブルは40芯まであるので、40点の入出力が必要となるため、
CPU43Hの隣のスロット(CH0と1)にはID231の32点入力ユニット、
さらに隣(CH2と3)はOD231の32点出力ユニット、
そしてその隣は(CH4と5)、MD231の入力12点出力12点のユニット(CH4が出力、CH5は入力)を使用しています。

具体的な動作は、押しボタンを押すとPLCより出力された信号が、PLCの入力に入る回路です。

押しボタンを押すとID231の入力A列の0(CH0.00)がONとなり、
ラダー回路より -|CH0.00|---------(CH2.00)-
MD231の出力A列0(CH2.00)から信号が出力され、
2.8V 20mAのLED①と、ID231の入力A列1(CH0.01)に有接点により信号が入ります。

上記より入力A列1(CH0.01)がONとなると、
ラダー回路より -|CH0.01|---------(CH2.01)-
出力A列0(CH2.01)がONとなり、
LED②と、入力A列2(CH0.02)に信号が入ります。

というように、順次進んでいきLED①~㊵までが点灯します。

フラットケーブルのIN/OUTのコネクタの信号は、PLCの入力・出力ユニットに入っています。


動作が止まるというのは、
スタートして順次動作していき、入力CH0.15がONとなり、出力CH2.15から出力しても、
入力CH1.00がONとなりません。
そのため止まってしまいます。
もちろん、運転モード・ユニットのインジケータも入力CH1.00は点灯していません。

スタートをずらして、入力CH0.10から動作開始し順次動作して、
16点目の出力CH3.10から出力した信号で、次の17点目の入力CH1.11がONとなりませんでした。
17点周期の入力がONとならない法則?のようです。


少し省いていますが、ラダー回路上には、タイマーおよび接点を設けて入力されたことを
確認してから、出力されるようにしています。
エラー用の回路も組んであります。

ハード的には問題ありませんでした。
強制セットではすべて問題なく入力されています。
ソフトによる問題だと思いますが検討が付きません。

何卒、よろしくお願い致します。

質問者からの補足コメント

  • うーん・・・

    お返事が大変遅れてしまい、誠に申し訳ありませんでした。
    ご回答、誠にありがとうございます。

    1点ずつ 出力→入力 の確認をしています。

    その検査点番号(1~40)はどうやって指定していますか?
    指定というか、そのまま配線されています。
    以下流れです。
    PB→入力CH0.00→出力CH2.00→LED①とフラットケーブルINの1pin→フラットケーブルOUTの1pin→入力CH0.01→出力CH2.01…

    のようなルーチーンです。
    CH2.00から有接点でフラットケーブルINコネクタの1pinそして、
    フラットケーブルOUTの1pinに繋がってコネクタからCH0.01に配線されています。

    (というか桁上げ)ができていないように思われます。
    とのことですが、一度それまでの入出力をリセットどうでしょうか。

    カウンタですか…
    ぱっと頭に浮かびませんが考えてみます。

    No.2の回答に寄せられた補足コメントです。 補足日時:2016/10/04 23:15

A 回答 (4件)

文章では何が何だか分かりません。


スイッチを押すと出力1がON、この接続が入力2へ→出力2がON…と順々に入力と出力を繰り返す動作をさせたいのですか?

「スキャン」を意識して組まないとシーケンスプログラムの場合タイミングがわずかにずれて意図した事と違って動いてしまうことは良くあることです。確実に遷移が移ることをプログラムで作らないといけないのがシーケンスプログラムです。

プログラムを以下のように1スキャンずれるように作ってみてはどうでしょうか。
0)SW入力で②の自己保持がONするようにしておきます
1)SW入力-ONで②の自己保持がONします。この時点では①は素通りします。
2)1スキャン後、出力1はONしているので①は作動し②の自己保持がR1で解除されます。
3)R1は次のスキャンまでONしているので出力2のトリガ条件条件に使用します。


①-||--------------(R1)-
 出力1

②自己保持---|/|---(出力1)
      R1
※②のR1はAND接続ですが自己保持が切れるようにR1を配置してください。
    • good
    • 0

#2です。


補足に気付くのが遅れ、申し訳ありません。

検査方法ですが
スタートボタンを押すと出力1にのみ信号が出てその結果が入力1に帰る。
okなら自動的に出力2にのみ信号が出てその結果が入力2に帰る。
以下同様に出力40まで順次1点ずつ信号を出しては入力を確認 という方法ではありませんか?

小生がいう検査点番号(1~40)の指定とは1つだけonさせるポートの番号をどうやって決めているのかということです。
出力1、出力2、出力3・・・・出力40 と順次変化している出力ポート番号の決定方法です。
さらにこの番号をポート番号とビット番号に変換せねばなりませんがそれはうまく行っていますか?

出力1~40はすべて確実にonしていますか?
ソフトで入力の良/不良チェックを一時的に無効にして出力確認はできませんか?
    • good
    • 0

入出力が各40点あって1点ずつ 出力→入力 の確認をしているんですね?


その検査点番号(1~40)はどうやって指定していますか?
1個の40進のカウンターですか?
17番目でひっかかっているらしいとのことですが、シーケンサーは4ビット(10進数で16)を1グループにしています。17番目は次のグループになるのでその識別(というか桁上げ)ができていないように思われます。
このあたりを疑ってみてはどうでしょう?
カウンターを2段構成にしたらうまく行くかも?
第1グループは1~16番の16点、第2グループは17~32番の16点、第3グループは33~40番の8点とし、各グループに16進、16進、8進のカウンタを設けます。
別にグループ指定の3進カウンタを設けANDを取って出力を指定する、というのはどうでしょう?

小生シーケンサーは殆ど経験がないのですが16という数には悩まされた思い出があります。
この回答への補足あり
    • good
    • 0

オムロンに問い合わせてください。



http://www.fa.omron.co.jp/products/category/auto …
    • good
    • 0
この回答へのお礼

誠にありがとうございます。
オムロンに確認しましたが、ハードは問題なく、ソフトの可能性があるとのことでした。

お礼日時:2016/10/04 23:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!