Inverted Pendulum on a Cart [Control Bootcamp]

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ก.ย. 2024

ความคิดเห็น • 80

  • @sreejithkarangat
    @sreejithkarangat 4 ปีที่แล้ว +12

    Hello Professor, thank you very much for this Bootcamp series. The explanations are amazingly intuitive and simple to grasp. I am starting to watch all your videos from this end. God bless you.

  • @CyberSinke
    @CyberSinke 3 ปีที่แล้ว +30

    Skipping the part how mechanical equations were derived was fine, but I would have found it useful if we were shown how Jacobian was solved and matrix A was created, based on those mechanical equations. Too big part of the story is missing, and suddenly we are again discussing controllability which was explained perfectly in previous videos.

    • @a1fr3
      @a1fr3 ปีที่แล้ว +7

      I know it's a year later (maybe it wasn't the case back then). This can be followed in chap. 8.7 of the book shared in the description,

    • @Miguel-mv5yc
      @Miguel-mv5yc ปีที่แล้ว

      @@a1fr3 The whole deduction of the equations is there? From 0 to 100?

    • @a1fr3
      @a1fr3 ปีที่แล้ว

      @@Miguel-mv5yc Not 0 to 100, it looks like a good idea to create a video with that.

  • @mac-jb7zh
    @mac-jb7zh 4 ปีที่แล้ว +9

    Thank you very much for this great lesson. Greetings from Poland.

  • @cola175
    @cola175 3 ปีที่แล้ว +4

    Dear Professor, thank You very much for Your work! Individuals like You show us that the theory and practice are the same. Your work brings fun in Engineering!

  • @gordonsowner
    @gordonsowner 4 ปีที่แล้ว +29

    Thanks for these resources on control theory, I'm finding them clear and very illuminating (I do not have a background in this, just in math, physics, and now data science, which is how I found these lectures). One comment on this video... you talk about theta = 0 as the pendulum down position, but your drawing is suggestive of theta = 0 is in the pendulum up position. I can get by, but if you ever redo this with edits, that's one I'd suggest making. I don't know which should switch though -- your drawing, or your algebra. Thanks again.

    • @Eigensteve
      @Eigensteve  4 ปีที่แล้ว +2

      Thanks for the feedback... yeah, this is always a tough choice to be clear and consistent.

  • @ernmz6800
    @ernmz6800 4 ปีที่แล้ว +13

    Absolute Beauty! This is all explained so well, clearly and the code is perfectly organized

  • @josuemanuelparejacontreras3443
    @josuemanuelparejacontreras3443 4 ปีที่แล้ว +13

    7:17 I was actually waiting you to "boring" me with the details of how you got those dynamics hahahaa, great series Professor, I am learning a lot!!!

    • @swat_katz_tbone
      @swat_katz_tbone 3 ปีที่แล้ว +2

      Josue Manuel Pareja Contreras It’s a Controls boot camp and not dynamics boot camp ? Deriving the equations of motion is a beast of a task.

    • @juxyper
      @juxyper 3 ปีที่แล้ว +2

      check the lagrange-euler equations for the inverted pendulum on a cart, it's virtually everywhere.

    • @josuemanuelparejacontreras3443
      @josuemanuelparejacontreras3443 3 ปีที่แล้ว

      looks like people think that I am claiming for the EOM to the professor, easy boys, I already derived it by lagrange and newton :P

  • @Drone.Robotics
    @Drone.Robotics 4 ปีที่แล้ว +4

    Thank you Sir....I have seen the whole series and it have cleared lot of my concepts about control theory. Your videos are just great and your way of teaching complex things in simple manner is appreciable. Thanks Again.

  • @tiaanesterhuyse126
    @tiaanesterhuyse126 2 ปีที่แล้ว +5

    Hi @Steve Brunton.
    This is very well defined code and clear on what should happen so i would like to know, In the video at 9:20 you say one can download the matlab code? Is this still possible and is it open source code?

  • @arunagiriharish4121
    @arunagiriharish4121 3 ปีที่แล้ว +2

    Dear Prof, Your contribution is enormous for learners , I personally started to learn from your videos. Looking forward to do learn more. Thanks' a lot and kudos!!
    Where can I find the code of pendulum example and hence forth what you gonna use in the upcoming lectures of Control Boot camp Course?

  • @bobmckellar8349
    @bobmckellar8349 3 ปีที่แล้ว +2

    I derived the equations of motion using Euler-Lagrange which are almost identical to yours but oddly a couple of components had different sign. After linearising, when I plugged in the constants you use and checked the eigs of A I got pendulum up = stable and pendulum down = unstable! It took me ages to find out its because you set g=-10 rather than +10. If I set g=+10 I get the expected eigs.

  • @anonym0usplatypus
    @anonym0usplatypus 3 ปีที่แล้ว +1

    The movie is a fantastic touch. Thanks!

  • @josealbertiangulo4634
    @josealbertiangulo4634 4 ปีที่แล้ว +2

    Excellent series on Control! I have a master in ME and this is helping me to get around a lot of things I couldn't understand in class. I just wrote a code to get the Equations of Motion of the inverted pendulum, using the matlab symbolic toolbox, and now I got to use this equations and it's linearized form to simulate different control methods. But I don't know how to draw a plot. Where could I download your code to take a look at the 'drawcartpend_bw' function? I know you mentioned that there's a link below, but I just see the link to your webpage.
    Thanks you so much for the lessons, I have really learned A LOT!

  • @daniyalwahid8996
    @daniyalwahid8996 3 ปีที่แล้ว

    The best teacher I never had😪

  • @BlosHaterz
    @BlosHaterz 3 ปีที่แล้ว +3

    Thank you for the video, the explanation is very easy to understand for someone who is new in control system like me. May I know where is the download link to your program to further understand the inverted pendulum system? Thank you.

  • @frustratedengineeringstude8593
    @frustratedengineeringstude8593 ปีที่แล้ว

    Thank you so much for this lecture video, sir! this really helped me in my thesis.

  • @DheerajSingh-ze4ji
    @DheerajSingh-ze4ji 4 ปีที่แล้ว +4

    Thanks a lot for explaining these topics in detail. I have been trying to learn control systems in detail and your playlist has certainly pushed in the right directions.
    I was curious about the MATLAB code from this example. Please provide the link to the code for us to read and understand by testing things by ourselves. Thanks

    • @Eigensteve
      @Eigensteve  4 ปีที่แล้ว +7

      All code can be found at databookuw.com under the CODE.zip link (in Matlab and Python)

    • @pradiptabiswas2393
      @pradiptabiswas2393 4 ปีที่แล้ว +1

      @@Eigensteve I was also searching for the code to play with it. Some how the link is broken. Is the link still available in the website? Thank you.

    • @RugnirSvenstarr
      @RugnirSvenstarr 2 ปีที่แล้ว

      @@Eigensteve Hi there Steve, thank you for the excellent lectures and book.
      It would be super useful for future students if you could put this comment into the description of this video and the next one (about pole placement)

  • @АндрейЧегуров-ц8з
    @АндрейЧегуров-ц8з 4 ปีที่แล้ว +6

    Thanks, Professor!

    • @Eigensteve
      @Eigensteve  4 ปีที่แล้ว +1

      You're welcome!

  • @jmcvazUNLV
    @jmcvazUNLV 4 ปีที่แล้ว +1

    Dr Brunton, Thank you for the lecture. I have couple questions. I derived all the equations of motion and I am trying to simulate in Matlab I am using (b = 0.1; % Coefficient of friction for the cart (N/m/sec)
    I = 0.006; % Mass moment of inertia of the pendulum (kg*m^2)) in your example you use a "damping" factor on what exactly this constant is based upon? Can I replace that to b and I? why are you using this damping factor "d"?
    Also
    2 - How can I calculate from the Matlab simulation what motor parameters are (e.g. accelerations, running current, etc).
    3- In addition, how may I estimate the (pendulum angular) resolution needed given the pendulum’s height?
    Thank you

  • @elumixor
    @elumixor 2 ปีที่แล้ว

    THANK GOD YOU EXIST!

  • @sooooleh
    @sooooleh 4 ปีที่แล้ว +1

    Thank you Dr. Brunton for your great efforts.
    Does finding the fixed points of the system means we linearize it? what if i have a nonlinear quarter car model, how can I approximate the fixed points?
    Thanks

  • @ayushpatel535
    @ayushpatel535 ปีที่แล้ว

    How do we get the B matrix after linearizing? Like the Jacobian yields A matrix after we substitute fixed points in it, but how do we get the B matrix?

  • @JohnDoe-qg1pj
    @JohnDoe-qg1pj 3 ปีที่แล้ว

    Why do you compute the Jacobian around the fixed points? Shouldn't it be computed around wherever you want your system to be? Hypothetically, if you wanted to have your cart move so that the pendulum stays at a 45 degree angle (probably impossible but let's say it could work), should you then calculate the Jacobian for theta=45?

  • @paulobessa1906
    @paulobessa1906 ปีที่แล้ว

    Hello, professor. thank you for the video and brilliant clarity.
    I have a question. As one of the eigenvalues of the system is zero, wouldn't the Hartman-Grobman theorem imply that the analysis of the linearization of the system doesn't necessarily match with the original system?

  • @jeetdand3019
    @jeetdand3019 หลายเดือนก่อน

    how can we refer the codes you have used, i didnt get it. i want to look at drawcart pent system code can you help me with this.

  • @cihant5438
    @cihant5438 3 ปีที่แล้ว +1

    Thanks for the video, very helpful. theta=pi would be down right? The professor misstated that both times.

    • @Eigensteve
      @Eigensteve  3 ปีที่แล้ว +1

      Thanks. I define theta=0 as pendulum down, so theta=pi is pendulum up

  • @VictorPalamim
    @VictorPalamim 4 ปีที่แล้ว +1

    Thanks Professor! How can I get the transfer function of the open loop and the controller separeted? I want to put the separeted blocks in Simulink and try to discretize the controller transfer function to see how it behaves in the continuous system.

  • @mjausome
    @mjausome 4 ปีที่แล้ว +1

    Thank you for your fantastic videos. But one of the eigenvalues is zero, doesn't that make the linearization "invalid" according to Hartman-Grobman? It obviously works in practice but I thought you'd say something about that

  • @harshkaushal7076
    @harshkaushal7076 4 ปีที่แล้ว

    Sir, you wrote theta = 0, for the pendulum down case. But according to the diagram its pendulum up case.

  • @what_on_arth
    @what_on_arth 4 ปีที่แล้ว

    Thank you for the lecture series.

  • @piotr780
    @piotr780 ปีที่แล้ว +1

    how to find B matrix ?

  • @rajatbaldha9375
    @rajatbaldha9375 3 ปีที่แล้ว +1

    Where do i get the MATLAB code?
    The lectures are amazing and now I am also watching content not of my courses aswell

    • @Eigensteve
      @Eigensteve  3 ปีที่แล้ว +2

      Thanks! matlab code at github.com/dynamicslab/databook_matlab

  • @kariminem
    @kariminem 11 หลายเดือนก่อน

    how can i get the draw_cartpend script ?

  • @Haider_Waseem_445
    @Haider_Waseem_445 2 ปีที่แล้ว

    Thank you so much for everything Steve. #pakistan

  • @zohrabsoussani1224
    @zohrabsoussani1224 ปีที่แล้ว

    Hello, I wanted to download the codes but I couldn't find them. I'd appreciate it if you could help me find them. Thanks!

  • @motherbear55
    @motherbear55 4 ปีที่แล้ว +1

    To find the B matrix, do you linearize the system dynamics around some "ubar" in addition to "xbar"? Also, how do you create separate A and B matrixes if the control is not linearly separate from x in the system dynamics? (For example, xdot = x * u)

    • @felixbrandle9398
      @felixbrandle9398 4 ปีที่แล้ว

      The procedure is the same. If you want to linearize a general nonlinear system xdot=f(x, u), you can calculate the A and B matrix like this
      A=df/dx (xbar, ubar)
      B=df/du (xbar, ubar)
      In your example this would correspond to A=ubar and B=xbar

  • @reemalshanbari
    @reemalshanbari 4 ปีที่แล้ว +2

    Where can we find the code? thanks!

  • @zrmsraggot
    @zrmsraggot 2 ปีที่แล้ว +1

    Now imagine your goal is too drive the cart only to the right of the screen ( no backward just speed and brakes game).
    If thêta becomes negative ( too fast .. you crash)
    But if theta goes past 90 degres , the cart exploses !
    What do you do ? What do you do ??
    That’s right, you are Keanu Reeves in the movie Speed

  • @frf3ed439
    @frf3ed439 ปีที่แล้ว

    how do I find the equlibrium point and lineriaze the system

  • @damiengates7581
    @damiengates7581 ปีที่แล้ว

    What is (-d/M)*velocity? At d=-1 that is like velocity divided by mass, what is that?

    • @damiengates7581
      @damiengates7581 ปีที่แล้ว

      Maybe I got it; it is a damping term? How much speed is absorbed by friction?

  • @cypictronic
    @cypictronic 3 ปีที่แล้ว

    teacher sorry, how to draw in MATLAB the car?

  • @octaviodeshays9845
    @octaviodeshays9845 4 ปีที่แล้ว +2

    Hey professor! your videos are amazing, I would like to know where can I download the matlab code that you use in this video? It would be very helpful for a proyect I'm working on at my university in Argentina. Thanks for everything!!

    • @jcsjcs2
      @jcsjcs2 4 ปีที่แล้ว +1

      Someone pasted some of the code to stackoverflow.com/questions/58895639/i-have-tried-to-plot-in-matlab-but-matlab-plot-is-not-working because he had a question.
      @Steve: Do you think you can provide a link to all of the code you're using? I think in your video you're mentioning that the link should be in the description, but I can't find it.

    • @jcsjcs2
      @jcsjcs2 4 ปีที่แล้ว +4

      Found a git repository with the code: github.com/AllSparks2848/Inverted-Pendulum

    • @ravikiran4495
      @ravikiran4495 7 หลายเดือนก่อน

      @@jcsjcs2Yoo thanks mate!

  • @Gattomorto12
    @Gattomorto12 3 ปีที่แล้ว

    What if I want to control the cart with the keyboard?

  • @piotr780
    @piotr780 ปีที่แล้ว

    7:00 WTF is y here ? some change in notation, is y=x or y=x' ?

  • @Geewhombee
    @Geewhombee 3 ปีที่แล้ว

    are you writing on your board backwards?

  • @mohammedaminaissou2285
    @mohammedaminaissou2285 4 ปีที่แล้ว

    hi sir i'm making a double inverted pendulum
    can you help me and show me how you did this animation i wish you could help me the files and codes for animation

  • @BilalAwad-d8x
    @BilalAwad-d8x ปีที่แล้ว

    where is the link for Matlab?

  • @frf3ed439
    @frf3ed439 ปีที่แล้ว

    HI where can i get the matlab library

  • @lucasantagata4551
    @lucasantagata4551 4 ปีที่แล้ว

    Which program did you use?

  • @vladfalcon
    @vladfalcon 3 ปีที่แล้ว

    Good day Mr. Steve Brunton. Thanks for your knowledge about linear algebra, it helped me to discover covariant tensor machine (CTM). See my video about CTM.

  • @aynurarustemova9274
    @aynurarustemova9274 2 ปีที่แล้ว

    Hi) who knows where can I download the code?

  • @frihyounes7179
    @frihyounes7179 2 ปีที่แล้ว

    i didn't find the code

  • @alaaomer840
    @alaaomer840 2 ปีที่แล้ว

    💓

  • @gustavoexel3341
    @gustavoexel3341 2 ปีที่แล้ว

    Now the rubber is gonna hit the road

  • @3131ilyes
    @3131ilyes 4 ปีที่แล้ว

    sorry I couldn't find the codes 😔

    • @54egg
      @54egg 4 ปีที่แล้ว +3

      See his "Chapters available at ..." link ( databookuw.com/databook.pdf) which is about 600 page text, Chapter 8, Linear Control Theory - includes Pendulum Cart example with MatLab code.

    • @3131ilyes
      @3131ilyes 4 ปีที่แล้ว

      @@54egg you are my brother

  • @andreybashkin9030
    @andreybashkin9030 ปีที่แล้ว

    I hope you've all seen this practical demonstration of 3-pendulum:
    th-cam.com/video/I5GvwWKkBmg/w-d-xo.html

  • @perceptronsaber4479
    @perceptronsaber4479 3 ปีที่แล้ว

    Lazy pendulum