- 博客(9)
- 收藏
- 关注
原创 tustin离散化QR控制器
工程中,要用单片机实现控制,需要将控制器的连续传递函数离散化,离散化就是将S域转换到Z区域,用Z换元,将S的表达式变成Z的表达式。所有离散化都如此处理,传递函数复杂的系统只是化简麻烦一些。举一个简单的例子:使用tustin离散化QR控制器。u是系统输入R(Z),y是系统输出C(Z)将等式两边交叉相乘,C(Z)的系数就为。第三步:将传递函数化简成Z的多项式。,将其化为1,全部项系数同除。第一步:写出传递函数。第二步:用Z替换S。第一步:写出传递函数。第二步:用Z替换S,第三步,化简一下,令。
2024-06-21 15:12:26
228
原创 DSP的ADC、EPWM、CLA三个模块协作时序
首先,EPWM的时基模块是上下计数的,在计数值等于周期值时触发中断,通过配置,在上下计数模式时,使计数值等于0和等于周期值时产生SOCA事件触发ADC采样。最后,在CLA任务进行编程,需要根据EPWM的计数状态将两次采样的值进行保存,然后求取平均值,向上计数时,则该开关周期采样完成,可进行平均值计算。为实现在一个开关周期内采到开、关两点的电流,需要使用EPWM的ET模块触发ADC采样,然后ADC转换成功后再触发CLA进行AD值的运算。
2024-06-19 17:35:46
441
原创 根据傅里叶级数推导逆变只含奇次谐波
在学习逆变电源的过程中,得知逆变的谐波只有奇次项,这让我有些疑惑,于是便开始学习其中的原理。在一通搜索之后,大概知道是由傅里叶级数展开后得出的结论,大概就是说,奇谐函数中只含奇次的an和bn项,偶谐函数只含偶次的an和bn,而逆变的正弦波是奇谐函数,所以只含奇次谐波。再根据f(0)=0的条件可以知道,bn项都为0,最后就只剩下奇次的正弦函数了,也是就是3.5.7..次谐波。有两个条件,一个是f(t) = -f(t+T/2),一个就是f(0)=0。
2024-06-01 14:07:49
356
原创 一个定位单片机跑飞原因的绝对方法
当然,UP主这里只是一个简单的例子,更全面的可以查看栈的数据,将跑飞前的函数执行的每个函数、变量定位出来。第四步:读队列函数肯定是没问题的,那么我们就需要看下这个函数的变量了,插一句:需要了函数的过程,可以看下面的链接,不看也可以,我下面简单介绍如何找到我们的目标变量。第五步:调试打开汇编窗口,那么我们就可以知道,Buf的值等于R1寄存器,Ret的值等于R0寄存器的值,我们回到打印的信息看一下。第一步:通过addr2line打印出程序跑飞前的数据打印出来,arrd2line的使用可以点下面链接。
2024-01-26 12:15:16
1081
1
原创 DSP的ePWM中的DB死区模块工作原理
可以看到,经过上升沿延迟后的信号是RED,下降沿延迟后的信号是FED,RED就是输出的ePWMA,FED取反后就是输出的ePWMB。其他的也类似,就是通过S0-S5这几个开关来设置,程序上就是设置。博主通过普中的教程学习DSP芯片,在看到ePWM模块时,发现开发教程上对DB模块讲解不是很详细。如图所示,ePWMA的上升沿延迟,ePWMB的输出是ePWMA的下降沿延迟后取反得到的。可以看到,DB模块有ePWMA和ePWMB两个信号输入选择,可以通过S4、S5来进行选择。首先,我们来看一下DB模块的框图。
2023-08-03 20:19:22
988
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人