A professional PC-based Industrial HMI/SCADA application developed using Python (PySide6) for leak testing and production machines. This system replaces traditional hardware HMIs (Siemens/Allen-Bradley) with a modern, scalable, and cost-effective software solution.
Designed with real factory requirements in mind: Live Monitoring, SPC Analysis, Alarm Logging, and Automated PDF Reporting.
This HMI was engineered for an Industrial Leak Testing Machine used in automotive component manufacturing. It functions as a complete operator interface and production monitoring system.
Key Benefits:
- Cost Reduction: Replaces expensive proprietary panel HMIs.
- Data Ownership: Logs detailed cycle data to SQLite (no license fees).
- Traceability: Records Serial Numbers, Test Results, and Timestamps for every cycle.
- Reporting: Generates automatic Shift Reports (PDF/Excel) for management.
- Clean single-page industrial UI.
- Large touch-friendly controls.
- Real-time machine status & PLC communication indicator.
- OK / NG job counting.
- Yield Percentage calculation (Live OEE tracking).
- Multi-cavity leak test value visualization.
- Real-time pressure trend graphs using
QtCharts. - Historical performance monitoring for Quality Control.
- SQLite Database: Stores date/time stamped records.
- Alarm Management: Logs safety bypass alerts and machine faults.
- PDF Export: Generates professional shift reports.
- Excel/CSV Export: Raw data export for external analysis.
- Python 3.10+
- Windows OS (Recommended)
-
Clone the repository:
git clone [https://github.com/Abijith0/INDUSTRIAL_HMI.git](https://github.com/Abijith0/INDUSTRIAL_HMI.git) cd INDUSTRIAL_HMI -
Install dependencies:
pip install PySide6
-
Run the application:
python MAIN.PY
(Note: The application includes a Simulation Mode, so it will generate dummy data even without a PLC connected.)
Abijith Harishkumar Automation Engineer | IIoT & Python Developer
Focused on bridging the gap between OT (Operational Technology) and IT by combining PLC systems with modern software architecture.
graph TD
PLC["PLC / Controller"] -->|"Modbus TCP / OPC UA"| HMI["Python HMI (PySide6)"]
HMI -->|"Log Data"| DB[("SQLite Database")]
HMI -->|"Visualize"| UI["Operator Dashboard"]
HMI -->|"Generate"| RPT["PDF & Excel Reports"]


