我是靠谱客的博主 称心朋友,最近开发中收集的这篇文章主要介绍重复控制的DSP程序实现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

首先引用一篇简洁清晰介绍重复控制环路和离散表达式的文章,
https://blog.csdn.net/liuzhijun301/article/details/80445590
这篇文章写得比较好,唯一的不足是用代码实现离散表达式时,使用了for循环,这种实现方式对仿真模型运行来说,问题不大,但对嵌入式系统来说就不可接受了,为了节省中断任务的时间开销,应避免使用for循环,而用中断本身的循环来代替。
这里给出另一种具体实现方式:

//N是重复信号一个周期对应的拍数,也是数组长度,Kr是幅值补偿系数,k是相位补偿拍数,Q是稳定补偿系数。
if(PWMEnable==1)
{
	if(N<=i)
	{
		i=0;
	}
	if(N-k-1>=i)
	{
		y = Q*y[i] + Kr*e[k+i];
	}
	if((N-k<=i)&&(N-1>=i))
	{
		y = Q*y[i] + Kr*e[i-N+k];
	}
	y[i]=y;
	e[i]=e;
	i++;	
}
else
{
	i=0;
	y[N]={0};
	e[N]={0};
}

最后

以上就是称心朋友为你收集整理的重复控制的DSP程序实现的全部内容,希望文章能够帮你解决重复控制的DSP程序实现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部