Skip to content
Mohamed Rizwan
All projects

04 / 2023 to May 2024/ University of New Haven

Autonomous Mobile Robot

A guide robot for visually impaired users has to avoid obstacles on its own, and the learning has to run on the microcontroller rather than a laptop.

Role
Built the robot hardware in the first semester, then wrote the Arduino Q-learning and epsilon-greedy implementation when the project became a team of three.
Stack
C++, Arduino, Q-Learning, MATLAB, HIL
Context
University of New Haven
Obstacle run in the corridor, learned policy driving
The four-wheeled autonomous mobile robot with ultrasonic sensor on a floor
Fig. 02The robot
01

What I built

  • 01Semester one: the robot itself. Wiring harness, HC-SR04 ultrasonic sensing and L293D H-bridge PWM motor drives, assembled by hand.
  • 02Semester two: reinforcement learning on that same hardware, as a team of three. I implemented Q-learning with epsilon-greedy and greedy action selection in Arduino C++, including the reward function, state representation and action space, and trained the policy to follow the optimal path.
  • 03The target application was a guide and companion robot for visually impaired users, with obstacle avoidance and navigation.
02

Hardware

  • 01Arduino (AVR/ARM)
  • 02HC-SR04 ultrasonic sensors
  • 03L293D H-bridge motor driver
  • 044-wheel chassis, external 12 V supply
03

Software

  • 01C++ on Arduino
  • 02Q-Learning, epsilon-greedy
  • 03MATLAB / Python simulation
04

Validation

  • 01Model-in-the-loop in MATLAB/Python across 100+ episodes, then hardware-in-the-loop, then on the robot.
  • 02Run in a corridor against real obstacles and to a marked goal, recorded on video.
  • 03Reproduced and root-caused sensor calibration, PWM timing and control-loop defects across 100+ hardware runs.
05

Results

  • 01Navigation stable and repeatable on the physical robot.
06

Characteristics

Autonomous Mobile Robot characteristics
ParameterValue
Learning methodQ-Learning, epsilon-greedy
Simulation episodes100+
Hardware trials100+
Motor driveL293D H-bridge, PWM
SensingHC-SR04 ultrasonic