DogHelper.bot — AI Guide Dog
DogHelper.bot is an autonomous robot guide dog for the visually impaired
Aadhithya
Eliza
Nithya
What is DogHelper.bot?
DogHelper.bot is a small autonomous robot car that leverages computer vision (CV) and machine learning to assist people with visual impairments in navigating their environment. DogHelper.bot achieves this by using a combination of object identification, depth estimination, and path planning to determine a safe path for the robot to follow.
AI Pipeline
DogHelper.bot's AI pipeline is designed to be simple and efficient enough to run on a Raspberry Pi. Using a combination of CV models, depth estimation models, and path planning algorithms, DogHelper.bot can identify safe paths for the robot to follow.
- Divide view into 5 columns
- Detect and identify objects in each columns
- Estimate distance to each object
- Assess the risk that each object poses to the robot
- Attempt to find a safe path for the robot to follow
- Control the robot's motors to follow the safe path
Features
- Object identification
- Depth estimation
- Path planning
- Autonomous navigation
- Risk assessment
- Emergency braking
What We Used
Technical Details
- YOLOv8 for object detection
- MiDaS for depth estimation
- DogHelper.bot's code was implemented in Python

A visualization of DogHelper.bot's depth estimation using a depth heat map
Hardware
- Raspberry Pi 5 w/ a case
- Battery Pack
- 4x AA Batteries
- L298N Motor Driver
- 2x TT DC Motors
- 2x Wheels
- 1 Caster Wheel
- RC Car Chassis
- Mini Breadboard
- Jumper Wires
- Camera
- Leash
Other Tools
- Electrical Tape
- Multimeter
- Screwdriver Kit
My Contributions
- Object detection & pathfinding enhancements
- Integrated Raspberry Pi 5 with L298N Motor Driver and TT DC Motors
- Wired and tested power delivery circuit
- Debugged motor control and power delivery issues using a Multimeter
- Assisted with hardware-software integration and debugging
Problems We Faced
Dead Battery Holder
When I was shopping for the parts we needed to build this project, I bought a pack of 4 AA batteries and a battery holder. When we were testing our robot at the hackathon, we found that power was not being delivered from our batteries to the motors. We were confused for a while until another team suggested we test continuity throughout our circuit using a multimeter. Eventually, we narrowed down the problem to a faulty battery holder which was likely messed up internally, preventing proper power delivery.
We were considering what our options were, eventually we tried to use a bubble tea straw to connect the four batteries in a series and found that it worked. Though this solution was janky, it allowed us to continue working on the project and served us well until the end of the hackathon.

Our makeshift battery holder using a bubble tea straw
Driving Issues
We faced one major problem when testing DogHelper.bot's ability to drive autonomously. We noticed that one of the motors seemed to be moving slower than the other despite both of the motors receiving the same speed. After some experimentation, we discovered that the issue stemmed from improper power delivery and connection with the motor driver board.