この記事では、GX-Works3とGX-Works2で、配列・構造体におけるLD(ラダー)記載でのラベル仕様の違いについて解説します。
今回の内容は、実際に三菱電機に確認を取り、私の方で試した内容になります。
目次
配列・構造体とは
ここでは簡単に配列と構造体の説明をします。ほぼ復習のような感じで見てもらえるといいかもです。
もし配列と構造体を詳しく知ってから、と言う方は以下のブログもご覧下さい。
-
【GX Works3】構造体とは?具体例と2つの注意点について解説します
この記事では、GX-Works3において構造体の定義のやり方と実際に構造体を使用した具体例について解説します。 構造体とは 同じパターンで並ぶ基本データ型の変数をメンバとして1つのクルー ...
続きを見る
-
【GX Works3】配列とは?具体例と構造体とコラボさせて使用する方法について解説します
この記事では、GX-Works3において配列の定義のやり方と実際に配列を使用した具体例について解説します。 実際に構造体とコラボレーションさせて使用するときの例も合わせて解説していきます ...
続きを見る
配列とは
同じデータ型のラベルの連続した集合体を1つの名前で表したものです。
構造体とは
同じパターンで並ぶ基本データ型の変数をメンバとして1つのクループにまとめたものです。
これらをうまく使用すれば、ラベルによるソフト設計ができて設計工数の削減につながったりします。また今後ラベル化していくうえで、もう一つ知っておきたいのがGX-Works3とGX-Works2で微妙に使い勝手が異なる点です。この点について解説していきます。
LD(ラダー)で記載する場合のラベル仕様の違い
実際に三菱電機に問い合わせをした結果から、その内容をまとめてみました。
LD(ラダー)で記載する場合の比較です。
意外に色々と便利になっていますね。
1つずつ実際に登録して、ラダーに起こした場合の例も一緒に紹介していきます。
ラベル文字数が半角でMAX256文字まで登録可能
ラベルも長い名前にしすぎると、逆に使い勝手が悪くなります。私自身そこまで困ったことは無いのですが実際に試してみると、まぁめっちゃ入力できます。
試しに37文字のラベルを登録してみました。
GX-Works2では32文字で入力が強制終了となりますが、GX-Works3では37文字を登録することが出来ました。
ラダーへの入力自体は出来るのですが、あまりラベルが長いとラベル表示が「・・・」となって切れてしまい、パッと見て分かりにくいです。
長いラベルは正直オススメしませんが、使い勝手は向上している部分であるかと思います。
桁付きデバイスの変換が可能
桁付きで使用できるようになった点は、今後ラベルの使用を促進させる良いきっかけになるのではと思っています。
私自身GX-Works2でラベルの桁付きデバイスが使えなくて、どうしたものかと考えた事がありました(むしろラベルには不向きなのか?と勝手に思っていたくらいです。)
それでは桁付きデバイスの使用方法を説明していきます。
今回は、使用するラベルを配列で4ビット分登録します。
次にラダーで書いてみます。
「a接点のスイッチが4つあり、どれか押されたらM30がONする」と仮定したラダーです。GX-Works3の場合、このようにラダーに起こすことが出来ます。
デメリットもあります。
配列で登録されたラベルでのみ使用できる
と言う点です。
「桁付きで使う」ということは「連続性のあるもの」という条件が必須になります。そのため、連続した集合体である配列のみに使用が限定されます。
ちなみに、GX-Works2ではこのように入力が拒まれてしまいます。
ラダーで構造体+配列の使用が出来る
以前このような記事を公開させて頂きました。
-
【GX Works3】配列とは?具体例と構造体とコラボさせて使用する方法について解説します
この記事では、GX-Works3において配列の定義のやり方と実際に配列を使用した具体例について解説します。 実際に構造体とコラボレーションさせて使用するときの例も合わせて解説していきます ...
続きを見る
おもに構造体と配列をコラボレーションさせて使用する方法を紹介させて頂きましたが、GX-Works2のLD(ラダー)記載での使用は残念ながらできません。
DMOVでこのように書いても、受け付けてくれません。予測文字も出てきません。
ただし、ラベルを登録することは可能です。理由はSTだと使用可能であるからです。
ちなみにこの通りSTの場合、問題無く書けます。
このように試しに数値を代入してみましたが、シミュレーションでは動作していますね。
GX-Works3ではこのようにラダーに起こして使用する事が出来ます。
ラダーで配列のインデックスにラベルが使える
配列のインデックスにラベルを使用した例について紹介していきます。
インデックスにラベルを使うと、「PPunit[Ind].aX」みたいな感じで記載できます。
今回はラベル「Ind」をシングルワードでラベル設定して、実際にラダーに起こしていきたいと思います。
早速ですが、ラダーに起こすとこのように表示されます。このラベル「Ind」に定数を入れてあげると、問題無く動作してくれます。
ただしGX-Works2では、そもそもラダーで配列+構造体が書けないので、今回のも無条件で書くことが出来ません。
しかしながら、STだと書くことができます。
動きはこうなります。
①ラベル「Ind」に「1」を代入
②「PPunit[1].aY」に「10」を代入
③「PPunit[1].aY」をシミュレーションでモニタし、代入されている事を確認
このようにGX-Works2の場合はSTにおいて、使用する事が出来ます。
ワードデバイスのビット表記がラベルでも出来る
まずは、ラベルの設定をしていきます。今回はラベル「W_info」と言う名前で設定します。
早速ラダーに起こしていきましょう。
GX-Works3の場合ラベル「W_info」を使って、このように「D1.0」のようにビット記載をする事ができます。
今回は「W_info」に「2」を書いたのでビット1がONします。
シミュレーションでモニターさせてみました。問題無く動作しています。
ちなみにGX-Works2でラベル設定して、ラダーに書こうとしましたが、入力を受け付けてくれませんでした。。。
いかがでしたでしょうか。
他にも「こんなことがGX-Works3で出来るようになっている!」などご存知でしたら、是非ともメッセージかTwitterのDMなどでご教授いただけますと嬉しいです。
まとめ
今回の記事を要約するとこんな感じです。
ポイント要約
①ラベル文字数が半角でMAX256文字まで登録可能
②桁付きデバイスの変換が可能
③ラダーで構造体+配列の使用が出来る
④ラダーで配列のインデックスにラベルが使える
⑤ワードデバイスのビット表記がラベルでも出来る