三菱電機製のGX Works3にて浮動小数点を扱うことが度々あります。
BIN16bitデータでは桁を合わせたりしなければなりませんがその必要がないため、浮動小数点の場合、演算の簡略化が可能です。
C言語やプログラムを組まない人にとっては、浮動小数点、つまりいつも計算する方法が馴染みがありますが、PLCラダー言語で慣れている人にとっては浮動小数点演算はあまり行わず、BIN16bit演算を多用することが多いです。
BIN16bit演算は足し算や引き算、掛け算を行う際にはそれほど不都合が生じませんが、割り算を行った際には桁が全て無くなってしまうことが生じます。
割り算の場合、【 被除数 ÷ 除数 = 商 ・・・ 余り 】となりますが、【 被除数 < 除数 】の場合、商は0となってしまい、演算結果もデータレジスタDがD+0:商、D+1:余りと分けられてしまい、それらを考慮してプログラムを考慮して演算を作成するのがとても手間となってしまいます。
※そのため、ラダー言語のBIN16bit演算を行う場合はしっかり桁、つまり割られても商が0にならないように被除数を大きくする必要があります。
そのような不都合が多くなってしまうと浮動小数点でデータを扱い、浮動小数点演算をさせた方が利点が多いと言っていいでしょう。
” BIN16bit 除法プログラム例 ”
広告
浮動小数点とは?
下記Wikiに詳しく書かれていますので詳細は譲ります。
GX Works3による浮動小数点データ設定・BIN16bit→浮動小数点変換
GX Works3による浮動小数点演算
加算
減算
広告
乗算
除算
浮動小数点→BIN16bitデータ変換
終わりに
色々なデータ処理方法があり、浮動小数点演算が使用できるようになれば、様々な演算が楽になる部分があるでしょう。
参考にしてみて下さい。
広告