This project simulates a Smart Conveyor Monitoring and Control System using an ARM Cortex-M microcontroller.
It demonstrates key embedded system functionalities such as real-time speed measurement, PWM motor control, object detection, and emergency stop handling — all visualized through a 16x2 LCD display in Proteus.
- Simulates pulse signals using a Function Generator.
- Measures the time between two rising edges using Timer Input Capture mode.
- No interrupts are used for pulse edge detection.
- A potentiometer is connected to an ADC channel.
- The ADC value determines the PWM duty cycle to control the motor speed.
- The motor speed percentage is displayed on the LCD.
- Uses a simulated IR sensor as a digital input.
- Implements falling-edge detection in software (polling only; no interrupts).
- Each detected object increments the object counter, shown on the LCD.
- A push button simulates the emergency stop feature.
- The external interrupt detects button presses.
- When triggered:
- The motor stops immediately.
- LCD shows:
"EMERGENCY STOP".
- No debouncing is required.
- A 16x2 LCD displays:
- Conveyor Speed
- Motor Speed (PWM %)
- Object Count
- Emergency Status
| Component | Function |
|---|---|
| ARM Cortex-M Microcontroller | Main control and processing unit |
| Function Generator | Simulates conveyor speed pulses |
| Potentiometer | Controls motor speed (via ADC) |
| DC Motor | Conveyor motor simulation |
| IR Sensor | Object detection |
| Push Button | Emergency stop interrupt |
| 16x2 LCD | Display interface |
| Proteus | Simulation environment |
- Proteus project file (.pdsprj) with full system integration.
- C language, modular and well-documented.
- Implements ADC, PWM, Timer Capture, LCD, and Interrupt handling.
- Project overview
- System block diagram
- Explanation of each subsystem
- Simulation screenshots
WhatsApp.Video.2025-11-01.at.17.36.42_9f7dc34a.mp4
🎯 This demo showcases the full simulation in Proteus — including conveyor speed measurement, motor control, object detection, and emergency stop functionalities.
(Insert diagram image here if available)
[Function Generator] --> [Timer Capture] --> [Speed Calc] --> [LCD]
[Potentiometer] ----> [ADC] --> [PWM] --> [Motor]
[IR Sensor] --> [Polling Logic] --> [Object Counter] --> [LCD]
[Button] --> [EXT Interrupt] --> [Emergency Stop Handler]