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

MPS Series

MPS-16A8R

MPS-16A8R Industrial PLC Controller

I/O at a glance
16 DI / 8 Relay / 4 AI / RS-232 / RS-485 / UART / I²C

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

$88.00 In stock
Add-on products
Add related items you may need (optional)
Download cable — a USB-A plug at one end and a square USB-B plug at the other
Download Cable
Download Cable (USB A to B, 1.2 m)
$2.20
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 300 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
  • 16 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)
  • Industrial communication: RS-485, RS-232, UART, I²C · Modbus RTU
  • DIN-rail 35 mm mountable, isolated field I/O for the factory floor

Specifications

/ SPEC
Power inputDC 9V – 12V
Digital inputs16
Relay outputs8
Analog inputs4
High-speed pulse inputs1
Encoder inputs1
RS-2321ch
RS-4851ch
UART1ch
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.

This model connects to the PC with an ordinary USB cable — no MP download cable is required, and the driver is Silicon Labs CP210x.

Digital input

16 isolated digital input channels

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

  • P0–P15 inputs

    16 isolated digital input points in total

  • COM0 / COM1 commons

    COM0 = P0–P7 · COM1 = P8–P15 (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 · 1COMP8P9P10P11P12P13P14P15+COM1P8~P15 / COM18P · 1COM

* Example wiring for external switches or sensors — applying DC 12–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
  P0~P7 return to COM0 and P8~P15 to COM1 - sixteen inputs on two commons.

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

  • COM2 / COM3 commons

    COM2 = P32–P35 · COM3 = P36–P39 (4 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

P32P33P34P35+COM2P36P37P38P39+COM3P32~P398P · 4P/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
        P0                                  P32
0000  --| |---------------------------------(S)--

        P1                                  P32
0001  --| |---------------------------------(R)--

  P0 = start button, P1 = stop button, P32 = motor on the relay output.
  P0 ON latches P32 on (it stays on when P0 is released); P1 ON clears it.
  P32~P35 share COM2 and P36~P39 share COM3, at 5A per point and 15A per COM.

Analog inputAnalog Input

4 analog input channels on a screw block — the range is a soldered build

AI0–AI3 and AGND come out on one screw block. All 4 channels are 10-bit (0~1023) and the ladder reads them with the ADC function block. The input range is set by the resistors fitted to each channel: the board ships built for 0–5 V, and 3 other builds are listed below. One of them turns the channel into a temperature input read with NTEMP — and that one is chosen when you order.

  • AI0–AI3 · 4 channels

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

  • 4 selectable builds

    0–5 V · 0–10 V · 0–20 mA · NTC

  • Set by the fitted resistors

    R1 and R4 ship fitted at 0 Ω; R2, R3, R5, C are left out

  • Input impedance 100

    Operating input 0–5 V D.C as shipped

Analog input terminal

AI0–AI3 / AGND4CH · 10BITAI0AI1AI2AI3AGNDBoard interiorInput circuit → ADCGND
Analog AI0–AI3AGNDRange-setting resistorsNTC temperature build

* The screw block reads AI0 · AI1 · AI2 · AI3 and AGND. The manual's p.3 range-change figure labels the same poles A(0) · A(1) · A(2) · A(3) · AGND. The range is decided by the resistors on the board, so check which build you have before wiring a sensor.

Input ranges and the resistors that set them

RangeR1 · R2 · R3 · R5How you get it
0–5 VR1 0 · R2 N.C · R3 N.C · R5 N.CFactory default
0–10 VR1 1k · R2 1k · R3 N.C · R5 N.CResistor change
0–20 mAR1 0 · R2 N.C · R3 250 · R5 N.CResistor change
NTCR1 0 · R2 N.C · R3 N.C · R5 10kSpecify when ordering

Every channel is 10-bit (0~1023) with an input impedance of 100 MΩ, and the ladder reads one with the ADC function block. Boards leave the factory with R1 and R4 fitted at 0 Ω and R2, R3, R5, C not fitted, which is the 0–5 V build. R4 and C form a low-pass filter and are fitted only where a noise frequency has to be removed. For a temperature input the thermistor connects to AI0–AI3 and AGND, and the ladder reads it with NTEMP — a reading of 234 on AI0 means 23.4℃. This build is selected WHEN ORDERING; the board cannot be switched to it in the field.

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

        @ON               NTEMP
0001  --| |---------------[ CHANNEL:0 | OUT:D10 ]--

  AI0 arrives in D0 as 0~1000. Boards ship built for DC 0~5V with R1 and R4 fitted at
  0 ohm; another range means changing R1/R2/R3/R5 on that channel.
  A channel built for NTC is read by NTEMP instead: D10 = 234 means 23.4 degrees.
  The NTC build is chosen when ordering - it is not a field change.

Encoder · high-speed counterCounter · Encoder

One encoder channel on the I2C pair, up to 0–50 kHz and above

An A / B quadrature encoder connects to the I2C block: SDA takes the A phase and SCL the B phase, with a 4.7 kΩ pull-up already on both lines. The ladder reads the count with ENCODER and presets it with ENMOV. The same SDA pole doubles as HCNT channel 0 for a plain pulse source. This pair IS the I²C bus — using either function takes it away from the other.

  • Encoder A and B phases

    SDA is the A phase and SCL the B phase — B lagging A counts up

  • 4.7 kΩ pull-up built in

    Already fitted on the I2C lines — no external resistors

  • Counter on SDA

    HCNT channel 0 counts plain pulses on the same pole

  • DC 05 V · 050 kHz and above

    HIGH is recognised as GND (LOW)

What the channel is for

Pulse counting+5VGNDSDAGND4.7kΩ → +5VHCNT channel 0 on SDAEncoder A and B phasesSDASCLENCODER reads, ENMOV presets

* The encoder's A phase goes to SDA and its B phase to SCL; direction is decided on the A phase's rising edge, and a B phase that lags counts up. A plain pulse source can use SDA alone as HCNT channel 0. Both lines carry a 4.7 kΩ pull-up on the board.

I2C terminal

I2CSDAASCLB

* The I2C block on the board's right edge, SDA · SCL from the top. The same two poles serve the encoder, the high-speed counter and I²C — one at a time.

Before you wire it

  • Using the encoder — or SDA as HCNT channel 0 — takes the SDA and SCL lines, so I²C communication cannot be used at the same time. They are physically the same pair.
  • The pair is NOT isolated and its operating range is DC 0–5 V. Field signals that need isolation belong on the digital inputs.
  • HIGH is recognised as GND (LOW): the lines are pulled up on the board and the encoder pulls them down.

The channel and its function blocks

InputTerminalsRating
EncoderSDA (A) · SCL (B)Not isolated · 4.7 kΩ pull-up · DC 0–5 V
High-speed counterSDA = HCNT channel 0Up to 0–50 kHz and above · HIGH is GND (LOW)
ENCODERBlockRead the encoder count
ENMOVBlockPreset the encoder count
Shared with I²CI2C blockThe encoder and I²C cannot both be used

The board publishes ONE encoder channel: SDA carries the A phase and SCL the B phase, at DC 0–5 V with a 4.7 kΩ pull-up built in, and HIGH is recognised as GND (LOW). Input frequency is 0–50 kHz and above. Direction is decided on the A phase's rising edge — a B phase that lags counts up, one that leads counts down. For a plain pulse train, HCNT reads SDA as channel 0. This pair is the whole of the board's counter and encoder input, and it is the I²C bus.

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

  @ON is always on, so the counter free-runs and D100 always holds the count of the
  pulses arriving on SDA. CHANNEL:0 is the channel this board's manual gives for that
  pole, and using it takes the I2C bus for as long as the counter is running.
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.

CommunicationRS-232 · RS-485 · UART

3 serial channels and one I²C channel, all down the board's right edge

This board brings out RS-232 · RS-485 · UART at the same time — RS-232 is channel 1, RS-485 is channel 2, UART is channel 3 in MP STUDIO's communication-port settings. All of them speak Modbus RTU and LS Cnet (XBC/LINK) as a slave, or your own protocol in NORMAL MODE. I²C is a separate master-mode channel with its pull-ups already fitted.

  • 3 serial channels

    RS-232 = channel 1 · RS-485 = channel 2 · UART = channel 3

  • RS-485 multidrop

    485+ and 485- — one pair, many nodes

  • Modbus RTU slave

    Also Cubloc Modbus RTU and LS Cnet (XBC/LINK), as a slave

  • I²C · 1 channel

    Master mode · 1:N · 4.7kΩ pull-ups built in

RS-485 link

RS-485 · channel 2 · 1:N485+485-RS-485 linkNode 1Node 2Node 3

* 485+ and 485- are poles of the four screw blocks stacked down the board's right edge. It is channel 2 in MP STUDIO's communication-port settings, and one pair carries every node on the bus.

Communication terminals

I²CSDASCLRS-232 · CH1TXRXGNDRS-485 · CH2485+485-UART · CH3TXDRXDGND

* All four channels are on the four screw blocks stacked down the board's right edge. I²C reads SDA · SCL and carries 4.7kΩ pull-ups, so an I²C device connects with no external resistors. The manual's function-location drawing labels the three groups CH1 · CH2 · CH3.

Communication channels

ChannelTerminalsWhat it supports
I²C · 1 channelSDA · SCLMaster only · 1:N · 4.7kΩ
RS-232 · channel 1TX · RX · GNDModbus RTU / LS Cnet slave
RS-485 · channel 2485+ · 485-Modbus RTU / LS Cnet slave
UART · channel 3TXD · RXD · GNDModbus RTU / LS Cnet slave
NORMAL MODEAll 3 channelsPUT, GET, PUTLEN, GETLEN
Cubloc Modbus RTUAll 3 channelsSlave · Comfile HMI

The three serial channels are addressed by NUMBER in MP STUDIO: RS-232 is channel 1, RS-485 is channel 2, UART is channel 3. Baud rate and the rest are set under the communication-port settings. I²C is separate again — master mode, 1:N, with its 4.7kΩ pull-ups on the board.

Before you wire it

  • Using the encoder — or the high-speed counter on channel 0 — takes the SDA and SCL lines, so I²C cannot be used at the same time. They are physically the same pair.
  • I²C is supported in MASTER mode only: this board addresses I²C devices, it does not answer as one.
  • None of the communication channels is isolated — the specification lists every one of them as non-isolated.
  • For how to reach an EasyView, M2I or Comfile HMI, ILOGICS publishes the wiring on its own blog, under PLC to HMI.

7-segment (FND) connectionFND · TM1637

A four-digit 7-segment display on two signal wires — up to 2 of them

The display module carries a TM1637 driver, so a four-digit readout needs only a clock line and a data line. This board has no dedicated display connector: the two signals go on ordinary screw poles — CLK = AI2 · DIO = AI3 is the pair the manufacturer's own wiring article uses — and +5V and GND come off the bottom power group (+5V · +12V · GND), which makes the whole run four wires. The ladder drives it with the FINI · FINT · FDATA function blocks.

  • Two wires: CLK and DIO

    A TM1637 four-digit module needs no more

  • Up to 2 displays

    Each on its own pair of poles

  • Powered from the board

    +5V · GND on the bottom power group · up to 100mA

  • FINI · FINT · FDATA

    Ladder function blocks — initialise, print a number, drive the segments

Displays and their poles

DisplayTerminalsRole
1CLK = AI0 · DIO = AI1CLK / DIO
2CLK = AI2 · DIO = AI3CLK / DIO
Supply+5V · GNDBoard output ≤ 100mA

The signal poles are analog input terminals doing double duty, so a pole driving a display is spent for as long as it does. FINI is run once at power-up and takes the two port numbers; FINT prints a decimal number and FDATA drives the segments and the dot bit by bit. The display module itself is an accessory sold separately.

Connection from the wiring article

4-digit 7-segment (FND) moduleCLKDIO+5VGNDAI2AI3+5VGND

* The poles are silkscreened AI2 · AI3 · +5V · GND; nothing on the board says CLK or DIO, so the role of each wire is printed where it lands. The display comes in a decimal-point form and a time-displaying form, both sold separately.

Driving more than one

1AI0CLKAI1DIO2AI2CLKAI3DIO

* Every display needs its own CLK and DIO pair; +5V and GND are shared by all of them. The manufacturer's own article says all four analog inputs AI0–AI3 can serve as CLK and DIO, and gives AI2 = CLK, AI3 = DIO as its example. The pairs below are one valid allocation, taken in port order — which two ports make a pair is your choice.

Before you wire it

  • A pole used for a display cannot be used as analog input at the same time.
  • These four poles are analog inputs, and a display can only be driven by a channel still in the DC 0–5 V build it ships in. A channel rebuilt for 0–10 V, 0–20 mA or NTC cannot carry one.
  • FINI takes CONSTANTS for CLK and DIO; a memory address cannot be used there.
  • The time-displaying form cannot control its decimal points. Use the decimal-point form if you need them.
  • The 7-segment module is an accessory sold separately; it is not included with the board.
Example ladder — driving a 7-segment display
        @BEGIN            FINI
0000  --| |---------------[ CLK:2 | DIO:3 ]--

        @ON               FINT
0001  --| |---------------[ IN:D0 | POSITION:1 | LENGTH:4 | DOT:0 | ZERO:@OFF | SIGN:@OFF ]--

  @BEGIN runs once at power-up: FINI takes the two analog port NUMBERS to use as CLK
  and DIO - here AI2 and AI3, the pair the manufacturer's article gives as its example.
  FINT then prints D0 as a decimal across all four digits.
  CLK and DIO must be constants; a memory address cannot be used there.
  A port driving the display cannot read an analog signal at the same time.

Power · Data retentionPower · Backup

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

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

  • DC 9V ~ 12V

    Size the supply for 12V 1A or more

  • 5 V internal

    LM1117 DC-DC conversion

  • +5 V out 100mA

    From the +5 V pole of the power terminal block

  • 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.
  • Running on USB alone makes the USB 5 V the analog input's reference, so readings can wander. Use the external supply for precise measurement.
  • This board takes 9–12 V DC only. Do not apply the 24 V the other MPS models use.
  • Do not exceed the stated input voltage range.
  • Do not reverse the supply polarity or mis-wire the input.

Where the power goes

DC 9V ~ 12V12V 1A min.LM1117DC-DC to 5V5V internalFeeds the control circuit+5V terminalout 100mA maxUSB 5VDownload portSupercapacitorAbout 10 s hold-up
Supply input5 V railData retention

* Either source runs the controller: the external supply through the regulator, or the download port's 5 V directly. The supercapacitor sits on the same 5 V node and keeps it alive when both go away.

Power and data retention

Input voltageDC 9V ~ 12V
Recommended supply12V 1A or more
Internal conversionLM1117 DC-DC to 5 V
+5 V output100mA max, from the +5 V pole of the power terminal block
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 12V 1A or more, plus whatever the +5 V pole is feeding (up to 100mA). Conversion is more efficient at 9 V than at 12 V.

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 mounting holes in the PCB. The board measures 116.8 × 100.0 mm without the rail clip, and stands 119.42 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 mounting holes

  • 116.8 × 100.0 mm

    PCB outline with no rail clip fitted

  • 119.42 mm engaged

    124.68 mm with the clip open, 119.42 mm closed

Mounting and dimensions

Mounting35 mm DIN rail, or direct to PCB
DIN rail35 mm
PCB alone (no clip)116.8 × 100.0 mm
Mounting holes100 × 90.0 mm apart
Clip open (before engaging)approx. 124.68 mm
Clip closed (engaged)approx. 119.42 mm

Where no DIN rail is used, the board screws down through the mounting holes in the PCB; on a rail, the clip closes over a 35 mm profile and the assembly stands 119.42 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 124.68 mm with the clip open and 119.42 mm once it is closed and engaged. The drawing shows the mounting method rather than the clip's own shape.

Outline and mounting holes

116.8100100.0Mounting hole

* 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-16A8R have?

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

Does the MPS-16A8R support Modbus RTU?

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

Related products

/ RELATED