Arduino PID based DC motor position control system

Поділитися
Вставка
  • Опубліковано 11 гру 2024

КОМЕНТАРІ • 222

  • @damiandeza2761
    @damiandeza2761 6 років тому +12

    It's excellent to see a real example of a PID, I'm currently studying them in theory but couldn't picture in practice. Thank you!

  • @mattw7949
    @mattw7949 5 років тому

    I was going to tell you that your English is fine, but I see that almost everyone has already told you that. But as long as I'm here, your English is fine. Thanks for the good video.

  • @toddanonymous5295
    @toddanonymous5295 4 роки тому +3

    Mr Innovative, Your English is perfect. And your videos are some of the best I have seen. Best wishes and please keep innovating .

  • @garnete31
    @garnete31 4 роки тому +6

    This indeed is a great project thanks for your hard work. Your narration is fine please don't stop.

  • @Roskellan
    @Roskellan Рік тому

    Your narration is more than good enough considering the high quality of your projects - excellent.

  • @DirtyEngineer
    @DirtyEngineer 6 років тому +43

    Your narration is fine. If you don't feel comfortable with narration instead use subtitles as the section you show your code could be better explained to the viewer.

    • @MrInnovative
      @MrInnovative  6 років тому +1

      Thanks for you valuable suggestions i will definitely work on it

    • @peerappel2012
      @peerappel2012 6 років тому +2

      @@MrInnovative Mr. Chainsaw is right, but indeed understand that your narration is fine :-) It's not a problem if you are a bit harder to understand.

    • @ssirdigital
      @ssirdigital 6 років тому

      Watch this video for making it ua-cam.com/video/UyljPBSpYpY/v-deo.html

    • @haiderali-sk5zl
      @haiderali-sk5zl 6 років тому

      @@ssirdigital vid is not available

    • @ssirdigital
      @ssirdigital 6 років тому

      @@haiderali-sk5zl visit my chanal and watch video

  • @psyolent.
    @psyolent. 6 років тому +8

    mate, completely fine. one of my favorite youtube channels, the guy is russian and speaks zero english. his is all subtitled. its all good.

  • @3851VInod
    @3851VInod 4 роки тому

    Bhaiyyaji,
    Feel proud to give commentary in our Hindi or any Indian language, may with english subtitles if necessary or Hindi . You did very well. Congrats. JAi Bharat.

  • @tintinfarsad
    @tintinfarsad 5 років тому +8

    Angular position control works fantastic! BTW, your narration wasn't bad. It's just that local accent and that's acceptable. Striving for better is always commendable though.

  • @paulramasco6769
    @paulramasco6769 3 роки тому

    Your english is very good. Your video, however, was amazing! Probably the best I've seen in terms of explaining PID systems.

  • @RaviShankar-go4gc
    @RaviShankar-go4gc 2 роки тому

    6:23 Don't worry bro you did it so well.. i understood everything..
    And your English is also good 😉

  • @idfengming
    @idfengming 6 місяців тому

    Finally, I know how to apply PID position control, Thanks!

  • @fernando.liozzi.41878
    @fernando.liozzi.41878 Рік тому

    Excellent, for more precise controls, and flat response, MPC controller, LQG, or measure current with INA219, then 3 PIDs in cascading. The first PID control current (fastest state), second PID control de angular speed, and last PID, control the position. And there are more control strategies for a DC motor, but with MPC control, the angle accuracy is perfect and with the fastest and flattest response, without overshoot.

  • @niceman567
    @niceman567 4 роки тому +1

    Wow. found out your channel recently, your explanation is very good. I have seen a few optical encoder videos reading through the code but the closed loop diagram you presented pretty much gave me an easy way to understand the what the whole thing does. It's like a big picture, now I can re-read the codes with a sense of direction.

  • @Sakaba
    @Sakaba 5 років тому +3

    Your English is fine. You are explaining difficult concepts in a second language. The only point of language is to allow us to communicate effectively. If anyone judges a non native English speaker's intelligence by how well they speak English, then I don't think that person understands what intelligence is.
    The only thing I would add to the video is that when you show each component, you should have text on the screen describing the component. Maybe the name, the part number and what it does. Most people watching the video will be using it as a tutorial or for guidance and that information would be very helpful.

  • @JohnSmith-ed1sr
    @JohnSmith-ed1sr 2 роки тому

    Thanks for the video. You English is not that bad. You are doing just fine. I did not that the control loop has significant overshoot. That is a significant problem for machines such as CNC

  • @rogerdelisle
    @rogerdelisle 5 років тому +3

    Thank you for the video, it is interesting! Just FYI, the angular measuring device is not a "protector", it is a "protractor". This is a great little project.

  • @RohitChavanTM
    @RohitChavanTM 3 роки тому

    Brother you still explained it well, I will recommend you to write script of what you want to tell then do voice over so it will help you improve your videos and confidence.👍

  • @PiefacePete46
    @PiefacePete46 5 років тому +2

    This is UA-cam... unlike radio or TV, viewers can replay things if they missed something. Your narration is fine; perhaps you can keep in mind that the tempo of English is quite a bit slower than many other languages.
    Your subtitles do have quite a few spelling mistakes. The meaning is perfectly clear, but maybe typing them into a word processor with English spell-checking turned on would be worthwhile. Excellent video thanks.

  • @Muncherman1
    @Muncherman1 6 років тому +10

    I loved the video! Keep up the good work!! And I completely understood your english btw

  • @tanujaginuga3233
    @tanujaginuga3233 5 років тому +1

    language is never a barrier to knowledge .keep trying .

  • @Metroid1890
    @Metroid1890 5 років тому +2

    This is amazing dude, it even works with my 3200 ppr stepper motor with encoder, just had to change the 1600 ppr to 3200 in the map() function, or else I could only achieve to get from 0 to 180 degrees.

    • @omnianti0
      @omnianti0 4 роки тому

      how can we get a zero angle reset

  • @robertoklein6265
    @robertoklein6265 4 роки тому +1

    A really..innovative topic! Thanks a lot for this video. Also for me the narration is fine. Congratulation from Italy.

  • @nizarbelhiba
    @nizarbelhiba 2 роки тому

    Hi, I know it's an old Project.. I'm trying to reproduce the Project and for me the motor start spinning continually once I enter any value.. it stop if I enter 0
    I'm using a 12V DC Polulu motor with encoder with 30:01 Gear Ratio and No Load Speed 350 RPM and 1440PPR

  • @chengsaetern9073
    @chengsaetern9073 5 років тому +2

    TCCR1B = TCCR1B & 0b11111000 | 1; // set 31KHz PWM to prevent motor noise
    Timer/Counter Control Register 1 B(TCCR1B) is used for PWM 9 and 10, but you're using PWM on pin 6.
    Shouldnt you be changing TCCR 0 instead? thats the control register for pin 6.
    I would be interested in seeing your output frequency of pin 6 compared to 9 and 10.
    Either way, it got the job done. Great video!

  • @amitshah9420
    @amitshah9420 6 років тому

    Very nice , Innovative, small budget. Well done bro. Please continue other such videos....
    Your english is lot better than others.Dont worry about it.

  • @anibalrodriguez3173
    @anibalrodriguez3173 4 роки тому

    Your English is excellent - thank you for the presentation. This is something I’ve been researching and it the best solution for my project yet. Again thank you. Anibal

  • @didierherrera
    @didierherrera 5 років тому

    Thanks a lot for the info, as an non-native English speaker is ok for me your narration.

  • @roddonegan1623
    @roddonegan1623 6 років тому

    That was a great video...showed us the entire process...excellent. Your English is great!

  • @hocm2
    @hocm2 6 років тому

    Understandable, clear, just keep on posting videos and you will get all the necessary practice. Thumbs up maaaan!!!

  • @MrHaggyy
    @MrHaggyy 4 роки тому

    Your narration is fine. Will improve over time. Just keep making videoss and listen to good narrators.

  • @chanchalsakarde2768
    @chanchalsakarde2768 9 місяців тому

    lets say circle have 400 locations on it instead of 360 degree, each location identified as numeric location id, so how can we move to pointer to series of location given... for example starts from 0 to 10 then move to 34 -> 200 -> 90 -> 275 -> 345 and so on .. how to do these series moves one after other

  • @phearl3ss1
    @phearl3ss1 4 роки тому

    if the encoder was connected to the motor shaft instead of the output of the gear motor and it took 30 rotations of the motor to turn the output one revolution, would your code state as the number of pulses of the motor shaft 48,000 for the output shaft to go 360 degrees? int PPR = 48000 // not 1600; // Encoder Pulse per revolution: int angle = 360; // Maximum degree of motion

  • @AlessioSangalli
    @AlessioSangalli 5 років тому

    Unfortunately in your example, especially the ones where you type in the numbers, does not seem to work too good. The arrow "overshoots" the target quite a bit, and it's an extremely light item, what would happen if the motor was driving something with more moment of inertia? I'd expect acceleration and deceleration to be much smoother, otherwise the PID controller is not really that useful. Very nice PCB I also like to use JLC PCB

  • @ekaggrat
    @ekaggrat Рік тому

    how does the arduino know where the motor zero is when it starts up? for example if is loosed power midway and you turn it on , it will start with that position as zero. is that correct?

  • @unglaubichuberlieber8048
    @unglaubichuberlieber8048 2 роки тому

    thanks for your GREAT INNOVATIVE WORK WITH DETAILED + EXCELLENT EXPLANATIONS !!! BRAVO !!! BRAVO !!! BRAVO !!!

  • @mitchtunick2371
    @mitchtunick2371 2 роки тому +1

    Would your arduino sketch work with an encoder using a hall effect sensor (magnetic encoder instead of an optical encoder)?

  • @PrismWarp
    @PrismWarp 6 років тому +1

    Nice video, you spoken well enough to where I understood everything you said.

    • @MrInnovative
      @MrInnovative  6 років тому

      Thank you very much for your feedback

  • @tenlittleindians
    @tenlittleindians 6 років тому

    Greetings from Iowa in the USA. Your accent is thick but I can understand you just fine.
    You could always let a few people screen your videos privately before releasing them if your worried about your English.
    I like what you have done here. I think it's possible to control this motor with step and direction commands using some of your design; then people could progress past stepper motors and open loop designs.
    Thank you for your work!

  • @arunakumari5929
    @arunakumari5929 4 роки тому +1

    I have a project regarding encoder and motor can you pls help for the code

  • @chriszalenski9443
    @chriszalenski9443 Рік тому

    Got code fixed. I was missing a PID library. Still need part and part number for bluetooth device

  • @JaatREBOUND
    @JaatREBOUND 4 роки тому +10

    Yes I can see you are uncomfortable in English but we are indian, we may b uncomfortable with englissss 😂😂 but not with new experiments ..good work🤘

  • @suvranshupattanayak6786
    @suvranshupattanayak6786 4 роки тому

    How chages I need to do for replacing Bluetooth module with a key board for manual input

  • @higorfreitas7975
    @higorfreitas7975 5 років тому +1

    Nice job, congratulations! ( Watching from Brazil)

  • @PiefacePete46
    @PiefacePete46 5 років тому

    I'm curious... when the pointer is moving anti-clockwise the PID works beautifully, but when it is moving clockwise there is quite a noticeable overshoot. Can this be improved?

  • @edwardmurphy440
    @edwardmurphy440 3 роки тому

    Thank you for the video. I understood your English.

  • @tugcebeyhan6069
    @tugcebeyhan6069 6 місяців тому

    Hello, the project looks great. I want to print psb myself at home for this project. How do I create a psb that is single layer and can only be used for this project?

  • @wisdom_wellness365
    @wisdom_wellness365 4 роки тому

    Your explanation is perfect. Thank you so much.

  • @chriszalenski9443
    @chriszalenski9443 Рік тому

    Where did you get the blue tooth kit and do you have a part number for it

  • @bumbarabun
    @bumbarabun 3 роки тому

    What is the reason when going clockwise it misses and returns back?

  • @aswinbalasubramanian5753
    @aswinbalasubramanian5753 5 років тому +4

    Great work,you could have included the Link for Bluetooth android app and explained the code. Don't worry about your english

  • @sand2698
    @sand2698 4 роки тому

    Can i control set of position? say at 1 sec 20deg; 2sec 5deg; 4sec180; etc

  • @chriszalenski9443
    @chriszalenski9443 Рік тому

    Do you have a part name and number for your blue tooth device along with where to get it in the USA

  • @gabrielcucu9361
    @gabrielcucu9361 3 роки тому

    Hello mrinnovative. I have an issue as my motor is not moving precisely, its like i wouldnt even have a pid and the pointer is fliping back and forth, continously. Any advice on the matter? Many thanks in advance!

  • @omen8523
    @omen8523 4 роки тому

    Can I use PID to control speed? I am using a system where I need the motor to rotate a shaft at a constant speed. I am using a belt&pulley to make the rotational speed as constant as possible, but it is still showing slight variation in speed (+-4-5% max). Can I improve it through Arduino PID?

  • @WallyJ2K
    @WallyJ2K 3 роки тому

    What if I want to control 3 motors from the same HTML page? What kind of microcontroller would be best?

  • @ahmedlasheen2866
    @ahmedlasheen2866 2 роки тому

    Can I use rotary encoder module to control the motor angle or it's just as a potentiometer?

  • @wowlove6676
    @wowlove6676 4 роки тому +1

    Can't we can control two motors

  • @TOP1_ENG
    @TOP1_ENG 3 роки тому

    Multiple libraries were found for "PID_v1.h" I HAVE THIS ERROR HOW I CAN SLOVE IT. THIS LIBRARY DOSE,T FIND IN ARDUOINO WEBSITE.

  • @AliAhmed-ye3rj
    @AliAhmed-ye3rj 2 роки тому

    Great Video.
    Sir kindly guide, Is this possible this project is working through Labview.

  • @eng.mahdiy
    @eng.mahdiy Рік тому

    What is the name of this application that you used to control and give values ​​​​directly on a phone?

  • @priteshchauhan3539
    @priteshchauhan3539 6 років тому +1

    Well done bro i want this all thing for my project

  • @jefersonemanueloliveira5547
    @jefersonemanueloliveira5547 9 місяців тому

    Excellent video. Thanks!

  • @gguy156
    @gguy156 11 місяців тому

    It's clearly visible how good PID is working in one direction and how poor in opposite. But overall looks promising

  • @erhardpostinger1326
    @erhardpostinger1326 6 років тому

    6:13 Anmerkung zum Text dort : www.deepl.com/de/translator ist vermutlich der schnellste Übersetzer der Welt und soll auf immer mehr Sprachen erweitert werden. Ich bin zuversichtlich, dass man dort eines Tages auch geschriebenen Text in gesprochene Sprache wandeln können wird. Niemand sollte sich scheuen seine Muttersprache zu gebrauchen und die Übersetzung den Experten zu überlassen.
    Der Hauptfehler ist, gesprochene Sprache mit störenden Hintergrundgeräuschen zu verschandeln. Wer Musik hören will soll Musik hören und wer sachbezogenen Text hören will, der soll das ungestört tun können.

  • @dawiduchmanowicz3680
    @dawiduchmanowicz3680 5 років тому +1

    Thank You for this tutorial, but I have one question. Does this encoder know the position of angle if we reset the power supply ?

    • @JaatREBOUND
      @JaatREBOUND 4 роки тому

      Not the encoder, but arduino remembers it because I had tested it with arduino mega 2560 and pmdc motor. When I stopped running motor by hand.. It started with the same pattern from where it was stopped.
      Note that I did not cut power supply only stopped by hand running

  • @Wawawy1994
    @Wawawy1994 5 років тому

    Why the needle overshoots when you input 90 degree ?

  • @davidmalinowski6331
    @davidmalinowski6331 5 років тому

    What is the purpose of---void finish ()? I can't find anything that calls it.

  • @RodrygoMR
    @RodrygoMR 5 років тому

    I would like to ask your help with this project, I am doing it for my course, but it is not working properly, the hc-05 signal is falling, and the engine is shaking when sending the information.
    If you can help me solve it I am grateful

  • @ramakrishnareddy1989
    @ramakrishnareddy1989 5 років тому

    I've some doubt. Can you help me on how to give input directly in the code instead of giving it from the app.

  • @unique_brainpicker9107
    @unique_brainpicker9107 4 роки тому

    Thank you for your video,can I use it hmi instead of mobile

  • @rahulhiremath4882
    @rahulhiremath4882 3 роки тому

    What's the action of pid in this project plz reply

  • @aymanmustafa2378
    @aymanmustafa2378 6 років тому

    Hey mr. innovative! this is absolutely my favourite video by you. I do understand your english very well, so just keep on sharing your great videos. I would love to see a video by you how you do this PID project in Matlab. what do you think?

  • @divyaprakashbiswas8781
    @divyaprakashbiswas8781 4 роки тому +1

    This is an amazing project. Thank you for sharing this video.
    Sir, can we make this system using the LM393 speed sensor? I am using it and facing problems like overcount though I am using interrupts.

  • @Amit_0710
    @Amit_0710 6 років тому

    Why you prefer fritzing over easyeda for pcb layout?

  • @chriszalenski9443
    @chriszalenski9443 Рік тому

    Ran into a problem with your code. Got an error-Compilation error: PID_v1.h: No such file or directory. What do I do to correct this?

  • @ramakrishnareddy1989
    @ramakrishnareddy1989 5 років тому

    Can you help me on how to give input directly in the code instead of giving it from the app.

  • @eddw4rf566
    @eddw4rf566 5 років тому

    How do I have to make the connection if I am using an L293D Shield?

  • @tejasa9033
    @tejasa9033 6 років тому +4

    Try to explain arduino code

  • @dafpnp
    @dafpnp 4 роки тому

    Use the language you are most comfortable in. Mix English.
    Or generate a transcript in your language and get it translated.
    I can help if you need. 🙏

  • @sivaprakash6068
    @sivaprakash6068 6 років тому

    Don't feel it guy.
    You are upload more videos, automatically improve yourself. I understanded you.
    Keep touch it & do it more😉

  • @adityasingh-fg7xc
    @adityasingh-fg7xc 3 роки тому

    Sir can you please do it with wiper motor and detailed video as I am looking for a pid based servo controller project with aurdino uno and joystick module.

  • @anthonymunoz437
    @anthonymunoz437 5 місяців тому +1

    me oscila mucho que puede ser por favor ayuda

  • @woodyouloveit-fe1sw
    @woodyouloveit-fe1sw 11 місяців тому

    Can it be possible same for Stepper motor

  • @tank904
    @tank904 6 років тому

    Plz make rc ornithopter you are really innovative

  • @josuemedinaacevedo4794
    @josuemedinaacevedo4794 4 роки тому

    What transfer function did you use for PID control?

  • @kritancreations6471
    @kritancreations6471 2 роки тому

    how can i use potentiometer instead of encoder

  • @michaellarbie1886
    @michaellarbie1886 3 роки тому

    Mr Innovative, does this track position for more than one revolution? Say 720 degrees.

  • @AhmedMohamed-qy7tc
    @AhmedMohamed-qy7tc 5 років тому

    thank you
    its really helpful and Your narration is fine

  • @JeremyCook
    @JeremyCook 6 років тому

    So what program are you using on the phone for control?

  • @VISHNUKUMAR-vb2gx
    @VISHNUKUMAR-vb2gx 5 років тому

    why you have taken Kp=5, Ki=1 and Ki=0.01.
    Can any one explain the logic to get this no .
    I waiting for the reply.

  • @HamzaKhan-se2ld
    @HamzaKhan-se2ld 5 років тому

    Bhai jan project bht acha hai par mobile app jo ap use kar rhy ho kindly wo bta do konsi hai

  • @tandungavt3305
    @tandungavt3305 4 роки тому

    Can you give me the name of the control app on android? Tks.

  • @NguyenThanh-cb1ti
    @NguyenThanh-cb1ti 5 років тому +1

    could you have share Link for Bluetooth android app, please??

  • @noobcaballero
    @noobcaballero 5 років тому

    What kind of encoder did you used?

  • @matejjirka3440
    @matejjirka3440 5 років тому

    What happens if you prevent (block) the red arrow to move? Video would be nice :) Thanks

  • @vinukamuhandiram
    @vinukamuhandiram 6 років тому

    I loved the video! Keep up the good work!! And I completely understood your English.But please try to explain Arduino code

  • @kifahzaidan4505
    @kifahzaidan4505 2 роки тому

    Hi,
    Thanks a lot, its really greate effort and great knowledge.
    i need to do a project for a preset position linear actuator with a DC motor abd a stepper motor, with Arduino Mega or UNO but i am not able to write the code and the scheme, can you please help.
    Regards

  • @hammadullahasghar7309
    @hammadullahasghar7309 4 роки тому +1

    Sir plz Give the link of this app

  • @hudsonriverlee
    @hudsonriverlee 5 років тому +1

    This would be ideal for a telescope. Both azimuth and altitude.