Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling — figure 1

Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling

Replace the RSLogix 500 SCP instruction in Studio 5000 Logix Designer. Compare 1756 I/O module Engineering Units scaling, AOI download, and custom AOI.

The SCP (Scale with Parameters) instruction is familiar to every RSLogix 500 programmer. Studio 5000 Logix Designer does not place a drop-in SCP on the instruction toolbar. The same linear map must be rebuilt through module engineering-unit scaling, a Rockwell sample Scale AOI, or a project-local AOI/CPT sequence. Plants that simply leave raw counts unscaled until “later” discover later that PID, HMI, and historian tags disagree about engineering units.

Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling — figure 1

Y = ((X − Xmin) ÷ (Xmax − Xmin)) × (Ymax − Ymin) + Ymin — and clamp the result the way SCP did.

Preserve clamping behavior

RSLogix 500 SCP holds results at Ymin/Ymax when the raw input walks outside the configured span. Any Logix replacement must do the same, or sensor faults will drive out-of-range values into control. Use REAL math end-to-end; integer division truncates sub-LSB resolution that PID loops need.

Solution 1: module engineering units

For fixed transmitter spans, enable Engineering Units on the analog channel (1756-IF8/IF16, 1769-IF4/IF8, 5069-IF8, and similar). Enter low/high signal and low/high engineering values, download, and consume the scaled REAL tag directly. No ladder math is required. Limitation: the span is static at download—runtime HMI re-ranging needs an AOI.

Module family EU scaling Notes
1756-IF8 / IF16 Per channel Preferred on ControlLogix
1769-IF4 / IF8 Per channel CompactLogix
5069-IF8 Per channel Studio 5000 v28+
Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling — figure 2

Solution 2: import SCL_AOI

Download the Scale AOI sample (Answer ID 52412 / SCL_AOI.L5X class packages), import under Add-On Instructions, and drop the instruction on a rung. Bind Input, InputMin/Max, ScaledMin/Max, and ScaledValue. Because parameters are tags, HMI faceplates can rewrite spans online—the common field request when tanks are re-ranged without a download.

Solution 3: custom AOI or ST

IF (InMax - InMin) = 0.0 THEN
  ScaledValue := OutMin;
ELSE
  ScaledValue := ((InputValue - InMin) / (InMax - InMin)) * (OutMax - OutMin) + OutMin;
  IF ScaledValue > OutMax THEN ScaledValue := OutMax;
  ELSIF ScaledValue < OutMin THEN ScaledValue := OutMin;
  END_IF;
END_IF;

Ladder equivalents use SUB/DIV/MUL/ADD plus GRT/LES clamp branches. Guard divide-by-zero when InMax equals InMin. Expose InMin/InMax/OutMin/OutMax with Read/Write external access for HMI commits.

Parameter mapping from SCP

RSLogix 500 SCP Studio 5000 AOI
Input (INT/DINT) Input (REAL preferred)
InputMin / InputMax InMin / InMax
ScaledMin / ScaledMax OutMin / OutMax
Built-in clamp Explicit clamp logic

HMI runtime re-ranging workflow

When operators must change engineering spans without a download, bind numeric inputs to the AOI’s InMin, InMax, OutMin, and OutMax tags and gate writes behind a momentary confirm bit. Physically realistic HMI limits (for example raw counts 0–32767 and engineering units within transmitter capability) prevent fat-finger entries that invert the span. Document the default factory spans in the faceplate so a bad edit can be restored without opening Studio 5000. If module EU scaling was used instead of an AOI, plan a controlled download whenever the engineering range must change—there is no safe online rewrite of those channel properties on most modules.

Commissioning checks

Force Input at min, mid, and max; confirm ScaledValue. Force above Xmax and confirm clamp high. Test reverse engineering ranges (OutMin > OutMax) if the legacy SCP used them. On HMI re-range screens, require InMax > InMin and a momentary commit so partial edits cannot leave a zero denominator. Migration of SCP rungs should follow the same change control used for other Logix PLC and PAC conversions.

About the Author

Mark Townsend | Senior Automation Engineer – Allen-Bradley Systems

Mark Townsend is a senior automation engineer with more than 18 years on Allen-Bradley platforms spanning ControlLogix, CompactLogix, and legacy SLC-500. His day-to-day work is RSLogix / Studio 5000 logic and FactoryTalk View HMI bring-up on aging and mixed fleets.

Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling

Replace the RSLogix 500 SCP instruction in Studio 5000 Logix Designer. Compare 1756 I/O module Engineering Units scaling, AOI download, and custom AOI.

The SCP (Scale with Parameters) instruction is familiar to every RSLogix 500 programmer. Studio 5000 Logix Designer does not place a drop-in SCP on the instruction toolbar. The same linear map must be rebuilt through module engineering-unit scaling, a Rockwell sample Scale AOI, or a project-local AOI/CPT sequence. Plants that simply leave raw counts unscaled until “later” discover later that PID, HMI, and historian tags disagree about engineering units.

Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling — figure 1

Y = ((X − Xmin) ÷ (Xmax − Xmin)) × (Ymax − Ymin) + Ymin — and clamp the result the way SCP did.

Preserve clamping behavior

RSLogix 500 SCP holds results at Ymin/Ymax when the raw input walks outside the configured span. Any Logix replacement must do the same, or sensor faults will drive out-of-range values into control. Use REAL math end-to-end; integer division truncates sub-LSB resolution that PID loops need.

Solution 1: module engineering units

For fixed transmitter spans, enable Engineering Units on the analog channel (1756-IF8/IF16, 1769-IF4/IF8, 5069-IF8, and similar). Enter low/high signal and low/high engineering values, download, and consume the scaled REAL tag directly. No ladder math is required. Limitation: the span is static at download—runtime HMI re-ranging needs an AOI.

Module family EU scaling Notes
1756-IF8 / IF16 Per channel Preferred on ControlLogix
1769-IF4 / IF8 Per channel CompactLogix
5069-IF8 Per channel Studio 5000 v28+
Replace RSLogix 500 SCP in Studio 5000: AOI + Module Scaling — figure 2

Solution 2: import SCL_AOI

Download the Scale AOI sample (Answer ID 52412 / SCL_AOI.L5X class packages), import under Add-On Instructions, and drop the instruction on a rung. Bind Input, InputMin/Max, ScaledMin/Max, and ScaledValue. Because parameters are tags, HMI faceplates can rewrite spans online—the common field request when tanks are re-ranged without a download.

Solution 3: custom AOI or ST

IF (InMax - InMin) = 0.0 THEN
  ScaledValue := OutMin;
ELSE
  ScaledValue := ((InputValue - InMin) / (InMax - InMin)) * (OutMax - OutMin) + OutMin;
  IF ScaledValue > OutMax THEN ScaledValue := OutMax;
  ELSIF ScaledValue < OutMin THEN ScaledValue := OutMin;
  END_IF;
END_IF;

Ladder equivalents use SUB/DIV/MUL/ADD plus GRT/LES clamp branches. Guard divide-by-zero when InMax equals InMin. Expose InMin/InMax/OutMin/OutMax with Read/Write external access for HMI commits.

Parameter mapping from SCP

RSLogix 500 SCP Studio 5000 AOI
Input (INT/DINT) Input (REAL preferred)
InputMin / InputMax InMin / InMax
ScaledMin / ScaledMax OutMin / OutMax
Built-in clamp Explicit clamp logic

HMI runtime re-ranging workflow

When operators must change engineering spans without a download, bind numeric inputs to the AOI’s InMin, InMax, OutMin, and OutMax tags and gate writes behind a momentary confirm bit. Physically realistic HMI limits (for example raw counts 0–32767 and engineering units within transmitter capability) prevent fat-finger entries that invert the span. Document the default factory spans in the faceplate so a bad edit can be restored without opening Studio 5000. If module EU scaling was used instead of an AOI, plan a controlled download whenever the engineering range must change—there is no safe online rewrite of those channel properties on most modules.

Commissioning checks

Force Input at min, mid, and max; confirm ScaledValue. Force above Xmax and confirm clamp high. Test reverse engineering ranges (OutMin > OutMax) if the legacy SCP used them. On HMI re-range screens, require InMax > InMin and a momentary commit so partial edits cannot leave a zero denominator. Migration of SCP rungs should follow the same change control used for other Logix PLC and PAC conversions.

About the Author

Mark Townsend | Senior Automation Engineer – Allen-Bradley Systems

Mark Townsend is a senior automation engineer with more than 18 years on Allen-Bradley platforms spanning ControlLogix, CompactLogix, and legacy SLC-500. His day-to-day work is RSLogix / Studio 5000 logic and FactoryTalk View HMI bring-up on aging and mixed fleets.

Leave a comment

Please note, comments need to be approved before they are published.