Neural Network Robot With Arduino

Sdílet
Vložit
  • čas přidán 30. 05. 2024
  • Get your own ORP chassis and support the project: kck.st/3HF9Pyz
    Running artificial neural networks on Arduino is not a simple task but machine learning is so popular nowadays and can be used for so many cool things that I decided to give it a try! Here you can see my experiments with neural networks and Arduino!
    LCSC Electronics: lcsc.com/?href=nikodembartnik...
    Arduino kit: amzn.to/3Si1zLt
    Ultrasonic Sensor: amzn.to/3rXlPaJ
    Servo: amzn.to/3tNZFbm
    Arduino: amzn.to/49bLjBV
    Motor: amzn.to/40cXv14
    Artificial Neural Network code: bit.ly/2gteKFk
    Sean's video: • Arduino Neural Network...
    My gear:
    Camera: amzn.to/3VdbfGH
    Lens: amzn.to/44nY2z0
    Better lens: amzn.to/424iuCX
    Tripod: amzn.to/3Nh2Cca
    3D printer: bit.ly/43SS7S5
    Label printer: amzn.to/3oW55yn
    Headphones: amzn.to/3LDTXz6
    Speakers: amzn.to/3nl34eJ
    Oscilloscope: amzn.to/3HmGMjN
    Lab bench power supply: amzn.to/3HpotdD
    Soldering station: amzn.to/3Vd39xH
    Instagram: nikodembartnik
    #robot #arduino #neuralnetwork
  • Věda a technologie

Komentáře • 239

  • @nikodembartnik
    @nikodembartnik  Před 4 lety +11

    Support my projects on Patreon → www.patreon.com/nikodembartnik

    • @NitishYadav-lb7zc
      @NitishYadav-lb7zc Před 4 lety

      Please make more content of that kind 😊😊😊😊😊😊
      THATS AMAZING at least for me

    • @TechBots_yt
      @TechBots_yt Před 3 lety

      Can you see my project one time🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻🙏🏻😥😥😥😥😓

    • @shawnekuriakose
      @shawnekuriakose Před 3 lety +5

      where is the github code

    • @invonatormoustaphaalihssai2114
      @invonatormoustaphaalihssai2114 Před 3 lety

      Pleas expriment code

    • @vrankyrule
      @vrankyrule Před 3 lety

      How much ram does this have??

  • @shaur1221
    @shaur1221 Před 4 lety +143

    And here I am just trying my best to make a blinking led

  • @inferno6012
    @inferno6012 Před 4 lety +122

    the first test did not work because it was scared first time in the world you know

  • @potbot887
    @potbot887 Před 3 lety +16

    In case you want to extend this project, I have few suggestions:
    Use Webots simulator to simulate your robot, that way you can train the neural net and see the output on your computer itself and try out various environment tests, before running it on actual robot itself.
    second, if your neural network works differently the next time you train it, use fixed set of initial weights, typically done by using "random seed" or just save the initial weights in a file and load it again the next time you train.

  • @Pmc07AyeUrDa
    @Pmc07AyeUrDa Před 4 lety

    Very good. The working montages added extra quality to the video.

  • @dbs777229f
    @dbs777229f Před 4 lety +43

    I love to see the fails, it makes me feel better about my issues.

  • @danimaster6647
    @danimaster6647 Před 4 lety +13

    Hey Nikodem,
    since you were speaking about something with more computing power and mentioned the RasPi: There is the Corel Dev Board available. This has a tensor processing unit and this makes it very powerful for neural networks. It runs models about 25 times faster then on a good CPU and costs about 150 Euro.
    This might be worth checking out for you, you can even do object detection/classification and other CNN stuff.
    Best regards

  • @realVertiqo
    @realVertiqo Před 4 lety +6

    Wanted to say that a couple times already but always forgot in the end. Your Cardboard Explanations are top notch Dude! Very very well made and easy to understand for younger folks especially i think.

    • @nikodembartnik
      @nikodembartnik  Před 4 lety

      Thanks, those take a lot of work to make them, but outcome is amazing!

    • @ValleyMustang
      @ValleyMustang Před 3 lety

      Can somebody show me what you guys mean by these cardboard explanations

    • @realVertiqo
      @realVertiqo Před 3 lety +1

      @@ValleyMustang The way he explains stuff with cardboard cut outs and scribbles on it style. for example minute 0:50 onwards.

    • @farhanamin4075
      @farhanamin4075 Před 2 lety

      Bro do you know where is schematics

  • @drakethomas652
    @drakethomas652 Před 3 lety +7

    Just a suggestion for the sensor, I think you should try out a lidar or laser sensor, since at a certain angle, the ultrasonic sensor tends to send back false data.

  • @maciekm7953
    @maciekm7953 Před 4 lety +3

    Ciekawy projekt 👍 siedzi się godzinami i walczy z problemami ale jak w końcu zadziała to jaka radość 😁

  • @bassome3000ify
    @bassome3000ify Před 4 lety +2

    Really cool and awesome 👍👌💪
    1-train the neural network on your computer, then copy its weights to Arduino (train in computer, implement in Arduino)
    2-check neurona library, on the developer's website there's a browser based playground

  • @flingmonkey5494
    @flingmonkey5494 Před 3 lety +2

    I have had trouble with the ultrasonic sensors, I sometimes get bogus short readings from them, due to the wide detection cone and echos from the floor itself. I started experimenting with taking three readings and accepting the highest value I got. This smoothed things out. Also, I suggest you make the robot move a little slower, allowing more time to take the readings.
    One challenge I would love to take would be to take the basic car you have there, rip off the ultrasonic sensor, throw in a gyroscope, and make it accept commands like "turn to x degrees" and "forward", and so on. These commands would be coming from a second Arduino that controls all the sensors (SoftwareSerial communications.) Once you have a base driveable vehicle that can drive a straight line and turn to any heading, construct another Arduino or RPi system that senses the surroundings and issues commands to the drive system.

  • @owenoj
    @owenoj Před 4 lety +1

    I've built basically the same thing, the only difference is, is I let the sensor take a reading from left and right then position the sensor forward, which is its default position and determine which direction to move towards where the object is farthest away. When it detects it's getting close, it stops, looks left and right and does the same thing again. Therefore the sensor is always looking forward whilst moving, and only looking left and right when it's stopped which is when it's gotten too close to something.

  • @omarcruz6326
    @omarcruz6326 Před rokem

    That's VERY COOL !!! 😎
    Great job, Sir.

  • @romeshfernando2959
    @romeshfernando2959 Před 3 lety

    Use three ultrasonic sensors because you can get three inputs(distances) at the same time. As an example , if it takes one second to get distance of one side, in your robot it will take three seconds for three sides. but when you use three sensors it will take one second for all three sides. I have ddeveloped one and I used three sensors + back sensor . It is working fine

  • @rodlupanow69
    @rodlupanow69 Před 4 lety +1

    Just great, congrats. I want to try it too.

  • @Pedritox0953
    @Pedritox0953 Před 4 lety

    Niko this is an excellent project... the trainning in NN is very sloooow in general... also i recomend to use supervised learning... what is that? Simulate the input and output of the NN to train the weights... another recommendation is that for sensors fix is better due to noise... place them like 30 degrees... simulate input and output as desired... train the NN... Enjoy!! Cheers

  • @go_better
    @go_better Před 3 lety

    Very interesting episode! Thanks!

  • @NachiketaHebbar
    @NachiketaHebbar Před 4 lety +1

    Great Job, Loved the experiment! The only reason for it not working with great accuracy could be a small dataset, which is the backbone of a neural network.
    Increase the data set by simply providing left, right , center values and which direction the bot should move ,in a csv file.
    However that seems unnecessary here, as the problem can be solved with simple if else statements .
    Nevertheless , nice video. Best of luck !

  • @supermodernotv
    @supermodernotv Před 4 lety +5

    Good job, keep making cool videos

  • @ernknn
    @ernknn Před 4 lety

    I really like your content. Can you tell me what kind of battery you used for the car? Also, what kind of DC bench power supply are you using? Thanks!

  • @imiebaka
    @imiebaka Před 4 lety

    Keep it up lad, Nice video
    ...

  • @mikegLXIVMM
    @mikegLXIVMM Před 3 lety

    Great work!

  • @joseiltonricardo
    @joseiltonricardo Před 2 lety

    Você é muito novo, com toda certeza terá muito tempo para implementar suas ideias em redes neurais.. Parabéns pelo vídeo!!!

  • @entiretwix1480
    @entiretwix1480 Před 4 lety +4

    I had a dream about this, then today it was in my recommended

  • @joetke
    @joetke Před 4 lety

    When I first saw the title vs. the video length I was perplex: talking about neural networks in 10 minutes... On top of it you use arduino.. hummm. That should be a big challenge I thought. Then you made a pretty good demonstration of a good methodology, embedding that library and eventually seeking a better one which led you to an almost success. Congrats!
    I'm happy as well because your background matches mine regarding serious coding backed by some maths. Looks like Poland takes advantage of its past ties with the USSR and their scientific education which relies heavily on maths. (Obama said that american students lack that solid basis). Anyway, We've implemented on a RaspberryPi 3B a machine learning using google tensorflow (there are decent tutorials about it on youtube for those in a hurry, and google provides straight-forward applications too). It works flawlessly and we intend to build a robot like yours. I do think that it's pretty hard to dive into details when it comes to explain neural networks to a large audience. It could be really boring for some people ;) Your animation may help
    Last word: 10 minutes to explain what you've really done to make your robot respond properly, is really, really too short. It may frustrate some of us. It's a pity. But I'm looking forward to watching better documented AI applications at a slower pace ;) Thank you Nikodem!

    • @nikodembartnik
      @nikodembartnik  Před 4 lety +2

      I try to keep my videos rather short and entertaining :) I know sometimes it's hard to explain stuff really well in 10 minutes, but if you want perfect explanation of NN there is already a lot of great videos on youtube about that. I also don't know enough about them to make such video :)

    • @joetke
      @joetke Před 4 lety

      @@nikodembartnik you're a honest guy.

  • @TheTinkerDad
    @TheTinkerDad Před 4 lety +4

    Ok, this is really cool. Never thought something like a neural network is possible on a low power device like an Arduino.

    • @frankai.3713
      @frankai.3713 Před 4 lety

      Running a trained net is not a big deal

  • @parthjoshi5779
    @parthjoshi5779 Před 4 lety +8

    5:58 to 6:22
    perfect MacBook air advertisement
    maybe

  • @Guilherme-uu8ql
    @Guilherme-uu8ql Před 4 lety +1

    "Could be done with an if statement", " the problem is that the robot is on" hahaha very funny, nice content

  • @TanishqIsHere
    @TanishqIsHere Před 4 lety +7

    A Pi-Zero would be a much better option for this, have a look at Sipeed MAIX too.

  • @bitnbytes01
    @bitnbytes01 Před 2 lety

    Awesome video but my spidy senses were detecting misaligned picture frames in the background but I like that :), chaos is needed in this line of work. I will definitely try this AI robot kit out. Good project.

  • @xianox8
    @xianox8 Před 3 lety

    Is it even viable to train a NN in this way (without it taking for ages)? I'm convinced that it is the processing power that is limiting you, but it is that you do it in real time. What I would attempt to do is to make a computer simlation of the car movement and sensors and train that simulated car.

  • @peyo33641
    @peyo33641 Před 3 lety

    Hum but with which training data do you train your model ?

  • @ahmadkafabi1266
    @ahmadkafabi1266 Před 3 lety

    where can i get full program with execution hardware output arduino ex. go turn right ,left ect. because your code program just to training NN weight data

  • @DanyMaster
    @DanyMaster Před 3 lety

    Of course this experiment could be better if you use other platform, but you've used Arduino (understanding this limitations) I think the result is very cool... Well done mate!!

  • @vighneshkrishna1716
    @vighneshkrishna1716 Před 4 lety +4

    Bro , is it possible to get your mail or any other source to contact you. I got a great project in my mind but actually i’m stuck at a point.

  • @thorzhou4468
    @thorzhou4468 Před 4 lety +1

    Great job! Is this project open source, where can I see the source code?

  • @VeerDaVlog
    @VeerDaVlog Před 3 lety +1

    7:11 - How did you shoot timelapse like this?

  • @navanda4676
    @navanda4676 Před 4 lety

    Here is and idea.
    If you make a game that are a virtual representation of the "car". Then you can an random generated "labyrinth" and put a neural network in multiple cars and use an Genetic Algorithm instead.
    That makes it faster to lean and you don't have to monitory it. Plus you make the genetic algorithm a powerful computer instead off the arduino. Like a said just an i idea, really liked it video.
    Keep it up!

  • @tthtlc
    @tthtlc Před 4 lety +7

    Good video, now I am motivated to do something.....

  • @erumanbredberry9238
    @erumanbredberry9238 Před 4 lety +1

    Молодчина, Никодим )

  • @lucsonnelson8037
    @lucsonnelson8037 Před rokem

    Great video brother. Only thing is I wish that I could see hir you implemented the sensors and the motors in the sketch. Please I kinda want to build something similar with more sensors, but don't know how to link the NN in my project. Help 🙏🙏🙏

  • @valentinburillier9029
    @valentinburillier9029 Před 4 lety +1

    Good job, it's an interesting video. In order for your robot to learn you will have to integrate Q-learninge and not base you on a dataset. Your robot will learn with a system of reward

  • @peterjamali772
    @peterjamali772 Před 4 lety

    For Ai which programming language should i start with?

  • @noa7784
    @noa7784 Před 3 lety

    Hello, I really needs some help in path planning. I do hope you can help me. I have the same prototype as you had. Only is that I have to implement path planning with obstacle avoidance.

  • @shivambansal3560
    @shivambansal3560 Před 4 lety

    Well done buddy..!!!

  • @chathurafernando1299
    @chathurafernando1299 Před 4 lety

    Great work mate but you should minimize the speed of motors and servo. And next time use the " interrupt ". It's more easier.

  • @NitishYadav-lb7zc
    @NitishYadav-lb7zc Před 4 lety +1

    Please create more robots of that kind 😊😊😊😊

  • @hanifhendri4174
    @hanifhendri4174 Před 4 lety

    What software you use for code block arduino?

  • @kreisumfang6175
    @kreisumfang6175 Před 4 lety +5

    Agradable, me gustaría ver proyectos similares con Arduino y explicados a nivel de código, gracias.

  • @sarabhian2270
    @sarabhian2270 Před 2 lety

    so finally I got something to do 👀, what I will do now is , I have same ultrasonic sensor and something similar moving bot, i will try something new ,thanks buddy 👍

  • @tharakadimantha1043
    @tharakadimantha1043 Před 3 lety

    good job brother.Thanak you

  • @virtual_ninja810
    @virtual_ninja810 Před 4 lety

    Did you won any competition on instructables?

  • @DIVERGEsound
    @DIVERGEsound Před 4 lety

    Nice video!

  • @ramyak1486
    @ramyak1486 Před 3 lety

    Where can I get the modified code?

  • @mohammadwahba3077
    @mohammadwahba3077 Před 4 lety

    good job and idea

  • @gordonyoud5975
    @gordonyoud5975 Před 4 lety +1

    Slow down the sensor swing, if it is looking for a return signal after sending out a pulse, the echo might be missed. :-))

  • @mateuszspec1658
    @mateuszspec1658 Před 4 lety +1

    Po akcencie poznałem że to Polska XD
    Pozdrawiam, mega robocik :D

  • @alanarturopinedasegura3373

    greatings
    from mexico

  • @pedropabloantunezgomez7408

    Could you please share the code modified? I am very interested in working with it with my students but cannot finish the project.Thanks and good job

  • @code-grammardude5974
    @code-grammardude5974 Před 4 lety +2

    I am currently making a Raspberry pi robot and I have a webcam on it. It is convenient because you can use great Python libraries like Tensorflow and Keras to make Neural Networks.

    • @joetke
      @joetke Před 4 lety

      I've posted a comment without reading yours. Tensorflow + Keras wrapped in python = terrific combo

    • @supermodernotv
      @supermodernotv Před 4 lety

      The nice thing of this approach is the you get to learn how those NNs work starting from scratch. All thise frameworks are great but they abrstract a lot of what is going on underneath. This project is great fro learning the basics a bit like when you blink an LED to learn the basics of microcontrollers

  • @elasticheartchandelier4249

    hey may u tell me about that How To insert coding in robort??

  • @jay-rathod-01
    @jay-rathod-01 Před 4 lety

    Beautiful

  • @DevineIshaq107
    @DevineIshaq107 Před 3 lety

    Don't need AI for such operations, 8 direction functions, 3 range finders with comparison operators: the bot will pave through obstacles and can be trained fo pass through a gate

  • @muhamadekanugraha6882
    @muhamadekanugraha6882 Před 4 lety

    That robot was like my life without a purpouse, and being told just don't make a mistake.

  • @herok4306
    @herok4306 Před 4 lety +1

    Bro what's the background music...?

  • @goodn1051
    @goodn1051 Před 4 lety +1

    Am a simple man...
    I see NN,I click,I subscribe and I like

  • @swathikaravindran1942
    @swathikaravindran1942 Před 3 lety

    How the neural network algorithm to be inserted in to the arduino board

  • @farahsumudlayon7890
    @farahsumudlayon7890 Před 2 lety

    you're so good!

  • @aymansharaf7456
    @aymansharaf7456 Před 4 lety +2

    Can you give us the modified code!!

  • @anujpatil1931
    @anujpatil1931 Před 4 lety

    Can you also make a arduino program for data glasses

  • @oELxTOROo
    @oELxTOROo Před 4 lety +1

    It would be cool to see if you can get a simple machine learning program on a raspberry pi!

  • @emanuelepacini_
    @emanuelepacini_ Před 2 lety

    which pc do u have?

  • @arnabmandal1332
    @arnabmandal1332 Před 4 lety

    Good work buddy..

  • @camilaespindola2380
    @camilaespindola2380 Před 4 lety

    congratulation !!!

  • @NghiaHuynh-ir7bv
    @NghiaHuynh-ir7bv Před 4 lety

    I didn't realize how it get input and create output to control this robot, im just a beginer :D, could u explain it more clearly,plz?

  • @sajidahmed5079
    @sajidahmed5079 Před 2 lety

    Test out side of home...you r getting reflection from wall...so robot is rotating in all direction..or set range of detection of sensor

  • @ffoska
    @ffoska Před 4 lety

    Write the node weights to eeprom. Pretty cool project !

  • @snarrkk
    @snarrkk Před 4 lety +2

    That's cool but didnt roomba make this already?
    What I'm wondering is what benefit the neural network will have for it to determine to go forward or not

  • @Speedy0475
    @Speedy0475 Před 2 lety

    Dobra robota,no wiesz robot-a

  • @eUltrabyte
    @eUltrabyte Před 4 lety

    Dobry film ziomek

  • @kruttikabhomkar9850
    @kruttikabhomkar9850 Před rokem

    What can be the expense of this project

  • @farhanamin4075
    @farhanamin4075 Před 2 lety

    Can anybody help me understand the concept of neural network being applied on Obstacle Avoidance robot

  • @naskoelectronics9072
    @naskoelectronics9072 Před 4 lety +4

    The problem is not in the arduino he is enough powerful the problem is in the code

  • @Kanjox
    @Kanjox Před rokem +1

    awesome

  • @saravanakumar2765
    @saravanakumar2765 Před 4 lety

    I understand your feelings. Today I try to code color shorting machine from 12.30am to 8.00pm still I not succeed 😢.

  • @muhammadbasir83
    @muhammadbasir83 Před 3 lety

    I thought it was only me who put a piece of tape on the webcam. haha

  • @li-pingho1441
    @li-pingho1441 Před 4 lety

    You are my hero...

  • @esdrasalbino
    @esdrasalbino Před rokem +1

    Can you provide the code?

  • @damiancyrana7229
    @damiancyrana7229 Před 4 lety

    co to za model drukarki masz na szafce?

  • @sarojverma6299
    @sarojverma6299 Před 3 lety

    Make sensors in 8 sides and increase their range and it will be perfect also slow the speed

  • @kinhkong69z62
    @kinhkong69z62 Před 2 lety

    So cool

  • @smipy
    @smipy Před 4 lety +2

    8:33 - 8:39
    Robot : Go Stupid...
    Go Crazy.....

  • @abhishek_sengupta
    @abhishek_sengupta Před 4 lety

    Thumbs up bro!

  • @advanceautomatedsystemsgmb9311

    At last you did Copy and Paste 😁

  • @arthuraraujo8190
    @arthuraraujo8190 Před 4 lety

    Just use 3 sensors, so it would not have any delay

  • @doktutor
    @doktutor Před rokem

    I want to ask, why chinese toy can do this thing without usng AI neural network?

  • @philippebenaim2676
    @philippebenaim2676 Před 2 lety

    Nice, but I can see that you don't wait enough time to take the distance with your ultra sonic sensor. So I think you have many errors of measurement...
    Try Vl53l0x, it's little laser in I2C, and is very fast and accurate 👍And you have many libraries for arduino 😋

  • @smallwhitebug7566
    @smallwhitebug7566 Před rokem

    wow cool 😮

  • @BuildEver
    @BuildEver Před 3 lety

    Dlaczego uczysz sieć korzystając z "wolnego" Arduino? Moim zdaniem taką sieć powinieneś wytrenować za pomocą swojego zdecydowanie szybszego komputera, a potem przenieść model sieci do arduino. Przykładem może być narzędzie Tensorflow Lite Arduino. Środowisko do obsługi takiej sieci, może dać średnie wyniki ze względu na małą ilość pamięci Arduino Uno, oraz wolny procesor, ale będą one zdecydowanie lepsze niż teraz. A przynajmniej szybciej zobaczysz efekt.
    Edit --
    Teraz zobaczyłem, że to filmik z przed roku