この記事の対象
- 暇な方
- マニュアルを読んでいて、場所によってラベルと書いてあったり変数と書いてあったりするのが気になる方
はじめに
一般的には「変数」と呼ばれているものを三菱電機は「ラベル」と言っているという認識だったのですが、マニュアルのあちらこちらに「変数」という言葉も記載されているのでいったいどういう用語の扱いなのか調べてみました。
派閥1 ラベルは変数派
- iQ-RもiQ-Fもカタログには「変数」という用語は一言も出てこない
- 変数プログラミング=ラベルプログラミング という扱い
- 【ラベルとは,入出力データや内部処理に任意の文字列を指定した変数】
- MELSEC iQ-F FX5プログラミングマニュアル(プログラム設計編)
- MELSEC iQ-R CPUユニット ユーザーズマニュアル(応用編)
などでの記載
- 【一般的なプログラミングの変数にあたるラベル】
- 技報 「GX Works3 におけるiQ-F シリーズシーケンサのパラメータ省力設定に向けた開発」
での記載
- 技報 「GX Works3 におけるiQ-F シリーズシーケンサのパラメータ省力設定に向けた開発」
プログラムの中で配置して使用するものは「ラベル」、一般的な意味合いで説明するときは「変数」を使用しているように見えるのですが、統一はされていないように見受けられました。
「内部処理に任意の文字列を指定した変数」というのは変数に関数を代入するという概念が導入されていれば意味が通じるのですが、そこまでの概念は導入されていないので初見では混乱しました。
派閥2 ラベルは名前(識別子)派
- 【ラベルとは,入出力データや内部処理に任意の文字列を指定した識別子(文字列)】
- 「MELSEC iQ-F FX5ユーザーズマニュアル(応用編)」
での記載
- 「MELSEC iQ-F FX5ユーザーズマニュアル(応用編)」
派閥としては小さい派になりますがファンクションブロックを扱うようになるとこちらの方が理解し易い表現でした
派閥3 ラベルはプログラムのジャンプ先派
- 「ラベル」という用語はIEC61131-3ではプログラムのジャンプ先を表す
- 三菱電機では「ポインタ」という用語を使用
おわりに
三菱電機は独自の用語を使いたがる傾向があると私は感じています。
最近まで変数をラベルと言い換えているという認識だったのですが、変数という言葉もマニュアルで沢山使っていることに少し驚きました。
マニュアル中に変数部品(ラベルとデバイス)という記述があるので、
- 組込変数=デバイス
- ユーザー定義(宣言)変数=ラベル
という解釈でデバイスプログラムとの差別化を図る為に「ラベル」という用語を導入したのでしょうか。
せめてIECで使われている用語とは異なるものを導入してもらいたかったです。
細かいくせにいい加減なまとめとも思ったのですが、ラベルというのが変数を指すのか、インスタンス等の名前を指すのか、文脈に合わせて理解する助けになることもあれば幸いです。