8.2 时域分析和频域分析
时域和频域分析师自动控制原理里非常重要的内容,也是《热工过程自动控制》里的基础内容。首先分析一个常见的RC网络电路:
不难写出其传递函数(1/sC)/(R+(1/sC)),即:
我们算出其单位脉冲响应,输出函数的拉氏变换计算如下:
则其拉氏反变换为:
假设RC=1,将输出函数绘图,得到输出信号:
绘制代码如下:
1. <!DOCTYPEhtml>
2. <htmlstyle="height: 100%">
3. <head>
4. <metacharset="utf-8">
5. </head>
6. <bodystyle="height: 100%; margin: 0">
7. <divid="container" style="height: 100%"></div>
8. <scripttype="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/echarts.min.js"></script>
9. <scripttype="text/javascript">
10. var dom = document.getElementById("container");
11. var myChart =echarts.init(dom);
12. var app = {};
13. option= null;
14. var xData = [];
15. var yData = [];
16. for (var i = 0; i <= 200; i++) {
17. var x=i/25;
18. var y=1-Math.exp(-x);
19. xData.push(x);
20. yData.push(y);
21. }
22. option= {
23. xAxis:{
24. type:'category',
25. data:xData,
26. },
27. yAxis:{
28. type:'value'
29. },
30. series:[{
31. data:yData,
32. type:'line'
33. }]
34. };
35. ;
36. if (option&& typeof option === "object") {
37. myChart.setOption(option,true);
38. }
39. </script>
40. </body>
41. </html>
虽然不如MATLAB工具箱一行代码就搞定,但这里每一步意义都很鲜明。我们接着进行频域分析。比如这个电路的幅频特性,将上述传递函数中的s替换为jω,不难得到幅频特性:
将其绘图(这里同样假设RC=1):
显而易见,这是个低通滤波器。绘制代码如下:
1. <!DOCTYPEhtml>
2. <htmlstyle="height: 100%">
3. <head>
4. <metacharset="utf-8">
5. </head>
6. <bodystyle="height: 100%; margin: 0">
7. <divid="container" style="height: 100%"></div>
8. <scripttype="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/echarts.min.js"></script>
9. <scripttype="text/javascript">
10. var dom = document.getElementById("container");
11. var myChart =echarts.init(dom);
12. var app = {};
13. option= null;
14. var xData = [];
15. var yData = [];
16. for (var i = 0; i <= 200; i++) {
17. var x=i/25;
18. var y=1/Math.sqrt(1+x*x);
19. xData.push(x);
20. yData.push(y);
21. }
22. option= {
23. xAxis:{
24. type:'category',
25. data:xData,
26. },
27. yAxis:{
28. type:'value'
29. },
30. series:[{
31. data:yData,
32. type:'line'
33. }]
34. };
35. ;
36. if (option&& typeof option === "object") {
37. myChart.setOption(option,true);
38. }
39. </script>
40. </body>
41. </html>
[结语]:纸上得来终觉浅,绝知此事要躬行。通过功能强大的MATLAB可以方便的分析各种时域和频域问题,但我们这里使用js编程也可以直观的体会分析的过程,而不仅仅是一个结果。
上一篇: 复变函数的 Rasch 变换举例说明
下一篇: 拉普拉斯变换与傅立叶变换之间的联系
推荐阅读
-
深度学习与推荐系统:个性化推荐和用户行为分析
-
问题解决思路的贪婪算法、回溯算法和动态编程分析 - 决策方法
-
基于 H.264 的 RTP 分组和数据包捕获分析中的组合数据包和分割数据包结构介绍
-
文本分析--使用 jieba 库进行中文分词和去活字(附案例研究)
-
[逐步开发 AI 运动小程序] 十三、定制运动分析器,实现定时和计数 02
-
子网划分详细说明和实例分析 - 最好的网络
-
子网划分练习和考试分析(含答案和理解)
-
多播、组播和广播的优缺点分析
-
elasticsearch 详解(一)--什么是 es,它能做什么?-elasticsearch 简称 es,es 是一个高度可扩展的开源全文搜索和分析引擎,它可以准实时地快速存储、搜索、分析海量数据。
-
clusterProfiler|GSEA 富集分析和可视化