INDUSTRIAL AUTOMATION CONSULTANTS · NELSPRUIT

Industrial automation and control systems, engineered to perform.

ThinkPLCAutomation, based in Nelspruit, designs and builds SCADA, PLC, batching and weighing systems, and complete machines for any production line — if it has a PLC, a motor, a sensor or a scale, we can automate it. Our core focus is data: turning every plant we work on into information you can actually use.

Any processAny machine, any industry
Data-firstHistorian, reporting, dashboards
24/7After-sales support desk
MACADAMIA_PACKHOUSE.VIEW LIVE
ALARM BANNER: CLEAR THROUGHPUT: 2.4 t/h INTAKE DRY‑01 DRY‑02 CRK‑01 SRT‑01 GRD‑01 PKG‑01 PAL‑01 VFD‑1 VFD‑2 VFD‑3 PLC‑01 SCADA LINK
Live tag data Drive / VFD control Alarm state
Platforms we build on, every day
SCADA Platform
PLC & Automation
PLC & Drives
Drives & Robotics
PLCnext · Networking · Radios
Edge Flow Logic
Linux Edge OS
Dashboards & Observability
Also fluent in: PLCnext Engineer · FactoryTalk View · Adroit · Unitronics · OPC UA · MQTT / Sparkplug B · Modbus TCP
INDUSTRIES WE SERVE

We automate lines — and we understand the process behind them.

If it has a PLC, a motor, a sensor or a scale, we can automate it. These eight sectors are where our experience runs deepest — though our work spans any process, any industry, any machine.

01

Macadamia processing

End-to-end control across drying, cracking, sorting and grading — where moisture content, kernel recovery and throughput all depend on the same control system talking to itself correctly.

  • Dryer bin temperature & airflow control
  • Cracking line sequencing & jam detection
  • Optical/colour sorter integration
  • Batch traceability from bin to bag
02

Packhouse automation

Grading, packing and cold-chain systems built for seasonal peaks — where the line needs to run flat-out for months, then sit dormant without forgetting how it works.

  • Grading & sizing line control
  • Weigh-pack & bagging integration
  • Cold room & cooling monitoring
  • Pallet tracking & dispatch data
03

Machine building

Full electrical design and control builds for OEM machines — panel, safety circuit and PLC program delivered as one tested package, not three separate hand-offs.

  • Control panel design & build
  • Functional safety & e-stop circuits
  • Custom HMI per machine model
  • Serial-numbered, repeatable builds
04

Saw milling

Control systems for log infeed, sawing, edging and kiln drying — high-vibration, high-dust environments where the electronics have to survive the mill, not just the datasheet.

  • Log infeed & carriage positioning
  • Edger & trimmer sequencing
  • Kiln drying schedule control
  • Sort & stacking line integration
05

Energy & power SCADA

Power monitoring and control layered over your existing plant — visibility into demand, generator and grid state, and automated failover the moment supply is interrupted.

  • Power quality & demand monitoring
  • Grid interruption & failover automation
  • Generator / grid changeover control
  • Solar & battery integration dashboards
06

Pump stations & water infrastructure

SCADA and telemetry for pump stations, reservoirs and water networks — often spread across sites with no fibre in sight, tied together by radio.

  • Duty/standby/assist pump rotation
  • Licensed radio & GSM telemetry for remote sites
  • Reservoir & tower level monitoring
  • Pressure & flow network visibility
07

Infield weighing solutions

Weighing that has to survive outside the instrument shop — mobile weighbridges, portable dosing scales and load-cell rigs built for dust, vibration and weather.

  • Mobile & infield weighbridges
  • Portable batching & dosing scales
  • Ruggedised load-cell instrumentation
  • Live weighing data streamed to SCADA
08

PLC & SCADA systems integration

Multi-vendor integration and modernisation — bringing mismatched PLCs, ageing SCADA and disconnected sites onto one coherent, supportable platform.

  • Multi-vendor PLC integration
  • SCADA platform migrations
  • Legacy system modernisation
  • Historian & reporting layer roll-out
Also automating: FMCG & Food/Beverage Mining & Minerals Processing Water & Wastewater Treatment Poultry & Cold Storage Agriculture & Irrigation Chemical & Blending Pulp & Paper Automotive Components Solar & Renewable Energy Bulk Materials Handling Custom OEM Machines
ENERGY_OVERVIEW.VIEW — GRAFANA · SITE DEMAND GRID: NORMAL
00:00 12:00 23:00
Standard demand Peak tariff window
CURRENT DEMAND842 kW
PEAK DEMAND TODAY1,180 kW
POWER FACTOR
0.94
TRANSFORMER LOAD 68%
GENERATORSTANDBY — READY
SOLAR CONTRIBUTION21% of load
DATA & SOLUTIONS

Our core focus: data and complete solutions.

Getting a line running is the starting point, not the finish. Our job is turning every sensor, drive and scale on your line into a number someone can act on — and building a system that keeps working long after we've left site.

Real-time visibility

Every tag, everywhere it needs to be — control room, office, and phone — so decisions get made off what's happening now, not what happened yesterday.

Historian & reporting

Production, downtime and quality data logged automatically and visualised in Grafana or Ignition reporting, so month-end reporting is a query, not a scramble through paper sheets.

Edge-to-cloud pipelines

Node-RED flows on Ubuntu edge devices, MQTT/Sparkplug B out to Ignition or your own cloud — data engineered to move, not trapped in one PLC.

Business system integration

SCADA and historian data pushed into ERP, accounting or quality systems, so the plant floor and the front office are finally reading the same numbers.

Predictive & condition monitoring

Trend-based alerts on drives, bearings and drying cycles that flag drift before it becomes downtime, not after.

Full solution delivery

Panel, PLC code, SCADA, and the reporting layer on top — designed, built, commissioned and supported by the same team, end to end.

WHAT WE BUILD

Eight disciplines. One control system.

We work across the full stack — from the load cell and the drive on the motor, to the dashboard in your plant manager's pocket — so nothing gets lost in translation between the floor and the office.

01 · SCADA / HMI

SCADA & HMI development

Process graphics in Ignition, FactoryTalk View and Adroit — clear, consistent screens operators can trust at a glance.

02 · CONTROL

PLC programming & integration

Ladder, structured text and function blocks across Phoenix Contact PLCnext, Siemens, Allen‑Bradley, ABB and Unitronics — including migrations off end‑of‑life hardware.

03 · BATCHING

Batching systems

Recipe-driven batching for liquids, powders and blends — sequencing, ingredient tracking and full traceability back to the tag.

04 · WEIGHING

Weighing & infield weighing solutions

Load cell integration, weighbridge interfacing and infield weighing systems built to hold their calibration in a working plant, not a lab.

05 · PANELS

Panel building

Control panels designed, built and wired to spec — from single-drive enclosures to full MCC integration, tested before they leave the shop.

06 · SUPPORT

After-sales support

A responsive support desk, remote access configured from day one, and engineers who know your plant because they built it.

07 · AI

AI tools & services

Anomaly detection on historian trends, computer-vision quality sorting, and natural-language reporting layered onto your SCADA — practical AI, not a buzzword bolt-on.

08 · DELIVERY

Project management for automation builds

One project lead running scope, procurement, site coordination and schedule across panel building, programming and commissioning — so nothing slips between disciplines.

THE CODE ITSELF

Real logic. Real tag names. No black boxes.

Ladder, function block, structured text and the C++ that bridges our PLCs to the data layer — written to IEC 61131‑3 across PLCnext Engineer, Studio 5000 and TIA Portal. Every program is commented and documented before it leaves our workshop.

PumpStationControl — LADDER LOGIC · RUNGS 001–004 IEC 61131‑3 LD
001 START_PBI:1/00 STOP_PBI:1/01 · NC ESTOP_OKI:1/02 · NC CTRL_ENABLEO:2/00 CTRL_ENABLE · seal-in 002 CTRL_ENABLEB3:0/0 PUMP_ALTB3:0/1 · NC P101_READYI:1/03 P101_RUNO:2/01 003 CTRL_ENABLEB3:0/0 PUMP_ALTB3:0/1 P102_READYI:1/04 P102_RUNO:2/02 004 LEVEL_LOW TON PRE 15.0 s T4:0 T4:0/DN PUMP_TRIP_ALM
Duty/standby alternation on B3:0/1 · 15 s dry‑run delay trips a latched alarm rather than restarting 4 rungs
IEC 61131‑3 & EDGE SOURCE PLCnext · STUDIO 5000 · LINUX
FUNCTION BLOCK · PLCnext Engineer
CTRL_ENABLE NOT DRIVE_FLT AND PID SP · BIN_LEVEL_SP PV · BIN_LEVEL_PV EN SCALE 0–100 % → 0–50 Hz VFD_SPEED_SP
Cracker infeed VFD speed — PID on bin level, gated by permissive, scaled to Hz.
STRUCTURED TEXT · BatchSequence.st
(* Batching phase control — dosing sequence *)
IF Batch_Active AND NOT Scale_Fault THEN
  CASE Phase OF

  10: (* charge water *)
    Valve_Water(SP := 250.0);
    IF Weight_PV >= Rcp.Water THEN
      Phase := 20;
    END_IF;

  20: (* dose powder *)
    Feeder(Rate := Rcp.DoseRate);
    IF Weight_PV >=
       Rcp.Target - Rcp.InFlight THEN
      Feeder(Rate := FINE);
    END_IF;

  30: (* mix and hold *)
    Mixer(Time := Rcp.MixTime);

  END_CASE;
END_IF;
C++ · EdgeGateway.cpp
// Modbus TCP -> MQTT Sparkplug B bridge
class EdgeGateway {
public:
  void pollCycle() {
    for (const auto& tag : map_) {
      float v = plc_.read(tag.addr);

      // dead-band filter
      if (std::fabs(v - last_[tag.id])
          > tag.deadband) {
        mqtt_.publish(tag.topic, v,
                       Qos::AtLeastOnce);
        last_[tag.id] = v;
      }
    }
    hist_.flushBatch();
  }

private:
  ModbusClient plc_;
  MqttClient   mqtt_;
  SqlWriter    hist_;
};
LIVE SYSTEMS

Plant dashboards we've built, running in production.

Five systems, each shown the way an operator actually sees it — process schematic, live KPIs, trends, alarms and reporting on one screen. Every tag on these views is real data moving from the field, through the PLC, to the historian.

01
☰  ←  Macadamia Packhouse — Production Overview
andrew.bSEASON D+64 · SHIFT A
Active Alarms: 0 · Line running · 2.4 t/h intake · kernel recovery 32.4%
LINE RUNNING · SHIFT A 2.4 t/h INTAKE HOPPER DESTONER 58.4°C 57.9°C DRYER BINS 1–2 56.2°C DONE DRYER BINS 3–4 38.2 A CRACKER CRK‑01 SHELL SEPARATOR 22 pcs/s OPTICAL SORTER STYLE 0–8 SIZE GRADER 12.5 kg WEIGH‑PACK PALLETISER NIS SILO · 68% 142 t SHELL OUT · 31% TO BOILER PACKHOUSE PLC · S7‑1500 PROFINET · 22 DRIVES PROFINET
INTAKE RATE2.4 t/h
KERNEL RECOVERY32.4%
MOISTURE OUT1.6%
CRACKER LOAD38.2 A
SORTER REJECT2.1%
PACKED — SHIFT184 bags
NIS SILO LEVEL68%
LINE AVAILABILITY96.8%
DRYER BIN 2 — TEMP vs MOISTURE (24H)
HI SETPOINT 62° 00:00 24:00
OVERALL EQUIPMENT EFFECTIVENESS
79% OEE
Availability
94%
Performance
88%
Quality
96%
LOT TRACEABILITY — TODAY
BatchProductWeightStatus
B‑0847Kernel Grade 11,204 kgComplete
B‑0846Kernel Grade 2980 kgComplete
B‑0845Kernel Grade 11,150 kgComplete
B‑0844Reject / Rework64 kgReview
02
☰  ←  Sawmill — Wet Mill & Kiln Drying
andrew.bSHIFT A · 41.2 m³/h
Active Alarms: 0 · Line running · recovery 52.8% · 11 min downtime this shift
LOG DECK · 312 LOGS DEBARKER · DBK‑01 86 A MD CLEAR CARRIAGE PASS 3/5 HEADRIG · HR‑01 BAND 142 A · FEED 68 m/min RESAW · RS‑01 118 A EDGER · ED‑01 64 A TRIMMER · TR‑01 GREEN CHAIN SORTER · 38 BINS BIN FULL: 4 · SORT RATE 22 pcs/min CHIPPER · CH‑01 176 A CHIP SCREEN · SC‑01 CHIP BIN · 71% SAWDUST · 38% MILL PLC · S7‑1500 PROFINET RING · 14 DRIVES MCC ROOM 1 PROFINET WET MILL RUNNING · SHIFT A
GREEN THROUGHPUT41.2 m³/h
LOGS SAWN — SHIFT486
RECOVERY52.8%
HEADRIG BAND LOAD142 A
CARRIAGE FEED68 m/min
SORTER RATE22 pcs/min
CHIP BIN LEVEL71%
DOWNTIME — SHIFT11 min
MCC ROOM 1 — MOTOR STATUS
M‑101RUN38.2 A
M‑102RUN12.4 A
M‑103RUN27.9 A
M‑104STOP0.0 A
M‑105RUN44.1 A
M‑106RUN19.7 A
M‑107RUN31.5 A
M‑108STOP0.0 A
M‑109RUN8.3 A
M‑110RUN52.6 A
M‑111RUN16.2 A
M‑112RUN23.8 A
KLN‑02 — DRYING SCHEDULE (PINE 38mm)
°C NOW 0h60h120h
ALARM DISTRIBUTION — 7 DAYS
48 ALARMS
Drive faults — 45% Level warnings — 22% Comms retries — 33%
03
☰  ←  Water Treatment & Distribution — Regional SCADA
andrew.b3 PLCs · 2 RADIO LINKS
Active Alarms: 0 · all sites nominal · turbidity 2.4 NTU · chlorine 0.82 mg/L
INTAKE 1450 RPM P‑101 DUTY INTAKE PS FT‑101 DOSING DP‑01 CLARIFIER 2.4 NTU AT‑01 FILTER 38 kPa DPT‑01 CLEARWELL 64% LT‑02 HIGH‑LIFT 1180 RPM P201‑203 HEADER PT‑02 4.2 bar TOWER 71% LT‑03 BOOSTER PS · REMOTE P‑301 · 850 RPM PLC‑04 CONTROL ROOM IGNITION SCADA SERVER HISTORIAN · GRAFANA PLC‑01 PLC‑02 PLC‑03 RADIO RADIO
RAW WATER LEVEL82%
TURBIDITY · AT‑012.4 NTU
FILTER DIFF. PRESSURE38 kPa
CLEARWELL LEVEL64%
DISTRIBUTION PRESSURE4.2 bar
CHLORINE RESIDUAL0.82 mg/L
RESERVOIR TOWER LEVEL71%
RADIO SIGNAL · BOOSTER‑62 dBm
REMOTE SITES — RADIO TELEMETRY
SiteLinkLevelState
PS‑01 Intake‑58 dBm78%Run
PS‑02 Booster‑62 dBm64%Run
RES‑01 Tower‑71 dBm71%Fill
PS‑03 Transfer‑66 dBm52%Standby
RES‑02 Ground‑79 dBm44%Weak link
PS‑04 Farm‑64 dBm88%Run
PLC‑02 RACK — I/O DIAGNOSTICS
PSU
CPU
DI 32
DI 32
DO 32
AI 8
AI 8
AO 4
Scan time4.2 ms
Comms errors 24h0
AI‑7 ch3Open circuit
Forced points0
PERSPECTIVE MOBILE — ALARM PUSH
14:52●●●●
THINKAUTOMATION ALERTS · NOW
Batch Line 2 — Scale‑01 High Level
Tank at 88% — approaching high‑level setpoint. Dosing paused automatically.
AcknowledgeOpen App
IGNITION PERSPECTIVE · LINE 2
MIXER VFD‑021,180 RPM
TRANSFER PUMPRUNNING
SCALE‑011,204 kg
BATCH PHASE30 · MIX & HOLD
04
☰  ←  Batching, Weighing & Recipe Control
andrew.bRCP‑012 · FEED MIX A
Phase 2 of 4 — dosing maize · in tolerance · scale healthy
LINE 2 — VESSELS & DRIVES
TK‑01 WATER
72.4%
TK‑02 POWDER
41.0%
SCALE‑01
1,204 kg
VFD‑02 · MIXER
1,180 RPM
VFD‑03 · TRANSFER PUMP
640 RPM
ACTIVE RECIPE — INGREDIENT DOSING
IngredientTargetActualStatus
Maize meal620.0 kg618.7 kgDosing…
Soya oilcake240.0 kgQueued
Molasses85.0 kgQueued
Premix 4B12.5 kg12.5 kgComplete
MAIZE — SCALE‑02618.7 / 620.0 kg
Coarse feed off · fine feed at 0.4 kg/s · in-flight comp 1.3 kg
WEIGHBRIDGE WB‑02 — INFIELD TERMINAL
NET MASS 18 460 kg
GROSS32 180 kg
TARE13 720 kg
VEHICLEJVX 418 MP
PRODUCTNIS — Beaumont
SUPPLIERBlk 7 — Riverside
05
☰  ←  Edge, Data & Energy Platform
andrew.bedge01 · UPTIME 214d
Gateway healthy · 342 tags polling · 0 comms errors in 24h
NODE-RED — EDGE FLOW (flows_edge01.json)
modbus read s7 read opcua client fn: scale + tag mqtt sparkplug sql insert broker catch: comms ✔ deployed 14:52 — 3 PLC pollers → dead-band filter → Sparkplug B + SQL history
UBUNTU 24.04 LTS — GATEWAY SERVICE
$ systemctl status edge-gateway
● edge-gateway.service — Modbus→MQTT bridge
   Active: active (running) since Mon; 214d ago
   Memory: 42.1M   CPU: 1.2%

$ mosquitto_sub -t 'spBv1.0/plant/DDATA/#' -C 2
{"tag":"CRK01.MotorAmps","value":38.2}
{"tag":"DRY02.BinTemp","value":58.4}

$ tail -n 3 /var/log/edge/poller.log
14:52:01 INFO  poll cycle 4.2s — 342 tags OK
14:52:05 INFO  deadband suppressed 291/342
14:52:05 INFO  sql batch insert 51 rows (12ms)
POSTGRESQL — HISTORIAN QUERY
SELECT date_trunc('hour', ts) AS hr,
       round(avg(kernel_recovery),1) AS recovery,
       round(sum(throughput_t),2)  AS tonnes
FROM   line_production
WHERE  ts > now() - interval '8 hours'
GROUP BY hr ORDER BY hr DESC;

   hr    | recovery | tonnes
---------+----------+--------
 14:00   |   32.4   |  2.41
 13:00   |   32.1   |  2.38
 12:00   |   31.2   |  1.94
 11:00   |   32.6   |  2.44
(8 rows)
GRAFANA — PRODUCTION & ENERGY OVERVIEWAUTO-REFRESH 30s
Throughput — t/h (24h)
Kernel recovery
32.4%
target ≥ 30%
Moisture out
1.6%
spec 1.5 ± 0.3%
Line availability
96.8%
this week
Cracker amps
Reject rate
2.1%
alert > 3%
Energy / tonne
48 kWh
7-day avg
SITE DEMAND vs NOTIFIED MAXIMUM (24H)
kW NOTIFIED MAX 1200 00:0012:0023:00
HOW WE WORK

A clear process, from first site visit to handover.

Every project runs the same four stages, whether it's one HMI screen or a plant-wide rollout — so you always know what phase you're in and what happens next.

PHASE 01

Walk the floor

We start on site — reviewing existing PLCs, drawings and pain points before proposing anything, so the design matches how the line actually runs.

PHASE 02

Design & tag structure

We define the tag database, alarm strategy, batching recipes and screen hierarchy up front, so the system stays consistent as it grows past the first line.

PHASE 03

Build, panel & commission

Panels are built and tested in our workshop, code is proven against real I/O, and commissioning is scheduled around your production windows — not ours.

PHASE 04

Support & handover

You get complete documentation and a direct support line straight back to the engineer who built it — not a black box. Most clients keep us on for ongoing changes as the plant evolves.

HOW WE ENGINEER

The standards we hold ourselves to, on every project.

This is what separates a control system that runs for a decade from one that turns into a maintenance headache in year two. It's not the brand on the PLC — it's the discipline behind the build.

Vendor-agnostic recommendations

We specify Ignition, Siemens, Allen‑Bradley, ABB or Unitronics based on what suits your plant and your team's skill set — and we'll walk you through the reasoning behind every recommendation.

Documented, professionally maintained code

Every PLC program and SCADA project is fully documented and commented, with tag databases and functional descriptions handed over — core program elements remain ThinkPLCAutomation IP, licensed for your plant's ongoing use and support.

Safety considered from the first drawing

E-stop circuits, interlocks and functional safety are designed in from the start, not bolted on after an incident or an audit finding.

Tested before it reaches your plant

Logic is proven against simulated or bench I/O before it reaches your plant, so commissioning is about fine-tuning on real equipment — not first-time debugging on a live line.

Right-sized, not oversold

We size the solution to the problem — a single-line HMI upgrade gets a single-line scope, and a plant-wide rollout gets the planning it deserves.

One team, start to finish

The engineers who scope your project are the ones who build, commission and support it — no hand-offs between sales, design and support, and no call centre between you and the person who knows your plant.

ABOUT

About ThinkPLCAutomation.

ThinkPLCAutomation is a controls and systems integration practice based in Nelspruit, working across South Africa's manufacturing and process sector.

We're multi-vendor by design: Ignition, Phoenix Contact PLCnext, Siemens, Allen‑Bradley, ABB, Node‑RED and Ubuntu-based edge deployments, alongside SCADA experience in FactoryTalk View, Adroit and Unitronics. That range lets us recommend the platform that genuinely suits your plant, your budget and your team.

Where we go further than a generalist integrator is the process itself. Years spent inside macadamia processing, packhouse grading lines, saw milling and custom machine builds mean we understand the process constraints before we open the PLC software — and our energy & power SCADA work gives plants in all of those sectors visibility and control over demand, generators and transformer loading.

From panel building and PLC programming through to batching, weighing and the SCADA screen that ties it all together, we take responsibility for the whole system — designed, built, commissioned and supported by the same team.

8Core disciplines — SCADA to project management
8+Platforms & brands we build on fluently
24/7Remote monitoring & support desk
GET IN TOUCH

Tell us about the line you need to bring online.

Send us a rough scope — plant type, current control platform, and what's not working today. We'll come back with practical next steps.

LOCATIONNelspruit, Mpumalanga, South Africa