新闻中心

EEPW首页>EDA/PCB>设计应用> 基于Nios II的步进电机接口设计

基于Nios II的步进电机接口设计

作者: 时间:2013-04-18 来源:网络 收藏

2)脉冲发生器

脉冲发生器的功能是产生需要的脉冲序列,经过分析后知道,此部分主要由以下几个模块构成:

①16 bit计数器,脉冲发生器最终输出的脉冲其实是由1/2CLK、1/4CLK、1/8CLK…1/32 768CLK这16种脉冲组合实现,CLK是由step _control分频得到基准时钟。为了实现这16种频率的脉冲,需要16bit的计数器。16bit计数器的产生16种状态,保持16种基频的状态唯一。

②基频产生模块,由公式(3)、(4)可知,这16种脉冲其实是以16bit计数器的16种不会重叠的状态为条件而产生的。

③脉冲叠加,脉冲叠加模块,用来把这16种脉冲叠加起来,得到需要合成的输出。最终合成的输出控制可由16个两输入与门来实现,一端接输出脉冲,另一端接对应的脉冲个数寄存器。

3)脉冲分相器

由于是四相,并以单拍的方式运行,所以在最后从脉冲分相器输出的频率为四相。CP[3:0]就是最终输出的四相信号。

3 电机控制模块的仿真与验证

1)功能仿真

电机控制模块在Quartus II上的综合结果如图3所示,电机控制模块是由slave、step_control、step_wave及step_cp 4部分组成。

2)SOPC平台验证

首先导入的HDL文件是用于描述模块的硬件逻辑功能。对于电机控制模块,导入的文件分别是motor.v、step_control.v、step_wav e.v和step_cp.V,其中motor.V是顶层文件,配置SOPC平台,如图4所示。

当通过SW开关设定不同的值时,相应控制电机的4路脉冲信号就可以通过led显示出来。同时,利用Quartus II中的signaltap II的对电机控制模块仿真如图5所示。仿真结果是与实际设计相符的。

4 结论

根据控制功能的要求,文中设计了控制模块,该模块采用一种脉冲叠加算法,实现了对正、反转控制;实现了对步进电机转动的定位和任意频率变速。完成了对该模块向SOPC Builder的标准模块库中的封装。

结合Avalon总线、II内核及其外设的特点,使用Quartus II和SOPC Builder存Cvclone II上创建了一个远程控制的硬件平台。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭