Skip to content
MPS-8A8R-S industrial PLC controller — top view

MPS Series

MPS-8A8R-S

MPS-8A8R-S Industrial PLC Controller

I/O at a glance
8 DI / 8 Relay / 4 AI / 2 NTC / RS-485 / I²C

MPS-8A8R-S is an industrial PLC controller with 8 isolated digital inputs and 8 relay outputs. Onboard RS-485, I²C, programmed in MP STUDIO ladder logic. DIN-rail mountable for automation, testing, HMI integration and machine control.

$82.50 In stock
Add-on products
Add related items you may need (optional)
MP Download Cable — product photo 1
MP Download Cable
MP Download Cable (USB-TTL converter built in)
$12.00
Super capacitor DDL 5.5V 1F — a radial supercapacitor with two leads, for the +5V terminal
Super Capacitor DDL 5.5V 1F
Super Capacitor DDL 5.5V 1F (power-fail retention)
$4.40

Shipping

International shipping (EMS) — calculated at checkout by destination & weight

Shipping weight 250 g (per unit)

Dispatch

Ships the next business day (regardless of order time)

Large orders may take 1 extra day to dispatch

Returns & Exchange

Cancel before dispatch · request a return/exchange after delivery

Key features

/ FEATURES
  • Programmed in MP STUDIO ladder logic
  • 8 opto-isolated digital inputs (NPN/PNP, up to 40 V tolerant)
  • 8 relay outputs for AC/DC dry-contact switching
  • 4 analog inputs (0–5 V / 4–20 mA / 0–10 V ranges)
  • 2 NTC temperature inputs (−40 to +120 °C)
  • Industrial communication: RS-485, I²C · Modbus RTU
  • DIN-rail 35 mm mountable, isolated field I/O for the factory floor

Specifications

/ SPEC
Power inputDC 12V – 24V
Digital inputs8
Relay outputs8
Analog inputs4
Temperature sensor inputs2
High-speed pulse inputs2
High-speed pulse outputs6
Encoder inputs2
RS-4851ch
I²C1ch
Modbus RTUYes
LS CnetYes

Software

MP STUDIO — Ladder Logic

The MPS series is programmed in MP STUDIO, a free ladder-logic IDE. Draw the control logic as a ladder diagram and call analog, temperature, high-speed counter and pulse output straight from function blocks.

0000P0P320001@ONADCCHANNEL0MAX VALUE1000MIN VALUE0OUTD0
MP STUDIO ladder program example (from the user manual)

Ladder logic only

Contacts and coils — existing PLC experience transfers directly

Function blocks

ADC · NTEMP · HCNT · ENCODER · PWM, each a single block

Live monitoring

Ctrl+T to download, Ctrl+M to monitor and debug on the machine

Before the first download

Install MP STUDIO from the ILOGICS download centre, pick your model in the device list, set the COM port, and you can download straight away.

Models that use the MP download cable appear in Device Manager as "USB Serial Port". If it does not appear, install the FTDI driver as well.

Digital input

8 isolated digital input channels

8 digital input channels read external switches and sensors straight from the terminal block. In the ladder program they are the contacts P0–P7.

  • P0–P7 inputs

    8 isolated digital input points in total

  • COM0 commons

    COM0 = P0–P7 (8 points per COM)

  • DC 040 V input

    DC 5 V and above reads as HIGH · optocoupler isolated

  • NPN / PNP sensors

    Either sensor wiring convention is read as-is

Input channel layout

P0P1P2P3P4P5P6P7++COM0P0~P7 / COM08P · 1COM

* Example wiring for external switches or sensors — applying DC 5–24 V at the terminal turns that contact memory ON

Optocoupler isolation

PxCOMx

The digital inputs use a bidirectional optocoupler stage — anti-parallel LEDs into a phototransistor — so either NPN or PNP wiring is read, and the field side stays electrically separate from the control circuit.

Example ladder — reading an input
        P0                                  P32
0000  --| |---------------------------------( )--

  P0 = push button (digital input), P32 = motor on the relay output.
  P0 ON  -> P32 ON        P0 OFF -> P32 OFF
  All eight inputs return to the single common COM0.

Relay output

8 isolated relay output channels, volt-free contacts

8 relay output channels switch external loads. Turning one of the output contacts P32–P39 on in the ladder closes that contact onto its COM — a volt-free contact, so it takes DC and AC loads alike.

  • P32–P39 outputs

    8 isolated relay output points

  • COM1 / COM2 / COM3 / COM4 commons

    COM1 = P32–P33 · COM2 = P34–P35 · COM3 = P36–P37 · COM4 = P38–P39 (2 points per COM)

  • DC or AC loads

    0–30 V D.C / 0–250 V A.C volt-free contact

  • Rated 5 A

    5 A per point · 15 A per COM

Output channel layout

P32P33+COM1P34P35+COM2P36P37ACCOM3P38P39ACCOM4P32~P398P · 2P/1COM

* Example wiring for external loads — the load supply comes in on the COM side. The relay contact is volt-free, so it may switch DC of either polarity or AC. The contact is rated 0–30 V D.C / 0–250 V A.C, 5 a per point · 15 a per com.

Relay output stage

Control (MCU · coil)Output (volt-free contact · COM)

The control circuit drives the relay coil, and the load is switched by a contact that is electrically separate from that coil. The contact carries no voltage of its own, so neither the type nor the polarity of the load supply matters.

Example ladder — driving a relay output
        P1                                  P33
0000  --| |---------------------------------(S)--

        P2                                  P33
0001  --| |---------------------------------(R)--

  P1 = start button, P2 = stop button, P33 = motor on the relay output.
  P1 ON latches P33 on (it stays on when P1 is released); P2 ON clears it.
  P33 shares COM1 with P32 — the load supply for both comes in on that common.

Analog inputAnalog Input

4 analog input channels on a screw block — the range is selected on the board

A0–A3 and AGND come out on one screw block. All 4 channels are 10-bit, and the input range is set on the board itself: 3 ranges, selected by the header cap and — for the widest one — by a resistor removed before shipping. The ladder reads a channel with the ADC function block.

  • A0–A3 · 4 channels

    4 analog input points, 10-bit (0–1023)

  • 3 selectable ranges

    0(4)–20 mA · DC 0(1)–5 V · DC 0–10 V

  • Set on the board

    The header cap picks the range — no wiring change

  • Reference +2.5 V ±0.2%

    The reference the analog front end measures against

Analog input terminal

A0–A3 / AGND4CH · 10BITA0A1A2A3AGNDBoard interiorInput circuit → ADCGNDA0A1A2A3Header cap2-pin header
Analog A0–A3AGNDRange-select header

* The screw block reads A0 · A1 · A2 · A3 and AGND. The range is chosen by the header beside it, and the same choice applies to the channels wired through it — check it before wiring a sensor.

Input ranges and how to select them

RangeHow it is selectedInput resistance
0(4)–20 mAFactory default — the jumper cap is fitted250 Ω
DC 0(1)–5 VRemove the jumper cap200 kΩ
DC 0–10 VRemove the green-marked resistor along with the jumper cap400 kΩ

Every channel is 10-bit (0–1023) and is read with the ADC function block. A 4–20 mA or DC 1–5 V sensor must be read with ADC2 instead, and its span is 0–818 (the spec sheet prints 0–819) rather than 0–1023. The analog front end measures against a +2.5 V ±0.2% reference. Using DC 0–10 V means removing the green-marked resistor; ask when ordering and the board ships with it already removed.

Example ladder — reading an analog input
        @ON               ADC
0000  --| |---------------[ CHANNEL:0 | MAX VALUE:1000 | MIN VALUE:0 | OUT:D0 ]--

  Channel A0 arrives in D0 as 0~1000. The input range is chosen by the header cap
  on the board, and it ships fitted at 0(4)~20mA. For 4~20mA or DC 1~5V use ADC2
  instead, whose span is 0~818.

Temperature inputNTC

2 NTC temperature channels on their own connectors

2 NTC temperature channels, NTEMP CH0 · NTEMP CH1, each on its own connector rather than on the analog block. The ladder reads one with the NTEMP function block, which returns tenths of a degree — 234 means 23.4℃.

  • 2 NTC channels

    NTEMP CH0 · NTEMP CH1 (T0 · T1)

  • -40℃ to 120

    Measuring range, resolution 0.1℃

  • NTEMP function block

    CHANNEL and OUT — a reading of 234 is 23.4℃

  • No polarity

    The two leads of the thermistor may go either way round

NTC connectors

NTC 3950 10kΩNTEMP CH0T0NTC 3950 10kΩNTEMP CH1T1

* One connector per channel, silkscreened NTEMP. The thermistor has no polarity, so its two leads may go either way round. The input is scaled for a NTC 3950K, 10 KΩ (25℃) thermistor; the divider hangs off the +2.5 V reference and reaches the MCU through a low-pass filter.

Temperature input specs

Channels2 points · NTEMP CH0 · NTEMP CH1
SensorNTC 3950K, 10 KΩ (25℃)
Measuring range-40℃ to 120℃
Resolution0.1℃ (over 0–40℃)
Reference+2.5 V → pull-up → LPF → MCU
Function blockNTEMP (CHANNEL / OUT)

NTEMP returns the temperature in tenths of a degree: read NTEMP CH1 and a value of 234 means 23.4℃. The pull-up resistance is not published in this model's specification.

Example ladder — reading the NTC temperature
        @ON               NTEMP
0000  --| |---------------[ CHANNEL:1 | OUT:D10 ]--

  NTEMP channel 1 lands in D10 in tenths of a degree: 234 means 23.4 C.
  The two NTC channels sit on their own NTEMP connectors, one per channel.

High-speed pulse outputPWM Output

6 PWM output points on 2 independent timers

PWM0–PWM5 are 6 pulse outputs driven by 2 timer resources — TIMER1 = PWM0–PWM2 · TIMER2 = PWM3–PWM5. Ports on the SAME timer share a WIDTH and a frequency; the two groups are independent of each other, so this board can emit two different frequencies at once. The output swings DC 0 V LOW to DC 5 V HIGH at up to 30 mA per point.

  • 6 PWM points

    PWM0–PWM5 · DC 0 V / DC 5 V output

  • 2 timers

    TIMER1 = PWM0–PWM2 · TIMER2 = PWM3–PWM5

  • DUTY / WIDTH 065535

    Set the pulse directly, or give a frequency instead

  • DC 5 V · 30 mA

    LOW DC 0 V / HIGH DC 5 V · up to 30 mA per point

Pulse output contacts PWM0–PWM5

Output waveform by duty value (PWM function block)25%50%75%5V0V
TIMER1 · PWM0–PWM2TIMER2 · PWM3–PWM5

* The pulse outputs come out on the PWM connector on the left-hand edge of the board. The contacts are PWM0–PWM5, and TIMER1 = PWM0–PWM2 · TIMER2 = PWM3–PWM5. The waveform above is what the PWM function block produces for three DUTY values.

Before you wire it

  • PWM0, PWM1, PWM2 run on TIMER1: they must all carry the same WIDTH and the same frequency — changing one changes the group.
  • PWM3, PWM4, PWM5 run on TIMER2: they must all carry the same WIDTH and the same frequency — changing one changes the group.
  • The two groups are independent, so they may run at different frequencies at the same time.
  • FPWM, FDPWM, NPWM set their timer's CLOCK and WIDTH themselves to hit the frequency you ask for, so mixing them with the PWM block on the SAME timer is not recommended. Driving one timer with PWM and the other with FPWM / FDPWM / NPWM is fine.
  • DUTY may not exceed WIDTH. The smaller the WIDTH, the higher the output frequency.
  • NPWM takes 0–60 kHz, and 30 kHz or below is recommended.

Pulse function blocks

Function blockWhat it doesParameters
PWMPulse by duty and widthPORT 0–5 / DUTY 0–65535 / WIDTH 0–65535
FPWMPulse by frequency (50% duty)PORT 0–5 / FREQ 0–1 MHz
FDPWMPulse by frequency and duty ratioPORT 0–5 / FREQ 0–1 MHz / DUTY %
NPWMEmit a set number of pulsesPORT 0–2 / FREQ 0–60 kHz / N 0–2,147,483,647
POFFStop the pulse outputPORT

The output is LOW DC 0 V / HIGH DC 5 V at up to 30 mA per point. TIMER1 = PWM0–PWM2 · TIMER2 = PWM3–PWM5 — WIDTH and frequency have to match WITHIN a group, and the two groups are free of each other. Whether a port is currently emitting is readable from the special memory @PWM0–@PWM5.

Example ladder — PWM output
        P0                        PWM
0000  --| |-----------------------[ PORT:0 | DUTY:500 | WIDTH:1000 ]--

        P1                        POFF
0001  --| |-----------------------[ PORT:0 ]--

        P0                        FPWM
0002  --| |-----------------------[ PORT:1 | FREQ:1000 ]--

        P0                        FDPWM
0003  --| |-----------------------[ PORT:2 | FREQ:2000 | DUTY:70 ]--

        P0                        NPWM
0004  --| |-----------------------[ PORT:2 | FREQ:3000 | N:100 ]--

        @PWM2                               P32
0005  --| |---------------------------------( )--

  PWM sets the pulse directly; FPWM emits a 50% duty at the frequency asked for,
  FDPWM adds a duty ratio, and NPWM emits a fixed number of pulses. @PWM2 is on
  while port 2 is emitting. PWM0~PWM2 run on timer 1 and PWM3~PWM5 on timer 2, so
  WIDTH and frequency have to match inside a group — the two groups are free of
  each other.

High-speed counter · encoderCounter · Encoder

2 channels, up to 50kHz, counting pulses or tracking an encoder

Two channels count fast pulses or follow a quadrature encoder without the ladder scan having to keep up. Channel 0 is the FND/ENCO connector and channel 1 the I2C one; the ladder reads either with the HCNT and ENCODER function blocks.

  • 2 counter channels

    Channel 0 on FND/ENCO, channel 1 on I2C

  • Encoder A and B phases

    B lagging A on A's rising edge counts up; leading counts down

  • Per-channel built-in resistor

    channel 0 100 kΩ pull-down · channel 1 4.7 kΩ pull-up

  • 50kHz · DC 05 V

    Up to 50kHz at an operating input of DC 0–5 V

What the two channels are for

High-speed pulse counting+5VGNDCLKGNDHCNT counts, HRST resetsEncoder A and B phasesCLKDIOENCODER reads, ENMOV presets

* The built-in resistor differs per channel — channel 0 100 kΩ pull-down · channel 1 4.7 kΩ pull-up. For stable operation the manual recommends adding a pull-down resistor outside the product. This resistor is to become 4.7 kΩ, after which no external pull-down is needed. Channel 0 recognises HIGH at DC 3 V or above.

Before you wire it

  • Using channel 1 takes the SDA and SCL lines, so I²C communication cannot be used at the same time — they are physically the same pair.
  • Channel 0's CLK and DIO are the same two poles a 7-segment (FND) display is wired to, on the same FND/ENCO connector.
  • The operating input range on both channels is DC 0–5 V.
  • These channels are not isolated. Isolated field signals belong on the digital inputs.

Channels and function blocks

ChannelConnectorBuilt-in resistor · HIGH
Channel 0FND/ENCO100 kΩ pull-down · DC 3 V or above
Channel 1I2C4.7 kΩ pull-up · GND (LOW)
HCNT / HRSTBlockRead the counter · reset it
ENCODER / ENMOVBlockRead the encoder · preset it
Both channelsInput rating50kHz · DC 0–5 V

Channel 0 is CLK(A) and DIO(B); channel 1 is SDA(A) and SCL(B). The plain counter runs on CLK and SDA respectively, while the encoder uses both poles of whichever channel it is on. Both take up to 50kHz at an operating input of DC 0–5 V. Direction is decided on the A phase's rising edge: a B phase that lags counts up, one that leads counts down.

Example ladder — reading the high-speed counter
        @ON                       HCNT
0000  --| |-----------------------[ CHANNEL:0 | OUT:D100 ]--

        P0                        HRST
0001  --| |-----------------------[ CH:0 ]--

  @ON is always on, so the counter free-runs and D100 always holds the count.
  P0 = the reset button; HRST clears channel 0 back to zero.
Example ladder — reading and presetting the encoder
        @ON                       ENCODER
0000  --| |-----------------------[ CHANNEL:0 | OUT:DD0 ]--

        P0                        ENMOV
0001  --| |-----------------------[ CHANNEL:0 | IN:100 ]--

  DD0 is a double word, so the encoder count can run past a single word.
  ENMOV writes a value INTO the encoder: here P0 presets channel 0 to 100.

Power · Data retentionPower · Backup

DC 12V ~ 24V in, 5 V out — and your data survives the blackout

The controller takes DC 12V ~ 24V and converts it to 5 V internally with a LM2576 regulator. Size the supply for at least 24V 0.5A.

  • DC 12V ~ 24V

    Size the supply for 24V 0.5A or more

  • 5 V internal

    LM2576 DC-DC conversion

  • +5 V out 1A

    From the RS-485 terminal block — it takes 5 V in too

  • Supercapacitor hold-up

    About ten seconds on the +5 V pole

Before wiring the supply

  • An EEPROM section written about 100,000 times can fail, and a failed section reads back a random value after a power cut. For values that change constantly, use the methods below.
  • USB power is for development and bench testing. Apply the external supply for field installation.
  • Do not exceed the stated input voltage range.
  • Do not reverse the supply polarity or mis-wire the input.

Where the power goes

DC 12V ~ 24V24V 0.5A min.LM2576DC-DC to 5V5V internalFeeds the control circuit+5V terminalout 1A max · 5V inUSB 5VDownload portSupercapacitorAbout 10 s hold-up
Supply input5 V railData retention

* Any of three sources runs the controller: the external supply through the regulator, the download port's 5 V, or DC 5 V fed straight into the +5 V pole. The supercapacitor sits on that same 5 V node and keeps it alive when they go away.

Power and data retention

Input voltageDC 12V ~ 24V
Recommended supply24V 0.5A or more
Internal conversionLM2576 DC-DC to 5 V
+5 V output1A max, from the +5 V pole of the RS-485 terminal block
5 V inputFeed DC 5 V into the same +5 V pole and it runs as a power input
USB-powered operationRuns on the PC's 5 V through the download port
Non-volatile memoryEEPROM, about 100,000 writes per section
Hold-up on a power cutSupercapacitor on the +5 V pole, about ten seconds
Blackouts retainedMore than 100,000, writing only when the mains drops

Size the supply for 24V 0.5A or more, plus whatever the +5 V pole is feeding (up to 1A).

Keeping data through a blackout

Which method you want depends on how often the value changes. The first two are settings; the third needs one part and a few rungs.

EEPROM retentive area — values that change occasionally

Mark a retentive area under Settings → Data Memory in MP STUDIO and the runtime copies that memory into non-volatile EEPROM every time its value changes — no code to write. Because a section survives only about 100,000 writes, it belongs to setpoints, calibration data and machine configuration rather than to anything the scan updates.

T EEPROM INTERVAL — timer memory

Timer (T) memory changes constantly, so the same settings window carries a T EEPROM INTERVAL. Set a period and the timer values are stored once per period instead of on every change, which is what keeps the write count down.

Supercapacitor — values that change constantly

Fit a supercapacitor to the +5 V pole and the internal 5 V stays up for about ten seconds after the main supply is cut. Wire the main supply into a digital input as well, add a rung that moves the live value into the retentive memory the moment that input goes off, and a second rung that moves it back once on restart. The EEPROM is then written only at the instant of a blackout, so it survives more than 100,000 of them.

Mounting · DIN railDIN Rail

Clips onto a 35 mm DIN rail, or screws down through the PCB's own holes

Inside a control panel the board clips onto a 35 mm DIN rail; built into a machine it screws down through the Ø3.2 mounting holes in the PCB. The board measures 95.8 × 100.0 mm without the rail clip, and stands 114.2 mm high once the clip is closed on the rail.

  • 35 mm DIN rail

    Clips onto the rail in a control panel

  • Direct PCB mounting

    Screws through the Ø3.2 mounting holes

  • 95.8 × 100.0 mm

    PCB outline with no rail clip fitted

  • 114.2 mm engaged

    119.4 mm with the clip open, 114.2 mm closed

Mounting and dimensions

Mounting35 mm DIN rail, or direct to PCB (Ø3.2 holes)
DIN rail35 mm
PCB alone (no clip)95.8 × 100.0 mm
Mounting holesØ3.2 mm · 79.0 × 90.0 mm apart
Clip open (before engaging)approx. 119.4 mm
Clip closed (engaged)approx. 114.2 mm

Where no DIN rail is used, the board screws down through the Ø3.2 mounting holes in the PCB; on a rail, the clip closes over a 35 mm profile and the assembly stands 114.2 mm high.

Mounting on a 35 mm DIN rail

35 mm
DIN rail clip35 mm DIN railBoard

* The clip hooks over a 35 mm DIN rail. Overall height is 119.4 mm with the clip open and 114.2 mm once it is closed and engaged. The drawing shows the mounting method rather than the clip's own shape.

Outline and mounting holes

95.879.0100.0Mounting hole Ø3.2

* The outline and mounting holes with no rail clip fitted. All dimensions in millimetres.

Installation notes

  • Indoor use only. Do not install where there is rain, dust, frost, direct sunlight or condensation.
  • Do not install in an atmosphere containing flammable or explosive gas.
  • Do not install where there is heavy vibration or shock.
  • Where the equipment affects life or property (nuclear, medical, marine, vehicle, aviation and the like), a secondary safety device must be fitted.

FAQ

How many I/O points does the MPS-8A8R-S have?

The MPS-8A8R-S provides 8 isolated digital inputs and 8 relay outputs, with onboard RS-485, I²C communication. See the specification table for the full breakdown.

Does the MPS-8A8R-S support Modbus RTU?

Yes. The MPS-8A8R-S supports Modbus RTU — master and slave alike — over its serial interface.

Related products

/ RELATED