Arduino Neural Network Robot Part 1: Prototype and Design

Arduino Neural Network Robot Part 1: Prototype and Design

Hi, this is Wayne again with a topic “Arduino Neural Network Robot Part 1: Prototype and Design”.
Hey everyone. My name is sean hodgins and i am a maker. I have my own youtube channel, which you can find in the link below where i make all sorts of cool, open source projects that involve custom circuit boards. Robotics mechanical systems – you name it so this week’s going to be a little bit different than the videos on my channel. I’M going to be doing a detailed process on designing your own arduino based robot, but not just any robot.

This robot’s going to run on a neural network. It’S going to be pretty cool, i’m going to go through the design, steps of prototyping, making the circuit board and the schematics ordering it and then assembling it and then finally, we’ll program. It you’ll see all the steps and hopefully you’ll be able to make your own at the end. So with that said, let’s gather up some components and let’s get started okay, so these are the basic components we need to get the robot kind of tested beforehand before we start making any schematics, you want to make sure that the payouts are going to work.

Arduino Neural Network Robot Part 1: Prototype and Design

You know, even though you can read the documentation, you just want to make sure that everything’s going to work before you start making the circuit board, so you’ve got uh an arduino. This is actually um a samd21 spark fun board. This is the microcontroller that i like to use. These are some uh photo resistors for detecting the light two motors we’ll probably only have to test one.

Arduino Neural Network Robot Part 1: Prototype and Design

This is a motor driver, uh, it’s the drv8835. I believe this little board from polulu. Of course, the battery wheels and i may put an oled screen on it, so it will display some information when the robot is doing things.

So i’m going to connect all this stuff to a breadboard and then we can kind of test it out before you know. We make any schematics and when we’re making the schematics, we can refer to this, and we can also change some pins if it makes it easier to connect them you’ll see later on when we’re working on it. Okay, now that i have all the jumpers connected to the arduino and to the components, i just need to write a quick arduino program and test out everything and make sure that it all works.

So writing programs like this, can be really helpful for later on. You can define all your pin outs and you can test them out and you can save all those for when you’re designing the program later on. You can just copy and paste them over. It’S especially helpful if you’re working with motors, because sometimes microcontrollers, especially using um like arduino, you could have pins that behave weirdly in certain situations like when you plug it in, and you don’t want the motors to spin when you first plug it in you only want Them to react when the program tells them to so. This is a time when you can test all that. So i wrote a simple program that just tests all the photo cells and the motor driver, and then it also displays it to the oled display.

So each one of the photo cells outputs how much light they’re seeing on the oled screen and then the motor is controlled by this one here and it will speed up and slow down depending on how much light we have so now i can see that everything Works, i can go on and i can transfer this physical schematic into an actual one in key cad and i’ll. Show you how to do that. So the nice thing about using you know that module like the motor driver from polulu and the sparkfun board is that they have their schematics available. That means you can integrate them into your own, even though palouse is just a pdf and sparkfun is in eagle, not keycad, you can still use them to reference and you can use them to create your own schematics.

You don’t have to go digging through the documentation for say that motor driver just to see how it needs to be set up, because you can kind of copy what others have done already, and you know that it works and you’ve also tested it. That’S the point of these boards and arduinos, and everything is that you can test your designs before you make your own custom circuit board so now that the schematics are done and we’re about to begin designing, the actual pcb and the traces and doing all that stuff. I like to design the board in some cad software first and lay out some of the things like the motors where the screen is going to be where the buttons are going to be and the actual outline of the circuit board. The reason for this is it makes it a lot easier to import the board outline into keycad. If you have a dxf file of it already and a lot of cad software.

Most cad software allows you to export dxfs now, when you first open up keycad to start the pcb design process, i import the dxf file and then from there. I then import all the components which, when you first open, it’s going to be a big mess of wires. So the first thing i like to do is separate the components into the groups of things they’re connected to so the capacitors that are connected to the microcontroller or the group of things that is involved with charging the battery or the photoresistors with their resistor.

I like to separate them all so that they’re isolated, so that you can kind of create smaller type packages of components before you actually place them on the board. You’Ll probably have to move them around, but this is the way i do it just start off. Once i have pretty much all the components on the board, then i will start to wrote the components that are the most sensitive and require the direct line of communication. So say the oled display um, you know the clock line or something like that.

You don’t want interference on those because it could mess with it. It’S really unlikely and you could probably just write them. However, you want, but that’s just the way i do it. I just gives myself a starting point so and generally the last thing i do is the power lines. If you take your time, work away at it and slowly you get everything on will be good to settle the traces and then we’ll be able to send this board design off to some pcb manufacturing place and we’ll go from there all right.

So the design is done. That’S step one to this whole thing, so i’m gon na send this off to a pcb manufacturer and we should get it back in maybe a week or so we’ll continue on. So one of the things i like to do after i finish it is load it up, which keycad has a mode called 3d viewer which lets you view the pcb in 3d, and this lets me know if some components are going to be weird to install or Things are going to bump into each other. Just gives you another viewpoint of what the board could look like when it’s finished. It’S really helpful.

So with that, that’s part one down we’ll get these boards we’ll get the components put it all together and we’ll have our assembled robot next article. So stay tuned, subscribe check out my channel and maybe you’ll see some things you like there and yeah everyone be good and have a good night. You .