Project developed as part of the Acquisition and Control Systems course at FTN Novi Sad.
A simulation of a fuel pump station with a 1000L reservoir. The system monitors fuel levels via sensors, controls pumps and valves through digital outputs, and reports alarms based on defined thresholds. Communication is based on the Modbus RTU/TCP protocol (slave address 13, port 502).
- Reservoir capacity: 1000L, initial fuel level: 500L
- Inlet valve V1 – fills reservoir at 10 L/s (address 2000)
- Pumps P1, P2 – discharge at 1 L/s (addresses 3000, 3001)
- Pump P3 – discharges at 3 L/s (address 3002)
- Fuel level sensor N1 (address 1000)
- Real-time fuel level monitoring via analog sensor
- Digital output control for pumps and valve
- Engineering unit conversion: EGU = A × raw_value + B
- Alarm management:
- HighAlarm: fuel level > 900L
- LowAlarm: fuel level < 150L
- AbnormalAlarm: pump or valve not in nominal state
- Safety interlocks:
- Valve cannot open while pumps are active
- Pumps cannot activate while valve is open
- Manual control via control panel (valve and pumps)
- Values refreshed on UI after each successful write
- C# / .NET
- Modbus RTU/TCP (port 502)
- DCOM
- SCADA-style desktop application