An embedded predictive-maintenance prototype for monitoring a DC motor using current and vibration sensing, Raspberry Pi data processing, MQTT telemetry, basic computer-vision fault scoring, and automatic threshold-based shutdown.
The system combines an embedded sensor node with a Raspberry Pi 5 to collect motor-health data, log measurements, publish telemetry, and react to abnormal operating conditions. The project was built as a hands-on exploration of embedded sensing, IoT communication, condition monitoring, and experimental AI/control techniques.
- Current sensing using an ACS712 sensor
- Vibration sensing using an MPU6050 accelerometer
- Serial telemetry from the embedded sensor node to the Raspberry Pi
- OLED display of live current and vibration measurements
- Threshold-based motor shutdown and buzzer alert for abnormal conditions
- SQLite logging of sensor measurements on the Raspberry Pi
- MQTT publication of sensor data for networked monitoring
- OpenCV camera processing with a simple edge-based visual fault metric
- ESP32 Wi-Fi node support for distributed/networked sensing experiments
The repository also contains proof-of-concept work for more advanced predictive-maintenance functions, including:
- Reinforcement-learning-based motor control using PPO
- Machine-learning and TinyML experimentation
- Time-series prediction concepts for future fault forecasting
- Additional cloud/IoT and distributed-sensing ideas
These features should be treated as experimental prototypes rather than fully validated subsystems.
- Raspberry Pi 5
- Arduino Nano 33 BLE Sense / embedded sensor node
- ESP32
- ACS712 current sensor
- MPU6050 accelerometer
- TB6612FNG motor driver
- SSD1306 OLED display
- DC motor
- Camera
- Buzzer / relay-based shutdown hardware
- Arduino / C++
- Python
- MQTT / Mosquitto
- SQLite
- OpenCV
- Stable-Baselines3 / Gym for RL experiments
CurrentAudioVibration.ino- embedded sensing, OLED display, serial telemetry, and threshold shutdownsmart_motor.py- Raspberry Pi serial acquisition, SQLite logging, MQTT publishing, and camera fault scoringESP32WiFiNode.ino- ESP32 network-node experimentrl_motor.py- reinforcement-learning proof of concept for motor-speed controlSchematic.png- system schematicrequirements.txt- Python dependencies
The core sensing, telemetry, logging, MQTT, visual fault-scoring, and threshold-protection functions are represented in the repository. More advanced AI functions remain experimental and would require additional dataset collection, training, validation, and hardware testing before being considered production-ready.
- Embedded sensor interfacing
- Motor-health monitoring
- Serial communication
- MQTT / IoT telemetry
- Raspberry Pi integration
- Python data logging
- Basic computer vision
- Embedded fault detection and protective control
- Experimental reinforcement learning