One Legged Jumping Robot (Will it work?)

Поделиться
HTML-код
  • Опубликовано: 4 мар 2023
  • Attend GTC23 conference for free to learn about AI, machine learning and its applications. Use my link to register, to have a chance to win NVIDIA Jetson Orin Developer kit. To participate:
    1. Register to GTC23 with my link:
    nvda.ws/3Hr9LTS
    2. Attend at least one session (for example my session :) )
    3. Subscribe to my channel
    Also don't forget to attend my session: www.nvidia.com/gtc/session-ca...
    I have an idea to build single leg jumping robot with parallel kinematics. I have made a prototype. And now I need your advice.
    Special thanks to my special supporter: Benjamin Bacon and Ali Almarzouqi.
    Please subscribe. This will help me to develop other projects like this, to bring the bright future closer!
    One time donation:
    www.paypal.me/Skyentific
    If you want to help this channel, please support me on Patreon:
    / skyentific
    Instagram: / skyentificinsta
    Facebook: / skyentificface
    Twitter: / skyentifictweet
    #DIY #GTC23 #3dprinted
  • НаукаНаука

Комментарии • 97

  • @marcus3d
    @marcus3d Год назад +19

    You really want some springs to push the legs open, even with the weight of the body. The motors should use force to pull the legs together so the body goes down. Then the springs and the motors together will push off when it jumps.

    • @cbc7599
      @cbc7599 5 месяцев назад

      Same thought here! Something like the punch mechanisme of the mantis shrimp.

    • @cbc7599
      @cbc7599 5 месяцев назад

      The joint gets locked. The muscle get tightened. Than the lock opens en the energy reales in an blink of an eye!

  • @_o_
    @_o_ Год назад +8

    There are a ton of physics questions that come to mind, and how the controller will sense balance and know its own position, trigger enough of a "kick" to be able to get off the ground, etc. Just getting it to stay upright for a few seconds sounds like an awesome result, and prototype 1 is coming together nicely. In just a couple iterations we'll have: a bouncing Terminator!

  • @pigi_experiment
    @pigi_experiment Год назад +1

    The project is super interesting. Please carry on with this beautiful robot.

  • @awesjosh
    @awesjosh Год назад +2

    FYI the pi3hat will not work with a Jetson. While the connector mechanically fits, the Jetson doesn't have the same number of SPI busses that the rpi has. Also, the client library is currently only for a rpi.
    The Orin actually has CAN-FD controllers built which you can connect transceivers to. Unfortunately there are apparently no off the shelf transceiver adapters for the Jetson line that I could find, but that could be an alternate high performance solution you could start with just a breadboard and a transceiver breakout board.

  • @stefanguiton
    @stefanguiton Год назад

    Awesome! Excited for this video

  • @davenarisotto3674
    @davenarisotto3674 Год назад

    Your explanation about the jump dynamic was actually brilliant

  • @papawolf8840
    @papawolf8840 Год назад

    Please continue with this!

  • @robinyilmaz1155
    @robinyilmaz1155 Год назад

    Thats super cool!

  • @maxmustermann2459
    @maxmustermann2459 Год назад

    I like the way You tensioned the belts

  • @DeKempster
    @DeKempster Год назад

    Very cool project!

  • @CDRaff
    @CDRaff Год назад +3

    Take a look at Alonso Martinez's robot called Gertie. It's smaller and uses servos to drive it, but the physics should be very similar as it uses a very similar mechanism to jump.

    • @adamcroston7961
      @adamcroston7961 Год назад

      ruclips.net/video/EfnHhDDc-cw/видео.html

  • @yannmassard3970
    @yannmassard3970 Год назад

    hey coder here. I m getting into robotics, and I love your design and mechanical approach. But here s how I would operate if I had to actually make this work (for what it worth). You have 2 options : 1 the algorythm option. You need : Accelerometer, joint orientation (Inverse Ik), and altitude. Then you bring everything to Unity or Unreal. From there, you start simulating based on actual weights. Since you can t predict the actual driving force of the motors, nor the mechanical faults (like slipping belts, motor imprecision, pid results etc) all you can do is to start with some force values, and from there build the algo and then trial and error in real life values. 2 Reinforcement learning. you backdrive all the informations (joint, accelero, and altitude) to unity, run a first AI pass in the sumulator, then move the model to real driven datas from the robot. After a couple of hundred fails, you should start to see something working.

  • @andreasvox8068
    @andreasvox8068 Год назад +1

    Interesting. I would not worry about the rotation of the body during flight, just make sure that the foot is in the right position when landing to prevent it from falling over. Once the foot has contact with the ground you can adjust the body rotation easily. You should also make the foot extra grippy because you have to transmit the force for the forward jump to the ground horizontally.
    I do think it can work, but it will not be an efficient way of locomotion. You might want to recover some of the energy by using electric braking when landing.

  • @TextZip
    @TextZip Год назад +2

    That was an amazing idea please continue working on this, I have a couple of pointers regarding the design and control:
    > Checkout Berkeley's - SALTO Robot, slightly different scale but it is still a single legged jumping robot that can move around, maybe the leg design and their motor-joint placement can help during further design iterations.
    > The control for your robot will obviously be quite tough and your idea of using RL is kinda nice, but given the mechanical elements of the robot such as pullies and belts which might introduce slipping and other elements into the picture a through system-identification must be done before you can start the RL training and also a good amount of domain-randomization can be applied for these kinds of parameters (slip, motor strength and so on..) other than the usual ones like mass, friction, CoM, inertia and others..
    > I'd also suggest the addition of at least one binary contact sensor at the bottom (even better if you can replace all three of those white button sized feet with three binary contact sensors) this will help with the training in RL.
    > Other things I'm not sure of as I am not familiar with the motor controller and the motors your using but will be needed for RL are: motor angles and motor velocities, IMU data.
    > Would also suggest training the RL policy to output relative positions w.r.t the neutral positions of the motor angles which are then passed through a low gain PD controller for generating torque values. ( Learning position control in RL is faster than torque control)
    Finally, If you do plan on using RL for control and if you can open-source it in anyway I'd love to contribute to the RL part, being an undergraduate researcher who also works on RL for legged robots this project sounds dope.

  • @Build_the_Future
    @Build_the_Future Год назад +3

    I kinda want to try to program this. But I haven't worked with the Developer kit yet. You may need a Gyro/Accelerometer on the robot to get the angle correctly in the air and feed it into a PDI loop for adjusting the moment of inertia a bit more accurately.

  • @PCBWay
    @PCBWay Год назад

    Impressive!👍👍

  • @H34...
    @H34... Год назад

    You can replace the complicated joint at the ring plate with an off the shelf spherical bearing/ball joint. Cheaper, simpler, more durable, more compact.

  • @zahari_s_stoyanov
    @zahari_s_stoyanov Год назад

    I think the approach you described should work. Very interesting project :)

  • @Key_Capz_
    @Key_Capz_ Год назад

    You just have me an idea for a suspension system when stuck.

  • @gordonpromish9218
    @gordonpromish9218 Год назад

    interesting project

  • @jonwatte4293
    @jonwatte4293 Год назад

    Add torsion springs to each of the legs to reduce the load on the motors when standing still!

  • @juanjosereque9754
    @juanjosereque9754 Год назад

    excellent presentation. The device has many applications. came to mind, a ship landing on shaky ground

  • @victormultanen1981
    @victormultanen1981 Год назад

    I like the color scheme of this device.

  • @mansurkhairullin2219
    @mansurkhairullin2219 Год назад

    Hi, frog is jumping not because muscular power used to shoot body. It used to compress energy and keep it in compressed. So as written below, looks like better to use motor to compress springs. And it is possible to compress it due flying

  • @conorstewart2214
    @conorstewart2214 Год назад +1

    I think you will have a lot of trouble with the motors and pulleys. The force of landing and possibly jumping will probably make the pulleys skip if not make the motor skip. You could maybe help that with tensioning but you can only tension it so far since you are using 3D printed parts and the motor probably doesn’t like too much load on its shaft. You could maybe help it with some form of current control and allowing the motor to be driven by the legs folding, kind of like a person absorbing the impact of a jump using their knees, but that might be difficult to implement.

  • @frollard
    @frollard Год назад

    Very cool. I like the thought about ensuring the force vector will be out of line with the center of mass. Otherwise, you'll need reaction wheels to balance in air - perhaps the motors accelerating to move the legs will have a similar effect.

    • @col0342
      @col0342 Год назад

      "perhaps the motors accelerating to move the legs will have a similar effect." I think that's more promising than an unbalanced rotational inertia at jump time; that's because that rotation will be present the entire flight time and the rotation speed/flight time will be essential for a good landing (that is, the robot learns a formula).
      The longest jumps in sport's history were all in hitch kicking style - ruclips.net/video/1JcxdeDluNs/видео.html. I think that the speed of the leg "pedaling mid air" combined with the input of some gyro sensors would simplify the feedback for the jumper's attitude during flight - I feel that's a reaction closer to a bio-neural system.

  • @oraz.
    @oraz. Год назад

    I know tatt clip you mentioned. The leg extended straight out and there was a metal hemisphere on top.

  • @iloverobotics113
    @iloverobotics113 Год назад +1

    Интересный робот. По идее должен прыгать. Интересно посмотреть на конечный результат) Спасибо за ссылку на полезную конференцию

  • @ElijahHowardHolmes
    @ElijahHowardHolmes Год назад

    You could add something similar to rocket landing gear, on the part connecting to the gimble. If it's just a "One Legged Jumping Robot" then you should be able to put something bouncy on the bottom.

  • @sq3rjick
    @sq3rjick Год назад +2

    I think it’s definitely physically possible to jump at an angle, but I suspect the code is going to have to be really cleaver and you’re going to need to know the exact position of the body (high precision accelerometer) and the joints (encoders) and thus be able to know where the foot is and where it needs to be. I don’t know if you can actuate that quickly, but I’d love to see it!
    This may actually be a good candidate for guided learning, or basically letting the robot learn how to control itself with machine learning. I think the Jetson Orin is probably up to the task. Perhaps add a tether and spring up top to prevent damage while it learns and then let it go?

  • @jdwg5
    @jdwg5 Год назад

    I absolutely think it's possible! You'll definitely need an accelerometer on the body to measure you're rotational speed, and joint encoders (though I'm assuming you have that through the motors).
    I think your idea to control your rotational speed using the legs to control you MoI is sound. You might find that you need to relocate some of the mass to the "foot" to increase that effect, though it might cost you so jumping power.
    Also, I've seen a lot of comments suggesting springs to help the motors, I 100% agree with this.
    Keep it up, don't scrap this one, I want to see it fly! And then fall, gracefully

  • @EngineerNick
    @EngineerNick Год назад

    add springs to assist the motors :)

  • @aronseptianto8142
    @aronseptianto8142 Год назад

    i think this case is a very ideal situation to add counteracting spring that negates gravity

  • @regularfryt
    @regularfryt Год назад

    It will work, but one thing that will make it *much easier* to get working, in addition to an IMU, is force feedback from the legs. I'm not sure if you get that from the encoders and the ESCs, but knowing when the foot has touched the ground will give you a clear signal to go from a flight state, where it's controlling its rotation for a good landing, into a catch state, where it's getting rid of residual horizontal momentum to get into a stable balance.

  • @cezar17negru
    @cezar17negru Год назад

    Good luck sir, the controller will be challenging. You need to have a quick reaction and a good modelling of the physics so that the inertial compensation will work!

  • @sticky_ricebowl
    @sticky_ricebowl Год назад

    I feel like a reaction wheel with a spring system would be lighter and better considering that for any movement, it needs to be lighter. And it may be simpler to program. If you want to be lighter the computing system could be wirelessly connected through a control link. I think the current configuration is too mechanically complex with many potential errors from the amount of parts.
    my robotics professor taught me a good lesson: the simplest solution is often the best and that applies in robotics

  • @Tenchiken80
    @Tenchiken80 Год назад +1

    It seems that you require something like, mmm... reaction wheels? Well, to maintain it's orientation; you know, like those nifty useful stability assist devices in Kerbal Space Program.

    • @Skyentific
      @Skyentific  Год назад

      Yes, this can help. But reaction wheel should be heavy to work properly. And heavy part for jumping robot is a bad idea. :)

    • @Tenchiken80
      @Tenchiken80 Год назад

      Heavy - or big, reaction torque is related not only on mass, but lever length as well; also: how much power do you absolutely need it to have, actually? :)
      Also, this is a delta robot, efficiently, which makes it possible to execute tangential moves with it's effector (foot). Which in turn means that it can add rotation impulse to main body during jump, theoretically :)

  • @snapo1750
    @snapo1750 Год назад +1

    i see how it can move forward , backward... but how would you turn left/right?
    Wouldnt it better to have a single legged robot with a spring that gets loaded and 2 centrifugal weights (at the top) so you can control all dimensions?

  • @kapytanhook
    @kapytanhook Год назад +1

    I am pretty sure it can work physically. It can impart a small backwards rotation while going up. Should be pretty straightforward to sim. but i honestly doubt it will have the torque and the speed to make good air. If you could give us joint weights, motor power, torque and reduction numbers we could simulate it. Or just try make it jump straight up first to get a good feel for effective power.

  • @Nadesican
    @Nadesican Год назад

    With the current configuration, I think your landing platform is too abrupt - at the very least it'll cause significant strain at the contact points, at the worst it'd cause damage at the joints closest to the bottom. I think you'd want something to distribute the impact along a wider surface. My first thought is a screw-like mechanism that is pressed inward during collision but falls slack at any other point.

  • @gordonpromish9218
    @gordonpromish9218 Год назад

    it might pay to look into the "gyros" used in self-stabilizing multirotor drones.

  • @H34...
    @H34... Год назад

    Jumping seems the easy part. Landing will be harder. Maybe use an imu in the top. Based on the gyro orientation and acceleration, you can position the foot so it is infront of where the heavy top is headed (based on accelerometer) and level (based om gyro).

  • @devanshgarg31
    @devanshgarg31 Год назад

    I think that jump should be done using spring and the energy can be stored in springs using the motors. Using motors for impact force is flawed. (Just a guess)

  • @samuelkleiner6143
    @samuelkleiner6143 Год назад

    I really like the belt tensioners, are they from somewhere?

  • @victorldunn9638
    @victorldunn9638 Год назад

    Unfortunately the modelling of the body and leg movements are not within my expertise to know if the system will work as required, or not - but having progressed with the build so far PLEASE move to the next step to see if the robot can at least jump (pogo) on the spot.
    [really liked the movement noises as well - my mind was silently doing the same! 😂]

  • @LoyvanBeek
    @LoyvanBeek Год назад

    The ending about decommissioning begs for a follow-up about the Pioneering Spirit ship. A giant catamaran to pick up oil platforms topsides and now also their (metal) support frames. It's absolutely humongous.

  • @sergienko_maxim
    @sergienko_maxim Год назад

    I think that jumping in such a robot configuration will be hard problem. What will make it lift off the ground? A sudden simultaneous torque from all the motors? But that will just throw the upper part upwards until it hits the top and then it will fall back. Maybe I'm mistaken about the physics. Sorry if that's the case :)

  • @ReginaldCarey
    @ReginaldCarey Год назад

    Your leg needs some mass at the foot. You need to induce a rotation when the bot jumps. The mass only increases as batteries and controller are moved to the platform. How do you size a motor for this application?

  • @pacman10182
    @pacman10182 Год назад +2

    not sure I'd call this one legged

  • @andreiiatagan3820
    @andreiiatagan3820 Год назад

    3D printing pulleys with smaller teeth (gt2, for example) can work better if printed using smaller nozzle sizes (0.3) (the teeth geometry is closer to what it should be)

  • @TFlorian
    @TFlorian Год назад

    12:30 I didn't see how you expect the rotation in mid- aire 🙂
    13:48 no so sure ...
    14:22 ok this is a interesting approach
    -> to get the rotation you have to keep longer time the poser on the opposite site to the requested momentum to made the rotation of the "head"
    Note : If you reduce the size of the leg, you will increas the rotation speed, not sure it's the "best" start
    I think it could be interesting to test this

  • @DavePetrillo
    @DavePetrillo Год назад

    It still seems like you probably are exceeding the torque you will need to jump from those belts on the small pulley. Also, it should not be very hard to get a back of the envelope idea of the jumping capacity of the robot by looking at the force to bodyweight ratio of the legs. Now that you have a model and a motor chosen, just do a quick calculation for the force the leg can generate at stall and compare it to other jumpy robots. MIT mini cheetah achieves 1.7:1 force to bodyweight ratio per leg and uses mainly its back two legs to get airborne for its backflips.

  • @EatRawGarlic
    @EatRawGarlic Год назад

    Is there a way to see if the subscription to the Nvidia conference via this channel was successful? By the way, are there no graphics cards in the raffle this time?

  • @TheNamelessOne12357
    @TheNamelessOne12357 Год назад

    It's 3 axis delta-robot. It cannot tilt lower platform, only move it parallel to the ground. It might jump, but it will definitely fall over when it lands. You'll need 6 axis in order to tilt platform to jump into specific direction and land at the destination angle. And platform should be larger for such size and weight.

    • @JohnMeacham
      @JohnMeacham Год назад +1

      It's not a parallel delta because it doesn't have the 2 legs on each side that force them to be parallelograms, that is what forces the translation only mode of normal deltas constraining the head to be parallel to the base. It will be able to tilt without that.

    • @TheNamelessOne12357
      @TheNamelessOne12357 Год назад

      @@JohnMeacham Then resulting tilt is unpredictable and robot wil definitely fall during landing.

    • @JohnMeacham
      @JohnMeacham Год назад +1

      @@TheNamelessOne12357 no because the shoulders are not universal joints, they can only swing in one direction. so you have 2 less degrees of freedom in each. The parallelograms on the arms of a parallel delta are what gives each arm the ability to translate side to side. That is constrained on this design so there can be no translation leading to a fully constrained system again. You effectively trade off translational degrees of freedom for rotational ones.

  • @emek1101
    @emek1101 Год назад +3

    I think it could work jumping vertically and would work better with some weight reduction. jumping horizontally would probably need some clever code like you said, but I cant see any reason mechanically why it wouldn't work. Also, the small bearings that you pointed out at 7:39 have such a small range of motion that you could experiment with replacing them with some sort of 3d printed compliant mechanism. axial load could still be a problem if they were just replacing the bearings, but they could be printed as an extrusion to use the whole height that the bearings take up, hopefully making them quite stiff and strong axially. I was thinking of something like they showed in this video: ruclips.net/video/rUH3cDmeXC4/видео.html . it might be overcomplicating it but it could help. Good luck!

  • @PPYTAO
    @PPYTAO Год назад

    I know nothing about robotics or math but surely this can all be calculated?
    Are there go-to models for this kind of specific movement?
    Intuition tells me it would work better with longer legs as there'd be more dampening, which you might need for a longer pause between jumps, but I suppose a lot of that can be incorporated into the motor control with acceleration and deceleration profiles for jumping and landing. There's probably a more ideal ratio for the leg lengths, I feel the top leg should be slightly shorter than the bottom one, I dunno what that ratio would be though maybe 2:3 - 1:2 or somewhere in that sort of vicinity for this weight (I feel like a much lighter robot, would end up with much longer bottom legs than top ones, closer to 3:5 and up as it tries to concentrate it's mass into a more top heavy configuration). All of this is an uneducated guess so if I'm way off pls don't roast me.

  • @themarsoff
    @themarsoff Год назад

    Здравствуйте, какой пластик для печати вы используете в моделях?

  • @nickstaves
    @nickstaves Год назад

    Как по мне - прыгать будет, но, без падений, только на расстояние половины подошвы. Кинематика с приданием обратного вращения не очевидна. Момент обратного вращения скорей всего будет подавлен моментом прямого вращения обусловленного весом верхней части модели. Возможно смещение центра масс, но тогда момента моторов может не хватить.
    Но эксперимент на то и эксперимент чтобы пробовать.
    А можно сразу перейти в дельта робот и научить уверенно прыгать его ;)

  • @pisoiorfan
    @pisoiorfan 11 месяцев назад

    How high did it jump?

  • @NicholaosBourla
    @NicholaosBourla Год назад

    Где вы применяете эти роботы?

  • @thomashays68gmail
    @thomashays68gmail Год назад

    This will be fanfreakintastic! Imagine the sound cannons mounted on the bouncy terminator CloneTrooper's, they come bouncing in "Do not resist. You are being liberated! Do not resist! You are being liberated! Do not resist! You are being liberated!" The faceplates fall away and the Trump troopers hope lok step towards the nearest airfields. There the "Liberation Camps" could be established and the Soilent Green can start to be produced from the dissenters. 😁👍

  • @FullFledged2010
    @FullFledged2010 Год назад

    No please continue this project! This is some Boston dynamics level stuff. Actually Boston dynamics started out as "The leg lab" with robots like these 😉

  • @parvuselephantus
    @parvuselephantus Год назад +1

    I do not get whole topic on rotation there. If it's going to jump with some movment, then some legs need to jump with more force then others. You are not able to control (modify) the rotation during the flight fase of jump. Because the top seems heavy and bottom light - perhaps you will be able to put the bottom part of robot in proper way just before landing.

  •  Год назад

    Great robot! It works as good as a Russian Special Operation. Don't forget to attach battery to it. Keep up the good work.
    Slava Ukraini.

  • @Jkauppa
    @Jkauppa Год назад

    grass hopper robot huh

    • @Jkauppa
      @Jkauppa Год назад

      3 legged leaf spring grass hopper stand with line leg tension like a cross bow

    • @Jkauppa
      @Jkauppa Год назад

      yes stay home, congress goers :)

    • @Jkauppa
      @Jkauppa Год назад

      who would you need to meet anyways, or talk to

    • @Jkauppa
      @Jkauppa Год назад

      try 3d printing the bearing to the axles directly, just coat the surfaces with graphite putty lubricant

    • @Jkauppa
      @Jkauppa Год назад

      bearing without ball bearings, just graphite surfaces bearing

  • @nesbionics
    @nesbionics 8 месяцев назад +1

    Dear friend, I like your projects but the same thing always happens to me when I finish seeing them, you just do the 3D printing and put it together and then????? .... 90% of your projects I never see them work, which is what happens or I missed the video and didn't see it. If so, I apologize but what is the continuation of this video?

    • @Skyentific
      @Skyentific  8 месяцев назад

      This project requires very sophisticated control protocol. And I was hoping that one of my viewers will help me with this. But unfortunately, nobody was interested enough to help me. I am not really good with software, to do this alone.
      Generally, if I see very little interest to the project, I don’t continue with it. Unless it is something extremely interesting for me personally.

    • @nesbionics
      @nesbionics 8 месяцев назад

      @@Skyentific Dear, I'm not a genius, I don't work with Arduino, I make my own boards with Atmel but I can gladly give you a hand, I think you have the ability to make very good projects

  • @bonafide9085
    @bonafide9085 Год назад

    I would make a mechanism where high torque is used to store enery in some spings with a trigger mechanism where the stored energy could be released instantly. i think your approach is not going to work. sorry.

  • @MartinoDesign99
    @MartinoDesign99 Год назад

    I sent you a message on Patreon, Can you pleas reply. Thank you

  • @gulogulo7636
    @gulogulo7636 Год назад

    That's 3 interconnected leggs not one!

    • @Skyentific
      @Skyentific  Год назад

      But they work like a single one. It has the same degrees of freedom like a single robot dog leg for example

  • @pascalladalemdr
    @pascalladalemdr Год назад

    don't think it's works with belts :/

  • @mikstratok
    @mikstratok Год назад

    first use it upside down to launch balls

  • @jionglin7166
    @jionglin7166 Год назад

    6 Degrees of Freedom state controlled by 3 motors, it won't work.

  • @nexpro6985
    @nexpro6985 Год назад

    This ia NOT a single leg robot.

  • @PPYTAO
    @PPYTAO Год назад

    Super interested to follow along with this 🫡