Drone Control and the Complementary Filter

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 มิ.ย. 2024
  • Find all of my other videos here: engineeringmedia.com/videos
    Get the map of control theory: www.redbubble.com/shop/ap/550...
    Download eBook on the fundamentals of control theory (in progress): engineeringmedia.com
    Let's talk about the complementary filter and how we can use it to estimate the attitude of a drone using an IMU. It is such a dead simple filter, which is a good reason to learn it, but it’s also practical because it produces nice results when blending measurements from two different sensors.
    Check out my videos on Drone Simulation and Control: bit.ly/2OnlW5m
    Website - www.engineeringmedia.com
    Patreon - / briandouglas
    Twitter - @brianbdouglas
    Email - controlsystemlectures@gmail.com
    Errata:
    ~2:23 - I state that the accelerometer is measuring the acceleration due to gravity, when in fact it's measuring the acceleration caused by the normal force from the ground. So it's directly up and the exact opposite direction of gravity! Whereas, an accelerometer in free fall would measure no acceleration at all even though it would be accelerating. So the "convert to angle" block would also take care of this sign flip.
    Don't forget to subscribe!
    If you have any questions on it leave them in the comment section below or on Twitter and I'll try my best to answer them.
    I will be loading a new video whenever I can and welcome suggestions for new topics. Please leave a comment or question below and I will do my best to address it. Thanks for watching!

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

  • @masroor20
    @masroor20 5 ปีที่แล้ว +138

    Brian please also give comprehensive lecture on kalman filter.

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

    Brian, glad to see you're still posting videos. They've helped tremendously to further understand the topics. I'd like to suggest video lectures on State Space. I found this to be very interesting in my course. The ability to go from LODE - TF - SS is beneficial. Thanks!

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

    This episode really hit a home run for me. I am FPV flying CC3D/Betaflight helicopter for terminal speed cliff diving in my channel. And this complementary filter is unique to CC3D that people coming from Betaflight didn't know before and didn't know how to configure it in CC3D. I am one of those people.

  • @AI-ro2bm
    @AI-ro2bm 5 ปีที่แล้ว +12

    THE KING IS BACK!!!

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

    excellent blend of theory and practical application. more of this!

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

    Excellent explanation. I am happy to see how you havd managed to summarise the topic and show a practical (discrete) implementation

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

    Finally a comprehensive explanation, thank you very much !

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

    Just in time.... I am currently working on my digital control project, this is perfect ... Thanks a lot... Keep going!!!! :) :)

  • @toniprahasto1137
    @toniprahasto1137 12 วันที่ผ่านมา

    Fantastic video! Your clear explanations and detailed examples made the complex topic of complimentary filters incredibly accessible. Your ability to break down the math and theory into understandable segments is truly impressive. Keep up the great work-looking forward to more insightful content from you!

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

    A very clear explanation, thank you, Brian!

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

    Glad to see these again!

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

    Thank you for your comprehensive explanation about complementary filter

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

    This just saved our lives. Thanks a lot.

  • @10e999
    @10e999 5 ปีที่แล้ว +11

    Always a pleasure to watch your content Brain, even on the MATLAB channel ! ;)
    Btw, how's your book ?
    Have a great day !

  • @power-max
    @power-max 5 ปีที่แล้ว +29

    Kalman flter would be great! Once I figure out Field Oriented Control for BLDC motors, I think this understanding of the Complementary filter is going to help me make a really nice camera gimbal! (Apparently knowing "which way is up" is a much harder problem then I thought!)

    • @SamB-lc9cn
      @SamB-lc9cn 5 ปีที่แล้ว

      I did something similar a short while ago, it takes a while to get your head around everything (especially if its new to you) but its super satisfying once you've made something with it. Good luck!

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

      For some difficulties, Kalman filter is discontinued in Betaflight and CC3D. Most drone development favors the traditional Fourier spectrum analysis.

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

    Awesome video, thank you! I will use this shortly!

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

    Brilliant as ever! lecturers be taking notes!

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

    I am really greatful to have you as my Guru....Happy Gurupurnima🙏

  • @chrismusix5669
    @chrismusix5669 5 ปีที่แล้ว +10

    "I like the direction you're going with this!" ~DSF
    "Thanks for the complement!" ~Drone

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

    Dude you are awesome. control theory in school is so bad at applying real world examples. Definitely subscribing and getting your ebook

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

    what an explanation 😍🤘🤘now i have very good feeling about my drone project

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

    thanks for the explanation and excellent video, Dr. Brian

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

    This is the guy. Thank so much professor

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

    very useful. Long for further lectures!

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

    Best explanation on complementary filter. Thanks

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

    Absolutely excellent visualization on minute 4. Thanks

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

    I had applied this filter for three years in my projects,but I ultimately figure it out .thank u!

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

    It doesn't get any more intuitive than that,thanks!!

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

    Hi Brian! We are waiting for the next video! :D

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

    Thank you so much sir, your video really help me to understand how to complementary works.

  • @PANKAJSHARMA-eu7hz
    @PANKAJSHARMA-eu7hz 4 ปีที่แล้ว

    i love it.. great work Brian

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

    excellent explanation!

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

    Thank you man it is so understanble , it'll very well see a implemantation in some embbeed system like arduino or other

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

    superb content

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

    Thank you, Sir! Can you please make a video on how to model physical world Problems? (Such as writing equations & signal flow diagrams for Simulink).

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

    It will be great if you make a video on kalman filter. Thanks for all the videos

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

    Great lecture!
    Really appreciate your work 🙌🙌🙌
    May I ask which software you use for making this video?

  • @monirmahbub3838
    @monirmahbub3838 5 ปีที่แล้ว

    A lecture on sensor using something like the Kalman filter would be very useful :)

  • @hp90582
    @hp90582 5 ปีที่แล้ว

    Kral geri döndü.

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

    Hi Brian,
    Do you have any recommendation on further reading about filter design whether it is in continuous time or discrete time? I am currently trying to design 2nd-order low-pass filter to be applied on lidar sensor for my drone altitude control
    Thanks in advance

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

    Thanks for your interesting video! Could you please create a lecture regarding model predictive control systems?

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

    Hi brian, I'm eagerly waiting for the 3rd part in drone simulation.
    Is there any videos coming up with the continuation?

    • @BrianBDouglas
      @BrianBDouglas  5 ปีที่แล้ว

      vivek jebaraj thanks! There will be five videos total for the drone series. The third will post today and the next two will post each week after.

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

    it would be great if you implement such algorithm in a code, matlab perhaps as in the past :)

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

    Brian, i love you

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

    if only roll can be calculated? Or pitch and yaw can be obtained in same way? Thanks for sharing the video.

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

    What does the calculation for delta angle look like? I'm using your guide for a university project, and for delta angle i have "angle velocity measure - last angle velocity measure", but it doesn't seem to give the correct filteret output.

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

    watched a few of your videos. this is pretty impressive. are you in academia? what are your credentials if you don't mind me asking.

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

    Please what is the program used to prepare that nice video?

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

    One slight correction (that doesn't impact the point of the video) - a stationary accelerator will see a positive acceleration equal to gravity AWAY from the ground, not towards it, because it is a body force. The accelerometer really can't measure gravity. It's measuring a normal acceleration that counteracts gravity when it's not in free-fall.
    Great videos as always Brian.

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

      Oh, you are correct and I led folks a bit astray in this video! Thanks for the clarification on the video and I'll add that to the errata list so it, hopefully, won't trip anyone up in the future. Thanks!

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

    Your videos are great. I wonder which software you used to design the lectures? Appreciate if you could share it.

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

      Check it out here! engineeringmedia.com/my-setup

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

    Why don't professors explain this like you did. I am trying to figure out how to build flight controller by myself. Thanks for amazing explanation.

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

    Great video as used to.

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

    Is it possible to implement the same filter for getting altitude from a barometer and an accelerometer? Since we have to double integrate the accelerometer values, there's gonna be more errors, so what are the filter gains you would suggest?

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

    thanks a bunch

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

    Thank sir!, but how to calculate the gains of gyro and accelero that in video was determined the Kg = 0.98 and Ka = 0.02, was it just trial and error or any method to calculate the gains? Thanks :)

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

    Hi, um novice in filtering.
    i wanted your advice that, for gyro drift which filter is the best?kalman or complimentary?
    the gyro drift mostly happens when we repeats going forward and backward

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

    please explain accelerometer and gps sensor fusion. i am trying to use integration of linear acceleration from accelerometer and then convert it into displacement and then i am trying to filter it using kalman and add gps input. but tje first step isn't working accurately. how can i get linear displacement i mean travelled distance using accelerometer.
    Sensor : MPU6050
    Mcu : Arduino

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

    is there an implementation of this on simulink?

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

    If compare to UKF, which one is better for aerial navigation system?

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

    Is there a continuation for this topic?

  • @AliHassan-xt1xb
    @AliHassan-xt1xb 5 ปีที่แล้ว

    Hi Brian.,
    This question might be unrelated to this video but can you make a video on how does control theory/systems relate with AI and Machine learning?
    I am interested in both of these fields and want to do a PhD in something involving both of them. but i dont know the inter-relation of these both.
    Thnaks

  • @AliAli-vo3fp
    @AliAli-vo3fp 4 ปีที่แล้ว

    great thank you

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

    awesome

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

    If I want to calculate the orientation of a model rocket, should I relay in the gyro completly? I think there will never be an accurate accelerometer reading at all during the short time of flight so I wonder if a complementary filter would make the results even worse in this case...

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

    Can u plse make a video on uav collision avoidance simulink model

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

    Hi Brian , I am sending data from arduino to MATLAB it is like Ax,Ay,Az,Gx,Gy,Gz (Comma after numbers),when i check how much samples are coming (The above set) i found that its around 216.But now i am little bit confused that whether i need to take the sample rate of each (Ax/Ay/Az..) be 216 samples/sec or 216*6 samples/sec or 216 *11 samples/sec(This includes comma also).
    because i need to pass Ax ...through Low pass filter there i need sample period.

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

    Hey Brian, at 8:32 in the block diagram you have multiplied the gyro angle by 0.98 and the accelerometer angle by 0.02, doesn't it mean angle computed by complimentary filter should be close to what the gyro reads. But your java script animation shows the complete opposite , isn't it???

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

    i dont understood that 1/z ? Is it equals to 1/DeltaTime? so frequent? thx:)

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

    Great video. I wonder if same concept could be applied to yaw angle estimation with a magnetometer and a gyroscope. Is there any logical mistake in such a filter?

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

      Vinayak Dan nope.

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

    Awesome

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

    I have a question: If for example I couple gyro_y (MPU9250) to pitch. Then what happens when roll is 90 degrees? Because at this point, the rotation on gyro_y should change the yaw, not the pitch. Another problem is, if the sensor is upside down, that means that the gyro_z has to be -gyro_z. How do I deal with those problems?

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

    On 9:25 shouldn't we have New_Roll_angle and Old_Roll_Angle? the Roll_angle / z isnt it the previous estimated? And what is z???

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

    I love your videos. Although, I would like to see more actual examples of how to implement the theory in practice. In this video you write the low pass filter in the z domain. How would I write that in arduino code for example?

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

      That's a good suggestion. I'm working on a band stop / notch filter video right now and I'll append a section at the end that shows how to go from z-domain to arduino code.

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

    Sir the explanation is really well, but I am confused between one concept
    In the discreet implementation what is delta t and 1/z blocks. I under stand for example if my sampling frequency is 200HZ then delta t is 1/200 but what is 1/z . I would be really gratefull for any help.

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

    Hi Brian. I am working on a project using Matlab/Simulink aerospace blockset. i want to modify the example on Parrot mambo drone for implementation on the physical drone. please i need help urgently

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

    bro if i implemented to mobile sensors means which method is more accurate ?

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

    If only my control systems faculty was like him.

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

    Can we say that the complementary filter is a simple kalman filter, where the output angle compose the filter state and the complentary constants wheights the state uptade? Because its very clear that we are using a 0.02 and 0.98 confiability. In the kalman this ratio would be updated by the sensors uncertanty.

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

      I would say 'not really'. The Kalman filter has the ability to also track sensor bias/error, provides the ability to be informed by the system model (ie the sensor location on a vehicle can increase the accuracy of the estimate - if you put the accelerometer away from the center of rotation you can increase certainty of the estimate due to roll induced accelerations for example), finally the covariance matrix can tell you if the estimate can even be trusted at all. Kalman filter = very powerful.

  • @hhiii7277
    @hhiii7277 5 ปีที่แล้ว

    I think this filter only works when no large side acceleration present.
    Also, let's assume z is the up/down direction (where the gravity direction is), and assuming x and y are the two horizontal directions. i don't think this filter works for x and y direction estimations.

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

    can someone explain what is the meaning of stable over long term in accelerometer?

  • @phillipmaser132
    @phillipmaser132 5 ปีที่แล้ว

    I have two actuator problem with 3 sensors which I believe would be 3 states. I am looking to use PID and state space control this problem. I don't think I need PID if using SS design model. I am trying to get a hold of state space. most models I build fail. I need to go back to basics and build from this. State Space is used
    because of 3 inputs and two outputs. The simple system reads setpoint of pressure and has two pumps using two different control actions for a pump. One pump is fast and other is fine adjust. I have no models for this. Still working through this not sure how to model pumps and motors yet? System time response is slow so ramp and soak then one op in a PID hold value at temperature. It works but not very accurate.

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

    Please note that an accelerometer can not be used to determine which direction is down when the drone is in flight, since gravity will not affect the accelerometer in flight, since gravity is cancelled by the propellers/thrust to make the drone fly and hover.
    When the drone is flying it is therefore WRONG to assume that the accelerometer can be used to determine roll angle from the assumption of it measuring the gravity direction.
    A lot of people use the accelerometer and complementary incorrectly on drones due to this misunderstanding.
    What happens when the accelerometer is used in a complementary filter as shown in this video, is basically that you end up with a dead-reckoning based estimate, since your accelerometer measurements (in the local drone frame) will always point in the direction of the thrusters plus the actual acceleration of the drone. This makes the estimate very vulnerable to the gyro bias resulting in a drifting estimate.
    What saves you then would be any type of position feedback, e.g. GPS or optical flow, since this makes the gyro bias observable.
    But without position feedback you could rather just fly your drone with a gyroscope only!
    For more information, feel free to read Chapter 2.1 and Appendix B of this rapport: tkjelectronics.dk/uploads/autonomous_indoor_navigation_for_drones_using_vision-based_guidance.pdf

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

      Thank you for this reply. I have been going around in circles in my head trying to get this straight after reading about the pendulum rocket fallacy. An accelerometer in freefall will not feel gravity, so why would it do so when the thrust is switched on? It only feels the direction of thrust.

  • @RickJankowski92
    @RickJankowski92 5 ปีที่แล้ว

    Is it possible to get your e book FUNDAMENTALS OF CONTROL THEORY for free ?

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

    Why did you stop uploading videos? Please do some complex control sys projects of possible. From scratch with conception, design and modelling.

  • @debasismohapatra627
    @debasismohapatra627 5 ปีที่แล้ว

    Sir please make vehicle control videos.
    Thanks

  • @ashikkhan2840
    @ashikkhan2840 5 ปีที่แล้ว

    thanks Brian Douglas it's just awesome !! you have done superb job ,keep it up but one thing i don't understand 1/(1--0.98/z) what is value of z, can i write 1/(1--0.98/1) instead of it???clarify pls

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

      I have the same question. How is 1/Z delays, one step? I feel like is very simple and I will feel dump when we get the answer.

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

      Ok, so I did some googling, (please accept I might be wrong in this). No you cannot just write 1/(1--0.98/1), although you might get something that looks right but it is not. Z is not a value but a transform, from discrete, to time domain, (transform similar to Laplace transforms). In this case 1/Z is holding the value for the last unit step of the roll angle. It's like a memory block that remember it's last iteration. So in the part of the equation that you see (0.98/Z), that's 0.98 *1/Z or (0.98 * the value of the roll angle from the Previous time step). Hope it helps.

    • @ashikkhan2840
      @ashikkhan2840 5 ปีที่แล้ว

      @@liobundury thanks !! yeah i understand

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

    I cannot get how can you use accelerameter of a moving object with this!!

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

    When the drone is sitting on the ground, the accelerometer does NOT measure the "acceleration due to gravity" as stated at about 2:28 and drawn with the red arrow pointing DOWN (suggesting a positive value in that coordinate system). Accelerometers measure something called proper acceleration, which is the acceleration relative to the free fall. Loosely speaking, they measure all but gravitational acceleration... When placed on a surface with the positive direction of the accelerometer pointing up, accelerometer reads g(=9.8...). If the positive axis of the accelerometer is oriented towards the ground (as sketched in the video with the blue arrow), it should read -g. Besides "theoretical" discussions of the concepts such as proper acceleration elsewhere, this is also what data sheets for IMUs such as MPU-9250 (referred to in other videos) state.

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

    There seems to be a error in the math shown at 9:36 or is it just me?
    The second equation does not give the third if moving the last part og it to the right of the summation point and hence, wouldn't give a discrete low pass filter.
    The third equation, if solving for the single "Roll angle", would then be:
    [roll angle] = [0.02*(accel angle)+0.98*(gyro angle* Delta t)] + [roll angle]*(0.98/z)
    or am i wrong Brian ?

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

      Unfortunately I cannot understand this passage either. I would also be very happy about an explanation Brian.

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

      Nevermind, i got it...
      You have to factor out the roll angle on the left side of the equation to roll angle * (1- (0.98/z)) and after that you can divide the equation by (1- (0.98/z))... that results in the third equation of the video... thank you for the great video Brian!

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

    You could add that this only works if the drone hovers steadily. The accelerometer will read all kinds of the drone's acceleration if it changes its movement. The acceleration vector won't point straight down towards earth.

  • @jeffersonpimentamelo
    @jeffersonpimentamelo 5 ปีที่แล้ว +10

    Omg, he don't left us!!

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

    Give us homework! Or some suggestion of how to further put the topic into practice.

  • @user-yv6oq2cp2g
    @user-yv6oq2cp2g 3 ปีที่แล้ว

    what does 1/Z mean ?

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

      one sample delay

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

    This is where Brian talks about how to implement a z-domain transfer function in code:
    th-cam.com/video/nkq4WkX7CFU/w-d-xo.html

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

    and yeah don't do tutorial on just theory of kalman filter do the detailed tutorial on gps and accelerometer sensor fusion using kalman because there are plenty of tutorial on kalman filter but none on them are on gps and accelerometer

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

    9:10 What is 1/z? Or what is that z?

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

      In discrete systems instead of Laplace's domain we use the Z-transform, so 1/z is a delay in discrete time

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

      @@leonardoflss Would it be possible to get a brief elaboration on what exactly it means to divide a value by Z? Does it have units? I looked at the wikipedia page for the Z-transform and understood absolutely nothing, a bit lost here.

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

      @@jacksonsmith2955 I recommend to check the book Feedback Control of Dynamic Systems, by G. Franklin, J. Powell, and A. Emami-Naeini. In specific the 8th chapter: "Digital Control". Plus, the own Brain's playlist, "Discrete Control" is really good to help you out.

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

      @@jacksonsmith2955 I was so concerned to point out references that I forget to actually answer your question, tldr: "divide by z" is, in a practical sense, use the previous sample of a signal. Then, z^-1 is the last sample, z^-2 is the second to last, and so on and on... On discrete control we should think in terms of computing/measurement cycles, a.k.a loops. The data from the previous loop are at the k-1 index of the signals "arrays", and the data at the running cycle are at the k-th index.

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

      @@jacksonsmith2955 the signals does have unit. Taking the previous sample of a signal is just a time wise operation, so the unit is preserved. For example, a velocity signal at time k, in m/s, is m/s whatever is the index k, k-1, k-2...

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

    Are you the real batman?

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

    could you speak slowly nixt time please

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

    great explanation!