PLC・基礎知識
PR

PLC通信アドレスマップの読み方|ワード・ビット・n+1の意味を具体例で解説

kyocha

PLC制御では、センサーの状態や設備の運転情報など、さまざまなデータを扱います。

これらの情報を他のPLCやデータ収集システムとやり取りする場合、重要になるのが「通信アドレスマップ」です。

PLC制御の基本的な仕組みを理解していても、通信仕様書を見て、次のような表記に戸惑うことがあります。

全部理解できる?アドレスの意味
  • 「n+1」「n+2」は何を意味しているのか?
  • 1ワードと1ビットは何が違うのか?
  • D1000などのアドレスは、どこを指しているのか?
  • 32bitのデータには何ワード必要なのか?
  • 設備メーカーから渡された通信アドレスマップは、何を確認すればよいのか?

PLCの通信アドレスマップは、一見すると数字や専門用語が並んだ難しい資料に見えます。

しかし、基本的なルールを理解すれば、「どのデータを、どのアドレスに、どのような形式で格納するのか」を読み取れるようになります。

この記事では、通信アドレスマップの基本から、ワード・ビット・オフセットの意味、実際の表の読み方まで具体例を使って解説します。

スケPLC教室
スケPLC教室
現役PLCエンジニア
PLC学習・技術支援
Profile
現役PLCエンジニアとして、設備制御やラダー回路の設計に携わっています。
「一歩ログ」では、PLCの基礎から回路設計、トラブルシューティングまで、現場で役立つ技術情報を発信しています。
PLC学習教材の販売や、マンツーマンのオンラインコーチングも行っています。
PLCの学びを、現場で使える力に。
プロフィールを読む

PLC間通信の送受信の仕組みを先に知りたい方は、こちらの記事も参考にしてください。

PLC通信アドレス表の読み方|送受信の仕組みとラダーでの確認方法

あわせて読みたい
PLC通信アドレス表の読み方|送信元・受信先・ラダーの対応を整理する方法
PLC通信アドレス表の読み方|送信元・受信先・ラダーの対応を整理する方法

PLC通信アドレスマップとは?

PLC通信アドレスマップとは、PLCと他の機器・システムとの間でやり取りするデータについて、データの内容と格納先を対応付けた表です。

例えば、工場内の設備PLCからデータ収集用PLCへ、次の情報を送るとします。

  • 設備が自動運転中かどうか?
  • 設備に異常が発生しているか?
  • 生産した製品の数量?
  • モーターの回転速度?
  • センサーの測定値?

これらのデータを受信側が正しく読み取るためには、送信側と受信側でデータの扱いを一致させる必要があります。

アドレスマップは送信側と受信側の共通ルール

例えば、設備PLCのD1000に生産数量が格納されているとします。

受信側がD1000の値を生産数量として取得する構成であれば、双方で次のような情報を共有する必要があります。

項目設定例
データ名称生産数量
送信元設備PLC
送信元アドレスD1000
データ型符号なし16bit整数
単位個
更新条件生産数量の更新時、または所定の周期
受信側での扱い生産数量として保存・表示

この表は説明用の架空例です。

D1000は送信元PLC内のデバイスを表しており、実際の通信先アドレスや通信方式は構成によって異なります。

ここで重要なのは、アドレス番号だけが一致していても、正しくデータを扱えるとは限らないことです。

例えば、送信側が「10倍した整数」で温度を送っているのに、受信側がそのまま温度として表示すると、数値が一致しません。

そのため、通信アドレスマップではアドレスだけでなく、データ型・単位・倍率・更新条件なども確認します。

データ型を間違ると全然違う数値に見えるので特に注意して確認しましょう

PLC内部のデバイスと通信用アドレスは同じとは限らない

PLC制御では、設備を動かすための内部データと、外部システムへ渡すデータを区別して管理することがあります。

例えば、シリンダーの動作条件やモーターの運転指令は設備制御に使用し、運転状態や生産数量などはデータ収集システムへ送信します。

設備PLC内部では、制御プログラム用のデバイスと、外部に公開する通信用のデバイスを分けて管理する場合があります。

例えば、設備内部のD200にある生産数量を、通信用のD1000へコピーする構成です。

設備内部のデバイスを直接収集する方法もありますが、通信用の領域を整理しておけば、収集側が参照する場所を管理しやすくなります。

このように、設備制御とデータ収集の役割を整理しておくと、通信アドレスマップの必要性も理解しやすくなります。

ただし、通信用の領域を確保しただけで、外部機器から自動的に読み取れるわけではありません。通信方式に応じた設定やプログラムが必要です。


PLC制御で使うワードとビットの違い

通信アドレスマップを読むために、最初に理解したいのが「ビット」と「ワード」です。

ビットはON・OFFを表す最小単位

1ビットは、0または1の状態を表します。

例えば、次のような設備状態を扱う場合です。

ビット設備状態値が1の場合
bit0自動運転中自動運転中
bit1異常発生中異常あり
bit2原点復帰完了原点復帰完了
bit3生産完了生産完了

このようなON・OFF情報は、ビット単位で管理できます。

なお、どのビットをどの状態に割り当てるかは、設備の通信仕様で決める必要があります。

1ワードは一般的に16ビット

三菱PLCなどで扱う一般的な16bitワードを例にすると、1ワードは16ビットで構成されています。

1ワード=16ビット=2バイト

例えば、D1000という16bitワードデバイスがある場合、その中の各ビットに設備状態を割り当てることができます。

設備の状態信号を1ワードにまとめれば、複数のON・OFF情報を1つのワードデータとして扱えます。

ただし、ビット番号の表記方法やビット単位の指定方法は、PLCメーカーや機種によって異なります。

1ワードに数値を格納する場合

ワードはON・OFF情報だけでなく、整数値の格納にも使用します。

16bitの符号なし整数であれば、表現できる範囲は0〜65535です。

一方、16bitの符号付き整数であれば、一般的な2の補数表現では-32768〜32767となります。

同じ16bitでも、符号の有無によって数値の解釈が異なります。

そのため、通信アドレスマップには「16bit」と記載するだけでなく、符号付き・符号なしの区別も必要です。


n+1・n+2とは?オフセット表記の読み方

通信アドレスマップでは、D1000などの具体的なアドレスではなく、次のような表記を見かけることがあります。

  • n
  • n+1
  • n+2
  • n+3

これは、基準となるアドレスから、どれだけ離れているかを示すオフセット表記です。

nは基準アドレスを意味する

例えば、基準アドレスをD1000とした場合、次のように読み替えられます。

仕様書の表記実際のアドレス例
nD1000
n+1D1001
n+2D1002
n+3D1003
n+4D1004

n+2は「基準アドレスから2ワード先」という意味になる

なぜ具体的なアドレスを書かないのか?

設備ごとに使用するアドレスが異なる場合でも、同じ形式の通信仕様を使用できるようにするためです。

通信領域は設備ごとに変わる
  • 設備AはD1000~
  • 設備BはD2000~

基準アドレスは各設備で決めてもらってそこから同じルールで運用する

どちらも同じアドレスマップの形式を使用し、基準アドレスだけ変更することができます。

ただし、実際のアドレスはPLCのデバイス体系や通信仕様に従って割り当てる必要があります。

また、アドレス番号の進数や表記方法も機種によって異なります。単純な十進数として扱えるかどうかは、対象PLCの仕様を確認してください。


通信アドレスマップの具体的な読み方

ここからは、架空の設備を例に、通信アドレスマップを読み解いてみましょう。

例:設備PLCから生産データを収集する

設備PLCから、次のデータを収集するとします。

  • 自動運転状態
  • 異常状態
  • 生産数量
  • モーター回転速度
  • 積算運転時間

基準アドレスはD1000とします。

オフセットアドレスデータ名称データ型単位
nD1000設備状態16bitビット集合―
n+1D1001生産数量符号なし16bit整数個
n+2D1002モーター回転速度符号なし16bit整数rpm
n+3〜n+4D1003〜D1004積算運転時間符号なし32bit整数秒

すべて説明用の架空データです。

実際の機器で取得可能な項目やデータ型を示すものではありません。

D1000:設備状態をビット単位で管理

D1000には、設備の状態をまとめて格納します。

例えば、次のように割り当てます。

ビット内容
bit0自動運転中
bit1異常発生中
bit2原点復帰完了
bit3生産完了
bit4〜bit15予備

D1000のbit0が1であれば、自動運転中を表します。

bit1が1であれば、異常発生中を表します。

このように、1つのワードの中に複数の状態情報を格納できます。

D1001:生産数量を数値で管理

D1001には生産数量を格納します。

例えば、D1001の値が250であれば、生産数量250個として扱う仕様です。

ただし、設備側がどのタイミングで数量を更新するか、数量をリセットする条件は何か、といった情報も確認する必要があります。

D1002:モーター回転速度を格納

D1002にはモーター回転速度を格納します。

例えば、D1002の値が1500であれば、1500rpmとして扱う仕様です。

ただし、実際の通信仕様では倍率が設定されている場合があります。

例えば「実際の回転速度×10」を整数として格納する仕様であれば、格納値1500は150.0rpmを意味します。

アドレスの数値だけでなく、単位と倍率を必ず確認しましょう。

D1003〜D1004:32bitデータを格納

積算運転時間を32bitの整数として管理する場合、16bitワードを2つ使用する構成があります。

この例ではD1003とD1004を使用します。

ただし、32bit値の上位・下位ワードの格納順序や、バイト順序は通信方式・機種・データ表現によって異なります。

送信側と受信側で扱いを一致させる必要があります。


データ型と占有ワード数で注意したいこと

通信アドレスマップを読む際は、データ型と必要なワード数を確認します。

16bitと32bitでは必要なワード数が違う

16bitワードを使用する構成では、代表的なデータ型と占有ワード数は次のようになります。

データ型データ長占有ワード数
16bit整数16bit1ワード
32bit整数32bit2ワード
32bit浮動小数点数32bit2ワード
64bit浮動小数点数64bit4ワード

例えば、32bitデータをD1003から使用する場合、D1003とD1004の2ワードを占有します。

次のデータをD1004から割り当ててしまうと、アドレスが重複します。

そのため、アドレスマップでは開始アドレスだけでなく、占有ワード数や終了アドレスも確認します。

W0〜W10は何ワード?

PLCのアドレスを数えるときは、デバイス番号が何進数で表記されているかを確認する必要があります。

例えば、三菱PLCのリンクレジスタWは、機種によって16進数でアドレスを表します。

  • 16進数では、W9の次はWA、WB、WC、WD、WE、WF、W10と続く
    • W0〜W10を両端を含めて数えると、17ワード
  • 10進数で番号を管理するデバイスでは、0〜10は11ワード

このように、アドレスの表記方法によって必要なワード数の数え方が異なります。

通信アドレスマップでは、開始アドレス・終了アドレス・占有ワード数を確認し、対象PLCのデバイス仕様と照合しましょう。

文字列データにも注意する

製品番号や品種名称など、文字列を通信する場合もあります。

この場合、「1文字=1バイト」とは限りません。

ASCIIなどの文字コードと、日本語を含むUnicodeなどでは必要なバイト数が異なります。

そのため、文字列を扱う場合は次の情報を確認します。

  • 文字コード
  • 最大文字数
  • 最大バイト数
  • 占有ワード数
  • 終端や未使用領域の扱い

設備メーカーに確認すべき項目

通信アドレスマップは、PLCプログラムを作成する人だけの資料ではありません。

設備を発注する担当者や、工場DX・データ収集を担当する人にとっても重要な資料です。

例えば、設備メーカーに「設備の生産数量と異常情報を収集したい」と依頼する場合、取得項目だけでなく、次のような内容を確認する必要があります。

1. どのデータを取得するのか

設備のすべての内部データを取得できるとは限りません。

必要な情報を整理し、取得元の機器やPLCで利用可能か確認します。

2. どのアドレスを使用するのか

データの格納先と、送信側・受信側の対応関係を確認します。

通信用の領域を確保する場合は、既存の制御用デバイスとの重複や将来の予備領域も考慮します。

3. データ型・単位・倍率は何か

同じ数値でも、データ型や倍率が違えば意味が変わります。

温度、電流、回転速度などのデータでは特に注意が必要です。

4. いつデータが更新されるのか

PLC内部で値が更新される周期と、通信でデータが取得される周期は必ずしも同じではありません。

例えば、設備で短時間だけ発生する異常信号を、長い周期で読み取ると、変化を見逃す可能性があります。

短時間のイベントを記録したい場合は、設備側での保持やタイムスタンプ付与なども検討します。

5. 誰がアドレスマップを作成・承認するのか

設備メーカーとデータ収集側で認識が異なると、通信試験の段階で問題が発覚する可能性があります。

そのため、実務では次のような流れで確認する方法があります。

  1. 取得したいデータを整理する
  2. 設備メーカーと取得可否・通信方式を確認する
  3. 通信アドレスマップを作成する
  4. 設備側・収集側で内容を確認し、承認する
  5. 承認した仕様に基づいて実装する
  6. 通信試験で値・更新条件を確認する
  7. 最終仕様を完成図書に反映する

これは進め方の一例です。

実際の担当範囲や承認手順は契約・プロジェクト体制によって異なります。


まとめ|通信アドレスマップはデータの共通ルール

PLCの通信アドレスマップを読むときは、アドレス番号だけに注目するのではなく、データの意味と格納方法をセットで確認することが重要です。

今回のポイントを整理します。

  • 通信アドレスマップは、データ名称・アドレス・データ型などを定義する表
  • 1ワードは、一般的な16bitワード構成では16ビット
  • n+1やn+2は、基準アドレスからのオフセットを表す
  • 32bitデータは、16bitワード構成では通常2ワードを使用する
  • 単位・倍率・更新条件が異なると、同じ数値でも意味が変わる
  • 設備側と収集側で仕様を共有し、実装前に確認することが重要

PLC制御を理解するうえでは、ラダー回路の動作だけでなく、PLC内部のデータがどのように管理され、外部機器と共有されるのかを知ることも大切です。

通信アドレスマップの読み方を身につけることで、PLC制御とデータ収集システムの関係を整理しやすくなります。

通信仕様書を見たときは、まず「このデータは何を表しているのか」「どのアドレスに何ワード使っているのか」を確認してみてください。

PLC間通信の送受信やラダー上での信号の追い方については、こちらの記事で詳しく解説しています。

PLC通信アドレス表の読み方|送受信の仕組みとラダーでの確認方法

あわせて読みたい
PLC通信アドレス表の読み方|送信元・受信先・ラダーの対応を整理する方法
PLC通信アドレス表の読み方|送信元・受信先・ラダーの対応を整理する方法
Xからの読者コメント&質問をお待ちしています。
ブログ更新の励みになります!
ABOUT ME
スケPLC教室
スケPLC教室
現役PLCエンジニア
PLC学習・技術支援
現役PLCエンジニアとして、設備制御やラダー回路の設計に携わっています。
「一歩ログ」では、PLCの基礎から回路設計、トラブルシューティングまで、現場で役立つ技術情報を発信しています。
PLC学習教材の販売や、マンツーマンのオンラインコーチングも行っています。
PLCの学びを、現場で使える力に。
記事URLをコピーしました