新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA的数字积分法插补控制器设计与实现

基于FPGA的数字积分法插补控制器设计与实现

作者: 时间:2012-04-05 来源:网络 收藏

在本中,采用了“半加载”的方式实现输出脉冲的均匀分配。半加载就是在插补运算前,在余数寄存器中预置该寄存器容量一般的值,这样可以使在插补数据远小于插补器位宽的情况下,使器更快地输出溢出脉冲,从而使脉冲更为均匀。
器做插补时,无论被积函数的大小,都必须经过216次累加才能到达终点,因此各轴输出脉冲速度受被积函数大小影响,被积函数越大,脉冲输出速度越高。为了让器溢出速度达到最快且均匀,在插补时,把各轴被积函数寄存器中的数据同时进行左移规格化处理,使其中一轴的最高位为“1”。左移1位,相当于各轴乘2,左移2位各轴则同时乘22,以此类推。这样,在不改变各轴数据比值的情况下,提高了各轴的脉冲溢出速度。规格化后,每累加运算2次必有1次脉冲输出,很好地解决了小进给量输出不均匀的问题,插补的效率和质量大为提高。
2.2.2 圆弧插补模块
圆弧插补模块与直线插补相同,也由数据缓存器、插补积分器和位置计数器构成。两模块的数据缓存器和位置计数器功能相同,这里不再阐述。
圆弧插补积分器与直线插补积分器同样采用状态机的设计实现,但它们之间有两点区别:一是x,y轴相应坐标值存入被积函数寄存器的对应关系与直线不同,恰好是位置互调的,即y轴的被积函数寄存器中存入x值,x轴的被积函数寄存器中存入y值;二是存入的坐标值不同,直线插补时寄存的终点坐标是常数,而圆弧插补时寄存的是动点坐标,在插补过程中根据其位置的变化应更改被积函数寄存器中所存的内容。当y轴每溢出1个脉冲,x轴的被积函数寄存器加“1”;反之,当x轴每溢出1个脉冲,y轴的被积函数寄存器减“1”,减“1”的原因是x向负方向进给,动坐标不断减少。

3 仿真实验
为验证设计的正确性,仿真实验完成了二维的直线插补和圆弧插补。
(1)直线插补仿真。当给定一直线段的起点坐标为(0,0,0),终点坐标为(10,12,0),则该直线在xOy平面内完成直线插补的仿真信号波形如图4所示。

本文引用地址://m.amcfsurvey.com/article/190545.htm

a.JPG

fpga相关文章:fpga是什么


伺服电机相关文章:伺服电机工作原理




评论


相关推荐

技术专区

关闭