A line follower robot mounting a NUCLEO-F401RE/Raspberry PI to implement the Control System.
Ok, so having already prototyped the circuit to make sure it works as expected, I can move on to designing the printed circuit board. For this task as I commented on my previous blog, I will use Eagle CAD 7.5 which can be downloaded here Eagle CAD.
I believe using Eagle rather than Altium will help to make this project more accessible since it cost nothing as well as has a more friendly interface or so I was told. However the use of this software is completely new to me, so It´s very likely that I make mistakes whilst getting the hang of it, I will try to keep them on the log, so you can learn from them and save yourselves a good deal of pain...
ok so designing a pcb on Eagle as far as I´ve learned consists of two parts, designing the electrical circuit, and then transfer the design to the physical layout of the board.
Because of my previous exposure to software like Multisim from National Instruments, I found the schematic part quiet straightforward, having all the options you probably need for this design on the taskbar on the left side of the screen.
when it came to build the circuit, I found a very attractive feature of eagle, which is the amount of libraries available online for pretty much any component you might want for your circuit. For this circuit I needed the Tcrt-5000 sensor library file, it did not take me long to find it online and download it. I have upload the library which can be found on the files for this project. Once I had the file downloaded, I copied it into the lbr folder located at Eagle V7.5 folder at the C drive.
Once the file is located in the libraries folder, I opened eagle, open my schematic, select library at the top task bar, update, and select those files I wanted to update, in my case it was the tcrt-5000 sensor.
once I had the components I needed , I carried on with designing the schematic circuit, as I said previously I found building it quite straight forward. Once I had the circuit done I found out a very useful tool of eagle, which is the ERC function, This command is used to test schematics for electrical errors and I strongly advise you to use it, in my case I did not know at first that even existed so as soon as I was done with the schematic I moved on to create the board, it took me a while to figure out why some electrical connections were missing on the physical layout. this command lets you know where the problem is.
this tool gave me some errors that at first I thought they were fine, at first glance the connections seemed to be properly done, once again I learned a powerful tool from Eagle which rescued me from the problem! The command is named show and what it does it lights any connection you touch allowing you to see whether the connection is made from the beginning of a component to the end of the component the wire is supposed to join. if the pins of the components do not light something is wrong and most likely you will have to rewire it!
once I fixed those faulty connections my schematic was ready, so I moved on to the layout of the board part
on this part I noticed that the menu on the left changed slightly, including options more involved with the physical implementation of the printed circuit board. You do have an option named auto router which as the name suggests it routes the board for you, however I was advised no to do that for small PCB´s like this one, I learned after routing the PCB myself that you gain a greater insight as to how everything fits together if you try to route it yourself, otherwise it would not be a proper home-made PCB right??
I believe on this version we are only allowed to work with PCB´s containing only 2 layers, top and bottom (red layer and blue layer).
A couple of tips from my personal experience: The main advise i was given when populating the PCB before routing was: " make sure you wires don´t cross each other" so based on this You might have to come back to the schematic circuit to make slight changes which might look...Read more »
On this log I will go through the process to design a printed circuit board (Pcb) containing the Line sensor array circuit. It sounds pretty good, but do not worry too much about the cool name, at the beginning of my second year I did not know what it was ,or what it was used for.
A line sensor Array is simply a circuit which contains a number of photo-transistors sensors, which will be used to detect where the white line we intend to follow is. The photo-transistor sensor has two main components, a transmitter and a receiver, the transmitter is a LED (light emitting diode which emits infra-red light, and the receiver is a photo-transistor that it varies the resistance across the collector and emitter terminals as more light is reflected back into the base of the photo-transistor. We can use this principle to find out how close the sensor gets to the white surface or black, giving us a nice analogue reading going from almost 0 V when the sensor is on a black surface to almost Vcc volts when the sensor is on a white surface.
For the photo-transistor sensor to work correctly, it needs certain current going through the emitter, and also the receiver, this values can be looked on the datasheet. For my circuit I have chosen the sensor TCRT-500 for a number of reasons, perhaps the 2 more important ones are: the emitter and receiver comes already built in a package and secondly it comes with a daylight filter that blocks the day light being reflected on the white surface, making the sensor more robust to disturbances.
To find out more about this sensor and the current needed to make it work properly, you can have a look at the datasheet, TCRT5000 Datasheet for this project I have chosen resistors of 10 kilo ohms for the receiver branch and 100 ohms for the emitter branch, they should work quite nicely and give us good readings. I will also be using a high current Darlington-transistor buffer from Texas instruments Buffer, Datasheet. The reason for which I am using the buffer is mainly because I want to control when and which sensor is on (main reason being to save energy) to accomplish this the obvious first choice is to use a micro-controller and connect the sensor to one of the I/O pins of the micro, however this option is not really feasible since there is a limit as to how much current each pin of the micro-controller can outsource, for this reason I need to use the buffer on the circuit. since the buffer function is to provide a path to ground removing the need for the micro to outsource big currents. I try to make it easier to see how it works using my poor drawings skills!
Before moving into how I designed the PCB I built it first on MyDAQ (NI myDAQ is a low-cost data acquisition (DAQ) device that gives students the ability to measure and analyze live signals anywhere, anytime, provided by National Instruments) to check its correct behaviour.
As seen in the picture the sensor is mounted on a test rig which allowed to obtain different readings for different heights.
The schematic has been done on Multisim 12.0 from National Instruments.
The Layout drawing is made with DIY Layout creator and is above in case you need to follow the set up step by step.
So once I built it and got it to produce meaningful data, it was time to move on to produce a printed circuit board. During the first year we learned and used Altium Designer which is an industrial standard to design PCB´s, however on this project I decided to use Eagle Cad 7.5.0 as there is a free version available, hence more people would have access to it as well as my files for the pcb.
I´ll keep you posted! :)
Well I will start by introducing myself, my name is Raul and I´m a second year Mechatronic Engineering student at the University of Manchester. During second year I have been involved more heavily with the robotics society at the university, since I wanted to put in practice all the things I had been learning during lectures so far.
The society organise a competition to challenge the students to push their learning of robotics throughout the year. As it can be seen on the picture the competition primarily consists in building a UGV (Unmanned Ground Vehicle) or UAV (Unmanned Aerial Vehicle) which is able to navigate through different tracks or types of ground, to find and pick a red ball and take it to a predefined position. How we achieve this is up to us and our creativity…
To tackle the task, each student that joined the competition was given a set of hardware to begin with. In my case I was given a Rover5 chassis with 4 dc motors as well as 4 encoders and Arduino Nano.
I would like to share all the progress I make on this project on here. I only hope that I can share my experiences including any problems I encounter and how I (hopefully) fix them. I will be uploading all the progress as I go along and hopefully once I finish it, come back to it and edit any parts that can be further improved or made clearer.
I´ll keep you posted!!!