Encoded Motor With Arduino

Поделиться
HTML-код
  • Опубликовано: 21 июл 2024
  • Encoder motors are cool to make more advanced Arduino projects and are actually quite simple to use. In this video, I will show you how to control a DC motor with an encoder with Arduino. You can find an example code below!
    Encoded motor: amzn.to/3QudIf4
    Arduino Nano: amzn.to/46HCvSz
    Motor driver: amzn.to/3tPv0uf
    Files, code: github.com/NikodemBartnik/Sma...
    Instagram: nikodembartnik
    Micromouse robot video: • Bulebule micromouse: w...
    Music: / loxbeats
    #arduino #encoder #motor
  • НаукаНаука

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

  • @nikodembartnik
    @nikodembartnik  4 года назад +7

    Support my projects on Patreon → www.patreon.com/nikodembartnik

  • @jakebozz7677
    @jakebozz7677 5 лет назад +6

    Nikodem, you're sooo diverse! It's always fun to see what you're tinkering with each video! Your projects always intrigue and impress me! Keep up the great explorations and work!

  • @tomgruenke3048
    @tomgruenke3048 Год назад +5

    I doubt that anyone will ever see this post, but I had to write one because this video is the BEST I have seen regarding this subject. I have been looking for this solution for over 6 years now and came across it just now. Every other video on YT does not use position control with DC/encoder control(closed loop). Seems they all like steppers. There is no better way than this method for position control at a very inexpensive solution. I was a CNC tech for over 25 years, and this method was used long ago on industrial machining centers. Thank you very much for this project!

  • @merlingallagher4484
    @merlingallagher4484 5 лет назад +3

    Quality of your videos is really getting better! Keep up the good work!

  • @seklerek
    @seklerek 5 лет назад +86

    I think you should zoom in on the code when you're explaining it, now it's a bit hard to see on a computer and on mobile it's impossible. Otherwise cool video!

  • @USDigital
    @USDigital 4 года назад +5

    Great explanation of how an encoder works! 0:53

  • @ItsJustMJ3
    @ItsJustMJ3 5 лет назад +4

    Great tutorial. This is precisely how I want to control my droid dome rotation. Remote controllable and automated. Thank you for all your research. Gotta get myself a 12v dc motor with encoder now. ;)

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

    SOOOOOOO nice. Love the way you've summed it all up.

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

    That background music is really chilling, I like it.

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

    Nice tutorial! My actual project for agriculture uses a sensor hall or a reed switch to control a peristaltic pump. The "IN" is the wheel speed. It uses a 12V, 36W windshield motor and a IRF1404 “as driver” (plus a diode and resistors for protection).

  • @zell9058
    @zell9058 5 лет назад +1

    Excellent production quality!

  • @cvonp
    @cvonp 4 года назад +2

    NIcely done! I'm curious about your inclusion of the PID library. Are you using that to accomplish smooth acceleration/deceleration of your motor? Cheers

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

    Thank you for sharing this information with us. I have a question about checking the position when the tree has to stand still. How you manage this and how you implemented the sw to do it.

  • @tenlittleindians
    @tenlittleindians 5 лет назад +4

    Do you have a correct circuit diagram for this? The link you included for the motor has a harness with the wires in a different color order than the motor in your video. The colors do not match your fritz diagram.

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

    this is completly underated thx man

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

    nice editing man, i like this.

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

    Great video, all works well. Would like to put a micro switch to set the 0 point on start up. do you have any videos on that?

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

    U saved my life mate! Thank you

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

    it ok for wheel but for a turret we have to know the zero so what kind of sensor allow angle feedback

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

    Huge thanks! It was useful for me

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

    Hi, do you think is it possible to do a open loop test in order to get a mathematical model of the motor? The test is simply to put a voltage at input and measure the speed output, and of course to hold the data. Thanks

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

    Thank you for sharing this video.
    Have you used the LM393 speed sensor with a DC motor? I am facing a problem with this sensor because it overcounts every time when I use interrupts. Can you please make a video on it?

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

    Thanks for a great video! I'd like to ask a newbie question. Would it be possible to use a quadcopter ESC flashed with BLHELI firmware, as a motor driver for such precise control of a BLDC motor with encoder?

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

    Hi! I am a fan of your youtube channel, because they are easy to follow. Can you provide a schematic drawing for the wiring when using Arduino uno instead of nano?

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

    hi first of all good work on the video very well made! i am thinking to introduce this motor into my project (replacing my stepper motor) my question is since my motor will have some load on the shaft would you suggest e a better motor driver in terms of heating and idle power handling? for example for the stepper i'm using a tmc 2208 wich drops power up to 20% when idle...hope to hear from you soon keep up the good work!

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

    Great video! If I understand correctly, the encoder you ultimately used will tell you relative position, not absolute position, is that right? In other words, if you turn the arduino off and then on again, it will think that the current motor position is "0"?

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

    nice job!! quick question, how would you have figured out the gear ratio if the motor you have wasn't documented?

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

    Easy and good explained, worth a follow :)

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

    Hi, thank you for the video!
    Do you know where i can found this motor's datasheet? I need some values like resistance, inductance, moment of inertia...

  • @noneNone-mw1px
    @noneNone-mw1px 4 года назад

    Can you please tell me what type of rotary encoders I need for air manager and how I can connect each I strument to encoders to turn ? Thank you. I told many how made it in youtube but they never told me

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

    Can I use the Arduino to compare vibration levels of different cd players ect? If so, is it as simple as placing the Arduino sensor on the cd player chassis and also using a multimeter to get the reading?

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

    Awesome video. Thank you!

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

    Great video and thank you for the time you invest in these videos. It would be great if you could explain the wiring a bit more too. "Here is the motor... it has 6 wires" - what are those six wires for? My motor has 2 power wires and 4 encoder wires, so it looks different and has different colors but has the same functionality. If you explained what the wires are for, it will help others with different motors to also understand the wiring better.... like myself :-) But thank you again

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

    clearly explained, thank you !

  • @electronic7979
    @electronic7979 5 лет назад +1

    Nice and useful product. I liked it.

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

    Thanks yo, Wish you all the best

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

    hello, this tutorial is quite helpful. thanks for your great effort!
    I have brought a DC geared motor. it's kinda different than the one you have used but I believe it would serve the same purpose especially that it has the same exact encoder.
    I was wondering if I could use it on my Arduino mega without a motor drive.
    please help me! thanks in advance.

  • @_jonathas.castro_
    @_jonathas.castro_ 4 года назад +1

    How make control without potentiometer, I want use other encoder to control the servo in this project.

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

    Hi, nice video, how did you manage the motor with the serial monitor?
    Thanks

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

    Do you have a scematic layout for the setup without potentiometer using the digital input, or is the potentiometer still there?

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

    cool and very nicely and clearly explained.

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

    are you doing research for weather to buy larger stepper motors or servo motors for your large cnc

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

    it could be possible to do a reverse engineer that method to build a DRO for Manual Mill?

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

    Excellent tutorial. Thanks

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

    Hello great video. One question though, I try to type 0 into the serial monitor after typing in 1000 and it won’t go back to 0, do you know why that would be? Thankyou

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

    Hello there, can I control dc motor with encoder by 2 line the first one is pulses for steps and the second one is (0,1)for direction?

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

    thanks, this really helped me

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

    Tnx on video, keep them coming :)

  • @bikefarmtaiwan1800
    @bikefarmtaiwan1800 Месяц назад

    Great video!

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

    Thanks for shareing the core.
    I was not familiar with coding and I was tring to use the STM32 MAPLE BOARD insted using arduino nano.
    I just going to change some pin number, But it not work...... the encoded can show up to 7 or some number, then the loop was dead.
    Any ider with that?
    Thanks.

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

    hello sir can I do it without using potentiometer ?

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

    2:54 where to buy an encoder like that without the motor? I have 2 peg prego dc motors that I want to put an encoder.

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

    Are going to make a video about how to implement this method to a robot with two wheels? I need to learn how to control two motors in synch on my project.
    Thank you

  • @rklauco
    @rklauco 5 лет назад +1

    You will have a bit of a problem with i2c. The problem will be the interrupt - you will need to make sure you can read pulses while communicating over i2c... What's the problem of using serial instead of i2c, btw? Misun wrote a nice servo controller already for arduino, esp8266 and I modded it for ATtiny85, perhaps check that one out for inspiration ;) Nice work, btw. Good luck.

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

    Hello my friend. I have the same small engine in the video. but I do not know the wiring diagram. I will only use the encoder. Can you help me?

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

    Very good visuals

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

    Sorry if I'm a beginner.
    I want to ask, is this the same as the stepper?
    Can i set the motor to only rotate 2x (for example) ?

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

    I connect a 12v encoder motor instead of 6v when I move the potentiometer ligermanet the motor does not respond and keeps rolling why? I send position in serial plotter and nothing it still rolling
    -85
    -87
    -88
    -90
    -92
    -93
    -95
    -97
    -99
    -100
    -102
    -104
    -106
    -108
    -111

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

    Hi. I'm new at this. Can you tell me where each color wires go? It's hard to see from your pic. I have same 6 color wires. Tks in advance.

  • @ChronoGXay
    @ChronoGXay 4 месяца назад

    I pulled up the DC Motor w/ Encoder that you provided a link to in the video's details and compared it to the Fritzing diagram you displayed (3:19), and the wiring you suggested does not make sense to me. In particular: Why are we connecting the motor's white "Quad encoder B signal'" wire (see Amazon's pictures) to the negative motor terminal of the driver?

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

    02:25 I have the same motor from a printer. Do you know by any chance where can I get its datasheet?

  • @qbitsday3438
    @qbitsday3438 10 месяцев назад

    excellent and subscribed!

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

    i have same small printer motor with encoder. but i dont know what is the cable order. how can i learn which cable is signal which is gnd which is v5 ??? pleasee helppp

  • @rodrigoc.goncalves2009
    @rodrigoc.goncalves2009 17 дней назад

    I came across this video after having successfully made a project exactly like the one you mentioned 1st, with the potenciometer. However, I tried doing something using serial comm as the source of the target position, but anytime I connect the powered motor driver to the arduino, serial comm doesnt work. I'm left disconnecting the driver anytime I want to type a number in serial comm. All the grounds have a single common ground point, so it's not a grounding issue. A friend suggested it might be electrical noise from the m.driver interfering with the arduino, what dya think? Thanks

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

    How did you connect the encoder's wires?

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

    Hey there, l have seen your videos were really superb but what l actually want is how to control the position of the encoder by using arduino , lcd display to see the position visually, keypad to type degree , potentiometer for lcd display voltage up and down and h-bridge to control high voltage using low voltage . Please let me know if you upload a video basing my project please help me

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

    what pid library are you using ?

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

    My code was working fine but then one fine day when i give a serial input value of 555 the encoder rotates to 5555 idk shy this happens but for any value i give the motor turns to times 10 of the given value. Can anyone tell me what to do?

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

    hello,How to use an encoder to control the position of the DC motor?

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

    I like it. Could this be made as a drop in replacement for a stepper motor?

    • @nikodembartnik
      @nikodembartnik  5 лет назад +1

      With proper PID calibration, it could be used instead of a stepper motor

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

    project gonna be opensource?

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

    Is it like stepper motor can use it in cnc

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

    H there! That was such a masterpiece XD. Thank you very much. Just a question: where could I download the PID Library? Best wishes and good luck :)

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

      Hi Gerardo. From the stech menu->Include Library->Manage Libraries. In the filter enter: "PIDController". I've always used the arduino PID_v1 library and I'm not clear what is the difference, but I see the PID_v1 has more control. In any case, great video.

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

    Sorry, but I couldn't find right code in your repository. Can you say me file's name for Encoder, please! Thanks a lot for good video

  • @MichaelRHead-zv2zf
    @MichaelRHead-zv2zf 3 года назад

    i can't get it to stop spinning. I can get it to go forward and backwards but it will not stop any help?

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

    Hello, can you tell me the name of the motor controller? Regards

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

    if you also connect AS5600 contactless angle sensor check

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

    In your code, you’d be much better off defining a constant for each dio pin e.g. MotorSense = 3; Not only does it make your code easier to read, and less likely to make mistakes, but if you ever changed pin, you only need to change the code in one place.

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

    I can’t find the code shown from attachment. The only using PID is 168 lines contrast yours is 40.

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

    Can we control position of motor using L293 motor controller??

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

    How do you keep the position of the motor same on startup? for example if it is in a robot arm then how do you know the absolute location of the arm on startup. Wont the position be different every time the robot boots up?

    • @alanbrito3805
      @alanbrito3805 7 месяцев назад +1

      yes it will, that's the downside of these motors, more expensive robotic arms use absolute enocoders, that way the position of the motor is always known

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

    is there already a library avalible?

  • @muftiali1271
    @muftiali1271 4 года назад +2

    Great tutorial, I try to run the code with the same setup for both knob and serial, but the motor doesn't seems to run correctly. The motor just run at one direction and with constants speed, even when I turn the potentiometer left to right, or the otherway around. Same thing with the serial version, the motor just run at constants speed to different number I typed in. The motor I have is slightly different than the one you have, but the encoder is the same specs, same color cables with 11 signals for 1 turn.
    Do you know why? is it because of this line where I have to tune? pos_pid.tune(20, 0, 200); Thanks

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

    hi.. i'm a student taking course computer of engineering can i ask a help for my project ? i dont know how run this dc motor using motor control shield :( i really need help

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

    Hi sir can you please make a vedio on home made servo motor
    I have some Idea by it is not working please help

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

    Thank you!

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

    Thanks. Can you share me PID controller library?

  • @chrishouseman8510
    @chrishouseman8510 6 месяцев назад

    Interesting video regarding ardulnos, I'm currently working on a project it's an radio controlled model kayak 🛶 1:6 scale but having great trouble mimicking scaled down body movement like forward backwards left and right with a two standard motor setup using normal standard r/c the timing on the motors needs to be correct as it's critical for the paddle strokes, the system i have at the moment is a electronic speed controler (esc) driving two motors. Just wondering if you can point me in the right direction if it can be done involving an endcoder motors ardulno system working with a r/c receiver and transmiter. Have a look on my channel to see kayak videos thanks Chris.

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

    You need more zoom on code display
    and a little more explanation code plz
    btw Fantastic Video Thanks Great Job

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

    suggestion for a new video of a cnc router with this motor and encoder

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

    what is value 3740.1??

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

    When using the 2nd version of the code without potentiometer, do you just remove the potentiometer from the wiring schematic?

    • @MichaelRHead-zv2zf
      @MichaelRHead-zv2zf 2 года назад +1

      did you ever figure this out. its driving me crazy. i dont know know what to do.

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

      @@MichaelRHead-zv2zf Niko didn't reply so I didn't go down this path. I found one that was simpler/cheaper ruclips.net/video/yvrpIYc9Ll8/видео.html

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

    Thnx for this

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

    I have the same motor but there are five white cables.

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

    I appreciate any tutorials related to Arduino or ESP32 but when you are showing/describing code we need to be able to read it. Thanks!

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

    I want to do a project regarding encoder and motor can you pls help me for the code

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

    Hi Nikodem Bartnik . Please explain the steps of CNC 3D construction . Especially the program that controls the operation of the machine

  • @vladimirgutierrez2333
    @vladimirgutierrez2333 9 месяцев назад

    I have a problem, if I have a motor with encoder but it handles a voltage of 24 volts, which model of H-bridge can I use?

    • @alanbrito3805
      @alanbrito3805 7 месяцев назад

      the l298n can handle it, make sure to see how it works

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

    good work

  • @MichaelRHead-zv2zf
    @MichaelRHead-zv2zf 2 года назад

    what the chances of you showing the code but with an rc control?