Тёмный

Adventures in Science: How to Use Rotary Encoders 

SparkFun Electronics
Подписаться 234 тыс.
Просмотров 223 тыс.
50% 1

Rotary encoders are useful tools for measuring rotation on a shaft. They come in many different forms, including optical, mechanical, and magnetic. In this video, we show you how they work and how to use them on DC motors to ensure that a robot drives in a straight line for a set distance.
Optical encoder demo: www.hackster.io/ShawnHymel/qu...
Code for making Fred drive in a straight line: gist.github.com/ShawnHymel/1d...

Наука

Опубликовано:

 

9 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 109   
@billsmith5166
@billsmith5166 3 года назад
Every time I see a quadrature encoder I imagine the inventor smiling when he thinks of it. It's just such a beautiful concept.
@bolibardo1514
@bolibardo1514 2 года назад
I have read 20 odd tutorials on rotary encoder. But those miss the philosophy and application of encoders. This video is better than all those 20 videos.
@gael6364
@gael6364 7 месяцев назад
Getting me through my Masters degree in engineering, thanks Bud
@TeagueChrystie
@TeagueChrystie 7 лет назад
This is fantastic, Shawn and team. Well done, thanks.
@naboulsikhalid7763
@naboulsikhalid7763 4 года назад
OH, man, you nailed it. well explained with demo integration. Thank you for sharing knowledge and for giving the opportunity to a person like me to evolve and progress. great video with great value
@bikefarmtaiwan1800
@bikefarmtaiwan1800 5 лет назад
That was great!Flipped from the very basic to the relatively advanced - lots of info. Thanks
@jesusesquibel4181
@jesusesquibel4181 6 лет назад
Brilliant! This work is much appreciated. Please keep them coming.
@axelperez5166
@axelperez5166 Год назад
Love it, excellent explanation on the workings of encoders. Thank you.
@IoTLearner
@IoTLearner 6 лет назад
Great tutorial...One step more closer to my Project...Thanks
@TheTinkerDad
@TheTinkerDad 6 лет назад
So this is the first time I'm watching a SparkFun video - my first impression was like "whoa this guy with the stereotypical scientist costume... wtf is this a comedy?" but for some reason I kept watching and in the end I subscribed. Well done.
@gregorymurad
@gregorymurad 4 года назад
Beautiful video. Thank you, sparkfun!
@mivison
@mivison 2 года назад
Thanks soooo much for this. You don't know how hard it was to find a good tutorial on this subject. Its funny but I have about 4 Arduino books on bots and not a one talk about this. They all talk about line following and other easy stuff. SparkFun, you have made a customer today!!!!
@lumaclite8341
@lumaclite8341 5 лет назад
remarkable, well explained. Good work Shawn.
@chiparooo
@chiparooo 7 лет назад
Very interesting! Good explanations.
@JayasuryaaGR
@JayasuryaaGR 2 года назад
Great lecture! Thank you so much🙏🙏
@AT-ny4ct
@AT-ny4ct 5 лет назад
PACKED with info...luv it.
@waredetester86
@waredetester86 3 года назад
Amazing explanation. Your the best.
@TruthInFacts
@TruthInFacts 7 лет назад
i am glad i found your channel. i have subbed looking forward to looking through your videos
@luissantiagoyaurikacyacuri4160
This video is gold!
@leochen4891
@leochen4891 5 лет назад
Exactly what I am looking for.
@mafhper
@mafhper 2 года назад
something similar for devs regarding centering a div. the explanation was very good!
@dilipsuthar1836
@dilipsuthar1836 2 года назад
Simply superb, good piece of information for new entrants like me in the world of Arduino. Do keep sharing your knowledge....
@bluehornet6752
@bluehornet6752 5 лет назад
Awesome video!
@moelashrey4923
@moelashrey4923 Год назад
thank you for that great work ❤
@omsingharjit
@omsingharjit 4 года назад
Wow ! So Far your video is so informative about this topic and Even special for me because 1:26 now i know where to find it near by .👍
@chrisBruner
@chrisBruner 7 лет назад
Great tutorial
@varunnagpal2258
@varunnagpal2258 3 года назад
At 9:47, there is an error in explanation: If B is high (should be low) on A's falling edge, then we know that disc is rotating clockwise At 10:02, there is an error in explanation: if there is a falling edge on A and we detect B is low (should be high) then we know that the disc is rotating counter-clockwise
@muhammadridhwan266
@muhammadridhwan266 2 года назад
yeah i noticed this one too. thanks for mentioning it. a bit confused but overall the whole video explanation is very clear.
@devinmckee5463
@devinmckee5463 5 лет назад
@ 9:51, "If B is HIGH on A's falling edge, then we know that the disk is rotating Clockwise" Wouldn't we be able to tell if the disk is rotating Clockwise when B is LOW on A's falling edge? Using the videos diagram, I think this logic makes sense. If the disk is rotating Counterclockwise, B would read HIGH on A's falling edge. Please correct me if I'm wrong, I would like to make sure I understand the rotary encoder logic.
@bhartitak4084
@bhartitak4084 6 лет назад
Can we use rotary encoder for sensing the projection's xy coordinates? As we can use Lidar for the same.
@mirellamelo
@mirellamelo 6 лет назад
Nice!!!! Tks so much!
@anteconfig5391
@anteconfig5391 6 лет назад
Thanks for this. I was thinking about buying a servo but now I know I could just make a rotary encoder instead.
@zeus-mn9nf
@zeus-mn9nf 5 лет назад
Use a good quality encoder. Otherwise go for stepper motor. I personally tried all three. Servo (real rc servo only rotate 180° , 360° servo doesn't have feedback so there just plain dc motors with speed control) , dc motor with encoders and stepper.
@mmorena2787
@mmorena2787 6 лет назад
Does Sparkfun carry any "thru-shaft" rotor encoders? I'm wondering how to prototype a inverted pendulum without wires creating issues.
@yunche9671
@yunche9671 5 лет назад
Thank you so much!!!
@SawbanHash
@SawbanHash 5 лет назад
How would you mount the disc onto the output shaft?
@j.davidslaugh5761
@j.davidslaugh5761 3 года назад
Thank You. You got me off on a I want to learn this stuff start.
@AvantGrade
@AvantGrade 4 года назад
excellent all the way 😍
@PaweSkalczynski
@PaweSkalczynski 7 лет назад
Awesome !
@wahidhamidy6886
@wahidhamidy6886 6 лет назад
thanks a lot sir, i 've a question, is rotary encoder and shaft encoder mean the same thing?
@Smooth219
@Smooth219 7 лет назад
pretty cool!
@Counselor77
@Counselor77 5 лет назад
Can I use a Rotary Encoder in a wind vane circuit for wind direction?
@alfinuralbab114
@alfinuralbab114 6 лет назад
I just try the code showed. But why do I get different value of ticks everytime the coding I uplod to arduino board? Regard,
@farrukhbashirxhah7997
@farrukhbashirxhah7997 5 лет назад
Hi sir Could u tell me please Can we use PushPull encoder instead of TTL or HTL
@mdandry
@mdandry Год назад
Hi, thanks for the video. I recently had an idea for the navigation for bot I’m designing using encoders to essentially map a grid for the bot to travel within. I think my idea is doable. What are your thoughts?
@SawbanHash
@SawbanHash 5 лет назад
would the same code work for optical encoders?
@EvanRustMakes
@EvanRustMakes 7 лет назад
I'll make a library for this if you want
@tpc-vids1589
@tpc-vids1589 4 года назад
We're do you buy this encoder in the video
@LAKHANPALSINGH-jk5zc
@LAKHANPALSINGH-jk5zc 4 года назад
Sir how use camera in a remote car using arsduino plz reply
@marciochao4849
@marciochao4849 4 года назад
Do you guys have something with draw wire encoder for Arduino?
@franciscojosecamposarizmen4484
How do you extend the shaft of the yellow motor in order to mount the encoder?, thanks
@fransdebruijn6763
@fransdebruijn6763 6 лет назад
Francisco José Campos Arizmendi you buy a motor with shafts out both sides.
@Desmessed
@Desmessed 7 лет назад
Thanx!
@magdy890
@magdy890 3 года назад
is it the same for optical encoders ?
@imadreamer9526
@imadreamer9526 3 года назад
Best video
@teethy28
@teethy28 5 лет назад
where can i buy the magnetic disk and hall effect sensor for this demo?
@bspringer
@bspringer 5 лет назад
Hall effect sensor is available on e.g. banggood, eBay or AliExpress. Did you find any magnetic encoder disks?
@bhagavatshinde1083
@bhagavatshinde1083 3 года назад
amazing
@mushupat
@mushupat 3 года назад
If I may share my experience, instead of comparing the rising and falling moments to determine the direction, I'm simply using flags for moving forward, which I set at the end of every direction function and reset at the begining of it. Therefore I always know when my robot is moving forward or spinning/turning to a side, or moving back etc.
@user-yb5cn3np5q
@user-yb5cn3np5q Год назад
Usually encoders use two sensors that are offset at a multiple of 9/10 of a step, same way as in calipers. In this way precision is increased tenfold.
@mushupat
@mushupat Год назад
Not exactly my point. I'm talking about integers or booleans set or reset every time on every action. Then you will have a "source" for many conditions after.
@AnwarAlfaqeehAlhusseini
@AnwarAlfaqeehAlhusseini 6 лет назад
hi how we can make dc motor as servo ? with encoder or how can i control dc motor shaft to turn 20 degrees 45 degrees 360 degrees etc ?
@zeus-mn9nf
@zeus-mn9nf 5 лет назад
You can however do not that these encoders are very inefficient.
@ncheetamorero8203
@ncheetamorero8203 6 лет назад
There is so many pins defined....i only have the two encoders. The others i don't understand what they are, please explain.
@gilmaimon7355
@gilmaimon7355 5 лет назад
Ncheeta Morero read about H bridges. 2 digital output pins for every wheel determine the direction of rotation + 1 pwm output (again, 1 for each wheel) to control the speed of that wheel. This should explain it!
@zeus-mn9nf
@zeus-mn9nf 5 лет назад
For each motor there are two pins and one pwm pin. For two motors that's 6 pins. There is one standby pin that has to be held high for motor driver to work. And then there are one pin each for encoder output.( If u r using quadrature encoders, then there are 2pins each for a motor). So in total there are 6+1+1+1=9 pins.
@ripu6464
@ripu6464 6 лет назад
perfect
@LSUtiger607
@LSUtiger607 7 лет назад
Where can we find these magnetic encoder discs? Do they have a rpm sensing limit?
@denninosyos
@denninosyos 6 лет назад
Depends on the hall effect sensor and the electronics detecting the pulses.
@bspringer
@bspringer 5 лет назад
Where can I get those magnetic encoder discs? I only find those ones from pololu and I'd just like some more options...
@user-os1xg1rh4c
@user-os1xg1rh4c 5 лет назад
Bastian Springer you can take cheap standard optical encoders, the result will be the same
@bspringer
@bspringer 5 лет назад
@@user-os1xg1rh4c I'm quite space limited. That's why I was looking for magnetic discs with a hall sensor. But I ordered the ones from Pololu by now and they work perfectly
@jbexplosionTV
@jbexplosionTV 5 лет назад
Are there any rotary encoders that are 0.75 inches?
@kifahzaidan4505
@kifahzaidan4505 2 года назад
GREAT
@abbaschandorwal724
@abbaschandorwal724 2 года назад
Can a command from this encoder if connected to a priting head will print a 5meter long tape This I want to sell in market
@perceyjakeson3634
@perceyjakeson3634 6 лет назад
Is it possible to measure distance using rotary encoders?
@ShawnHymel
@ShawnHymel 6 лет назад
Yes, if you watch the video at around 7:53 (ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-oLBYHbLO8W0.htmlm53s), you'll see that I set the robot to measure millimeters and stop after it's traveled 1000 mm. For a human-scale example, measuring wheels (like this one www.amazon.com/TR-Industrial-Collapsible-Measuring-Yellow/dp/B01018D7MS/ref=lp_3753421_1_1) work on the same principle. As you walk with it on the ground, a device counts the number of rotations and by knowing the circumference of the wheel, you can figure out how far you've walked with it.
@roinaldopho5785
@roinaldopho5785 6 лет назад
Can anyone help me? I don't understand this section: // Constrain power to between -255 and 255 power_a = constrain(power_a, -255, 255); power_b = constrain(power_b, -255, 255); Why constrain power between -255 and 255? motor speed only 0-255. Thank you
@roguepathfinder2477
@roguepathfinder2477 5 лет назад
Roinaldo Pho it most probably is because it uses and 8 bit data system and can’t handle more than +/- 255.
@zeus-mn9nf
@zeus-mn9nf 5 лет назад
@@roguepathfinder2477 microcontroller has an 8bit ADC.
@roguepathfinder2477
@roguepathfinder2477 5 лет назад
zeus 0101 good to know! And i was almost right, that’s a win in my book.
@dhruvpatil5472
@dhruvpatil5472 3 года назад
How can we use this for raspberry pi? please help
@GreatNerve
@GreatNerve 5 лет назад
If I have single shaft bo motor and main motor shaft in no long so what I do.
@SoCalFreelance
@SoCalFreelance 7 лет назад
Kids, take apart your home printer to see an example of an optical encoder!!
@vladtomoiaga4721
@vladtomoiaga4721 6 лет назад
A linear optical encoder (if it's an inkjet)
@UpcycleElectronics
@UpcycleElectronics 6 лет назад
Many of the last generation of mass production VCR's use them as well. I've taken several from old TV's that had integrated VCR's. They are usually mounted on stands that are easier to incorporate in other hacked designs too. You can also grab the LED's from a remote control and the IR receiver to make your own encoder, although you need the simple kind. A lot of newer IR receivers have integrated IC's in them and that can complicate the design.
@kethanvignesh2143
@kethanvignesh2143 3 года назад
Make it with n20 micro gear motor with encoder
@ahmedyehia5553
@ahmedyehia5553 6 лет назад
3:21
@seeingdragons4319
@seeingdragons4319 4 года назад
You didn't show how to adjust the speed of one wheel to keep up with the other. You just said could be done and blew past it.
@bagatis1
@bagatis1 6 лет назад
Speaking about computer mouse, kids this days have no idea about the old school ball mouse
@busraahmed1708
@busraahmed1708 4 года назад
please add english subtitles. thanks in advance
@aaaooaao9949
@aaaooaao9949 4 года назад
Why INT? At least my Arduino doesn't have enough pins that I need int. At least byte thick is enough for me! But as in every example - a few delay and you can use the example for nothing else - congratulations.
@MathieuGosbee
@MathieuGosbee 7 лет назад
Please normalize your volume
@antoningazda9154
@antoningazda9154 7 лет назад
* odometrie
@user-yb5cn3np5q
@user-yb5cn3np5q Год назад
But of course while you tell "high for north, low for south" your graph shows "high for both north and south", and the rest of explanation just gets even more confusing after that.
@rokolokas6590
@rokolokas6590 3 года назад
Your explanation for graph at 3:40 is faulty. If one is rising edge and one is falling, what is with the empty space in the schematic? If u are using bipolar hall senzor that explanation is ok but change the simplification animation then.
@willybee3056
@willybee3056 7 лет назад
Oops, •¿° d x pi =c But won't d vary with weight on the axel? Oh,, and is there a difference between absolute encoder and a gray code... oops. I just dated myself....
@ShawnHymel
@ShawnHymel 7 лет назад
The diameter might decrease slightly if your wheels are particularly squishy. A gray code is used to correct the potential issue of an absolute encoder counting false states between two real states (en.wikipedia.org/wiki/Rotary_encoder#Ways_of_encoding_shaft_position).
@robotmad
@robotmad 5 лет назад
Nice vid with very annoying background music.
@jonathanvathauer9512
@jonathanvathauer9512 6 лет назад
Anyone else bothered by his rounding on multiple steps?
@AdaptivePhenix
@AdaptivePhenix 6 лет назад
I don'y get why, with all the popularity of "robots", people are not being taught about feedback. Would you build a temperature control system with no feedback? No! Real encoders feature 3 channels; A, B, Index. The method demonstrated here cannot detect a change of direction. Forget the interrupt counter and grab a LS7366 (SPI). Grab a DC motor with a HEDS encoder and learn about PID control.
@ottokueng4236
@ottokueng4236 3 года назад
What a stupid music in the background. Have you heard this in your scool too? Is this a tutorial or a personal show?
@pirateman1966
@pirateman1966 7 лет назад
It's hard to believe that people who don't know how an encoder works, would buy anything from your store!
@ShawnHymel
@ShawnHymel 7 лет назад
Well, I'm hoping that the video can teach someone about encoders, and it might entice them to look at our store. We were all beginners at one point :)
@AhmedIbrahim-vv9lo
@AhmedIbrahim-vv9lo 5 лет назад
Great tutorial
Далее
Adventures in Science: LIDAR
6:59
Просмотров 134 тыс.
Using Rotary Encoders with Arduino
32:10
Просмотров 701 тыс.
How To Use A Rotary Encoder Without Software
29:41
Просмотров 15 тыс.
Rotary Encoder Tutorial with Arduino Code
26:04
Просмотров 392 тыс.
Rotary Encoder (KY-040) Debounce Circuit Tutorial
15:03
HACKED!: Using an HDD Motor as a Rotary Encoder?!
8:21
899$ vs 360$ which one will you choose ? #iphone #poco
0:18
S-Pen в Samsung достоин Золота #Shorts
0:38