I learned more about Arduino programming from this video in 40 minutes, then I did in almost 1 semester of my college classes that teaches us to work with the Arduino Uno.
I really like watching your videos. You explain the project in a way that I can understand. Most tutorials fly through the steps that some of the information is missing, or glossed over. That is why I appreciate your style of teaching.
Excellent timing! Just got into this thing and wondered how the heck the speedometer things work, the Chinese instructions aren't much help and you are a hero doing this series in your calm and structured way, much appreciated!
Glad that my timing worked out so well for you, let me know if you have any additional questions. The stuff we can get now from China is of incredible value but it does tend to lack a lot of useful instructions, which Is one of the reasons I made the video. Happy to hear you found it useful.
Just a few short comments. First, please note that 25.4 cm is NOT "about a foot." It actually is 10 inches. Second, while I enjoyed your video, as I always do, I came here looking for a way to control SPEED of two motors so they track accurately together. After all, the encoder disk is referred to as a "speed sensor". The motors you used, quite visibly, do NOT both turn at the same rpm, as the car drifted to one side when it moved. That was also obvious during your first demonstration showing rpm on the Serial Monitor. The two numbers were not in sync. If you do not have a video that addresses this issue, please consider making one. Thank you for your time and efforts producing these videos. I enjoy them and have learned a lot from you. Keep it up. Finally, to those who comment on your (and others') videos with lines like "I have a project due Monday, how can I do..." These drive me mad, as it seems they want YOU to do the work and let tham take credit for it to get their diploma/degree. Instead, I recommend those people actually invest in LEARNING something, instead of poaching others' work. Grrrr...
Hi Tim, Have you heard of PID control? Theres a video on MATLAB that allows you to use this output speed to determine how to adjust it. Also, about a foot is close enough to 10 inches. I think he rounded it.
I’m starting with arduino. Still don’t know how to program it. Thank you for such a great explanation. To me is the best video I have seen. Keep up with it
Brilliant Demo, with excellent explanations. The only suggestion would be (at 33:37) show the negative from the 9 volts goes to the outside (chassis) of the 2.1 mm power socket (centre is positive). I am jealous of how neat, tidy and well laid out your workshop appears.
Good eye John, I should have spotted that connection error but didn't until I read your comment. Hopefully most users will just use a 9-volt to 2.1mm connector and won't reverse the polarity. Thanks for pointing that out!
I am teaching myself Arduino and to a smaller extent robotics. I have followed your excellent tutorials about the robot car and every detail is clearly explained and easy to follow. The instructions on Interrupts (and the link to Nick Gammon) made my project jump ahead in leaps and bounds. I did find that the last code would not run until I put a few pinMode(??, OUTPUT) instructions in the setup to define the Arduino to L298N driver pins. Once they were set, away we went. Thanks again and I'm looking forward to your continued additions to the car.
You should make a video on building a drone with a camera attached. Just a thought! You just explain things so well it would make things so much easier for my brain to crunch on.
Great video. Your > is "greater than" not less than... You said it correctly towards the end, but it was confusing when you said it incorrectly while explaining the logic of your functions. Excellent demonstration though on the use of optical sensors, comparators and interrupts. Great stuff!
Excellent instructional video! Your videos are clear, easy to understand, and to the point. Thank you for all the effort and for sharing your knowledge.
A big thank you for a nice and informative tutorial. I was pondering whether to start to learn Arduino and found your channel after a short search. Very interesting - now I'm hooked!
Say hi to Brazil! I still do not speak your language very well, but I'm studying! Thank you for the explanation. I searched for something very much, but without much success, I had to appeal and look in another language ... Thank you! Nós amamos vocês!
Hi to Brazil from Canada Marcos! You do much better in English than I ever would in Portuguese. I'm glad you were able to understand enough to make it useful for you.
Thanks for the wonderful video. I am dding these comments *again* even though you have replied to similar comments. But I was looking for some *errata* in the text or in the video about that. After 3 years, it will take some digging to get to those comments, hence to help the late comers like me. Advance apologies. 39:00 - Adding 0.5 to the float value and casting to (int) will automatically do a upward rounding. 44:40 - 25.4 cm is 10 inches, not 1 foot. One foot is 2.54 x 12 = 30.48 cm
I'm new to the group and I must say this is great. I'm learning so much and having thought provoking ideas as well. Thank you for these great videos DroneBot Workshop
hi and thank you for this work, it's a great start for me. Some improvements I did in the move routines code: 1. if you use "II" instead "&&" in "while", then the movement finish when both motors end at the same number of steps. 2. instead of "steps > counter_A" I use "counter_B >= counter_A" and instead of "steps > counter_B" i use "counter_A >= counter_B".. in this case each motor waits the other to complete same number of steps, so the movement is straight.
Just a little note. Any variable that will be changed by interrupts should be defined as "volatile". So, counter1 and counter2 should be defined as volatile.
This is sooo crystal clear. I code more on Python instead. Go through Pyserial to response each other between Arduino IDE and Python. very much like this episode.
Simply Superb .... No words . .. This is the best tutorial video I have ever seen in my life in youtube yet. And your lab, its awsome. Wish I could work with you. You have explained everything in such a way that even a beginner will understand it. I am also building a Robo car with same chasis but controller and functionalties will be different. Just came here while searching the working of speed encoders. I got what I need. I am from India and wish I could meet you in person ever and visit your lab. Keep going sir ...
Excellent video, very easy to follow. Looking forward to the radio control video because that’s where I’m currently at with my own arduino robot project. Thank you for taking the time to make this.
Excellent tutorial!!! Well done. I'm really enjoying your videos, pure information without the drama other guys trow out. I did a couple of projects but I used 6 cell holder for rechargeable batteries for 7.2V for the arduino and 8 cell for the H bridge. Keep them coming mate!! Regards
Another way I found to make it go straight is using a compass and following a heading , so if something interferes with the robot it wil autocorrect and using encoders too he can know the distance .
What a neat Workshop , unlike the mess that I have in here, HOW do you manage it , OR you will be messy after the presentation is done, Or you have a an assistant .need a tutorial for being organised .
I love watching your content. Thank you so much. I was looking on Amazon for the chassis and there are a few. Any reason why you chose a 2 wheeled over the 4 wheeled one? I'm looking forward to ordering the parts and making stuff.
My remark : if you hope to get your car running perfectly forward and make perfect 90 degree turns with this setup, dont get your hopes up. The quality of those plastic gearboxes is, with my experience, just too low to achieve that goal. The problem is the relation PWM to speed is not linear and the motors dont break free at the same moment. So you have motor 1 already started while motor 2 is still stalling, leading it to make a turn. I have tried to compensate for these shortcomings in many many ways, but none seem to work in a satisfying way. Things i have tried : determining the breakfreepoint, linearise motor speed, use just one fixed speed and try to determine best PWM setting to obtain this, start with a short boost of 200/55PWM to break free and lower to desired speed after, adapt the motor speed while running forward. (if the difference in the counts is too great, make the faster motor slow down). I tried switching out gearboxes, i have many of those here. All of it didn't lead me to the stable predictable behavior i was looking for.... I am going to switch to stepper motors for my requirement and/or do some tests with metal gearboxes later, i have hunch the main culprit are those plastic gearboxes, the tolerances on those just are not high enough for stable performance. PS.: if you use the change interrupt instead of the rising one you can double your resolution at no cost
Great tutorial - one of the best I have ever seen. In it you show a picture of several opto interruptors. The third one (on the right) looks like an ITR9606. Can you recommend this one or not? Are there others that you would recommend more highly?
Thank you very much. Robotics is fascinating and provides a vehicle for learning lots of different processes.I plan to automate my greenhouse to some extent and include remote monitoring of the parameters.
Thank you for the very good videos you make, they are very clear, very good work. I have a question, could you do a video that show an example of PID controller maybe with this kit? It could be very interesting to make a speed and another with a position controller. Thank you very much
I just watched this video and went ahead to download more. I'm planning to build something big with this as soon as Corona virus is over and shipping resumes. Thank you so much. I would love if you can put me through whenever I get hooked up on the way.
Absolutely fantastic instruction video. Very clear, to the point, with no unnecessary baloney. I'm definitely a fan. I'll be building one of these robots via these instructions to be sure. I eventually hope to build a far larger robot using the same basic principles. But building this little one to gain the experience is definitely the way to go. Thank you very much for making these video courses.
Really nice video! Having bought a similar chassis last month, I made a Mobile controlled robot car using a bluetooth HC-05 module, but I kept wondering what to do about those speed encoders to control the distance they travel or speed of the motors. Well, thanks to you, now I know. The explanation about the Interrupts was exceptionally good and will help me in building some more ambitious projects. I will surely check out your website as well.
fantastic video!! Can u tell me a way to track speed/distance of my car in x-y direction on ground without using GPS or internet? Is there any sensor available to do that?
Such an informative video! Great. As for the basic optocoupler without any circuit boards; Can it still be used in the same way? I have those on hand and would prefer if i did not need to add an additional pulldown resistor.
I was thinking at the end when you demonstrate the control of 1 step. How much would’ve the wheel actually turn after the power’s being cut and how do we measure it and encounter the accuracy problem (if there’s any)?
Hello, I really like your videos, you do a great job. I have a question about the Speed Sensor. I set the sketch and hardware up just as you instructed running motor on 5 volts, it seemed to work fine until I changed the voltage to 3.3 volts to slow the motor down. The sketch RPM reads faster on 3.3 volts then on 5 volts. What are your thoughts? Keep up the great work!
Thank you very much all the step by step explanation as a beginner I find them to be very useful. Nevertheless, when I first come into contact with the related subject I had the question of getting both motors to turn at the same speed so the car would go on a straight line. I did notice the demoed moves made the car goes the the left as your motor A has a slightly higher speed. But this can be significant if it is to run on some distance. Do you have ways to achieve the same speed for both motors to run on, since there are so many read outs?
I learned more about Arduino programming from this video in 40 minutes, then I did in almost 1 semester of my college classes that teaches us to work with the Arduino Uno.
Mb you should have stopped making part times and start following the course((?
I really like watching your videos. You explain the project in a way that I can understand. Most tutorials fly through the steps that some of the information is missing, or glossed over. That is why I appreciate your style of teaching.
Decided to spend the corona lock down learning Arduino. So very glad I found your channel.
For some reason, I volunteered to enter a robotics competition for my senior project... extremely thankful for this video
Excellent timing! Just got into this thing and wondered how the heck the speedometer things work, the Chinese instructions aren't much help and you are a hero doing this series in your calm and structured way, much appreciated!
Glad that my timing worked out so well for you, let me know if you have any additional questions.
The stuff we can get now from China is of incredible value but it does tend to lack a lot of useful instructions, which Is one of the reasons I made the video. Happy to hear you found it useful.
Just a few short comments. First, please note that 25.4 cm is NOT "about a foot." It actually is 10 inches.
Second, while I enjoyed your video, as I always do, I came here looking for a way to control SPEED of two motors so they track accurately together. After all, the encoder disk is referred to as a "speed sensor". The motors you used, quite visibly, do NOT both turn at the same rpm, as the car drifted to one side when it moved. That was also obvious during your first demonstration showing rpm on the Serial Monitor. The two numbers were not in sync. If you do not have a video that addresses this issue, please consider making one.
Thank you for your time and efforts producing these videos. I enjoy them and have learned a lot from you. Keep it up.
Finally, to those who comment on your (and others') videos with lines like "I have a project due Monday, how can I do..." These drive me mad, as it seems they want YOU to do the work and let tham take credit for it to get their diploma/degree. Instead, I recommend those people actually invest in LEARNING something, instead of poaching others' work. Grrrr...
Hi Tim,
Have you heard of PID control? Theres a video on MATLAB that allows you to use this output speed to determine how to adjust it.
Also, about a foot is close enough to 10 inches. I think he rounded it.
It cannot be better. What a great video. Words aren't enough to praise your job. Congratulations, you deserve the best.
THE BEST SET OF TUTORIALS ON ARDUINO.
I’m starting with arduino. Still don’t know how to program it. Thank you for such a great explanation. To me is the best video I have seen. Keep up with it
Excellent work! You are a great teacher. I found you last week and learn from you things I m looking for months before. Thank you and keep uploading!
This is by far the best channel to learn arduino! Thanks a lot 👍
Brilliant Demo, with excellent explanations. The only suggestion would be (at 33:37) show the negative from the 9 volts goes to the outside (chassis) of the 2.1 mm power socket (centre is positive). I am jealous of how neat, tidy and well laid out your workshop appears.
Good eye John, I should have spotted that connection error but didn't until I read your comment. Hopefully most users will just use a 9-volt to 2.1mm connector and won't reverse the polarity. Thanks for pointing that out!
Thank you very much! I mainly came here to begin to understand interrupts. I'm on my way!
I am teaching myself Arduino and to a smaller extent robotics. I have followed your excellent tutorials about the robot car and every detail is clearly explained and easy to follow. The instructions on Interrupts (and the link to Nick Gammon) made my project jump ahead in leaps and bounds. I did find that the last code would not run until I put a few pinMode(??, OUTPUT) instructions in the setup to define the Arduino to L298N driver pins. Once they were set, away we went. Thanks again and I'm looking forward to your continued additions to the car.
The way you explain everything is amazing ..which let me stick till last...waiting for more material ..mostly excited about IOT
nice car
You really are a hardworking man. Keep it up!
This video is worth every minute watching, you made such a fine job, Thank you!
Definitely
You should make a video on building a drone with a camera attached. Just a thought! You just explain things so well it would make things so much easier for my brain to crunch on.
Great video.
Your > is "greater than" not less than... You said it correctly towards the end, but it was confusing when you said it incorrectly while explaining the logic of your functions. Excellent demonstration though on the use of optical sensors, comparators and interrupts. Great stuff!
Excellent instructional video! Your videos are clear, easy to understand, and to the point. Thank you for all the effort and for sharing your knowledge.
Excellent Presentation. Clearly explained with complete details of project without any missing steps. Very easy to follow...thanks
This is an incredibly valuable resource, thank you for your work!
You deserve so much more than 93K sub. Love your videos!
A big thank you for a nice and informative tutorial. I was pondering whether to start to learn Arduino and found your channel after a short search. Very interesting - now I'm hooked!
Say hi to Brazil!
I still do not speak your language very well, but I'm studying!
Thank you for the explanation. I searched for something very much, but without much success, I had to appeal and look in another language ... Thank you! Nós amamos vocês!
Hi to Brazil from Canada Marcos! You do much better in English than I ever would in Portuguese. I'm glad you were able to understand enough to make it useful for you.
Thank you very much for your videos. I'm french but i understand very well your english !
Thanks for the wonderful video. I am dding these comments *again* even though you have replied to similar comments. But I was looking for some *errata* in the text or in the video about that. After 3 years, it will take some digging to get to those comments, hence to help the late comers like me. Advance apologies.
39:00 - Adding 0.5 to the float value and casting to (int) will automatically do a upward rounding.
44:40 - 25.4 cm is 10 inches, not 1 foot. One foot is 2.54 x 12 = 30.48 cm
Thumbs up. Very good, informative video. Blows all the other videos ive seen on these robots so far out of the game. Really appreciate the video.
I'm new to the group and I must say this is great. I'm learning so much and having thought provoking ideas as well. Thank you for these great videos DroneBot Workshop
hi and thank you for this work, it's a great start for me.
Some improvements I did in the move routines code:
1. if you use "II" instead "&&" in "while", then the movement finish when both motors end at the same number of steps.
2. instead of "steps > counter_A" I use "counter_B >= counter_A" and instead of "steps > counter_B" i use "counter_A >= counter_B".. in this case each motor waits the other to complete same number of steps, so the movement is straight.
Just a little note. Any variable that will be changed by interrupts should be defined as "volatile". So, counter1 and counter2 should be defined as volatile.
very clear instructor efficient and going in details for all functions
I understood everything whatever you explained.
Love from India 🇮🇳
Your tutorials are excellent.Thank you very much for uploading the video with excellent camera positioning and video editing.
This video just drove me crazy.....Such a great explanation......
This is sooo crystal clear. I code more on Python instead. Go through Pyserial to response each other between Arduino IDE and Python. very much like this episode.
Outstanding video! You really explained things here in layman's terms which helped tremendously.
My compliments and applause. Simply amazed by such a well structured lesson.
Simply Superb .... No words . .. This is the best tutorial video I have ever seen in my life in youtube yet. And your lab, its awsome. Wish I could work with you. You have explained everything in such a way that even a beginner will understand it. I am also building a Robo car with same chasis but controller and functionalties will be different. Just came here while searching the working of speed encoders. I got what I need. I am from India and wish I could meet you in person ever and visit your lab. Keep going sir ...
Absolutely amazing video for beginners like me. Really appreciate it🎉
very well done, congratulation. I love the details and the clarity of your explanation. Keep up the good work
You are simply the best. I love your videos. They have helped me multiple time.
Excellent video, very easy to follow. Looking forward to the radio control video because that’s where I’m currently at with my own arduino robot project. Thank you for taking the time to make this.
Glad you liked it, stay tuned as the remote control will be coming very soon.
You are really awesome guy who really understand robotics
Un gran aporte, sobre todo en la parte del código de las interrucciones.
Nice contribution, Very good information about interruptions.
Thank you my dear for your clear and complyt lesson may god help you wish you all the best
This am amaizing channel! Really you are doing a beautiful job!
Excellent video, glad to see back. I'm looking forward to your development of this robot. I like the explanation of the use of interupts.
Glad you enjoyed it and I'm glad to be back. I'll definitely have more on the evolution of this robot very soon!
Excellent tutorial!!! Well done. I'm really enjoying your videos, pure information without the drama other guys trow out. I did a couple of projects but I used 6 cell holder for rechargeable batteries for 7.2V for the arduino and 8 cell for the H bridge. Keep them coming mate!! Regards
Glad you liked it, thanks for the nice comment! Next video is on Friday.
Thank you, teacher! 2022 and still a great and relevant lesson!
Another way I found to make it go straight is using a compass and following a heading , so if something interferes with the robot it wil autocorrect and using encoders too he can know the distance .
Is there an amazon link for this introductory kit? I can't seem to find it on the website.
Thanks Bill. Much fun!
What a neat Workshop , unlike the mess that I have in here, HOW do you manage it , OR you will be messy after the presentation is done, Or you have a an assistant .need a tutorial for being organised .
Your videos are awesome!!really helpful
Sir! You are the best in your field.
Thank you for such great video.
Great Explanation .Thank you very much 👍
I love watching your content. Thank you so much. I was looking on Amazon for the chassis and there are a few. Any reason why you chose a 2 wheeled over the 4 wheeled one? I'm looking forward to ordering the parts and making stuff.
Great Work... Your presentation was simple and amazing...Thank You very much. I love the way you arrange your tools too.
Nice and clear-please keep up with this great resource! Thanks for your effort.
Thanks for your very nice comment!
Thank you for this tutorial!
The way you demonstrate is really amazing... I look forward for your others tutorials and can you make some videos on IOT...
Glad you enjoyed it. I have several IoT videos and articles planned, they will be out very soon.
Bravo from Greece..
A good teacher. thank you again
A great video explanation - very thorough and easy to understand. Awesome !!
My remark : if you hope to get your car running perfectly forward and make perfect 90 degree turns with this setup, dont get your hopes up.
The quality of those plastic gearboxes is, with my experience, just too low to achieve that goal.
The problem is the relation PWM to speed is not linear and the motors dont break free at the same moment.
So you have motor 1 already started while motor 2 is still stalling, leading it to make a turn.
I have tried to compensate for these shortcomings in many many ways, but none seem to work in a satisfying way.
Things i have tried : determining the breakfreepoint, linearise motor speed, use just one fixed speed and try to determine best PWM setting to obtain this, start with a short boost of 200/55PWM to break free and lower to desired speed after, adapt the motor speed while running forward. (if the difference in the counts is too great, make the faster motor slow down).
I tried switching out gearboxes, i have many of those here. All of it didn't lead me to the stable predictable behavior i was looking for....
I am going to switch to stepper motors for my requirement and/or do some tests with metal gearboxes later, i have hunch the main culprit are those plastic gearboxes, the tolerances on those just are not high enough for stable performance.
PS.: if you use the change interrupt instead of the rising one you can double your resolution at no cost
Great info, thanks for the insights from your experimenting.
@@YvanR0Y np! Good luck on your project?
@@spwim Hi. How can i contact with you? I need some help and i have some questions. halilsen.h@gmail.com
Thanks. Still helpful in 2021!
Great tutorial - one of the best I have ever seen. In it you show a picture of several opto interruptors. The third one (on the right) looks like an ITR9606. Can you recommend this one or not? Are there others that you would recommend more highly?
Thank you very much. Robotics is fascinating and provides a vehicle for learning lots of different processes.I plan to automate my greenhouse to some extent and include remote monitoring of the parameters.
Thank you for the very good videos you make, they are very clear, very good work. I have a question, could you do a video that show an example of PID controller maybe with this kit? It could be very interesting to make a speed and another with a position controller. Thank you very much
The opto-isolator can also be used with a "flag" (a single piece of metal or opaque plastic) as a "home" sensor.
This is a great tutorial. thanks alot for your excellent way of presenting.
I just watched this video and went ahead to download more. I'm planning to build something big with this as soon as Corona virus is over and shipping resumes. Thank you so much. I would love if you can put me through whenever I get hooked up on the way.
Wow, that is so smart! Thank you for all the tips for my robot!
Your a great teacher.
you are incredible good at this. Thank you very much
Really great and full explained . Thanks a lot !
Absolutely fantastic instruction video. Very clear, to the point, with no unnecessary baloney. I'm definitely a fan. I'll be building one of these robots via these instructions to be sure. I eventually hope to build a far larger robot using the same basic principles. But building this little one to gain the experience is definitely the way to go. Thank you very much for making these video courses.
Really nice video! Having bought a similar chassis last month, I made a Mobile controlled robot car using a bluetooth HC-05 module, but I kept wondering what to do about those speed encoders to control the distance they travel or speed of the motors. Well, thanks to you, now I know. The explanation about the Interrupts was exceptionally good and will help me in building some more ambitious projects. I will surely check out your website as well.
Thank you for the nice comment, so glad I was able to help!
Awesome! This is the first time it's actually made sense to me. Thank you.
Glad I could help it make sense, you're welcome Matt. :)
very important basic concepts . Thank you
Thanks alot for all your videos! Seriously good stuff!
Why do you use TimerOne library here but not when the motors are regulated in the final sketch?
That's awesome, looking forward to new projects! Thanks for your videos
You are very welcome, more videos very soon!
Very good work sir. I've been wanting to learn this information for some time. Thank you very much.
You are most welcome!
love your theme song!
Great work sir, Loved it alot
fantastic video!!
Can u tell me a way to track speed/distance of my car in x-y direction on ground without using GPS or internet? Is there any sensor available to do that?
Hi Bill
I have found your lesson very helpful.
Question - is there a way to display the RPM and Speed values on a OLED Display? John
Such an informative video! Great. As for the basic optocoupler without any circuit boards; Can it still be used in the same way? I have those on hand and would prefer if i did not need to add an additional pulldown resistor.
Great project!
Nice project to build in this season.
Glad you enjoyed it, let me know how your build turns out. Remember that you can get all the code on the website at dbot.ws/rbtcar
Nice video! How do you create these nice animations to explain concepts?
Great video! I have learned alot today. Thank you.
So nice lam learning so much love ❤️
I was thinking at the end when you demonstrate the control of 1 step. How much would’ve the wheel actually turn after the power’s being cut and how do we measure it and encounter the accuracy problem (if there’s any)?
truly amazing and usefull video, thank you very much, enjoyed it all to then end! ... definitely worth a subcribe!
Sir put video based on how to control the motor with pid with using of encoders
Hello, I really like your videos, you do a great job. I have a question about the Speed Sensor. I set the sketch and hardware up just as you instructed running motor on 5 volts, it seemed to work fine until I changed the voltage to 3.3 volts to slow the motor down. The sketch RPM reads faster on 3.3 volts then on 5 volts. What are your thoughts? Keep up the great work!
Thank you very much all the step by step explanation as a beginner I find them to be very useful. Nevertheless, when I first come into contact with the related subject I had the question of getting both motors to turn at the same speed so the car would go on a straight line. I did notice the demoed moves made the car goes the the left as your motor A has a slightly higher speed. But this can be significant if it is to run on some distance. Do you have ways to achieve the same speed for both motors to run on, since there are so many read outs?
Hi Bill . Could u mabe give me some guidelines to combine this project with ultrasonic sensor. I have try doing it but some how get stuck in code.