【上級編】電卓作成 GX Works3

f:id:vv_6ong_3ka_cp:20210520140446p:plain

電卓プログラムは簡単そうに見えて意外と作成すると難しいです。

どのように処理していくか、+-×÷の連続演算の時どうするか。

データレジスタをあえて浮動小数点用にして処理させないといけないとか、色々と制約や考えをしっかりしていないと電卓プログラムはできないと感じました。

今回はメールで連絡を頂きました内容、電卓プログラムの作成方法をGX Works3を用いて紹介します。

www.niwakafa.com
www.niwakafa.com

www.niwakafa.com

広告


GX Works3 電卓プログラム作成

電卓デバイスマップ作成
f:id:vv_6ong_3ka_cp:20210520083000p:plain

Point.まずはソフト設計図となるデバイスマップを作成する

まず電卓プログラムを作成する前に、デバイスマップを作成します。

ソフト設計図と同様で、このデバイスマップがないとプログラム作成が複雑化してしまったり、デバイスが重複してしまったりするからです。

電卓プログラム 入力・オールクリア
f:id:vv_6ong_3ka_cp:20210520080827p:plain

Point.データを削除するようにプログラムを作成する

電卓プログラム 演算入力処理
f:id:vv_6ong_3ka_cp:20210520080835p:plain

Point.演算が入力されたら処理を行うようにプログラムを作成する:M40

電卓プログラム 演算入力処理
f:id:vv_6ong_3ka_cp:20210520080843p:plain

Point.M40の立ち上がりでD0やD10やD40、D42を演算処理する

電卓プログラム 連続演算処理
f:id:vv_6ong_3ka_cp:20210520080851p:plain

Point.=ではなく演算+-×÷処理を継続された場合の処理するプログラム

電卓プログラム 連続演算処理/数値入力処理
f:id:vv_6ong_3ka_cp:20210520080900p:plain

Point.数値入力はあえてプログラムで処理させる

データレジスタDをあえてタッチパネルの入力を使わずラダープログラムで処理するようにしております。

自分で勉強するためでもありますが、案外難しいですね。

電卓プログラム 数値入力処理
f:id:vv_6ong_3ka_cp:20210520080909p:plain

Point.整数と小数点入力の処理が異なるため注意が必要

電卓プログラム 数値入力処理
f:id:vv_6ong_3ka_cp:20210520080917p:plain

Point.入力された数値は一時的にデータレジスタD4に格納する

電卓プログラム 数値入力処理
f:id:vv_6ong_3ka_cp:20210520080926p:plain

電卓プログラム 数値入力処理
f:id:vv_6ong_3ka_cp:20210520080935p:plain

Point.整数入力と小数点入力処理を確認する

まとめ
・プログラムを作成する際はデバイスマップ作成が重要
・演算+-×÷=や数値入力の処理を考えてプログラムを作成する
・あえて数値入力をプログラムで処理するように作成



www.niwakafa.com

www.niwakafa.com

www.niwakafa.com
www.niwakafa.com
www.niwakafa.com
www.niwakafa.com