PLC Analog Scaling Calculator

Professional tool for industrial automation engineers. Instantly convert 4-20mA, 0-10V signals to physical engineering values.

by KOEED
🔽 Select your PLC model for auto-configuration

Input (Raw Signal)

Output (Engineering Value)

Scaled Result Bi-directional
50.00
Signal Normal
50%
0 100
📋 Generate PLC Code (Advanced) ▼
Generated ST/SCL Code
// Waiting for input to generate Structured Text code...

Understanding PLC Analog Scaling

In industrial automation, analog signals (like 4-20mA current loops or 0-10V voltage) represent physical quantities such as temperature, pressure, or flow. To use these signals in a PLC program, you must scale the raw integer value into a meaningful engineering unit.

The Linear Interpolation Formula

This calculator uses the standard linear equation y = mx + b to perform both forward and reverse conversions. The formula used is:

Scaled_Out = ((Raw_In - In_Min) / (In_Max - In_Min)) × (Out_Max - Out_Min) + Out_Min

This is identical to the logic used in the NORM_X and SCALE_X instructions in Siemens S7-1200/1500, or the SCL instruction in Mitsubishi FX series.

Common PLC Raw Data Ranges

Different PLC manufacturers use different integer ranges to represent analog signals. Here is a quick reference table:

PLC Brand / Series Analog Resolution Raw Integer Range (Int)
Siemens S7-1200 / S7-1500 12-bit / 13-bit 0 to 27648
Siemens S7-200 SMART 10-bit / 12-bit 6400 to 32000
Mitsubishi FX3U / FX5U 12-bit / 16-bit 0 to 4000 (or 0-16000)
Allen-Bradley (Rockwell) CompactLogix 0 to 32767
Omron CP1H / CP1L High Resolution 0 to 6000 or 0 to 12000

Frequently Asked Questions

How do I convert 4-20mA to pressure?

If you have a 4-20mA pressure transmitter measuring 0-100 Bar: Set Input Low=4, Input High=20, Output Low=0, Output High=100. If your multimeter reads 12mA, the pressure is exactly 50 Bar.

What is the raw value of 20mA in a Siemens PLC?

For standard Siemens analog input modules (AI), 20mA corresponds to the integer value 27648.

What are NORM_X and SCALE_X in Siemens TIA Portal?

NORM_X normalizes a raw integer value to a floating-point value between 0.0 and 1.0, based on a specified input range (e.g., 0 to 27648). SCALE_X then maps that normalized value to the desired engineering unit range (e.g., 0.0 to 100.0). Together, they perform the same linear interpolation as y = mx + b. For Siemens S7-1200 and S7-1500 controllers, these two instructions are the standard way to convert analog input signals into physical quantities like temperature, pressure, or flow rate.