Simple industrial device simulator with OPC UA integration for IoT demonstration.
- Device Management: Add, remove, rename devices
- Production Control: Start/stop devices, adjust production rate
- Error Simulation: Emergency Stop, Power Failure, Sensor Failure
- Real-time Monitoring: Temperature, Good/Bad Count, Workorder ID
- OPC UA Integration: Full server implementation with Azure Line Controller compatibility
- .NET Framework, WPF, MVVM Pattern
- OPC UA communication
- Data binding and custom converters
- Windows 10/11
- .NET Framework 4.7.2+
- Visual Studio 2019/2022
- Open
FFactorySim.slnin Visual Studio - Build solution (Ctrl+Shift+B)
- Run application (F5)
- Add Device: Click "Add Device" button
- Edit Name: Double-click device name or click pencil icon
- Control Production: Use ON/OFF button and +10/-10 rate controls
- Simulate Errors: Check error checkboxes in "Error Status" section
- Endpoint:
opc.tcp://localhost:4840/ - Namespace: 2
- Nodes: ProductionStatus, ProductionRate, DeviceError, Temperature, GoodCount, BadCount
- Methods: EmergencyStop(), ResetErrorStatus()
Write Access: Only ProductionRate node supports external write access with automatic bounds checking (0-100%).
Methods: EmergencyStop() triggers emergency stop, ResetErrorStatus() clears all device errors.
Other nodes are read-only and updated internally by the simulation engine.
- SimulationEngine: Device simulation
- FactoryOpcServer: OPC UA server
- FactoryMainViewModel: Main ViewModel
- FactoryDeviceModel: Device data model