Making robots walk with Python

Video thumbnail (Frame 0) Video thumbnail (Frame 2567) Video thumbnail (Frame 3164) Video thumbnail (Frame 3816) Video thumbnail (Frame 4943) Video thumbnail (Frame 6438) Video thumbnail (Frame 8154) Video thumbnail (Frame 9157) Video thumbnail (Frame 9717) Video thumbnail (Frame 11797) Video thumbnail (Frame 12841) Video thumbnail (Frame 13401) Video thumbnail (Frame 14279) Video thumbnail (Frame 15146) Video thumbnail (Frame 15870) Video thumbnail (Frame 16888) Video thumbnail (Frame 17725) Video thumbnail (Frame 18513) Video thumbnail (Frame 19271) Video thumbnail (Frame 19898) Video thumbnail (Frame 21567) Video thumbnail (Frame 24112) Video thumbnail (Frame 25649) Video thumbnail (Frame 26284) Video thumbnail (Frame 27248) Video thumbnail (Frame 28273) Video thumbnail (Frame 29194) Video thumbnail (Frame 29762) Video thumbnail (Frame 30371) Video thumbnail (Frame 31210) Video thumbnail (Frame 32426) Video thumbnail (Frame 33047) Video thumbnail (Frame 33597) Video thumbnail (Frame 34250) Video thumbnail (Frame 35005) Video thumbnail (Frame 35750) Video thumbnail (Frame 36723) Video thumbnail (Frame 37493)
Video in TIB AV-Portal: Making robots walk with Python

Formal Metadata

Making robots walk with Python
Title of Series
Part Number
Number of Parts
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this license.
Release Date

Content Metadata

Subject Area
Radomir Dopieralski - Making robots walk with Python You will see several different walking robots controlled with Python in different ways, and learn how they were built and programmed. ----- Making a robot walk is not easy, especially when all it has for brains is a small microcontroller which you have to program in C. During this talk you will see different ways in which such a robot can be controlled in Python, either by using remote control, with the Python program running on a stationary computer, by putting a small computer, such as a Raspberry Pi on it, or by programming it with Micropython, a version of the Python language designed for microcontrollers. I will also explain the basic problems with walking robots and how Python can be used to overcome them. Finally, I will show some of the robots I have built.
Demon Red Hat Computer animation Robotics Image resolution Multiplication sign Gravitation Resultant
Computer animation Different (Kate Ryan album) Robotics Multiplication sign Moment (mathematics) Projective plane
Graph (mathematics) Computer animation Friction Different (Kate Ryan album) Robotics Surface Multiplication sign Instance (computer science) Form (programming)
Computer animation 1 (number)
Category of being Mathematics Arithmetic mean Computer animation Personal digital assistant Natural number Moment (mathematics) Morley's categoricity theorem Planning 6 (number) Quicksort Logic gate
Computer animation Multiplication sign Moment (mathematics) Connected space
Building Computer animation Diagonal Robotics BEEP Multiplication sign Electronic program guide Sampling (statistics) Rule of inference
Point (geometry) Computer animation Personal digital assistant Robotics Moment (mathematics) Video game Line (geometry)
Mathematics Computer animation Robotics Gravitation Rule of inference
Point (geometry) Logical constant Computer animation Multiplication sign Order (biology) Hydraulic motor Gravitation Water vapor Right angle
Rotation Point (geometry) Three-dimensional space Shape (magazine) Sphere Event horizon Computer programming Mathematics Computer animation Order (biology) Right angle Figurate number Form (programming) Spacetime
Goodness of fit Degrees of freedom (physics and chemistry) Computer animation Angle Kinematics Sampling (statistics) Inverse element Exception handling
Degrees of freedom (physics and chemistry) Computer animation
Computer animation Surface Kinematics
Degrees of freedom (physics and chemistry) Computer animation Angle Triangle Geometry Exception handling
Trail Computer animation Planning Right angle Line (geometry)
Game controller Code Multiplication sign Uniqueness quantification Source code Moment (mathematics) Set (mathematics) Instance (computer science) Open set Flow separation Graph coloring Computer programming Neuroinformatik Power (physics) Medical imaging Computer animation Oval Bus (computing) Right angle Endliche Modelltheorie Position operator
Game controller Lecture/Conference
Game controller Computer animation Robotics Multiplication sign 1 (number) Physical system
Computer animation Inheritance (object-oriented programming) Internetworking Symbol table Neuroinformatik
Greatest element Game controller Computer animation Plotter
Computer animation Traffic reporting
Server (computing) Distribution (mathematics) Computer animation Connectivity (graph theory) Instance (computer science)
Group action Service (economics) Computer animation Multiplication sign Execution unit Data center Physical system
Game controller Centralizer and normalizer Computer animation Robotics Microcontroller Instance (computer science) Mereology Reading (process)
Distribution (mathematics)
Computer animation Robotics Video game Whiteboard Information technology consulting
Medical imaging Pattern recognition Building Computer animation Multiplication sign Musical ensemble Open set Computer programming Library (computing) Number
Computer animation Network topology
Computer animation INTEGRAL Moment (mathematics) Function (mathematics)
Game controller Computer animation Endliche Modelltheorie Condition number
Implementation Building Group action Multiplication sign Open set Parameter (computer programming) Function (mathematics) Computer programming Robotics Damping Form (programming) Scripting language Domain name Collaborationism Algorithm Software developer Projective plane Physicalism Frame problem Word Process (computing) Computer animation Personal digital assistant Video game Library (computing) Spacetime
the so welcome back and let's welcome them you Belsky who will tell us about waiting gravity McRoberts walk with by the without without
the so I thought it would and now the resolution is different 1 moment sorry about that had to have a good so I started to play with robots and and are going and smaller crimes and stuff like that about 2 years ago and my my goal was to that some quorum of obviously I didn't I wasn't happy with their remote from we because they were too easy and then you know you build them and they are the walks and so now you start thinking what other interesting things you can do with them and the result is very hard to do anything interesting with them so I turns to walking robots because walking is a interesting and hot so by the time you get it to work you already have the hands and so it's already also right and you don't have to think matter about how to make them behaves in an intelligent way of and us of course you can same which would remove everything like the wants and so some of them are actually you look at if
you have any questions want to talk about the remote or about the entrance into of the microphone and this is my major I'm on 3 noble I see moment with their time on the back of the eye where all my projects that you can just with something it should be 1 or it's not very well that there were books and
building their walking robots not crawling uh the difference in when you walk you
and you put your full on the graph it stays in that place and to you leave them alone again pretty much in the same place may be rotated around 2
or something and when you crawled you actually dropped that's full sideways or behind you or sorry we've in direct your stomach behind you or whatever so I'm focusing on the robots that actually preparing walk like they have proper support of the time and the they can work on surface is occurring you're basing your emotion on on the friction of the differences in friction on on the surface and then if there are differences faces or or you you move from the floor to the topics for instance the robot doesn't move and work animal this is an example of form of their
ability to rebuild own whereabouts with me here i only broke the ones that are most the and robust because
I have to travel from from Switzerland so I just kept the simplest 1 walking was pretty much like this you can turn the asked him now Useful Oblivion anyway I don't would living working inside the yeah it's it's quite funny uh you can uh you can
have different ways of looking their way of looking good again and the different data that there is a broad categorization into tools 2 categories of getting that this statically stable gates is the 1 that you can stop at any moment and you will not fall does that mean in the months use that when when they growing when they're talking when they are moving slowly because they want to be able to stop at the moment and it's the simplest 1 to go because you don't have to good dynamic but Bentley stating gates of the 1 of the are most interesting to researchers researchers researchers sort of the Boston Dynamics you've you've seen probably don't the log of the sports so that book me uh movies on you talk the cooler nice stuff and book this is much of the of course because you will take into account the change in case something of the nature and so on and you have to
plan your movements much better yes so 2 examples of
those guys all right but and are created and trots create is so basically works when it starts spread In this connection that and it's it's basically statically stable because it has to be
able to start at the moment and so on the it looks pretty much like this so 1 leg at that time and it if you want to move faster than that you can use a dynamic dynamically
stable guide and most to lakes other time in like diagonal of the you see it it because you moved to lecture other
time as basically twice as fast but it's it's based on time and if you if you start with you would next in that if you would be you will be in stable URI pretty much followed them but what for the the because my small I actually violated 1 of the most important rules when you're building robots to have a big stops because you don't have to grapple with and have a lot unrestricted so but it doesn't run OK the most important idea when you are designing a guide when you design revealed that is looking at the samples are in the support is
basically the IRA between all the life that convex old lines of all of the lexicon of the moment on the ground in case of a electoral or would you like to remove the it's basically we usually that feed on this point so you just make an
old black like that if you have like my robot like this you just need very large what happens with the in the all when you least want to connect the
support changes of course and the there only 1 rule you need to follow if you're making a statically stable robots the the center of gravity has to be of all
are outside of the to achieve dot you move the body side before you leave
so you moved about 2 hours away from that before you so that the center of gravity is following from the lectures and can safely so basically you have at each step you have 3 animations going on at the same time this all you are moving that horrible ordered for water by moving all the lectures backward the motors so it's like and do you run out of dialects of at some point you should just face plants so there is
a 2nd thing you move their body sideways or or away from the magnet you're going to read and then 1 by 1 July lifting the legs and putting them for what so that you don't run out of the left right so you can continue moving called backwards all the time with with constant speed and it is also important in what order you move next and it goes out that for the creep there it's best to move
them like in that in that and Figure 8 in order to make you so far from the sphere is there the park right there from the right and then the back left again and so on it also covers changes if you start to rotations if you start walking sideways if you start having an
uneven terrain event because then the next don't really think that the shape of the form on the on the floor is smoke such nice and tomorrow and then you can invent very nice of them useful for determining which like to move next and so on so that's 1 interesting aspect of the program and the 2nd thing if you want them to be able to do more tool to build the like in the precise point in space in three-dimensional space you need to have these 3
degrees of freedom on each for walking you basically have to but have to do that there will be an exception I would talk about that later and if you want to when it when you're moving the samples you specify the and in which you will want to move in and the I usually when you want to most of the lakes somewhere you specified i coordinate so there is a way to calculate the
angles from the coordinates its good inverse kinematics that's not what I'm going to talk right now because there is 1 more slide before but this is what happens when you
only have tool degrees of freedom all once several tools to move the like up and down and once will to move it forward and backward and you can see that if you try to move their legs backwards to properly it for
what it has to move sideways the and so you have this
sleeping on the floor and it's not proper walking anymore and depends on the surface depends on what the people you ladies made of and so on it may not work so well if Europe
next are very elastic they would probably just went on it and of the omega house OK inverse kinematics
and is basically a high school like geometry and I won't get into the details of the book so you can basically solve all the triangles in the and got me the angles and then move you like to the place you want to answer there is 1 exception for for 3 degrees of freedom if you have
a memorable like this you you can get away with only 2 degrees of freedom
because the fact that there are several the 2 coming on the same plane so you are able to moved there like backward by moving that serve was in in
the right proportions and managed to our a straight line right but then you have problems with turning you can always turn like thanks to by moving collects on 1 side faster and less on the other side of the of smaller and then you also have to things that I do when they turn that they completely obliterate the ground they found on I don't know if you saw that it is if you select construction site where where together was moving on the tracks and it was turning its correctness and so it happens here too so there
is always some problem you could add several on the back to to the problem you know on the spine of the book of the most the OK when you actually use the physically you need and in 1 way or another you need at least build parts for unique about the 2 to colors and you need the opposable to distribute the power and 2 other the voltage of the battery to the world that you're actually using neural but obviously you need to some kind of several motorists or other actuator that you are going to move used to actually physically move things around and you we need are comparable or to to actually send all the signals through to those small cars and idea it's an age which for the Fourier model oral it's a set of all you need to have a central controller that generates the signal for sometimes you can measure that with the brain that you're using the brightness of the the mine computer the the rights the above that you program uh sometimes it's more convenient to have several components of because then you can about them separately you can like is it is the time reading the cold and so and of course you you will if you don't want your almost to be just so controlled told me that you need actual sound source and you need to process the sensor data yesterday we
have to talk about using Open CV for instance or for processing image taken uh not just 1 way you can do it by you that distance sensor from from the door that knows there is something in front of the bus I to resolve you can do a lot of interesting stuff with or yes approaches actually constructing that I started with a remote brings this available doesn't and actually it only has control on board it doesn't have like in main computer on it it only had a to done and the it around from called Python code actually on my computer and it since the several positions to the oval and this way you can do it very easily back your code because the you have it right now and computer can break at in moment you can use the constant to to limit from other commands and so on so that's convenient but of course
you need other computer and that
and from yeah I work out of his there would you can
use for for control of course you can use radio can is brought to you can use Wi-Fi you can use the or in the will of the those controlled by infrared from the actually give you more
the cheapest way you can you can have multiple robots that there really this is my system they
had said to have you have a different approach I had a lot of trouble with that of I've have reviewed its many many times because I didn't know what I was doing so I replaced which stronger centralized because the ones I used at the beginning with where and strong enough to actually carried and then I to replace the pottery and then I have to to replace the several control and then I have to reflect
because but it was have I've had to replace the symbols again and so on so this is really a lot of problem it's about things and then I decided that I am building small moral because there's so much easier to cultural there so much cheaper because their parents don't have to be so strong that it is easier to be because you can use just plastic and will and no matter what and I don't know ball and so on so I'm doing more about this this is much easier and you learn as much with them so this is the 2nd
approach called the computer on the Internet directly it there was going to be on the ballot and
also on the bottom of this is another
1 this 1 has a bias 6 0 on so it's quite small Raspberry Pi 0 and thereafter 5 controls the several directly using several months so I don't even have a significant role and it had a camera from an old plot this thinking from the actually I want to use the camera so I can do stop with open CV and so on
the square cool at the problem is yeah so you can put a
smaller completely on and the that works better because you you you have smaller report it is used to to maintain is you can actually if it runs away and so it is the
smallest 1 idea is very similar to this guy here x that this is this loans has oddly enough of the server component and then just through listen to the you know that well actually has a cheap from Wi-Fi cheap whether at the in opened that have only SELinux distributions
and it also has the camera from a lot of it as an instance from the camera so you can explore under the bed and and so on it's it's quite close and that is controlled by Wi-Fi of course because it's the return trip so it has already Wi-Fi used in learn I approach the problem is it's able to stand its so this is
a problem when you are using I will compute the Honourable uh units you basically has a UK to have
perambulating data centers you have to maintain that serve you have dual is collaborate you have to I don't know what to do all that can you would do with the service it takes time to if you just switch it off it will start that fragment the bed the fixing the 5 systems on the next boat and sometimes there will be some group flattening and sometimes you will have to to restore from back out so you would have to make back for Europe from and so it's it's the news because you can get a society into it and have you know run around called directly and so on so that's convenient but it's not really that good experience once you actually want to use their so the next step is using
microcontroller but I really wanted to programming I can go some reading in various C for the central controller for instance or for simple walking robots like those books for more advanced stuff you really want to have right to this is
uh as drawing another history because uh part of France micropipette you can use
might provide that also and also only by them Paul distribution whatever you call it that runs actually on microcontrollers and
yeah microcode can just switch it on of when whenever you want it like in several might microseconds on
Monday 2nd and then you can connect to each restaurant and still get a Python consultants who still try the the your called life you can see you know have a cable to connect the robot and see how it moves and so on and there is cool
board that runs microparticles could open and the and I have robots
that uses this but I never took the time to achieve program best known in front of it actually a camera band image recognition because is the microphone on open and he has of building work
library that builds hard cascade and the optic small and blob detection and a number of other users will be so all of those of beauty in there so you
can actually hopefully I will programming it and make it do cool stuff right now it's not
it's working there there's ESP 8 2 6 6 which is of
very not know that there is small trees that are too remote to the size of our post on costs about 2
dollars to the US 50 and runs like a pipe and has Wi-Fi beauty so it's very thankful for our use the problem is it doesn't really have so this is a lot more about
building using it you can see on on the thing there is the the use the a 2 6 6 yes it's a problem it's really small it's it's like it's pretty in your hand uh the problem is that it only has 8 the the output I have made several simply because this is the moment integration so if have it's the that's fine you wouldn't be
able to view them as by about with them from 4 of those that have
some more and examples are used up to another several control and was made various BA 2 6 6 . to it true I could see that's much easier to do this is a logical model from goes conditioning it's transparent because it's in you know croaking the invisible mold from Italy and
yes so little or whatever you
want the guy wants dive into
the and that's all I wanted was OK so we have
time for 1 or 2 questions so does anybody from so you've managed to use open sea on on Raspberry Pi successfully like the the frame rate frame rate at which you could analyzed frames not not that there is something I have to explorer and the if it's not fast enough I would probably switch to a rather than like 3 or or maybe try to write my own algorithms or I don't know but that the problem is I don't know building physical things but programming is in the best and the past I believe I have my day job so it's not as exciting anymore so I have a lot of robots that I have been physically and they have to waiting for parameter if anybody wants to know I don't know collaborators who case Hey there great topic as so I want to 1st year biology yeah last time where you mentioned is associate to succeed here I and II inherit that means like suppose you you can write a script for a new land now about the support for rectified and 90 have many issues genes from home was used in that so that initial implementation that was all about a year ago by by them and make out of my group I told it was just a prescribed of concept domain 3 days and it was pretty bad so it won't it approval concept that it works but but it wasn't really either stable or very future form or anything but recently there was a Kickstarter for writing that basically at the beginning of this year and it was a huge success they got from that some more on top of that and the out of like a python receptor down the overall the whole thing from scratch not not from scratch of railroad it properly and now it's quite stable it's still uh experimentally in in in in the words of the output because they are not so much come see then that means that the got everything exactly right so I wouldn't put it in the in the hospital form you know keeping you for the life that is not but it should be fine for public projects and it's really a growing fast and a lot of libraries are being beaten by before this by by other people not necessarily the developers themselves and I called it would really start nicely tomorrow there is an open space for Formica quite and I have somewhere here is the 2 6 6 exports with me as some other people have rolled the there's also so we can uh like you have some fine with them so is if you are interested in that please come tomorrow into of the space he thinks suddenly to