【三菱iQ-Fシリーズ】BCD→BINデータ変換(BIN)命令の指令方法とラダープログラム例

00_【三菱iQ-Fシリーズ】BCD→BINデータ変換(BIN)命令の指令方法とラダープログラム例

三菱電機製シーケンサiQ-Fシリーズにおける「BCD→BINデータ変換」命令とは、指定したBCD(二進化十進数)データをBIN(2進数)に変換するラダープログラム命令です。

二進化十進数(Binary Coded Decimal)とは、10進数の各桁を2進数4桁で表現する方法です。例えば10進数の「1234」は、BCDでは「0001 0010 0011 0100」と表現されます。

三菱電機製シーケンサiQ-FシリーズのCPUユニットの演算はBIN(2進数)データで扱われるため、ディジタルスイッチのようなBCDでPLCに取り込む機器をBINデータに変換するとき等に使用します。

この記事では、三菱電機製シーケンサiQ-FシリーズにおけるBCD→BINデータ変換命令の指令方法ラダープログラム例について解説します。

注意
この記事中のラダープログラムはGX Works3で作成しており、シリーズ:FX5CPU、機種:FX5Uに設定してあります。

三菱電機製シーケンサiQ-Fシリーズにおいて、BIN→BCDデータ変換命令は以下のCPUで使用することが可能です。

FX5UJ:使用可
FX5U:使用可
FX5UC:使用可

三菱電機製シーケンサiQ-Fシリーズでは、逆にBIN(2進数)データをBCD(二進化十進数)に変換するBIN→BCDデータ変換(BCD)命令が用意されています。BIN→BCDデータ変換(BCD)命令については以下のページで解説しております。

00_【三菱iQ-Fシリーズ】BIN→BCDデータ変換(BCD)命令の指令方法とラダープログラム例 【三菱iQ-Fシリーズ】BIN→BCDデータ変換(BCD)命令の指令方法とラダープログラム例
当サイトは現場の技術者を応援するスポンサー様のご支援により運営されています。
スポンサー様一覧ページはこちら>>

1. BCD→BINデータ変換命令の指令方法

BCD→BINデータ変換命令には、4種類の指令方法があります。

BIN:符号付き16ビット連続実行形
BINP:符号付き16ビットパルス実行形
DBIN:符号付き32ビット連続実行形
DBINP:符号付き32ビットパルス実行形
メモ
連続実行形は、入力条件がONしている間、毎スキャン実行される命令です。
パルス実行形は、入力条件がONしたときの1スキャンのみ実行される命令です。

各データ型の表現範囲は以下のようになります。※他の命令と範囲が異なります。

符号付き16ビット形:0~+9999
符号付き32ビット形:0~+99999999

BIN:16ビット連続実行形(基本の形)

符号付き16ビット連続実行形のBCD→BINデータ変換命令は BIN と指令します。

こちらがBIN命令を使用したラダープログラム例です。

10_BIN命令

このラダープログラムでは、入力条件であるX0がONしている間、BCD(二進化十進数)データのD0のデバイス値をBIN(2進数)に変換してD10に格納します。

例えば、D0の値がBCDで「1234」の場合、D10の各ビットは以下のようになります。

10_命令イメージ

BCDは10進数の各桁を2進数4桁で表現されるため、D0の0~3ビット目→「1桁目」、4~7ビット目→「2桁目」、8~11ビット目→「3桁目」、12~15ビット目→「4桁目」として扱われます。

注意
変換元であるBCDデータ(↑のラダープログラムだとD0)の各桁の値が0~+9の範囲外の場合、エラーコード3401Hにて演算エラーになります。

BIN命令は連続実行形であるため、X0がON中にD0の値が変わるとD10の値も追従して変わります。


先ほどのラダープログラムはGX Works3の回路上で BIN D0 D10 と入力してEnterキーを押すと挿入されます。(小文字でもOKです。)

10_命令挿入

BINP:16ビットパルス実行形

符号付き16ビットパルス実行形のBCD→BINデータ変換命令は BINP と指令します。

こちらがBINP命令を使用したラダープログラム例です。

11_BINP命令

連続実行形(BIN命令)との違いは、入力条件である入力リレーX0がON中にD0の値が変わってもD10の値は追従して変化しないことです。

X0がONした瞬間、BCD(二進化十進数)データのD0のデバイス値をBIN(2進数)に変換してD10に格納します。

メモ
入力条件がOFF→ONしたときにBCD→BINデータ変換命令が1スキャンだけ実行します。

DBIN・DBINP:32ビット実行形

符号付き32ビット連続実行形のBCD→BINデータ変換命令は DBIN と指令します。

符号付き32ビットパルス実行形のBCD→BINデータ変換命令は DBINP と指令します。

こちらがDBIN・DBINP命令のラダープログラム例です。

12_DBIN命令
12_DBINP命令

32ビット実行形の場合、指定したデバイスを若番とする2ワード(32ビット)長として扱われます。↑のラダープログラムの場合、BCD(二進化十進数)データのD0・D1のデバイス値をBIN(2進数)に変換してD10・D11に格納します。

12_命令イメージ

2.【例題①】ディジタルスイッチの値を読み取る(2桁)

下記仕様のラダープログラムをBCD→BINデータ変換命令を用いて解説します。

仕様
BCD形式のディジタルスイッチの値を読み取りD0に表示する。
ディジタルスイッチは2桁として、1桁目をX20~X23、2桁目をX24~X27に接続されているものとする。
※本記事ではタッチパネルで代用します。

BCDデータのX20~X27の値をBIN変換してD0に格納する処置にBCD→BINデータ変換(BIN)命令を使用します。

GOTの動作イメージ

GOTの動作イメージは以下のようになります。

例題①_GOT

BCD形式のディジタルスイッチの値を読み取りD0に表示します。

ディジタルスイッチは2桁として、1桁目をX20~X23、2桁目をX24~X27に接続されているものとします。

ディジタルスイッチは2桁のため、D0のデバイス値は0~99となります。

ラダープログラム

ラダープログラムは以下のようになります。

例題①_ラダープログラム

転送元のBCDデータにK2X20、転送先のBINデータにD0を指令したBCD→BINデータ変換(BIN)命令を使用します。

BIN命令でK2X20と指令すると、転送元のデバイスがX20~X27の8ビット(=BCD2桁)になります。

メモ
三菱電機製シーケンサiQ-FシリーズにおけるSM400は『PLCがRUN中は常にONする』特殊なデバイスです。

3.【例題②】ディジタルスイッチの値を読み取る(1桁×2)

下記仕様のラダープログラムをBCD→BINデータ変換命令を用いて解説します。

仕様
BCD形式のディジタルスイッチの値を読み取りD0に表示する。
ディジタルスイッチは2桁として、1桁目をX20~X23、2桁目をX24~X27に接続されているものとする。
D0に1桁目、D1に2桁目の値を表示する。
※本記事ではタッチパネルで代用します。

BCDデータのX20~X23の値をD0、X24~X27の値をD1にBIN変換して格納する処置にBCD→BINデータ変換(BIN)命令を使用します。

【例題①】では2桁→D0ですが、今回はD0、D1それぞれ1桁ずつになります。

GOTの動作イメージ

GOTの動作イメージは以下のようになります。

例題②_GOT

BCD形式のディジタルスイッチの値を読み取りD0に表示します。

ディジタルスイッチは2桁として、1桁目をX20~X23、2桁目をX24~X27に接続されているものとします。

D0に1桁目、D1に2桁目の値を表示します。

ラダープログラム

ラダープログラムは以下のようになります。

例題②_ラダープログラム

転送元のBCDデータにK1X20、転送先のBINデータにD0を指令したBCD→BINデータ変換(BIN)命令を使用します。(1行目)

転送元のBCDデータにK1X24、転送先のBINデータにD1を指令したBCD→BINデータ変換(BIN)命令を使用します。(2行目)

BIN命令でK1X20と指令すると、転送元のデバイスがX20~X23の4ビット(=BCD1桁)になります。

メモ
BIN命令では、16ビット実行形→最大K4(4桁)、32ビット実行形→最大K8(8桁)をBIN変換することが出来ます。

4. おわりに

三菱電機製シーケンサiQ-FシリーズにおけるBCD→BINデータ変換命令について解説しました。

電気ハード設計、PLC/TPソフト設計、ロボットティーチング、制御盤製作の外注業務は、ぜひ永工舎にご相談ください。

当サイトを運営している電気設計人は、個人で永工舎として外注業務をお請けしております。

以下の参考書はラダープログラムの色々な「定石」が記載されており、実務で使用できるノウハウが多く解説されています。私がラダープログラムの参考書として自信をもってオススメできるものです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です