
PLCで温度や圧力、流量といった物理量を扱うとき、必ず登場するのがアナログ入出力とスケーリングです。
「センサーをつないでみたけど、PLCに入ってくる数値の意味がわからない」「スケーリングの計算式は見たことあるが、なぜその式になるのかが腑に落ちない」——そういった疑問を持つ方は少なくありません。
この記事では、アナログ信号の基礎からスケーリングの考え方、出力側の仕組み、そして現場でよくあるミスまでを、図解を交えて丁寧に解説します。計算式の暗記ではなく、仕組みから理解することを目指してください。
もくじ
アナログ信号とは何か:デジタルとの違いから理解する

デジタル信号とアナログ信号の違い

PLCの基本を学ぶと、最初に扱うのはほとんどがデジタル信号です。スイッチのON/OFF、ランプの点灯/消灯——これらは「0か1か」の二値で表現できます。
しかし現実の世界では、「ON/OFFでは表現できない量」が数多く存在します。
- 炉の温度:現在823℃
- タンクの圧力:0.42MPa
- モーターの回転数:1,450rpm
これらは連続的に変化する値です。このような「連続した量」を表す信号をアナログ信号と呼びます。
PLCが扱うアナログ信号の種類
産業現場でよく使われるアナログ信号には、主に以下の3種類があります。
| 種類 | 範囲 | 主な用途 |
| 電圧信号 | 0〜10V / 1〜5V | 近距離での信号伝送 |
| 電流信号 | 4〜20mA | 長距離・ノイズ環境下での伝送 |
| 電流信号 | 0〜20mA | 一部のセンサー・機器 |
現場では4〜20mAが最もよく使われます。

理由は、電流信号はケーブルの抵抗による電圧降下の影響を受けにくく、ノイズにも強いためです。
また、4mAを「ゼロ点」とすることで、断線(0mA)との区別ができるという安全上のメリットもあります。
PLCのアナログ入力の仕組み
アナログ入力モジュールの役割

PLCのCPUユニット自体は、デジタルデータしか処理できません。そこで必要になるのがアナログ入力モジュール(A/Dモジュール)です。
役割をシンプルに言うと、「センサーから来たアナログ信号を、PLCが読めるデジタル数値に変換する」ことです。
[センサー] → アナログ信号(4-20mA) → [アナログ入力モジュール] → デジタル値 → [CPU]
センサーの仕様書の読み方
センサーを選定・接続するとき、仕様書で必ず確認すべき項目は3つです。

① 測定レンジ:センサーが測定できる物理量の範囲。例:0〜200℃
② 出力信号:センサーが出力する信号の種類と範囲。例:4〜20mA
③ 分解能:どれだけ細かく測定できるか。モジュール側の仕様と合わせて確認します。
この3点を把握することで、「センサーの出力信号とモジュールの入力仕様が合っているか」を正しく判断できます。
PLCの内部でどう数値に変換されるか(A/D変換)

アナログ入力モジュールは、受け取ったアナログ信号を内部デジタル値に変換してCPUへ渡します。
たとえば三菱電機のアナログ入力モジュール(Q64AD等)では、4〜20mAの入力に対して内部値が0〜4000に変換されます(分解能12bit相当)。
つまり、センサーが4mAを出力しているとき→PLCには「0」が、20mAのとき→「4000」が格納されます。
ここで疑問が生まれます。「4000という数字は、何℃なのか?」——これを解決するのがスケーリングです。
スケーリングとは何か:なぜ必要なのかを図で理解する

スケーリングが必要な理由
A/D変換後の内部値(0〜4000)は、PLCにとって扱いやすい数値ですが、そのままでは現実の物理量(℃、MPaなど)と対応していません。
スケーリングとは、「PLCの内部値を、現実の物理量に変換する計算処理」のことです。
HMIに温度を表示する、設定値と比較して制御を行う——こうした実用的な処理を行うには、必ずスケーリングが必要になります。
スケーリング計算の考え方
スケーリングは、本質的には比例計算(一次関数)です。難しく考える必要はありません。
考え方の基本は、「2つの範囲を対応させる」ことです。
PLCの内部値の範囲:0 〜 4000
物理量の範囲 :0℃ 〜 200℃(センサーのレンジ)
内部値が0のとき→0℃、内部値が4000のとき→200℃、というように、線形に対応します。
この対応関係を式で表すと:
物理量 = (内部値 ÷ 4000) × 200
これだけです。グラフで言えば、原点を通る直線です。
計算式と具体例

より汎用的な式で表現すると以下になります。
物理量 = (内部値 − 内部値の最小)÷(内部値の最大 − 内部値の最小)
× (物理量の最大 − 物理量の最小)+ 物理量の最小
具体例で確認します。
- センサー:0〜200℃を4〜20mAで出力
- PLCの内部値範囲:0〜4000
- 現在の内部値:2000
物理量 = (2000 − 0)÷(4000 − 0)× (200 − 0)+ 0
= 0.5 × 200
= 100℃
内部値が中間(2000)なので、温度も中間(100℃)——これで計算が正しいと直感的に確認できます。
PLCのアナログ出力の仕組み

アナログ出力の用途
アナログ出力は、PLCから外部機器へ「量」を指令するために使います。代表的な用途は以下のとおりです。
- インバータへの周波数指令:0〜60Hzを4〜20mAで指令し、モーターの回転数を制御
- 電動バルブの開度制御:0〜100%開度を0〜10Vで指令
- 加熱ヒーターへの出力指令:PID制御の操作量を電流信号で出力
D/A変換とスケーリングの考え方
アナログ出力は、入力の逆方向の変換です。
[CPU] → デジタル値 → [アナログ出力モジュール] → アナログ信号(4-20mA) → [外部機器]
PLCのプログラムで「このデバイスに数値を書く」→モジュールがその値をアナログ信号に変換して出力します。
スケーリングの考え方も同様で、「出力したい物理量」を「内部値」に変換してから書き込む、という処理になります。
よくあるミスと対策
配線ミス(シールド線・グランド処理)

アナログ信号はノイズの影響を受けやすいため、シールド付きケーブルの使用が基本です。
シールドは片端接地が原則です。両端を接地するとグランドループが発生し、かえってノイズを拾う原因になります。
また、アナログ系のグランド(AG)とデジタル系のグランド(DG)は、モジュールの仕様に従って適切に処理してください。
スケーリング計算のズレ(オフセット・ゲイン)

計算式は合っているのに実際の値がずれる場合、主な原因は2つです。
オフセットのズレ:センサーやモジュールの「ゼロ点」がずれている状態。0入力時に0以外の値が出てしまう。→ オフセット調整(ゼロ調整)で対処します。
ゲインのズレ:スパン(最大値側)がずれている状態。最大入力時に想定値からずれる。→ ゲイン調整(スパン調整)で対処します。
どちらも、モジュールの取扱説明書に調整手順が記載されています。実機確認時は必ず参照してください。
単位・レンジの取り違え
よくあるミスが、「モジュールの入力レンジ設定」と「実際のセンサー出力」が合っていないケースです。
例:センサーは4〜20mAで出力しているのに、モジュールの設定が0〜20mAになっている→ゼロ点がずれた状態になります。
モジュールのパラメータ設定(GX Worksなど)でレンジを必ず確認してください。
次のステップ:より実践的な制御へ

PID制御との組み合わせ
アナログ入出力を理解したら、次の大きなテーマはPID制御です。温度・圧力・流量を一定に保つフィードバック制御であり、多くの製造現場で使われています。スケーリングで取得した現在値と、目標値との偏差をもとに操作量を計算する——アナログ入出力の理解がそのまま活きます。
HMIへの数値表示
スケーリング後の物理量を、タッチパネル(HMI)に表示する実装も重要なステップです。
HMIとのデータ連携については、別途「PLCとHMIの連携基礎」で解説していますので、あわせてご参照ください。
よくある質問(FAQ)
Q. 4〜20mAの「4mA」はなぜゼロではないのですか?
A. 4mAをゼロ点にすることで、断線時(0mA)との区別が可能になります。信号が0mAになった場合、「センサーの出力がゼロ」ではなく「断線の異常」として検知できます。これは安全設計上の重要な考え方です。
Q. 分解能とは具体的に何ですか?
A. アナログ値をどれだけ細かく識別できるかを表す指標です。12bit分解能の場合、0〜4095(=2の12乗−1)の段階で値を区別できます。分解能が高いほど、微細な変化を検出できます。
Q. スケーリングはラダー図で実装するのですか?
A. はい。スケーリング計算はラダー図の演算命令(MUL、DIV、ADD等)を組み合わせて実装します。三菱PLCではSCL命令(スケーリング専用命令)が使えるケースもあり、コードを簡潔に書けます。
まとめ
この記事で解説した内容を整理します。
- アナログ信号は「連続した量」を表し、現場では4〜20mAが主流
- アナログ入力モジュールがアナログ→デジタル変換(A/D変換)を担う
- スケーリングは「内部値を物理量に変換する比例計算」であり、仕組みで理解すれば式は導ける
- アナログ出力は逆方向(デジタル→アナログ)の変換で、インバータやバルブ制御に使う
- よくあるミスは、配線処理・レンジ設定・スケーリングのズレの3点
アナログ入出力は、PLCを実務レベルで使いこなすための重要なステップです。
この記事を足がかりに、ぜひPID制御やHMI連携へと学習を広げてください。