Product in development

AIS SoftPLC: a PLC in software, so we can test before we touch the machine.

We use the AIS SoftPLC for simulation. It runs a real controller program on a PC, scan by scan, wired to a simulator of the machine, and it answers the network like the real CPU. So far it simulates a Mitsubishi MELSEC iQ-R R08CPU and a Sharp PLC.

Developing

What it does

The program, the PLC and the machine, all on one PC.

Most of the machines we work on can't be stopped for testing, and some can't be tested on hardware at all. The SoftPLC means our code has already run, and passed, before it gets anywhere near your line.

01

Runs the real program

The controller's own program runs scan by scan with that PLC's behaviour: timers, counters, edges and data types, just as the CPU would run it.

02

Answers like the real CPU

HMIs, OPC servers, SCADA and data-collection devices connect over SLMP as if it were the real PLC, including label access by name. Tested with 80 simultaneous clients and 20,000 malformed frames.

03

Wired to a machine simulator

Inputs and outputs connect to a model of the machine, so sensors change, motors run and parts move when the program tells them to. Faults can be injected on purpose.

04

Scripted test scenarios

Timed steps set inputs, wait and check results, with checks on every scan. The same scenarios run again after every change, so nothing that worked gets broken.

05

Restart sweep

The machine is stopped at 60 points in a cycle and at a fault, and each time restarted with retained memory. Deliberate program faults check that the tests catch them. On a relay-style PLC it found a stray counter pulse on the restart scan of a new sequence before it reached the machine.

Status · 29 October 2026

What runs today, and what is coming.

A PLC stores instruction codes, not drawings. The SoftPLC runs that instruction list with each family's own behaviour on one engine, and each PLC family is a profile on top: its memory model, its instructions, its special relays and its protocol. A comparison with a real CPU comes before we call anything verified.

In use

On AIS projects; byte-exact against the manuals.

  • The instruction-list scan engine
  • SLMP server: 3E / 4E, binary and ASCII, TCP and UDP, device access and labels by name; AIS Edge and AIS HMI connect to it
  • Sharp JW profile: scan behaviour, octal devices, keep area, special relays
  • Machine models, scenario tests, the restart sweep and the local web panel

In testing

Passing in simulation; comparison with real hardware pending.

  • MELSEC iQ-R profile: device memory, timers and counters, edges
  • Remote RUN / STOP / RESET, and an exact mode with the CPU's own limits and error codes
  • Next: a byte comparison against a real iQ-R CPU, and third-party OPC servers and SCADA on our lab network

In development

Being built now, or next on the list.

  • All five IEC 61131-3 languages: ladder (LD), function block diagram (FBD), structured text (ST), sequential function chart (SFC) and instruction list (IL), with function block instances
  • Loading GX Works3 programs with labels, function blocks and SFC
  • EtherCAT®, CC-Link IE and TSN stations through AIS Core, the protocol engine shared with AIS Edge
IEC 61131-3 · in development

Every IEC 61131-3 language, on one engine.

Ladder, function block diagram, structured text, sequential function chart and instruction list will all compile to one instruction list, so a mixed program runs in one scan with one memory. Full IEC 61131-3 support is in development; the instruction-list engine under it runs today.

  • Ladder (LD). Today ladder programs run from their instruction list, for the MELSEC and Sharp JW profiles, and show live in the AIS HMI ladder monitor
  • Function block diagram (FBD). Function block instances, the standard blocks (TON, TOF, TP, CTU, CTD, R_TRIG, SR, RS) and the standard functions
  • Structured text (ST). In the same scan as ladder; a first ST compiler already drives a production scheduler in simulation and is being moved into the SoftPLC
  • Sequential function chart (SFC). Steps, transitions, actions in ladder or ST, and checks on every scan that exactly the expected steps are active
  • Instruction list (IL). The engine's own form; unknown instructions are refused, never ignored
Simulating so far

Two PLC families today, more on the way.

Mitsubishi MELSEC iQ-R

  • R08CPU
  • SLMP 3E and 4E frames, binary and ASCII, TCP and UDP
  • Label access by name
  • Remote RUN / STOP

Sharp PLC

  • Sharp JW-series program behaviour: scan, octal devices, keep area, special relays
  • Used to prove a new automatic test cycle in simulation before it reached the machine
What we use it for

Proving the code, not hoping.

  • Testing program changes and new logic before they go to the machine
  • Building and testing HMI and SCADA screens against a live-behaving PLC
  • Checking data collection and OPC setups without plant hardware
  • Reproducing a fault in simulation to test a hypothesis
  • Training people on a machine without risking the machine
Protocols

What the SoftPLC speaks today, and what's next.

The SoftPLC is the PLC, so it serves the server or device side of each protocol. Our Edge Device builds the client side, and each one is the other's test partner.

Running now

ProtocolPLC familyStatus
SLMP / MC protocol, 3E and 4E framesbinary and ASCII, TCP and UDP, label access by nameMitsubishi MELSEC iQ-R, Q, L, iQ-FIn use byte-exact to the SLMP manual; real-CPU comparison next

Roadmap: featured, through AIS Core

ProtocolSoftPLC roleStatus
EtherCAT®Simulated segment (master and devices from ESI files), then device emulation on a real network portPlanned
EtherCAT TSNStream adaptation; EtherCAT Automation Protocol over TSNPlanned
Ethernet TSNIEEE 802.1AS time sync, 802.1Qbv scheduled traffic, launch timesTSN station on a real-time hostPlanned
OPC UA PubSub over TSNPublisher and subscriberAfter TSN
CC-Link IE TSN, CC-Link IE Field BasicStationPlanned

These come from AIS Core, the protocol engine shared with AIS Edge. Its EtherCAT master (with eight simulated devices) and its CC-Link IE and TSN stacks are in testing in AIS Edge, in simulation, with a Python binding the SoftPLC will embed. AIS is a member of the EtherCAT Technology Group (ETG) and the CC-Link Partner Association (CLPA). EtherCAT® is a registered trademark and patented technology, licensed by Beckhoff Automation GmbH, Germany.

Roadmap: open protocols (any PLC family)

ProtocolSoftPLC roleStatus
Modbus TCP, Modbus RTU / ASCIIServer / slaveEarly
OPC UAServer, unsecured first, then signed and encryptedEarly
MQTT 3.1.1 / 5.0 with Sparkplug BEdge-of-network nodePlanned
EtherNet/IP (CIP)AdapterOn request
PROFINET IODeviceOn request
BACnet/IP, DNP3, IEC 60870-5-104, IEC 61850Server / outstationOn request
SECS/GEM (HSMS)Equipment sideOn request

Roadmap: vendor protocols (with each PLC family)

ProtocolPLC familyStatus
MC protocol 1EMitsubishi FX3U Ethernet, A-compatiblePlanned
Sharp JW computer linkSharp JWPlanned
Omron FINSOmron CS / CJ / NJ / NXPlanned
Beckhoff ADSTwinCAT 2 / 3Planned
Panasonic MEWTOCOL-COMFP7, FP0H, FP-XHPlanned
LS ELECTRIC XGT FEnetXGK, XGI, XGBPlanned
YOKOGAWA FA-M3 PC linkFA-M3Planned
KEYENCE KV Host LinkKV-8000 / 7000 / 5000Planned
FATEK FBs, Unitronics PCOM, Opto 22 OptoMMPFATEK, Unitronics, Opto 22Planned

Every protocol is built from its published specification. Where a protocol has a conformance program, we claim it in the product only after passing it. Siemens controllers are covered through OPC UA. The order may change with customer demand.

Want your machine simulated?

If you have a change to make on a machine you can't afford to stop, we can usually build a simulator of it first. Tell us what it is.