finds.dev← search

// the find

rparak/Unity3D_Robotics_Sorting_Machine

★ 47 · C · MIT · updated Oct 2021

A digital-twin of the sorting machine integrated into the Unity3D development platform.

A Unity3D digital-twin of a simulated XYZ sorting machine that communicates with a B&R Automation PLC over OPC UA. The PLC side is implemented in ANSI C using B&R's Automation Studio; Unity acts as the visualization and object-type detection client. Aimed at automation/robotics students or engineers evaluating B&R + Unity integration patterns.

OPC UA as the bridge between PLC and Unity is the right call — it's the actual industrial standard, not a toy serial protocol. The separation of concerns is clean: PLC owns axis control and alarm handling, Unity owns visualization and camera-based classification, and mappView handles the HMI independently over the same OPC UA server. Multi-threaded programming in Unity for OPC UA polling is explicitly mentioned, which matters for keeping the render loop from blocking on network I/O. The Blender source files and STEP model are included, so you can actually inspect or modify the 3D geometry instead of being stuck with a black-box asset.

Last pushed in October 2021 and targets Unity 2020.1.8f1 — that's five major Unity versions ago and the project will likely fail to open cleanly in anything current without manual upgrade work. The machine model is entirely simulated (the author states there is no real identical machine), so the 'digital twin' label is generous — it's more accurately a PLC simulator with a 3D viewer. The Unity-side OPC UA client library isn't identified in the README, which means you don't know what you're pulling in or whether it's still maintained. No error handling or reconnection logic for OPC UA disconnects is documented, which would be the first thing that bites you in any real deployment.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →