Yaakulya Final Project Idea

Project Title: Interactive LineBot

Why a robot?
From childhood I’m always fascinated by robots. The inspiration for this project stems from a desire to create an engaging and interactive robotics experience just like Wall-E and DUM-E from Pixar and Marvel movies. I believe this project seeks to merge the worlds of hardware and software in a fun and accessible manner.

Objective: The objective of the Interactive LineBot project is to build a robot capable of autonomously following a black line on a white surface. By integrating an interactive p5.js interface, users can draw custom paths for the robot to navigate, providing a hands-on experience in robotics and programming. The project aims to foster curiosity, experimentation, and learning while exploring the principles of robotics, sensor integration, and graphical user interfaces.

Hardware Components:

1) Arduino board
2) Infrared (IR) sensors (typically two or more)
3) Motor driver
4) Motors and wheels for the robot chassis
5) Breadboard and jumper wires
6) Battery pack or power source

Steps I would like to proceed:

Building the Robot: Assemble the robot chassis and mount the motors, wheels, and IR sensors. Connect the IR sensors to the Arduino board and position them close to the ground in front of the robot. Connect the motors to the motor driver or shield, which will be controlled by the Arduino.

Programming: Write a program in the Arduino IDE to read data from the IR sensors and control the motors to follow the line. Implement logic or algorithms to interpret sensor readings and adjust motor speeds accordingly. Upload the Arduino code to the board and fine-tune parameters for optimal line following.

Creating the p5.js Interface: Develop a graphical user interface using p5.js where users can interactively draw custom lines representing the robot’s path. Implement functions to handle user input, such as mouse clicks or dragging, to draw lines on the canvas. Provide visual feedback to users as they draw lines and interact with the interface.

Integration: Establish communication between the Arduino board and the p5.js interface, typically via serial communication. Send commands from the p5.js interface to the Arduino to control the robot’s movements based on user-drawn trajectories.

 

(In a game it can be used to solve a maze)

Leave a Reply