Autonomous line-following robot built around the PIC24 microcontroller with a custom-designed PCB. Uses an IR reflectance sensor array for line detection and a PD control algorithm for smooth, accurate path tracking. Demonstrates end-to-end embedded system design from schematic capture through PCB fabrication to firmware.
PIC24 provides hardware PWM, ADC with DMA, and configurable peripherals in a lower-power package. Demonstrates proficiency beyond the Arduino ecosystem with direct register-level programming via MPLAB X.
Multiple IR LED/phototransistor pairs arranged in a line. Each sensor outputs an analog voltage proportional to surface reflectance. ADC readings are thresholded to create a binary line position map.
Proportional-Derivative control computes motor differential from line position error. P term responds to current offset; D term damps oscillation on curves. Tuned for the specific track geometry.
End-to-end board design: schematic capture, component footprint creation, PCB layout with proper ground planes, and fabrication. Integrates MCU, motor driver, sensor headers, and power regulation on a single board.
| Component | Technology | Purpose |
|---|---|---|
| MCU | PIC24FJ128GA010 | 16-bit microcontroller, 32 MHz |
| Sensors | QRE1113 IR Array | Line detection via reflectance |
| Motor Driver | L298N / DRV8833 | DC motor H-bridge control |
| Motors | N20 Gear Motors | Drive and steering |
| PCB Design | KiCad / Eagle | Schematic + layout + fabrication |
| IDE | MPLAB X + XC16 | PIC24 firmware development |
| Power | LiPo Battery + Regulator | Onboard power supply |