Z-Transform - Practical Applications - Phil's Lab #27

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 พ.ค. 2024
  • Covering practical applications of the Z-transform used in digital signal processing, for example, stability analysis and frequency response of discrete-time systems. Theory, C code, and implementation on a real-world embedded system (STM32 microcontroller).
    Free trial of Altium Designer: www.altium.com/yt/philslab
    Visit jlcpcb.com/RHS for $2 for five 2-layer PCBs and $5 for five 4-layer PCBs.
    Patreon: / phils94
    Git: github.com/pms67
    Z-Transform introduction: • 5. Z Transform
    [TIMESTAMPS]
    00:00 Introduction
    00:26 LittleBrain PCB
    00:40 JLCPCB
    01:05 Altium Designer + Free Trial
    01:44 Overview
    03:14 How to Take Z-Transform?
    07:05 Poles and Zeros
    07:57 Stability Analysis
    10:26 Example: IIR Filter Stability
    12:35 STM32 Set-Up + Code (STM32CubeIDE)
    15:13 Implementation - Stable Filter
    16:40 Implementation - Unstable Filter
    17:54 Frequency Response Analysis
    20:54 Example: IIR Filter Frequency Response
    22:24 Octave (Matlab Alternative) - Bode Plots
    23:14 Z-Transform Tips (Frequency Response)
    23:52 Implementation - Frequency Response
    ID: QIBvbJtYjWuHiTG0uCoK
  • วิทยาศาสตร์และเทคโนโลยี

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

  • @Retinatronics
    @Retinatronics 2 ปีที่แล้ว +84

    Hi Phil, Just want to thank you for this video. Content like this ( theory with real-life application) is really rare.

    • @PhilsLab
      @PhilsLab  2 ปีที่แล้ว +8

      Thank you so much, very glad to hear that - more of these kind of videos to come! :)

  • @ligius3
    @ligius3 2 ปีที่แล้ว +42

    Wow, I wish I had your videos when I was studying these topics, many years ago. We were just mindlessly applying the formulas with only the slightest idea about real-world applications. Your videos connect the dots now, so I can see why the curricula was structured like this.

    • @PhilsLab
      @PhilsLab  2 ปีที่แล้ว +9

      Thank you so much! I had the same experience at university and am trying to 'remedy' that a bit with these videos,

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

    These explanations are excellent, especially considering the complexity of the topic.

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

    I have read several books on DSP now and this is the first time I really really grok’d the Z Transform. I’m a softwares developer, and so seeing the practical application in code and your clear explanations bridges the gap in the theoretical math that every other TH-cam channel bombards us with. Thank you so much fir this series. My goal is to build DSP based guitar effects pedals with an STM32F7.

  • @213pool
    @213pool 9 หลายเดือนก่อน +1

    A course in one video ! Many thanks for sharing your knowledge

  • @firesup77
    @firesup77 2 ปีที่แล้ว +10

    As a computer engineering undergrad, your videos are seriously life savers! From embedded software to hardware to signals and more, I have never finished one of your videos feeling dissatisfied.
    Do you mind going over some other interesting filters or application of concepts? I’m specifically thinking of Kalman filters, particle filters, PID control, and H infinity control!

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

    Others have mentioned this already, but just wanted to chime in that I love to follow these kinds of theory -> application videos. Thanks!

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

      Thank you very much, more of this kinda stuff to come!

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

    Either our brain was too small at the time of engineering or our professor were not that great. This opened my brain and put z-transform into it so easily that I will never forget it. I guess this technique (real life example) is so simple if our teachers can use it in class, none of the student will fail in math.

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

      Thank you very much, I'm glad to here this has made the topic a bit more accessible!

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

    Amazing to see how to use this knowledge in real applications! Thank you so much!

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

    Phil, this is beyond excellent. You sir, are in fact the GOAT 🐐

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

      Thank you very much, David!

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

    I want to thank you for making such a hard topic simple! Please keep up this work!

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

    Thank you for the video, very clearly explained. Id love to see a series of videos on the z transform and pid controllers, showing the same stability, freq response and bode plot. Thanks

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

    It's been nearly 20 years ago when we studied z-transforms in Uni. And now I finally got it:)

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

      Awesome, glad to hear that!

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

    Great video! Thank you, Phil.

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

    This is excellent! Long ago when I was in school, I asked my professor teaching discrete time systems if we could have real world examples, and he said he wished that was possible, but it wasn't practical. It would have made all the difference in my enthusiasm for the subject!

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

    Excellent content. Thanks for sharing. Would very much love to see some of these discrete applications for controls applications! That will be very interesting especially if you can see a physical systems become unstable.

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

    Illustrative application. Thank you !!!

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

    Thanks for making these videos, the quality of the explanation is exceptional.

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

      Thank you very much, Philip!

  • @BM-jy6cb
    @BM-jy6cb 2 ปีที่แล้ว +9

    Another fantastic video. You're dead right about the method of teaching in universities - certainly in my time (now 35 years ago!), they'd just move on to the next item in the syllabus and dive straight into the maths leaving you with no appreciation of what real-world problem you were actually trying to solve - and, of course, there was no www or TH-cam back then and trips to the library didn't really help either. If I'd had videos like this, I would have had that essential higher level understanding before diving into the maths and would have learned a lot more. Don't know if this has changed since I was at uni - maybe someone with more recent experience could comment.

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

      It's still the same mostly. I graduated in 2016. Signal and Systems was the one of the hardest class for me back in college because it was very math heavy. But, it definitely didn't have to be that way. Elon Musk said it best. Schools teach us a whole lot about the different tools available to solve problems, but they rarely teach you why you need these tools and how they can help solve practical problems. It's honestly a shame given the amount of dollars students and parents have to ditch out for a college degree. Kudos to folks like Phil, who are making these extremely useful concepts more appreciated and easier to understand.

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

      Thank you! Yeah, I graduated in 2019 and had the same experience at uni, a lot of theory with little practical application. Glad there's the internet, inexpensive and readily-accessible electronics these days!

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

    Excellent video! Thanks so much. Great to see real world application of theory.

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

      Thank you, Sandeep!

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

    Excellent. Very educational.

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

    Videos like these are PRICELESS! Thank you for creating yet anther great video! You're a legend! 👌😎👍

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

      Thank you very much, I'm glad you liked it! :)

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

    Thanks a lot for the video! Indeed the Z transform was extremely theoretical in university, always feeling locked to the given tasks.
    It REALLY helps to take a look back at one's own pace, not being forced to learn it for an exam.
    Also I much prefer Altium over KiCAD. It just has so many usability tricks ups its sleeve.

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

    Kudos!! Superb explanation!!
    Why Universities don't teach us like this🤷🏼‍♂️??

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

    Expecting crystal clear videos like now in all aspects

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

    Subscribed , that is so clear explanation. Thanks a lot

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

    Wanted to put some love on this video for helping me click some of this stuff I’ve been studying, was def over thinking it

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

    Thank you for this great video!

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

    Excellent lesson, thank you

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

      Thank you, Silviu!

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

    Hi Phil, thank you so much, you are always making amazing videos, so far the best TH-cam channel for technology. Have you consider to create Altium Designer online course?

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

    i have watched it several times great video !!!!

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

      Thank you very much!

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

    Great form.

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

    This has been super helpful and you can even know how much. I’m want to make synths and I’m sort of reaching in order to have something really special and to develop some unique skills. To put it basically, my first project leading up to the first prototype will be an analog computed bouncing ball simulator with digitally controlled parameters and a lot of fancy ways to use it. I wanted to have a basic dial to either increase the system stability as a whole or decrease it without having to change the parameters individually. I think now I’m going to make a LUP for various unit steps of the stability control and set the variables/control flags with the MCU or maybe even DMA.

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

    Thank you for video.

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

    Hi Phil, great video! I've also seen the other FIR filter video and I love it. One question that I have is do you work with C++ as well or just purely C? I understand your focus is on embedded systems but as the system gets bigger (say 10 FIR filters), copying and pasting code gets tedious and harder to maintain. Let me know your thoughts!

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

    Very interesting

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

    I also want to say thank you so much to you for making great videos on this channel I will also request you to make video on RF PCB design right from schematics to layout that would be great thank you again

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

    Great video, you can use STMStudio instead of serial oscilloscope, IMO much better choice.

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

    Phil, your content is utterly incredible, I feel like I'm getting a PhD just by watching your videos!

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

      Thank you so much, Raul!

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

    Excellent. And excellent intro to Octave. I installed octave into my ubuntu system but unfortunately the local implementation doesn't seem to have the tf() function :( I'll try building it from soutce later today to see if it's a version issue as opposed to latest.

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

    Cool info, thanks:)

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

    Excellent

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

      Thank you!

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

    Interesting, you go very fast but not too fast. I was able to process everything. Thanks!

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

      Thank you!

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

    I aspire to pursue the same field you're in, developing electronics for stuff like drones. I'd like to hear some career advice. Your videos really help, thank you.

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

    Hi Phil,
    Great video! Do you have any future plans to demonstrate the process of taking a physical system (say an LPF) and using the Z transform principles you've shown in this video to aid the design process? It'd really bridge the gap into the real world if you demonstrated the whole procedure of analyzing what input needs to be filtered, taking the necessary formulae from it, determining the theoretical filter value that needs to be applied to achieve the desired output, and then physically implementing it.
    A simple example of this could be filtering a 120VAC line into a piece of noise sensitive equipment. Of course the simplified formulas for these are readily available. However, it'd be a great way to show the link between a 1st order Z-domain system and the physical application, and obviously you could get more complex if you wanted to.

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

    really like your video nothing like this was ever taught in the university. Can u make a video on how to get started with STM controllers.

  • @pietrogagliano4484
    @pietrogagliano4484 2 ปีที่แล้ว +8

    Hi Phil love the video! Wasnt too long ago I was learning a transforms in class. Just wanted to ask how fpga video and audio codec board courses are coming along, I'm really excited for those

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

      Me too I can't wait for the classes!

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

      Let me just add: if you plan to do an FPGA, please add an option for fast ADC (about 120 MHz).
      This could then be converted to I and Q streams at 15 MHz that effectively cover the entire shortwave band.
      Yes there are SDR's that would probably be more efficient, but their inner workings can rarely be altered for educational purposes.

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

      Hi Pietro, Thank you! The FPGA boards are done but due to the chip shortage I can't get the parts :( I guess I could show the design process but I'd really like to show the finished 'product'. The course is also still being worked on but it's taking a long time since I'm very busy with many projects at the same time :/

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

      @@PhilsLab No worries believe me I really understand the chip shortage as well, it’s made my job hard too, I would love to watch a video on even just the design process even if the full boards aren’t done yet and then hold off until full boards are designed and watch another video with full boards designed to learn software end of fpga

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

    Thank u

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

    Thanks for the video. Hi how to know the cut off frequency and gain .

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

    Which serial oscilloscope used to plot the output? (Software name)

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

    Have you used Mbed platform? Is it worth it?

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

    Hey Phil, how did u see ur data coming at oscilloscope.. Did u just connected ur board .. Or u provided some external data

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

    Hi Phil, I followed your excellent videos and designed and built pcb's with confidence. You were using kicad in these videos, lately you're moving to Altium, which is excellent designer but has no place with the likes of us poor hobyists, please stick with kicad for our sake.

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

      Hi Khaled, Thanks! As mentioned in the video, I'll still be using KiCad in videos but also Altium Designer. For me the tool is not the main point of focus in my videos, rather things like design process, circuits, component selection, etc. So all of that will stay the same :)

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

      @@PhilsLab Thank you Phill

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

    Wow!!!

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

    Where do I get this code?

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

    Is... is this equation... PID (or loosely related)?

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

    Where it is used in real world?

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

    Very useful filter (No).

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

    I was able to do this with Weedborn CBD products.

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

    Like everyone else... all of a sudden Z transformation makes sense.... like WHY can't Uni's teach things like this? During a whole yr long module never ONCE did they show practical reasons, or explain it 'crudely' it was straight into mathematical derivations to show mathematically from first principles that Z transforms do something.... but never practically..
    Kinda bugs me cause engineers are doing their courses to use what they learn in real world practical environments, but at Uni its soooo focused on the hardcore math derivations, as if that helps? I want to know HOW to use it in the real world and why it helps, and not know its full derivations by wrote....

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

      Thank you very much, Owen! Yeah, I had the exact same feeling at university. It's nice to know how useful these concepts actually are in the real world, so hopefully these videos can help a bit there.