×
嵌入式开发 > 详情

基于单片机的数字正弦机研制

发布时间:2020-06-18 发布时间:
|

伺服系统的调试过程中,需要能够准确发送各种测试信号的正弦机。但通常使用的机电正弦机具有难以克服的机械传动空回、死区及波形失真和漂移、装订参数可重复性差等缺点。

为了克服以上缺点,作者开发了8098数字正弦机

1硬件组成

8098数字正弦机采用MCS-96系列8098单片机[1,2](也可选用兼容的80C196单片机)和5VASZZ系列DSC模块,以软件方法产生阶跃、等速、周期等速和正弦等信号,通过8255直接16位数字输出,或分精粗各12位数字量分送两个DSC转化为三相模拟电压双通道输出。在此过程中,利用8279显示和控制正弦机的运行状态。8098数字正弦机的硬件组成框图如图1。

图18098数池正弦机硬件组成框图

2软件实现

8098数字正弦机的大部分功能是利用8098的汇编语言编程实现的,其软件功能框图如图2所示。

图28098数字正弦机软件功能框图

2.1信号的产生

下面以正弦信号的产生为例说明这部分的设计思想。

2.1.1算法

正弦运动的实现实质上是按给定周期的正弦函数值,在单位时间送位置偏移置y,然后加上正弦的基值y0,即可得到绕基值按正弦规律变化的位置量A0。由于内存有限,且为了简化程序,设计中采用先计算出1/4个周期的正弦曲线,再通过衔接处理得到整个周期正弦曲线的方法。其中位置偏移量的计算是根据装订的正弦周期值T,计算出单位幅值标准正弦曲线,然后用装订的正弦幅值M乘以每个计算点对应的标准正弦值x,即可得到按正弦规律变化的位置偏移量。

2.1.2 正弦引导

为保证被测伺服系统按正弦幅值平稳变化,在正弦运动起始段与结束段均设计了正弦幅值的引导程序。下面以起始引导为例加以说明:根据装订的正弦周期值T计算出需要引导的点数N,从第一点(n=0)开始,正弦的幅值m从0开始按比例线性增加,直至最后一点(n=N),恰好使得此时的m等于装订的正弦幅值M,这就完成了引导(结束引导是反过来从M开始线性递减至0)。8098数字正弦机规定引导一个周期。正弦引导的算法公式为

N=400T, (1)

m=Mn/N,(n由0到N变化), (2)

y=mx, (3)

A0=y0±y。 (4)

在引导的正半个周期,式(4)“+”号有效;负半个周期“-”号有效。正弦引导曲线示意图如图3所示。

图3正弦引导曲线示意图



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
NXP推出Wi-Fi 6E三频段SOC 充分释放6GHz频谱潜力