Introduction: Line Follower Robot (PICTO 92)
Since a lot of our followers asked for a tutorial to guide them to make a basic Robot we decided to provide this instructable that describe a step by step making of LINE FOLLOWER Robot,so you will find all the necessary software and hardware parts to make your own Robot following these steps
Note: In this project the main part which is the PCB design was made using EasyEDA Platform, so refer to the PCB MAKING section to learn more about this step.
A Robot is any machine which is completely automatic, it starts on its own, decides its own way of work, stops on its own it is a system that contains sensors, control systems, manipulators, power supplies and software all working together to perform a task automatically with speed and precision. There are as many different types of robots as there are tasks for them to perform.
Any robot has these essential characteristics: Sensing, Movement, Energy and Intelligence.
Step 1: What Is a Line Follower Robot?
Well this is a short introduction about the mean purpose or let’s say a general description of the robot.
Named line follower robot simply because it follows the black track that you design for it so we need two DC motors to make it move and for sure some sensors like the IR transceiver to detect the line and follow it, without forgetting the processing unit which is an Arduino Nano in our project but you can use other microcontrollers to be able to drive the wheels depending on the sensors signals and to do so, we need an L293 motor driver which allows us to control the direction and the speed of DC motors. So if you want to make the robot turn left you should slow down the left motor and speed up the right motor, the opposed case for turning right and keep both motors running at the same speed for straight movement.
But how to find the black line!
To make the robot follow the line, IR sensors are employed with the fact that black surface absorbs light and white surface reflects light. The sensors are mounted on left front end and right front end of the robot keeping the black line lies in between them until sensors are getting the reflected light, the comparator sends logic 1 to the microcontroller and the microcontroller in turn switches ON the motor associated with the sensor and when any of the sensors comes up on the black line the microcontroller stops the motor associated with that sensors and make the robot turn in the direction of the black line.
When the robot reaches end point and both the sensors are getting black surface, robot stops.
Step 2: Design of the Mechanism
A Robot should have a structure to hold the electronic parts so we did some software design for the robot I mean the robot mechanism and to do this I used SolidWorks software to make the upper base and the lower base for the robot so you can find and I provided the (.dxf) files if you want to make some CNC laser cutting and produce your own mechanism.
Step 3: The PCB Design Using EasyEDA Platform
EasyEDA is a free online Electronic design automation community that allows the creation, testing and editing of schematics and PCBs.
Find the link to the easyEDA platform here.
This online program is supported in all platforms even android, with easyEDA you can make a Schematic Capture for your documents, Circuit Simulation, Online PCB Designing with the ability of importing PCB and Schematic files, so from this point we can understand that we can create the PCB in this online designer or just make it with another software and upload a gerber file to easyEDA to place an order.
How to design the PCB and order it!
As usual we need to run the easyEDA platform from here, then start a new project and import the necessary components like Arduino Nano, L293 motor driver the header connectors etc and connect them together to make the circuit showed in the picture, after that just click on convert project to PCB then you will get your PCB design area.
I advise you to click directly the following link the PCB automatically:Direct link for Line follower Robot project
You can also check the PCB before ordering it using the PCB viewer, and I provided a picture that shows the PCB that we designed.
After finishing the design, go to fabrication output and set some parameters, for me I prefer the black color for my PCB. Do the payment and wait for the delivery.
Five days later I’ve got my PCBs and it is really awesome with the black color the circular shape the name of our robot PICTO92 and all the tags that I’ve made, actually this is not the first time the easyEDA impress me this high quality making was expected.
Step 4: Reviewing the Components
In order to make this project you will need the following components:
Step 5: The Assemble
All what you need know is to solder the components to the PCB and complet the circuit as showed in the picture. We provided some Labels on the PCB to guide while soldering the components.
After that, use the screws to attach the DC motors and IR sensors to plexiglass structure and some jumper wires will help you to connect the sensors and motors to your PCB through header connectors.
As showed in the pictures, the Blue LED indicates the power supply presence and two Red LEDs placed in both sides to indicate motor power supply presence.
Step 6: The Code and Validation Test
After assembling the robot, the last part is the source code to control the Robot and make it follow the tracks the you design for it, and in order to make your assignment much more easier, we made the code for you and as you can see in the picture the code is well commented and full of guidance to allow you adapting it to suite your needs, so you can modify it depending on your Robot structure and technology. you can download the source code from here.
I made a black track to test the robot; As you can see in the pictures the robot reached the finish line successfully so we can say that we made it. Our robot showed a great behavior while moving and turns in both direction while following the track with no problem.
That is it for this instructable, feel free to thumb it and to ask us anything you want to know about this project through a comment.
Participated in the
Microcontroller Contest 2017