I built a Ball Balancing Robot.

Sdílet
Vložit
  • čas přidán 14. 06. 2024
  • In this video, I explain my path to creating my ball-balancing robot and how I control the trajectory of the ball.
    #engineering #robot #handmade
    github: github.com/KoshiroRobot/Ball-...

Komentáře • 152

  • @potatoking7722
    @potatoking7722 Před 10 dny +43

    Amaizing video, this is the project she tells me not to worry about.

  • @qbit1103
    @qbit1103 Před 8 dny +11

    As someone who is only just starting with robotics I think this is an 10/10 video. Everything is explained clearly and with a lot of detail, the robot looks sick, and everything is open source. I honestly think YT needs more videos like this one.

  • @sucbsakulmehi4261
    @sucbsakulmehi4261 Před 9 dny +25

    Bro just open my eyes on PID control

  • @trollenz
    @trollenz Před 9 dny +14

    Just the fact that you're using Blender in Japanese is pretty badass and deserves a sub 🤣👌🏻 Not to mention the great content 👏🏻

  • @mu11668B
    @mu11668B Před 6 dny +1

    It's just so nice when CZcams does recommend something great in the feed.

  • @punpck
    @punpck Před 9 dny +2

    7:44 nice explanation of PID controller 🙌

  • @mohammedmotasim3615
    @mohammedmotasim3615 Před 3 hodinami

    Thank you for sharing this project, this is one of the best videos showing a balancing robot. I subscribed to you man, keep up the good work.

  • @ElectrostatiCrow
    @ElectrostatiCrow Před 9 dny +1

    You explained this in a very easy to digest manner.

  • @n_mols
    @n_mols Před 10 dny +10

    This vid gonna blow up someday for sure... Subbed! Brilliant video

  • @alexandrep2624
    @alexandrep2624 Před 6 dny

    1:48 very nice cup ;-)
    Best explanation of PID control I have ever seen in 18 years !!

  • @peter360adventures9
    @peter360adventures9 Před 9 dny +4

    Awesome build

  • @ottosboyen
    @ottosboyen Před dnem

    Nice work ! Very well explained

  • @stefanklass6763
    @stefanklass6763 Před 10 dny +10

    Very cool, if you ever do it again, make it a Robotern holding a ping pong Paddel. That could develop into a full blown ping pong robot

  • @kindlin
    @kindlin Před 8 dny

    I'm definitely curious to see where this project goes. I hope you keep keeping the technical bits in, even if it doesn't always flow with the algorithm.

  • @SuperRadMaker
    @SuperRadMaker Před 8 dny

    Excellent project and hope you keep them coming! Subbed for the inspiration

  • @tuskiomisham
    @tuskiomisham Před 9 dny +2

    thumbnails: "never falls"
    1st 10 seconds: falls

  • @wa4aos
    @wa4aos Před 8 dny +1

    Excellent well thought out and executed project utilizing multiple scientific disciplines as well as software development to facilitate the mechanical and electrical needs. Well done Sir !!!
    Maybe this is the next multi-million dollar science toy / teaching tool for engineering, physics, and software disciplines.

  • @andreafavero71
    @andreafavero71 Před 7 dny

    Very nice project!
    I like the usage of a camera lo track the ball, and having it underneath for a compact design.

  • @JonMurray
    @JonMurray Před 5 dny

    This was awesome man. New subscriber ✌🏻

  • @sermadreda399
    @sermadreda399 Před 6 dny

    Great video, thank you for sharing

  • @victoriage
    @victoriage Před 6 dny

    cool as heck. the design of the robot is also very well aesthetically pleasing; the math is made simple thanks to the explanations. good job. sub'ed

  • @AndyZE123
    @AndyZE123 Před 9 dny +1

    I really enjoyed this and could see the huge amount of work that went into it. I ran away with the idea though that you were going to have the ball returning to centre, but it doesn't look as though you would find that difficult to achieve. Thanks for the entertainment and learning.

  • @pascalturcotte6769
    @pascalturcotte6769 Před 4 dny

    Very nice presentation, I discovered you today and I have subcribed to your channel. Well done! Thanks for sharing!

  • @bricogeekcom
    @bricogeekcom Před 7 dny

    Really great work!

  • @Greguk444
    @Greguk444 Před 4 dny

    Very difficult task, very impressive project and solution.

  • @vianneymas1746
    @vianneymas1746 Před 9 dny

    a great explanation on a PID controller

  • @aeris-mo
    @aeris-mo Před 8 dny

    I love your work.

  • @bisrattegegn1686
    @bisrattegegn1686 Před 8 dny

    amazing video!!! well done
    in my control class (which is years ago) I remember something about using the Fourier transform to fine tune Kp, Kd, and Ki, would be cool if you include that in the next video, would be cool even without, thank you!

  • @glloqdelacroix4644
    @glloqdelacroix4644 Před 8 dny

    nice project, you won a sub, i hope you'll do more :D

  • @simplersearchproductions

    Very well done! But, I can't resist. "Fix the motor to the base and attach the link to the motor." Interlinked! "The motor can now transmit power to the link." Interlinked! "Place the bearing at the end of the link and attach another link." Interlinked! Interlinked! Within cells interlinked! Within cells interlinked! Within cells interlinked! :)

    • @rehnai
      @rehnai Před 8 dny

      Well played, maybe it could even run from 2049 blades

  • @SPotter1973
    @SPotter1973 Před 5 dny

    This robot would make a great eye with depth perception....

    • @SPotter1973
      @SPotter1973 Před 5 dny

      Bioptic, flexible lenses like contacts... I am too analog.... I will marinate a bit. That solution is really awesome to say the very very least.

  • @DigitalProfitPulse07
    @DigitalProfitPulse07 Před 8 dny

    Just thinking the difficulty level if we try to balance two balls at the same time :)
    BTW, great work. highly appreciated.

  • @steveolsted6378
    @steveolsted6378 Před 6 dny

    Really cool! Could it absorb the bounce prior to balancing?

  • @QbutNotTheQ
    @QbutNotTheQ Před 7 dny

    Awesome

  • @marsnasir5438
    @marsnasir5438 Před 6 dny

    それは素晴らしいのプロジェクトですよ。I am so impressive. I like it.

  • @navneetdhal0021
    @navneetdhal0021 Před 6 dny

    Ive seen many of these videos but the impressive part is how clean and compact it is.Just a few pointers:
    •You could use a much powerful overhead camera.
    •Ball joints are producing a little unrequited wobble for the plate.
    •The algorithm to reject noise could pose a problem during bouncing the ball as it needs to determine the size of the ball.
    Overall this is a great project considering how well you explained it.👍🏻

  • @Hopfenblau
    @Hopfenblau Před 6 dny

    awesome!! such a channel is exactly what I was looking for 🤩
    3D printet Robots for tinkerers 😁

  • @simianbarcode3011
    @simianbarcode3011 Před 7 dny

    These kinds of robotics projects are way more interesting to me than the usual attempts to make something more humanoid, as fun as those can be, because the potential applications are so much more broad. For example, the principles and formulas you used here are also used to adjust solar and mirror arrays as the sun moves across the sky.

  • @ddssrr1614
    @ddssrr1614 Před 8 dny

    This ball balancing robot will control the world one day with it's magic.

  • @ThewayofTehuti
    @ThewayofTehuti Před 7 dny

    Fantastic video, but i think getting the robot to bounce the ball may not be as hard as you think. For one, there seems to be a impedance mis-match between the material you have chosen, so the ball doesn't bounce very high off the first bounce, and without a second camera to help predict where the ball is going to land, your robot has very short reaction window. So improving the impedance mis-match between the two materials you have chosen (hardness, density, elasticity) will get the ball to bounce higher, and you may need to add a second camera to help with position when the ball is in the air. but overall great video.

  • @Zenobeus
    @Zenobeus Před 8 dny

    Echo... nice video!

  • @Leadvest
    @Leadvest Před 7 dny

    Great video! I hope you get deeper in the weeds, maybe with IK motion interpolation, and predictive PDI control loops, In future videos.
    It looks on visual inspection, like the platform can't move fast enough to bounce the ball, so to my eyes it's an impedance problem.

  • @Maybe-you-know-me.
    @Maybe-you-know-me. Před 8 dny

    At a glance you are using sight to know the position of the ball, I’d like it to use weight so it can be a never spill coffee cup holder for the car.

  • @wearemany73
    @wearemany73 Před 9 dny +2

    Ping Pong 🏓 would be a great idea…Then make two and have em play each other with the ability to improve accuracy. (automatically maybe) Great video. BTW 😁

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 9 dny +2

      Making the robots play ping pong against each other sounds interesting.

    • @wearemany73
      @wearemany73 Před 9 dny

      @@Koshiro_Robot_Creator …especially interesting if they could be taught how to improve themselves. One step at a time though.

    • @mineline5620
      @mineline5620 Před 9 dny

      Machine learning? ​@@wearemany73

  • @psycheqg6294
    @psycheqg6294 Před 10 dny +1

    cool

  • @dsn9951
    @dsn9951 Před 9 dny +1

    It's really cool. I was wondering if you'd be kind enough to pls share how you formulated the inverse kinematics. Perhaps as a document, in the description?

    • @HansVanIngelgom
      @HansVanIngelgom Před 9 dny +3

      Or a separate video. I would watch it, for sure! I was a bit sad that he just brushed it off as tedious and boring.

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 9 dny +4

      Let's make that video! Please wait a few days.

  • @blefroy
    @blefroy Před 7 dny

    I’m curious to hear more about how you used the golden ratio in the design

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 7 dny

      The golden ratio is incorporated into the lengths of the links and the size ratio between the platform and the robot's base.

  • @prawnmikus
    @prawnmikus Před 9 dny +1

    Cool.
    What other ways can the same thing be accomplished?
    A neutral net approach? Like an animal doing the same?
    Different sensors, such as lidar, run at a frequency that sees through the plate. Radar?
    Force feedback (gravity)
    Could you use solenoids as actuators instead of motors (like speaker drivers) to get more sensitive feedback and faster response times?
    How about a magnetic sensor, hall effect. The ball could be ferromagnetic.
    And lastly (not really, but it's getting long) how about treating the actuators like octopus tentacles? Each one with its own microcontroller. A central microcontroller could coordinate them, in case of something more advanced than static balancing (it would say, keep the mass at x,y then the tentacles would feel the weight and distribute the forces accordingly).
    Anyway, really cool and very beautiful device!

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 9 dny

      Thank you for watching. You have some amazing ideas and it's incredible how they keep coming!
      I think controlling the robot by inputting images and sensor data into a neural network to output the robot's actions is very appealing. Such a robot would feel more like it has life rather than just being a machine. Ultimately, this is what I'm aiming for in my graduation research.
      Thank you for the other great ideas as well. I will incorporate them into future projects.

  • @grf73tube
    @grf73tube Před 6 dny

    Next step: use Reinforcement Learning to do these tasks! Perhaps you can solve the bouncing ball problem with it.

  • @levih.2158
    @levih.2158 Před 8 dny +11

    Why does the narration sound like AI text-to-voice?

    • @frankmalenfant2828
      @frankmalenfant2828 Před 5 dny

      Because you don't know how it sounds

    • @beekdorrr
      @beekdorrr Před 5 dny

      I think it is since the creator is Japanese and the narrators english is way too fluent(not saying it isn’t possible)

    • @levih.2158
      @levih.2158 Před 5 dny

      @@beekdorrr Ah I see! Didn't realize the creator was japanese, thanks!

    • @LawrenceTimme
      @LawrenceTimme Před 2 dny +1

      Because it is.....

  • @ws01212
    @ws01212 Před 8 dny +1

    お願いしますが、どの音声AIを使ってナレーションしているか教えてください。とて何かはかっこよくて、声もいいですね

  • @lavalampex
    @lavalampex Před 7 dny

    3D movement requires 3D/2.5D vision, like a camera from the side, to be accurate.

    • @AABB-px8lc
      @AABB-px8lc Před 7 dny

      ball have fixed constant size, and camera is not telecntric, so you can track height by measuring pink circle size.

  • @Michael748159263
    @Michael748159263 Před 9 dny

    damn so cool

  • @migfed
    @migfed Před 8 dny

    Derivations should deserve one video on this own right, think about it

  • @thomaskrenn3808
    @thomaskrenn3808 Před 9 dny

    👍👍

  • @boltvalley3076
    @boltvalley3076 Před 9 dny

    I like this, i would like a video how to connect OV7670 wires... Friend and i got stuck trying to connect robot eyes to follow fingers and ball. Fantastic experience and effort.

  • @illygah
    @illygah Před 7 dny

    to me, this is a project illustrating cybernetics.

  • @jaumesinglavalls5486
    @jaumesinglavalls5486 Před 9 dny +2

    for doing the balancing you wouldn't need a second camera? that will lead to a more precise calculation of distance. Nice project!

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 9 dny +1

      Thanks for taking a look...I think using two cameras is a great way to go.

    • @wilkstube
      @wilkstube Před 9 dny

      You can estimate height by the size of the image of the ball. Calibrating images of the ball on the platform at known heights could even give you a lookup table of size::height estimates as a baseline.

    • @yannmassard3970
      @yannmassard3970 Před 9 dny

      no you don t need 2 cameras, you need a wide angle cam only / ball radius. enough to bounce the ball

    • @kindlin
      @kindlin Před 8 dny

      @@wilkstube I assumed it was something like. With a known default position of the platform, and assuming the object is a ball, it's diameter can be calculated based on the image. I know he's good for the math on that one, after the inverse kinematics lol.

  • @iosmc4
    @iosmc4 Před 9 dny

    Great video. I’ve seen many CZcams channels complete this project and gloss over the inverse Kinematics. A full video working through this derivation would be extremely helpful. How does the control algorithm work if it’s over constrained with 3 actuators instead of just 2?

  • @christopherd.winnan8701
    @christopherd.winnan8701 Před 5 dny +1

    Have you been following Harrison Low's juggling robot experiments?
    www.youtube.com/@harrisonlow
    Maybe you two could collaborate in future?

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 5 dny +1

      I just followed him. The movements of his robot are beautiful. It would be amazing if we could collaborate in the future.

    • @christopherd.winnan8701
      @christopherd.winnan8701 Před 5 dny

      @@Koshiro_Robot_Creator I sent him a link to you video. He does regular live streams and I am sure he would be very happy if you reached out.

  • @dr_harrington
    @dr_harrington Před 8 dny +3

    Can you turn it upside down and make it balance on top of the ball?

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 8 dny

      This robot cannot do that. However, creating a project to make such a robot sounds interesting.

    • @kindlin
      @kindlin Před 8 dny

      @@Koshiro_Robot_Creator All it would take - if I'm thinking about this right - is longer arms and a quick update to the arm length in the kinematics of the Brains.

  • @7BlackJack8
    @7BlackJack8 Před 5 dny

    Hi, are you based in Japan? I'm a software engineer very intrigued by AI, i want to know if there are communities or labs dedicated there...thx for your work btw, superb.

  • @isaacm6560
    @isaacm6560 Před 6 dny

    Is it just me or was that the least 'bouncy' bouncy ball

  • @lowelljeff
    @lowelljeff Před 9 dny

    Awesome Project. Are you gonna release complete plans and STL's for it?

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 9 dny

      Thanks for watching! You can download it here.
      github.com/KoshiroRobot/Ball-Balancing-Robot

  • @dammizz
    @dammizz Před 8 dny

    Amazing project.
    How many hours did you spend on building this robot?

  • @sicks6six
    @sicks6six Před 6 dny

    ball control and cameras, am I missing something in the description,

  • @junkthe
    @junkthe Před 9 dny

    I kinda wanna find light weight version of this , and mounted on my rc 75mm tinywhoop. If the price very cheap, and available in my country.

  • @vishal01mehra
    @vishal01mehra Před 9 dny

    Try using a global shutter camera module

  • @CORE1900
    @CORE1900 Před 10 dny +3

    I thougth this video was very intereting

  • @jim23mac
    @jim23mac Před 9 dny

    Wow - I confidently predicted you would need to use fuzzy logic to control the platform but it seems I was wrong.

    • @Santzes
      @Santzes Před 9 dny

      It would be interesting to have another robot pick up the fallen ball back on the plate and then do million bouncing tries to train an AI that could bounce the ball even with the "low" framerate

  • @DanielRisacher
    @DanielRisacher Před 9 dny

    FreeCAD FTW!

  • @eitantal726
    @eitantal726 Před 9 dny

    yay for Opensource software: Blender and Freecad, Python and OpenCV

  • @basilstadnik1342
    @basilstadnik1342 Před 4 dny

    0:28 откуда советский объектив ?

  • @realsimroads
    @realsimroads Před 8 dny +1

    Did you use AI for some/all of the voiceover?

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 8 dny +1

      Yes, I used AI for the voiceover as I'm not good at speaking English.

    • @realsimroads
      @realsimroads Před 7 dny

      @@Koshiro_Robot_Creator I think you did a good job with it. I didn't notice for a while, until a few words stood out. What model did you use?

  • @innocentmateyaunga2683

    very cool project, I wanna try remix it a bit, some of the parts are not available, please check that

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 8 dny

      Thank you for watching! I have added a new folder "Parts_Details" on GitHub. Please check it out.
      github.com/KoshiroRobot/Ball-Balancing-Robot

    • @innocentmateyaunga2683
      @innocentmateyaunga2683 Před 8 dny

      @@Koshiro_Robot_Creator Thank you so much. i appreciate

  • @mystery_pond
    @mystery_pond Před 8 dny +1

    Weird question but is this your voice or text-to-speech?

    • @robotboy3525
      @robotboy3525 Před 8 dny

      How is this relevant to the video ?

    • @mystery_pond
      @mystery_pond Před 8 dny +1

      ​@@robotboy3525 I'm just asking a question

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 8 dny +2

      I am using voice generation from Filmora.

    • @mystery_pond
      @mystery_pond Před 8 dny

      @@Koshiro_Robot_Creator Thanks, I was just asking as I was second-guessing myself, since it's very convincing!

  • @ThainaYu
    @ThainaYu Před 10 dny

    next step might be fine tuning the K gain with continuous machine learning?

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 10 dny

      In this video, I failed to bounce the ball.
      I think a camera with a higher frame rate or an algorithm to predict the trajectory of the ball between frames is needed to successfully bounce the ball.

    • @ThainaYu
      @ThainaYu Před 10 dny

      @@Koshiro_Robot_Creator I think you need depth camera or multi camera to analyze depth to add precise z dimension for that

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 10 dny

      @@ThainaYu In this video, the height is determined by the algorithm of the pinhole camera model, which is not very accurate. I think the means you are describing would be very useful for successful bouncing of the ball.

    • @kindlin
      @kindlin Před 8 dny

      @@Koshiro_Robot_Creator That assumption should be fine for most things, but to jump the ball, for the precise z, you'll want to solve the tangent sphere problem. You could also calibrate the diameter more precisely with that same algorithm. (I brought something up like this in another thread just a second ago).

  • @ayanabbas6982
    @ayanabbas6982 Před 10 dny

    1) i think your image might be suffering from fish-eye distortion because the square it made was not proper... have you tried distortion correction algorithms?
    2) you should stepper motor actuators and limit switches for zeroing the actuators... this way you can limit the jitter by tuning the control loop yourself.

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 10 dny +1

      Thanks for watching!
      1. Indeed, the camera is not calibrated in this video. It might be more accurate if the distortion is taken into account.
      2.Your point is very interesting as I am planning to build a smart servo in my next project.

    • @eitantal726
      @eitantal726 Před 9 dny

      @@Koshiro_Robot_Creator Curious if there's a latency to the camera, that would also explain some jitter. Also, note that servo is sort of the "opposite" of a stepper motor. Servos do jitter to some extent, stepper motors do not

  • @ramizyabac3256
    @ramizyabac3256 Před 6 dny

    Böyle bir çalışmayı yapana destek olmayayım da , kime abone olayım :) . gerçekte süper çalışma

  • @aeris-mo
    @aeris-mo Před 8 dny

  • @faked8586
    @faked8586 Před 8 dny +1

    Is the voice in this video ai?
    Edit ok yea it is 😭 nobody says raspi like that

  • @rodrigob
    @rodrigob Před 9 dny

    Who is "we" ?

  • @yannmassard3970
    @yannmassard3970 Před 9 dny

    I wouldnt use open CV for such a simple job. and nah i don t think you process 60 fps with your rig. adapt a code for this yourself, in c++ should take something like 100 to 150 lines, and will be faster, you don t need to track the ball, just to 'find' where its center of mass is. That s the problem with newbees, they always take the problems reversed. the real challenge at high frame frate vision is the code in its creativity.

  • @malejeeck
    @malejeeck Před 7 dny

    too large response time, or camera FPS

  • @R2D2SD
    @R2D2SD Před 9 dny +5

    Good video but your memes and transitions are so cringe, please stop that.

  • @Mistyre
    @Mistyre Před 10 dny +4

    Ai?

    • @fluke196c
      @fluke196c Před 10 dny +1

      no way, good old fashioned engineering and equations.

    • @Mistyre
      @Mistyre Před 10 dny +7

      @@fluke196c the voice, I'm talking about the voice.

    • @Koshiro_Robot_Creator
      @Koshiro_Robot_Creator  Před 10 dny +4

      @@Mistyre The voice is AI. Thanks for watching.

    • @Mistyre
      @Mistyre Před 10 dny +2

      @@Koshiro_Robot_Creator no problem

    • @fluke196c
      @fluke196c Před 10 dny +3

      Pretty good AI voice, I didn’t catch that. Very disingenuous of the creator though.
      I would be worried about the software download, if the author bought the narrator and has no future plans but a project specific youtube channel name… what’s the goal?

  • @leepro
    @leepro Před 8 dny

    copy cat? I saw the same thing in other channel.

  • @raphaelslegoworkshop8616

    copy cat i bet you copied off of Aaed Musa

  • @ws01212
    @ws01212 Před 8 dny

    お願いしますが、どの音声AIを使ってナレーションしているか教えてください。とて何かはかっこよくて、声もいいですね