Adventures in Science: How to Use Rotary Encoders

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

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

  • @billsmith5166
    @billsmith5166 4 года назад +24

    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 3 года назад +1

    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.

  • @naboulsikhalid7763
    @naboulsikhalid7763 5 лет назад +25

    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

  • @varunnagpal2258
    @varunnagpal2258 3 года назад +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.

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

    Getting me through my Masters degree in engineering, thanks Bud

  • @TheTinkerDad
    @TheTinkerDad 6 лет назад +10

    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.

  • @devinmckee5463
    @devinmckee5463 5 лет назад +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.

  • @TeagueChrystie
    @TeagueChrystie 7 лет назад +28

    This is fantastic, Shawn and team. Well done, thanks.

  • @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!!!!

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

    Simply superb, good piece of information for new entrants like me in the world of Arduino. Do keep sharing your knowledge....

  • @bikefarmtaiwan1800
    @bikefarmtaiwan1800 6 лет назад +1

    That was great!Flipped from the very basic to the relatively advanced - lots of info. Thanks

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

    something similar for devs regarding centering a div.
    the explanation was very good!

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

    Love it, excellent explanation on the workings of encoders.
    Thank you.

  • @mushupat
    @mushupat 4 года назад +1

    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.

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

      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.

  • @luissantiagoyaurikacyacuri4160
    @luissantiagoyaurikacyacuri4160 6 лет назад +12

    This video is gold!

  • @jesusesquibel4181
    @jesusesquibel4181 7 лет назад

    Brilliant! This work is much appreciated. Please keep them coming.

  • @leochen4891
    @leochen4891 5 лет назад +2

    Exactly what I am looking for.

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

    Great lecture! Thank you so much🙏🙏

  • @tpc-vids1589
    @tpc-vids1589 4 года назад +1

    We're do you buy this encoder in the video

  • @lumaclite8341
    @lumaclite8341 6 лет назад

    remarkable, well explained. Good work Shawn.

  • @IoTLearner
    @IoTLearner 6 лет назад

    Great tutorial...One step more closer to my Project...Thanks

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

    thank you for that great work ❤

  • @omsingharjit
    @omsingharjit 5 лет назад

    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 .👍

  • @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?

  • @mmorena2787
    @mmorena2787 7 лет назад

    Does Sparkfun carry any "thru-shaft" rotor encoders? I'm wondering how to prototype a inverted pendulum without wires creating issues.

  • @SawbanHash
    @SawbanHash 6 лет назад

    How would you mount the disc onto the output shaft?

  • @Counselor77
    @Counselor77 6 лет назад

    Can I use a Rotary Encoder in a wind vane circuit for wind direction?

  • @bhartitak4084
    @bhartitak4084 7 лет назад

    Can we use rotary encoder for sensing the projection's xy coordinates?
    As we can use Lidar for the same.

  • @waredetester86
    @waredetester86 4 года назад

    Amazing explanation. Your the best.

  • @LAKHANPALSINGH-jk5zc
    @LAKHANPALSINGH-jk5zc 4 года назад

    Sir how use camera in a remote car using arsduino plz reply

  • @AT-ny4ct
    @AT-ny4ct 5 лет назад +1

    PACKED with info...luv it.

  • @magdy890
    @magdy890 4 года назад

    is it the same for optical encoders ?

  • @marciochao4849
    @marciochao4849 4 года назад

    Do you guys have something with draw wire encoder for Arduino?

  • @SawbanHash
    @SawbanHash 6 лет назад

    would the same code work for optical encoders?

  • @farrukhbashirxhah7997
    @farrukhbashirxhah7997 5 лет назад

    Hi sir
    Could u tell me please
    Can we use PushPull encoder instead of TTL or HTL

  • @anteconfig5391
    @anteconfig5391 7 лет назад

    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.

  • @ncheetamorero8203
    @ncheetamorero8203 6 лет назад +1

    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 6 лет назад

      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.

  • @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?

  • @wahidhamidy6886
    @wahidhamidy6886 7 лет назад

    thanks a lot sir,
    i 've a question, is rotary encoder and shaft encoder mean the same thing?

  • @franciscojosecamposarizmen4484
    @franciscojosecamposarizmen4484 6 лет назад

    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.

  • @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...

    • @АльбертИванов-ц4х
      @АльбертИванов-ц4х 5 лет назад

      Bastian Springer you can take cheap standard optical encoders, the result will be the same

    • @bspringer
      @bspringer 5 лет назад

      @@АльбертИванов-ц4х 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

  • @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,

  • @EvanRustMakes
    @EvanRustMakes 7 лет назад +5

    I'll make a library for this if you want

  • @jbexplosionTV
    @jbexplosionTV 5 лет назад

    Are there any rotary encoders that are 0.75 inches?

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

    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

  • @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.

  • @chiparooo
    @chiparooo 7 лет назад

    Very interesting! Good explanations.

  • @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.

  • @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 (ruclips.net/video/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.

  • @bluehornet6752
    @bluehornet6752 6 лет назад

    Awesome video!

  • @TruthInFacts
    @TruthInFacts 7 лет назад +1

    i am glad i found your channel. i have subbed looking forward to looking through your videos

  • @dhruvpatil5472
    @dhruvpatil5472 4 года назад

    How can we use this for raspberry pi? please help

  • @LSUtiger607
    @LSUtiger607 7 лет назад +1

    Where can we find these magnetic encoder discs? Do they have a rpm sensing limit?

    • @denninosyos
      @denninosyos 7 лет назад +1

      Depends on the hall effect sensor and the electronics detecting the pulses.

  • @j.davidslaugh5761
    @j.davidslaugh5761 3 года назад

    Thank You. You got me off on a I want to learn this stuff start.

  • @chrisBruner
    @chrisBruner 7 лет назад

    Great tutorial

  • @AvantGrade
    @AvantGrade 4 года назад

    excellent all the way 😍

  • @GreatNerve
    @GreatNerve 6 лет назад

    If I have single shaft bo motor and main motor shaft in no long so what I do.

  • @yunche9671
    @yunche9671 5 лет назад

    Thank you so much!!!

  • @kethanvignesh2143
    @kethanvignesh2143 4 года назад

    Make it with n20 micro gear motor with encoder

  • @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.

  • @PaweSkalczynski
    @PaweSkalczynski 7 лет назад

    Awesome !

  • @mirellamelo
    @mirellamelo 7 лет назад

    Nice!!!! Tks so much!

  • @imadreamer9526
    @imadreamer9526 4 года назад

    Best video

  • @seeingdragons4319
    @seeingdragons4319 5 лет назад

    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.

  • @Smooth219
    @Smooth219 7 лет назад

    pretty cool!

  • @SoCalFreelance
    @SoCalFreelance 7 лет назад +2

    Kids, take apart your home printer to see an example of an optical encoder!!

    • @vladtomoiaga4721
      @vladtomoiaga4721 7 лет назад

      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.

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

    amazing

  • @Desmessed
    @Desmessed 7 лет назад

    Thanx!

  • @busraahmed1708
    @busraahmed1708 4 года назад

    please add english subtitles. thanks in advance

  • @ripu6464
    @ripu6464 6 лет назад

    perfect

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

    GREAT

  • @ahmedyehia5553
    @ahmedyehia5553 6 лет назад

    3:21

  • @aaaooaao9949
    @aaaooaao9949 5 лет назад

    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.

  • @bagatis1
    @bagatis1 7 лет назад

    Speaking about computer mouse, kids this days have no idea about the old school ball mouse

  • @MathieuGosbee
    @MathieuGosbee 7 лет назад

    Please normalize your volume

  • @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 лет назад +2

      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).

  • @agazda
    @agazda 7 лет назад

    * odometrie

  • @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.

  • @robotmad
    @robotmad 5 лет назад

    Nice vid with very annoying background music.

  • @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 лет назад +9

      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 :)

  • @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?

  • @AhmedIbrahim-vv9lo
    @AhmedIbrahim-vv9lo 6 лет назад

    Great tutorial