The Ultimate Guide to using Motors in Robotics (including ROS, Raspberry Pi)

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 พ.ค. 2024
  • Jump straight to 24:25 for the finished product!
    Learn everything you need about adding a motor to your robot, including how to connect it to a Raspberry Pi running ROS!
    Repo for Arduino firmware github.com/joshnewans/ros_ard...
    Repo for serial_motor_demo ROS package github.com/joshnewans/serial_...
    Here are a few videos explaining/demonstrating aspects of PID control (thanks to Eric Mack for the suggestions!). Hopefully some day I'll get around to making my own...
    Simple Visualisation - • PID control
    Technical Explanation - • PID Controller Explained
    Physical demo - • PID demo
    00:00 - Intro
    00:27 - A layered solution
    01:25 - Basic power, motor drivers
    02:57 - Motor Controllers (open and closed loop)
    05:53 - Pi as motor controller (?), comms link
    07:21 - Robot controller and software driver
    09:30 - Demo circuit overview
    10:38 - Wiring the motor driver
    12:53 - Making the motor controller, open-loop test
    15:56 - Encoders and closed-loop control
    22:00 - Setting up ROS driver
    24:25 - Using the control UI, outro

ความคิดเห็น • 205

  • @DanielJoseMP
    @DanielJoseMP 6 หลายเดือนก่อน +84

    Could you make a video for people starting this hobby? Like showing what things to buy, mistakes to avoid etc…

    • @henriquecastro4707
      @henriquecastro4707 6 หลายเดือนก่อน +4

      That would be great 😊

    • @MemoxCid
      @MemoxCid 3 หลายเดือนก่อน +1

      In the web page he have this

  • @CyberHak
    @CyberHak 11 หลายเดือนก่อน +41

    I was so overwhelmed with the complexity of robot making, AI, deep learning, Lidar. Coral TPU, Hexapod design, drones. neural networks, Raspberry Pi, Linux. I could go on. I love it all but have so much to learn. I watch your videos and feel more confident about all this shenanigans. Can't wait to watch more of your videos. Top man.

  • @evanlane1690
    @evanlane1690 ปีที่แล้ว +63

    This is so much better than most ROS tutorials out there from a learning perspective! Excellent job! Most other tutorials out there barrel ahead with terminal commands with no context or practical hardware examples. Thank you!

  • @timjack5312
    @timjack5312 ปีที่แล้ว +5

    It is hard to find such a good tutorials series of ROS2. Thank for your sharing!

  • @tonynajjar4893
    @tonynajjar4893 ปีที่แล้ว +7

    Great explanation! I love how you threw in cutting-edge ROS2 in there!

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +2

      Thanks :D

    • @jimbrownza
      @jimbrownza ปีที่แล้ว

      .... while at the same time using a motor driver that is about 40y or so old, and which has been superseded by loads of more energy efficient mosfet based products that don't need a heatsink the size of a car radiator.

  • @jessenagy9302
    @jessenagy9302 6 หลายเดือนก่อน +1

    I have subscribed! You are doing a great job helping people learn the skills we always wanted but didnt have access to.

  • @autumnreed2079
    @autumnreed2079 3 หลายเดือนก่อน

    Thank you so much these videos are amazing! I just started my journey of learning about robotics and control systems and this is making it much easier to get into this coming from a person with a theoretical physics background barely any electronics.. :)

  • @azraelsoluna110
    @azraelsoluna110 ปีที่แล้ว

    Yes to Videos on Motors! Great video!

  • @J_A-_
    @J_A-_ ปีที่แล้ว

    Id really like a video on what motors are best for what purpose, thanks for the video!

  • @Yu-kt7ph
    @Yu-kt7ph ปีที่แล้ว

    Thank you for your guide!!!! That must be helpful for my future project.

  • @arts5821
    @arts5821 ปีที่แล้ว

    Good job! Ceep work on these projects, thanks for content!

  • @sebastianrada4107
    @sebastianrada4107 9 หลายเดือนก่อน

    Great video. Please make a video about the types of motors and how to choose them.

  • @artemt1987ify
    @artemt1987ify ปีที่แล้ว +2

    Amazing and so helpful video. Would be great to have a list of all things used in this video. Wondering what is a ground regulator (its on the top left side)

  • @TheRaidingGamer
    @TheRaidingGamer ปีที่แล้ว +32

    This is a great guide to robotics for beginners. Covers more *practical* material than a 4000 electro-mechanical devices class for mechanical engineers lol. Although terminology may be the limiting factor for some but aside from the lingo this is perfect. I'm SHOCKED that this doesn't have at least 100,000 views. Great work!

  • @naum900
    @naum900 6 หลายเดือนก่อน

    Very well presented! Thank you.

  • @mohankrishnan2022
    @mohankrishnan2022 11 หลายเดือนก่อน

    Excellent presentation!

  • @dgb5820
    @dgb5820 ปีที่แล้ว

    Absolutely awesome video

  • @ramsha8833
    @ramsha8833 2 หลายเดือนก่อน

    I love it. Its heaven for robotics beginners

  • @maheshpatel2005
    @maheshpatel2005 6 หลายเดือนก่อน +1

    Nicely explained

  • @rogernunn1
    @rogernunn1 6 หลายเดือนก่อน +1

    I would like to control the suspension on a model car ( made in meccano) based on feedback from an electronic gyroscope. It is supposed to keep the body of the car level whatever the terrain. My plan is to use a raspberry pi with an electric motor that is linked to the suspension, so your demonstration is well on the way to what I want to achieve.

  • @JIM94K
    @JIM94K 6 หลายเดือนก่อน +1

    Thanks for the great series Josh!
    Do you have any tips or good resources for adding a servo motor to the project, perhaps using the microcontroller, and being able to control it from the gamepad? For example putting the camera on a tilting mechanism so that you can pan up and down?
    If anyone else has done this or a similar case, I'd love to hear from you!

  • @ChillGuy511
    @ChillGuy511 6 หลายเดือนก่อน +2

    A video on motor types and how yo choose them would be so awesome! I clicked on this expecting just that! Still gonna watch it though... Seems cool enough!

    • @Kit-Alpha
      @Kit-Alpha 2 หลายเดือนก่อน

      I second that! I have spent weeks trying to figure out the type of motor I should use. I've looked at the formulas for calculating torque etc. but for some reason, it just won't "click".

  • @shyamkganatra
    @shyamkganatra ปีที่แล้ว

    yes a video on different types of motor would be great

  • @freddiehong
    @freddiehong ปีที่แล้ว

    This video is great! Thank you 😊

  • @jonathanr4242
    @jonathanr4242 4 หลายเดือนก่อน +2

    Excellent. Got everything working in that video. Had to run "sudo apt remove brltty" to get the serial port to recognise the arduino.

    • @adwaitingle2315
      @adwaitingle2315 2 วันที่ผ่านมา +1

      What's that exactly and why to use?

    • @jonathanr4242
      @jonathanr4242 2 วันที่ผ่านมา

      @@adwaitingle2315 it's the Braille terminal. Josh goes over it in his ready to humble video which is on the same play list as this.

  • @GiovanniChrisanto
    @GiovanniChrisanto ปีที่แล้ว +2

    Great video! I have been following through the series.
    I just wondering, when you did the open loop control to get the thick count, did you run it on full speed (255)? I would love to watch the PID control video if you make one later. Thanks!

  • @PP-fh2mk
    @PP-fh2mk ปีที่แล้ว +5

    I REALLY LOVE THIS PROJECTS

  • @umeshy
    @umeshy 11 หลายเดือนก่อน

    Thanks for posting, please make video on explanation on different kind of motors, thanks

  • @FuzzyOne37
    @FuzzyOne37 8 หลายเดือนก่อน +2

    Great video. Just getting started with ROS. You mentioned that the L298 motor controller isn't the best, but it will do. I agree. What other motor controllers would you recommend or have experience with? Thanks for your time!

  • @obensustam3574
    @obensustam3574 ปีที่แล้ว +1

    I really like they way how you went step by step through the topics. Maybe you can explain the ROS side more deeply for future projects. Thank you.

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +1

      Thanks! Yeah as much as I tried to cram as much as I could into it, there really is so much more to say on the topic - I have a never-ending list of ideas to get through!

  • @werkstattkreuzberg4234
    @werkstattkreuzberg4234 3 หลายเดือนก่อน

    Good overview for beginners!

  • @isthattrue1083
    @isthattrue1083 ปีที่แล้ว +6

    Yes, if you haven't already made a video on the motors, please do. Would you also include examples of situations you could use each motor type?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +1

      Yep, it's definitely on my list of videos to make after I've finished this current series :)

  • @GodsLittlegizmoguy96
    @GodsLittlegizmoguy96 8 หลายเดือนก่อน

    First, thanks so much for these tutorials! They are great!
    When I run miniterm, I have to use baudrate of 9600, not 57600 in order to not get English out. And it outputs a whole bunch of "sensor=xxx ouput=xxx" lines, but it will not take in any motor commands to get the motor running. Apparently many changes have since been made to the arduino code?

  • @ironrider4526
    @ironrider4526 ปีที่แล้ว +2

    Very good explained video!

  • @sinankuniyilathoot5188
    @sinankuniyilathoot5188 ปีที่แล้ว

    Just great 🔥🔥🔥🔥🔥

  • @jeffreyjene
    @jeffreyjene ปีที่แล้ว +1

    This whole series has been terrific, with clear and concise explanations and instructions. I have had one issue I haven't been able to figure out. I have wired up these motors six ways from Sunday. I've studied the diagrams and the setup on the video and duplicated it perfectly. Even so, when teleop-ing I find the motors run fine forwards and backwards, but when using j and l to turn left or right, the controls are reversed! Left goes right and right turns left. Seems weird, as turning just consists of one wheel going forwards and the other backwards. I've tested this with a joypad as well with the same results. No combination of wiring I've tried seems to work. If I wire up by switching the pins then left and right are fine, but forward and backward are then reversed. Ive even tried reversing the motor leads. If anyone else has found this to be a problem and have found a solution please drop me a note.

    • @jeffreyjene
      @jeffreyjene ปีที่แล้ว

      I figured it out, I had my encoders on the wrong pins. Duh.

  • @chriskeefe3219
    @chriskeefe3219 23 วันที่ผ่านมา

    Great video!

  • @Nihalmoneymaker
    @Nihalmoneymaker ปีที่แล้ว +1

    Great Video!! Please make a video on motors.

  • @tlmoller
    @tlmoller 3 หลายเดือนก่อน

    Open loop is just fine in case of a stepper motor. This give very good control and is used in all kind of systems including 3D printers.

  • @messerschmidtfpv4419
    @messerschmidtfpv4419 ปีที่แล้ว

    i love it. works fine for me.. big thanks..

  • @akeelwall8449
    @akeelwall8449 ปีที่แล้ว

    awesome tutorial many thanks

  • @dr.jacintorodriguez7559
    @dr.jacintorodriguez7559 ปีที่แล้ว +7

    I love the way you systematically explain complex topics. What software do you use to create your beautiful diagrams/flow charts for your videos?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +3

      Thanks! 90% of my diagrams are done using Inkscape as white lines/text on a transparent background. I edit in DaVinci Resolve, so I use its compositor (Fusion) to take the static images from Inkscape, overlay them on the background, fade in/out, do extra lines, etc.
      In addition to that, there are bits and pieces done in GIMP, Blender, and Manim. And, for what it's worth, all done on Linux!
      I hope to do some more theory/concept stuff in the future and make better use of manim (originally created by Grant Sanderson for his channel 3Blue1Brown) :)

  • @sinankuniyilathoot5188
    @sinankuniyilathoot5188 ปีที่แล้ว +12

    Only ROS CHANNEL that makes sense

  • @woncheollee4297
    @woncheollee4297 9 หลายเดือนก่อน +1

    Thanks your Guide to using Motor tutorial. Can you please detailed pictures or diagram wire connection of 12 DC encoder motor to Arduino Nano?

  • @karanbirchahal3268
    @karanbirchahal3268 ปีที่แล้ว +1

    Amazing !!!

  • @christophermacier
    @christophermacier 11 หลายเดือนก่อน +2

    Awesome tutorials. I am teaching myself Python now so I can start coding my own robots. These tutorials are great for the hardware side and how to get things setup with ROS. Thank you much! Oh and do you have links for the DC motors you are using with the built-in encoders?

    • @atticusrussell1225
      @atticusrussell1225 11 หลายเดือนก่อน

      I looked up Yahboom 4wd chassis and got a chassis with a set of motors with encoders. Hopefully this helps

  • @infestus5657
    @infestus5657 ปีที่แล้ว

    Underated Video

  • @ALLAHinElcilerindenBiri
    @ALLAHinElcilerindenBiri 9 หลายเดือนก่อน +1

    Can we also control torque?

  • @unichurchunsw1286
    @unichurchunsw1286 ปีที่แล้ว

    great work!

  • @kardousyoussef4338
    @kardousyoussef4338 ปีที่แล้ว

    great video
    can you upload the modified version of RosArduinoBridge for arduino nano and l298n ?

  • @tkdefender8870
    @tkdefender8870 ปีที่แล้ว +3

    What motors do you use that have the encoders built on? Can you include links or model numbers?

  • @midnighttutor
    @midnighttutor 4 หลายเดือนก่อน

    Great informative presentation! Could you please comment: If you would like to put a robot with motor control into actual use, say to raise and lower a convertible top on a car as an example, you are not going to have it hooked up to your laptop. What is the missing link or next step to get the robot self contained in a production environment, so to speak? Thank you.

  • @agrimekatronik321
    @agrimekatronik321 ปีที่แล้ว

    Hello, first of all thanks a lot for these tutorials.
    I am using as5600 magnetic encoder for close-loop control of motors. So I can't use your code because encoder is communicating via I2C from analog pins of arduino uno. My question is: Which topics do I need to subscribe(cmd_vel) in order to make it work. For example, I know that I need to subscribe to cmd_vel to get wheel velocities from ros and move the robot, but where do I need to publish wheel velocities or positions to do navigation?

  • @miniminerx
    @miniminerx ปีที่แล้ว

    FINALLY A GOOD TUTORIAL ON HOW TO STRUCTURE A GOD DAMN ROBOT

  • @edupedika
    @edupedika 7 หลายเดือนก่อน

    Instead of gear motor is it possible to use Bldc motor ????

  • @pasquentmax
    @pasquentmax 18 วันที่ผ่านมา

    Hello, great video I learned a lot, thank you! A question, can I replace the arduino by the Raspberry Pico? What should I do about it?

  • @jonron3805
    @jonron3805 6 หลายเดือนก่อน +1

    I would like to see a video on different motor types

  • @OZtwo
    @OZtwo 5 หลายเดือนก่อน

    My latest project I'm starting on is a simple eye that will follow you around the house. I have most of it yet still need to work out how to track sound using a Raspberry Pi. Any good tips?

  • @arvinmistry9744
    @arvinmistry9744 2 หลายเดือนก่อน

    Excellent good vedio please make more vedio

  • @ranikinnal3413
    @ranikinnal3413 6 หลายเดือนก่อน +1

    I've been following your series and its really useful and informative!!
    Can u please share a link i can access the video on motors selection(as mentioned in time stamp - 1:16) if its aired already? If not i hope you can make one, would be really helpful! @ArticulatedRobotics

  • @h7opolo
    @h7opolo 6 หลายเดือนก่อน +2

    9:03 whoa, youtube made the "subscribe" button animate when you ask viewers to click it during your video. so cool.

    • @vatsal9005
      @vatsal9005 2 หลายเดือนก่อน +1

      wow, didnt notice that

  • @priyamd4759
    @priyamd4759 หลายเดือนก่อน +1

    Liked and subscribed.

  • @emreucar1888
    @emreucar1888 ปีที่แล้ว

    Very good video. Can you make a video for rosserial for ros2 ?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +1

      Thanks. I think last I checked there was no version of rosserial for ROS 2? It's a long time since I looked into it though. I'll keep it in mind for the future :)

  • @blaircox1589
    @blaircox1589 8 หลายเดือนก่อน

    I love your video on murders!!! 😁

    • @ArticulatedRobotics
      @ArticulatedRobotics  7 หลายเดือนก่อน +1

      Hahaha it took me a minute to understand!

  • @whysoairyair
    @whysoairyair 2 หลายเดือนก่อน

    Amazing video, really well explained.
    Im having an issue with only the pins connected to D2 and D3 are being counted on the encoders, no other pins would count the encoder readings. it looks like there's an issue with the interrupt pins, which is the arduino nano has only two - INT0 and INT1 on D2 and D3 but its working for you in the video so i cant be so sure
    i've tried swapping the encoders too, both are working perfectly but its just D2 and D3 that count.
    and this code wont work on an Arduino Mega :/
    PS: im using OE-37 Hall Effect Encoders - mounted seperately
    any suggestions?

  • @edwingeorge5264
    @edwingeorge5264 5 หลายเดือนก่อน

    currently i have SPG 30 E gear motor is it possible to use this method for getting values from motor to ros? and iam using Noetic

  • @owletkami8018
    @owletkami8018 ปีที่แล้ว

    I would actually love to see the motor video on how to choose them and how to control the various types of motors (induction, DC, Universal, AC, 2-phase, 3-phase) what does it all mean for my project making journey?

    • @messerschmidtfpv4419
      @messerschmidtfpv4419 ปีที่แล้ว

      That would be too much. accompany mr newans on his journey. it's going to be interesting enough

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +1

      Haha thank you, I'm glad to have you both along for the journey!
      I would like to make some videos going deeper into those different motor types, but at this rate that will probably be a very long ways off (like 12 month+)
      I hope to do one on Brushless DC motors in the shorter term (maybe in 6 months or so) as they are very relevant to the hobby and small commercial robotics that I'm focusing on at the moment.

    • @messerschmidtfpv4419
      @messerschmidtfpv4419 ปีที่แล้ว

      @@ArticulatedRobotics I would like to rewrite the Rosbridge for Arduino so that 4 of the 12V DC motors can be used and read. check out my channel for the reason :)
      I look forward to continuing my journey with you.

  • @olubukolaogunsola5864
    @olubukolaogunsola5864 9 หลายเดือนก่อน

    Great video; how can I use L293D as the motor driver? that's what I have, and it's quite different from the one you used,?

    • @ArticulatedRobotics
      @ArticulatedRobotics  9 หลายเดือนก่อน

      I'm not sure, I have not used the L293D, sorry. I thought they were fairly similar though? It is a long time since I have looked.

    • @olubukolaogunsola5864
      @olubukolaogunsola5864 8 หลายเดือนก่อน

      @@ArticulatedRobotics, thanks for the response. I found out it is much different. I decided to buy L298

  • @user-hn1ke7gl5u
    @user-hn1ke7gl5u ปีที่แล้ว

    how can i use this to wire 4 motors instead of two with Arduino also? if there is a link that can help

  • @jubabi_studies4462
    @jubabi_studies4462 ปีที่แล้ว

    Hello, thank you for this video, please how can i use the same thing but with ESC and brusless motor ?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว

      Yeah a lot of people have asked for that! I will definitely do that eventually, but probably not too soon as I have a lot of other topics coming up :)

  • @arjunm2412
    @arjunm2412 ปีที่แล้ว

    If I need to add IR proximity sensors in the robot in which part I need to change the code

  • @lion87563
    @lion87563 4 หลายเดือนก่อน

    To make a parallel between real robot and the Gazebo simulation, we can say that teleop_twist_keyboard node is Robot Controller and control plugin node (for example gazebo_ros_diff_drive) is Motor Controller. Is this correct?

  • @stopgox
    @stopgox ปีที่แล้ว

    I want to drive 4 brushless gear motors (mecanum wheels) that have built-in encoders, there are 5 wires coming out. I need a cheap driver one for each wheel any suggestions. Thanks for the great vid.

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว

      Thanks! My experience with brushless motors is actually pretty limited unfortunately (something I am keen to explore more in the future). Do you have a link to the particular motors I could look at? Some have a driver on-board.
      The main brushless driver I am aware of is ODrive (odriverobotics.com/) but it is not cheap. Some similar ones are reviewed here th-cam.com/video/Wb1gsJ4K4pM/w-d-xo.html
      Alternatively you may have luck using an esc like those used for drones and then wrap that in a closed-loop control of some kind using the encoders.
      Sorry I couldn't be more help, like I said I definitely want to dive deeper on this in the future!

  • @frankfurtdynamics2783
    @frankfurtdynamics2783 11 หลายเดือนก่อน +1

    Hi I used exactly the same code but I don't recieve any encoder Data. I checked the encoder manually with an Oscilloscope and it works. So I believe it has to be a problem with the code. Any idea?

  • @ahmedhelalmahmoudhassanmah3028
    @ahmedhelalmahmoudhassanmah3028 หลายเดือนก่อน

    Please, can you send the link of the video of uploading the code on to the Arduino ? I didn’t find it in the description as you said

  • @muhammadqaisarali
    @muhammadqaisarali 7 หลายเดือนก่อน

    Can you please make a video on micrROS as well?.
    What i understood is that microROS should have been used foe this hardware level stuff. Further why Ros control if microROS is already out there?.

  • @Swqtt
    @Swqtt ปีที่แล้ว

    I'm running both the GUI and the driver on my laptop. And it doesn't seem it is sending anything, it is constantly giving a time-out error.

  • @AnweshAdhikari
    @AnweshAdhikari 4 หลายเดือนก่อน

  • @codewithemmaprime
    @codewithemmaprime 11 หลายเดือนก่อน +1

    Hey Josh!!
    Thanks so much for this tutorial.
    Can I control the motors in open loop mode?? Like I mean for the real robot because my encoders broke 😢 and I cannot buy another

    • @ArticulatedRobotics
      @ArticulatedRobotics  11 หลายเดือนก่อน +2

      Yeah for sure! If you are using my ros2_control hardware interface you want to replace the "write" command with one that sends an "o" message instead of an "m" message, and write a line that scales the speed request to the appropriate open loop signal.

  • @MihailAndrievich
    @MihailAndrievich 7 หลายเดือนก่อน

    Hi, will it work if I'm using DC motors without encoder? Please share some hints.

    • @ArticulatedRobotics
      @ArticulatedRobotics  7 หลายเดือนก่อน

      You'll have to make some modifications to the code if you're trying to integrate it in to the rest of the project but yes you can (and you'll only be able to run in open loop).
      I'd recommend running your motors under standard load at a bunch of different PWM values, calculate the number of revolutions, plot it on a graph and fit a line to it to create "fake feedback".

  • @XxPwnZsxX
    @XxPwnZsxX ปีที่แล้ว

    I have mine wired up just like your and everything works. My only questions is when I send the O command the motors spin for a few seconds and stop on their own

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +3

      Thanks, yes mine does too, it's just not obvious from the video as I kept repeating the command. This is part of the design, the idea is that the thing controlling it should keep sending speed requests, and if it loses connection or something the motors will then stop after a few seconds instead of driving out of control :)

    • @XxPwnZsxX
      @XxPwnZsxX ปีที่แล้ว

      @@ArticulatedRobotics Thanks for the clarification Im far into your tutorial and robot has not failed me and niether have you 😁

    • @JIM94K
      @JIM94K ปีที่แล้ว

      @@ArticulatedRobotics This is happening for me, even when using the teleop keyboard and joystick to control the motors. I thought it could be a power issue, but it also occurs when controlling a single motor, and using a power supply. Any ideas?

    • @gearhart0steve
      @gearhart0steve 8 หลายเดือนก่อน

      ​@@ArticulatedRoboticsyeah man you missed a big part here how can we repeat the commands so that the motors keeps spinning and we can measure encoder counts?

  • @underlecht
    @underlecht ปีที่แล้ว

    How does serial_motor_demo/driver knows the exact commands to send to arduino? does it emit the same commands you were sending manually - "o ", "e",... ?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว

      That's exactly right. The driver is just sending the same commands I was sending manually. The only difference is it has a bit of code that converts the value in rad/s (that the gui is publishing) to counts/loop (that the Arduino expects). Check out the code here (good bit highlighted) github.com/joshnewans/serial_motor_demo/blob/da60760df16b868f2ef487e485e480d28b7d46db/serial_motor_demo/serial_motor_demo/driver.py#L82-L106

  • @MemoxCid
    @MemoxCid ปีที่แล้ว

    Hello where can I find the code for the L298N and Arduino?

  • @ErkanUnal.
    @ErkanUnal. หลายเดือนก่อน

    Have you tried with a BLDC motor equipped with a Hall sensor?

  • @heitorl8095
    @heitorl8095 ปีที่แล้ว +1

    The best

  • @Aloman76
    @Aloman76 ปีที่แล้ว

    Do raspberry pi circuits require the computer to be plugged in the whole time while a program runs? Or can u download the code onto the raspberry pi?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +2

      Sorry for the late reply. Hopefully I understand correctly.
      The Raspberry Pi is itself a computer, so it will be running the main software for the robot.
      Right now, we connect to the Pi remotely and start software on it, then use gui software on the dev PC to interact with it.
      In the future, we'll set up the Pi software to run automatically on startup so that it can do things without a PC connected, although most of the time it will be just easier to have the PC connected (over Wi-Fi) so we can visualise, and perform more complex tasks.

  • @B94U2
    @B94U2 หลายเดือนก่อน

    Where did you get the blue work mat?

  • @samj1012
    @samj1012 6 หลายเดือนก่อน

    servos have one chronic issue is that when powering the system, they jump to home position, which causes damage to the robot sometimes. Hardware solutions not successful, but maybe something in C code can absorb this. Bet I saw many commercial robots use normal motors with rotary encoder or stepper instead of servo.

  • @gooseisloose4015
    @gooseisloose4015 2 หลายเดือนก่อน

    hi! what if i want to make a robot that is completely disconnected from my arduino UNO and can self run. Basically I upload some preset direction code and take it off the arduino UNO then run it. Is this possible with these motors ?

  • @Mateus-vj6fy
    @Mateus-vj6fy ปีที่แล้ว

    Hello Josh, I'm trying to use the Arduino Mega with this example, but I'm having trouble with the encoder's ports, I think that ports C doesn't work as it should using Arduino mega, how can I switch from port C to port F? And is it harder to change this code to work in the Arduino mega?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +1

      Ooh it's been a while since I've written Arduino code and I've never used the mega before.
      I am quite certain it will be a very simple fix - just a matter of knowing the right thing.
      I would have thought it's a matter of just changing the defines in encoder.h to be the new pins?

    • @ByteHendTechX
      @ByteHendTechX ปีที่แล้ว

      @Mateus did u solve it??

    • @whysoairyair
      @whysoairyair 2 หลายเดือนก่อน

      did you solve this?

  • @Automatic_Robot
    @Automatic_Robot 7 หลายเดือนก่อน +4

    Hello, I have a problem that the speed of both wheels is not the same speed, the right wheel is faster than the left wheel. What do I need to do now, please help me. Thanks a lot

    • @KSLEEProjects
      @KSLEEProjects 2 หลายเดือนก่อน

      I have the same problem

    • @ThanhPhamRb
      @ThanhPhamRb หลายเดือนก่อน

      ⁠have you fixed that problem yet?

    • @Automatic_Robot
      @Automatic_Robot หลายเดือนก่อน

      @@KSLEEProjects Have you tried checking whether the signal read from the encoder of the 2 wheels is equal?
      If the signals of the two encoder are not equal, you should check the encoder's signal wire again

    • @Akash-el4ls
      @Akash-el4ls หลายเดือนก่อน

      I did this but without encoder I made Pwm to adjust the motor speed and set the pwm same for both the motors

  • @muhamadkhosyiizzatullah274
    @muhamadkhosyiizzatullah274 5 หลายเดือนก่อน

    can the arduino program on your repo need improve if i use differen motor driver shield like pololu VNH5019 or IBT-2 (BTS7960)? because i need more power for the motor

    • @mehmetalisahin3263
      @mehmetalisahin3263 2 หลายเดือนก่อน

      did you find them i need to code for bts7960

  • @vetriselvam5152
    @vetriselvam5152 6 หลายเดือนก่อน

    first of all thanks this series is awesome but i have one doubt how can i find revolution value i am using Orange OG555 High Torque DC Motor 12V 100RPM 173.6N-cm Encoder Compatible but you said 34 revolution for your motor but how could i find revolution for my motor

  • @mansurul8293
    @mansurul8293 ปีที่แล้ว

    Do you have any BLDC Hub motor or DC motor controller explanation?

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว

      Not at the moment, but I'd like to!

    • @mansurul8293
      @mansurul8293 ปีที่แล้ว

      @@ArticulatedRobotics Can I get your professional contact details?

  • @user-xp3kk8og6p
    @user-xp3kk8og6p 5 หลายเดือนก่อน

    hello bro, how do you know the max rev per second of this motor equals 1.5 ???

    • @whysoairyair
      @whysoairyair 2 หลายเดือนก่อน

      use it at max pwm, ie, 255 and measure the encoder ticks or the rpm

  • @user-pv8yv1wu2l
    @user-pv8yv1wu2l 7 หลายเดือนก่อน +2

    Hello can anyone tell me why we arent using Raspi directly to supply PWM to Motor driver. Why is Arduino Nano used?

    • @ethanholter
      @ethanholter 2 วันที่ผ่านมา

      In this example there’s only one motor but in most robotics applications there are significantly more components that need to be controlled. The raspberry pi simply doesn’t have enough pwm capable pins for more than 1 or 2 motors

  • @-CHARUAHAMED
    @-CHARUAHAMED 3 หลายเดือนก่อน

    How can i choose the rpm of the motor

  • @jonathonstaggs9916
    @jonathonstaggs9916 ปีที่แล้ว

    I’m having trouble adding the ros arduino bridge library to my IDE. Any suggestions? I’m trying to add it as a .zip but the IDE says it’s an invalid library.

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว

      It shouldn't need to be added as a library (I think maybe there are similar ones out there that do). It should just be a sketch to open and flash to the Arduino :)

    • @jonathonstaggs9916
      @jonathonstaggs9916 ปีที่แล้ว

      @@ArticulatedRobotics Thanks. Got it to work! Any reason why my motors only run for a couple seconds in open loop mode? When I type o 255 255 they run and stop automatically after about three seconds.

    • @jonathonstaggs9916
      @jonathonstaggs9916 ปีที่แล้ว

      Nevermind! Auto stop timer...

  • @MC-DevaPrasanthM
    @MC-DevaPrasanthM หลายเดือนก่อน

    I'm getting in error #include WProgram.h while compiling in arudino.... Could you help me to fix this sir

  • @bparmaksiz6686
    @bparmaksiz6686 ปีที่แล้ว +1

    Is there any idea, why I got "miniterm command not found" error even i install python3-serial as "sudo apt install python3-serial" on my ubuntu 22.04 ? Thanks in advance for your help.

    • @bparmaksiz6686
      @bparmaksiz6686 ปีที่แล้ว

      Okay I got the answer. it was changed to pyserial-miniterm. But still you may have an error which is "Errno 13 Permission denied: '/dev/ttyUSB0" . You have to command this "sudo usermod -a -G dialout # To allow access to the /dev/ttyUSB#
      " and reboot. everythings will work.

    • @ArticulatedRobotics
      @ArticulatedRobotics  ปีที่แล้ว +1

      Hi, sorry I didn't get to this sooner, I'm glad you got it sorted.
      I do have the usermod thing in the video but that is very helpful to know that the miniterm package has changed, I will keep that in mind if people ask in the future.