Robotics Programming: Building an Autonomous Mobile Robot | Arduino Lab Series

Поделиться
HTML-код
  • Опубликовано: 10 сен 2024

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

  • @MartinL7012
    @MartinL7012 3 года назад +7

    Very nice tutorial.
    I would like to make just one comment,
    on the line
    const int WHEEL_CIRCUMFERENCE = 10.0531
    should probably be correct
    const float WHEEL_CIRCUMFERENCE = 10.0531

    • @CodingCoach
      @CodingCoach  3 года назад +4

      I can't believe i missed that! Thank you! It is chopping off the .05 with the int type which will become noticeable the longer the robot travels. No idea why I typed int there.

    • @gab882
      @gab882 3 года назад

      lol... this kind small errors happens so often in our programming world while troubleshooting, it is so funny.

  • @someDude809
    @someDude809 3 года назад +7

    This content should be much more watched on RUclips. Sometimes even better than the content of the 'big' robotic chanels. Great work 👍

  • @pranshuraj3801
    @pranshuraj3801 3 года назад +5

    most under rated channel on RUclips regarding electronic stuff. Highly appreciate your work!!!!

  • @sky-jx1rk
    @sky-jx1rk 11 месяцев назад +1

    this pokemon (kindaa) music hooked me as well as explanation ofcourse :)

  • @eclecticlife
    @eclecticlife 2 года назад +1

    I am building an autonomous mower and your video has helped me tremendously. Thank you!

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

    Best explanation I have found to date on using encoders to control (fairly) precise navigation. Since I am new the fact that you explain everything in detail is helpful. Your explanation around avoiding an additional 'while loop' to determine the stopping point was instructive. I am looking forward to the remaining videos in the series. Many thanks!

  • @PaulReedmanreedmanit
    @PaulReedmanreedmanit 3 года назад +2

    This is an exceptionally good tutorial on robot programming. Thank you. I will be watching more as I have purchased the robot you show in your video.

  • @alekspavlinik2240
    @alekspavlinik2240 3 года назад +5

    Great video!

    • @CodingCoach
      @CodingCoach  3 года назад +1

      Thanks! Happy New Year, hope all is well!

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

      ​@@CodingCoach waiting foe new videos😊

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

    I try to add the time of flight sensor opt3101, thanks for your example, lets see what i'll come up with :)

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

    Thank you so much

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

    Thank you for your time n efforts!
    I was looking for gradual increase/decrease in motor speed for an input trigger which your video covered.

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

    I might be very late to get an answer but how to know the tick per rotation of the motor?? I am not using Pololu product but an offbrand N20 with a magnetic encoder.

  • @vikassinha9557
    @vikassinha9557 3 года назад +2

    awesome video
    please start series with raspberry Pi

    • @CodingCoach
      @CodingCoach  3 года назад +1

      That is a great idea for the next robotics series. remember that if you want to try this on a raspberry pi you would only have to simply convert the algorithms to Python or whatever programming language you're using from C. The math is all the same.

    • @vikassinha9557
      @vikassinha9557 3 года назад +2

      @@CodingCoach I have subscribed your channel hopeing for long learning series with you. your way of teaching is awesome please make a series of this.

  • @DaveScottADV
    @DaveScottADV 2 года назад

    Great video so far. Just one thing to note: your robots shown at the 3:00-4:00 mark aren't holonomic. Skid/tank steer is still considered nonholonomic.

  • @MakingRoboticsColombia
    @MakingRoboticsColombia 3 года назад +2

    Buen video, gracias por la explicación 🦾

  • @25.muhammadhilmihaidary60
    @25.muhammadhilmihaidary60 Год назад

    thank you so much sir.

  • @BennyBern
    @BennyBern 3 года назад +3

    Hi
    Great video! Thanks a lot. I have a question, how the robot knows to stop exactly on the blue sticker on the floor? Is this a RFID sensor? Color sensor? Or are you using some kind of geo-localization?
    I would really appreciate your help. Thanks

    • @CodingCoach
      @CodingCoach  3 года назад +3

      wheel odometry.. The robot has a goal location in x,y space, say 100, 100 and starts at a location like 0,0 with a starting angle say 0. From there It is all math. The feedback loop is the amount of rotation of the wheels.

    • @BennyBern
      @BennyBern 3 года назад +1

      @@CodingCoach Thanks ! I think i got it

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

    how to do the getcountsandreset(); for an individual arduino with motos with free encoders..!

  • @noa7784
    @noa7784 3 года назад +1

    still works even using Pololu 3pi? Not with a plus (+) variant?

    • @CodingCoach
      @CodingCoach  3 года назад

      The environment's the same they both use similar Arduino based processors. The big difference though is that the 3pi does not have wheel encoders. And I use them extensively..
      The zumo is another good option and I believe that one has wheel encoders.

  • @ninjaoftherift1620
    @ninjaoftherift1620 8 дней назад

    Im a computer engineering interested in robotics and embbed systems and CAD design

  • @vikassinha9557
    @vikassinha9557 3 года назад +1

    please create more video on this series without use of pololo robot just simple robot with bldc motor rotary encoder and ultrasonic sensor with servo
    pololo is costly and most of us are not having it that's why at a cheaper rate please try same video with bldc motor and ultrasonic sensor with servo

    • @CodingCoach
      @CodingCoach  3 года назад +1

      That is a good idea, I know that many enjoy building the robot. I have this video on the assembly of the elegoo smart car: ruclips.net/video/5CNjEY0LCwA/видео.html but the fact it has 4 wheels does not make it a good candidate even if you add encoders. When I am done with the initial series I will do a video on the $15 2 wheeled chassis I showed in the video with the elegoo parts on it and the encoders. As I mentioned in the video remember you can use any similar robot for this series it does not have to be the pololu. The algorithms discussed will be the same any the tuning of the robot will be different. Thank you for the feedback!

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

    I want to build a robot that will chase my cat by sensing him but it won't hit him. It retreats when he approaches it and it plays sounds of a cat meowing. Infact, it can follow me around too just like he does.
    We had to move into an apartment and gave up his brother and sister that he played with. Now he's getting fat and lonely. I thought building him a companion would be perfect for him and I get to learn how to build a robot - something I always wanted to do. I'm 63, teach middle school and needed a hobby to destress after working with screaming kids all day. Can you help me out with this? Thanks, Mike

  • @codecage9333
    @codecage9333 3 года назад +1

    You mention the number of clicks per one revolution of the motor shaft, but I lost you on how to figure what number was needed for the Turtle or Hyper Edition! And even how you got 12 for the Standard Edition. How did you come up with these numbers?

    • @CodingCoach
      @CodingCoach  3 года назад

      Good question!
      Starting here: www.pololu.com/docs/0J83/5.4
      "he encoders provide a resolution of 12 counts per revolution of the motor shaft when counting both edges of both channels. To compute the counts per revolution of the wheels, multiply the gearboxes’ gear ratios by 12. For example, if 30:1 motors (which have gear ratios more accurately specified as 29.86:1) are used, the encoders provide 29.86 × 12 ≈ 358.3 CPR. The exact gear ratios of our Micro Metal Gearmotors are specified on their product pages."
      The product pages for the motors on the standard edition (30:1): www.pololu.com/product/2364
      "This gearmotor is a miniature medium-power, 6 V brushed DC motor with a 29.86:1 metal gearbox"
      and the turtle edition (75:1): www.pololu.com/product/2366
      "This gearmotor is a miniature medium-power, 6 V brushed DC motor with a 75.81:1 metal gearbox"
      Note, i did not include the hyper edition here, but if you have it just look up the 15:1 ratio motor 6v

    • @codecage9333
      @codecage9333 3 года назад

      @@CodingCoach I guess my real question was about the number "12." Is that a fixed number for all motors? A comment, or a way you made reference to CLICK_PER_ROTATION, gave me the impression that this number might be different for different editions of the 3Pi+. But I saw no way to derive a different number. Is that number based on the encoder itself and remains the same for all editions. Thanks for the quick reply by the way!

    • @codecage9333
      @codecage9333 3 года назад +1

      @@CodingCoach Well the answer was staring me in the face the whole time! "The encoders provide a resolution of 12 counts per revolution of the motor shaft..." The encoders refer to the encoder used and have nothing to do with the motors themselves! Blind in one eye and can't see out of the other!

    • @CodingCoach
      @CodingCoach  3 года назад

      @@codecage9333 you got it!

  • @venusgutierrez1655
    @venusgutierrez1655 2 года назад

    Hi Sir! I would like to ask if what sensor will be use in order to move in different direction such us in hospital. There will be a button or a remote that dictates where the robot will go. For example, I click on room number 101, how will the robot detects a room and deliver the food inside of it(room). First we will use the line follower robot then we don't have an idea on how the robot will go inside the room because of the different direction. Thank you in advance Coach

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

      You could use predefined coordinate for each room as an address for the robot

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

    Nice video!! But why did you stopped uploading new videos?

  • @alancurtis-engineeringdiym5872
    @alancurtis-engineeringdiym5872 2 года назад

    It is cool robot

  • @briancoppola7317
    @briancoppola7317 3 года назад

    I'm running into an error. I followed the entire video and I got everything to work, but in the end, I unplugged the USB from my robot because I wanted it to run without being tethered to the computer. When I unplugged I received this error:
    avrdude: ser_open(): can't set com-state for "\\.\COM3"
    An error occurred while uploading the sketch
    Error while setting serial port parameters: 57,600 N 8 1
    It's not recognizing the port I plugged into anymore. I tried to run the same code again on a different file, but I still ran into the same error.
    Any advice on how to go about fixing this?

    • @CodingCoach
      @CodingCoach  3 года назад

      1. In Arduino studio, sure to double check tools -> board and make sure it is set to "Pololu A-Star 32u4" and also tools -> port and make sure you select the correct one. Also it never hurts to reboot your computer and start fresh.
      2. If that does not work, try opening an example sketch (like blink) and see if you can flash that.
      3. If none of that works, let me know you might have to reset the bootloader see : www.pololu.com/docs/0J83/10.1

    • @briancoppola7317
      @briancoppola7317 3 года назад

      @@CodingCoach All the settings I have match up with what you stated above and I received the same error again when I ran the blink program.

    • @briancoppola7317
      @briancoppola7317 3 года назад +1

      @@CodingCoach I just finished going through the uploading-before-bootloader method from Pololu and I got everything back to normal! Thank you for the assistance. I'm looking forward to the upcoming semester!

    • @CodingCoach
      @CodingCoach  3 года назад +1

      great work!

  • @study_sounds1113
    @study_sounds1113 2 года назад

    do you have a video on waypoint finding?

  • @MuhammadHamza-ki3ze
    @MuhammadHamza-ki3ze 2 года назад

    Please make the same project in arduino