Dojikko v2

Posted on 2018-07-08 at 21:00 in Videos by Robbi-985.

I’ve given my little robot a huge upgrade – she can now see the world properly! This video is just an introduction, and there’ll be a proper demonstration of her path-following abilities later.

[Watch in HD]

Her brain is now a Raspberry Pi instead of an Arduino, and she sees with an infrared camera (for better low-light performance) in greyscale, instead of just measuring the distance in front of her. This means she can now have a proper goal – instead of just moving towards walls and then turning, she can now drive along a path!

She uses a neural network to judge how quickly she should be driving and how to steer. Although she only sees at 128×64 resolution, this is a huge improvement! Currently, I’m still in the process of training her well (driving along paths with her recording the view and the controls that I’m giving her).

In a future video, I will also go into details of the circuitry, including the way that the Raspberry Pi can hold its own power on and only turn it off once it’s finished shutting down, because the only explanations for how to do this that I could find online required a ridiculous number of components and constantly leaked small amounts of power when turned off, which this way does not. Plus, this way only requires a relay, transistor and resistor.

Please forgive the inverted colours of the subtitles!

I only noticed this after I had subtitled the entire video, and there’s no easy way to batch-change this in the video editor. I tried using a hex editor to find/replace the colours, but to no avail… orz
I could pretend that it’s a throw-back to the time when I used the colours this way, but it was actually a mistake.

3 Responses to Dojikko v2

  1. Mahdarah says:

    Woah, this is amazing. How would one get started with something like this?

    • Robbi-985 says:

      Thank you! =D

      It really depends on what is the most important for you. If you want to make something which uses a neural network then I would strongly suggest that you start watching some videos to learn the concepts of those (Computerphile has a bunch), then start playing around with something like Keras and especially the example scripts it comes with. You’ll need to become familiar with the basics of Python (the programming language itself) first, though, so that you’re confident throwing basic things together.

      If the robotics part is more important then it would be much easier to use a microcontroller (like an Arduino, as Dojikko v1 used) than a Raspberry Pi (a full-blown computer running Linux), although an Arduino can’t run a complex neural network. Either way, you can look at a bunch of boards that you can stack on top of the Arduino or Pi to more-easily control things like motors or servos. Here is a great list of “hats” (Pi add-on boards), and you can find “shields” (Arduino add-on boards) here and here (under “Shields”).

      I hope this helps at least a little.

      • Mahdarah says:

        It did help! Thanks. I plan on getting an Arduino soon and experimenting with what it can do.

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>