はじめに
今回はサイクルタイムを計測する為の参考ラダープログラムの紹介をしていきます。
生産設備を作る場合必ず計測するサイクルタイムをソフト上で計測する方法です。
今回は計測結果をDM10に転送しているだけですが、DM10の値をタッチパネル等に表示すれば、サイクルタイム表示をして使用できます。
サイクルタイムとは
起動ボタンが押されたタイミングをスタートとし、1サイクル完了又は1個生産が完了するまでの時間の事を指します。
マシンサイクルやサイクルタイムなど似ているものがありますが周期的な時間を計測するには、今回紹介する方法で応用できます。
参考動作内容
スタートボタンを押し起動
ワークをクランプ
圧入開始
圧入完了
ワーク解放
サイクル完了
1サイクルの時間を計測する方法
上記のようなサイクルをイメージしてください
この場合測定したい部分はスタートボタンが押され起動したタイミングからサイクル完了までの時間です。
注意しないといけない部分として、スタートボタンが押されたタイミングでは測定を開始してはいけません。
起動がかかったタイミングで計測を開始します。
例えば、起動条件が揃っていないタイミングでも起動ボタンは物理ボタンなので押すことができます。
しかし、ソフト的には起動条件が揃った状態でボタンが押されないと起動がかからないからです。

内容解説
MR100(サイクル起動)がONするとMR1000(サイクルタイム計測中)がONし自己保持がかかります。
MR1001がONするまで、MR1000はONし続けます。
MR1000がON中はT0(計測_経過時間)が設定値の6000から減算されていきます。
6000から現在のT0の値を引くことで経過時間を計算できます。
計算結果はDM0に転送されます。
MR200(サイクル完了)がONするとMR1001(サイクルタイム計測完了)が自己保持をします。
そのタイミングでDM0の値をDM10に転送します。
こうすることでサイクル完了の時の経過時間をDM10に転送し保存できます。
MR1001がONすると次のスキャンでMR1000の自己保持が切れ、MR1000のA接点がOFFになるのでMR1001の自己保持もOFFになります。
作業者の作業時間込みの製品1個当たりの生産時間を計測する方法
この場合はスタートと終了が同じタイミングになります。
どのタイミングで計測するかは自由ですが、1サイクル動作終了時などにするのが分かりやすくていいと思います。

内容解説
MR100(ワーククランプ解放完了)がONするとMR1000(サイクルタイム計測ポイント)がONします。
MR100はOFF→ONの1スキャンのみONします。つまりMR1000も1スキャンしかONしないということです。
2行目にはMR1000のB接点があります。
これはMR100がONした1スキャンのみ接続が切れます。
2行目の常時ON部分には必要に応じて条件を入れて使用します。
基本的には不要です。
MOV命令でDM0の値をDM10に転送します。
これは手前の条件がOFF→ONになったタイミングで転送します。
つまり、計測タイミングでの経過時間をDM10に転送しています。
T0 #6000(計測_経過時間)
T命令なので0.1S単位になります。
MR1000がONしなければT0の値は設定値の6000から減算されていきます。
4行目で6000からT0の値を引くことで経過時間を計算できます。
このDM0の値を2行目でDM10に計測タイミングで転送し、DM10の値をタッチパネルにサイクルタイムとして表示させます。
タイマの設定値と減算する時の数値を同じにしないと計算が正しくできないです。
今回は6000を使用したので最大600.0秒まで計測できます。
これ以上長い時間を計測したい場合にはこの数値を大きくするといいです。
※1ワードでは65535までしかできないのでこれ以上の場合は2ワードで使用してください。
おわりに
今回紹介したサイクルタイム計測方法はあくまで参考です。
このやり方以外にも方法は存在しますし、今回のラダーでも省略できる部分は存在します。
自分が使いやすいのも大事ですが、見た人が簡単に理解できる状態も大事だと思います。
いろいろ試して自分に合った一番いい方法でプログラムを作ってみてください。
タイマについての詳細はこちらから

