[ZLG-MCU] 在uCos-ii系统上控制多个步进电机

[复制链接]
 楼主| larmstrong 发表于 2007-9-3 10:29 | 显示全部楼层 |阅读模式
我想在uCos-ii操作系统上控制多个步进电机,可能会同时运行速度也不相同,我该怎么控制,哪种控制方式更好,谢谢。<br /><br />在ARM系统的uCos-ii的系统的时基一般为5ms,而步进电机的时基可能是1~4ms,需要的时基小于5ms,所有不能用系统的延时函数。<br /><br />1&nbsp;采用计算周期延时,这样这个线程就会占用CPU,会影响其他其他线程的运行。<br /><br />2&nbsp;采用另一个定时器延时,设定一个时基(如:0.8ms),步进电机延时它的整数倍,这样不能实现运行速度的变化。<br /><br />3&nbsp;采用另一个定时器延时,控制多个时基不同的步进电机,程序会很复杂,因为每次的中断时间常数可能会不同。哪位有这类demo程序。在非uCos-ii系统的中断中能否Post一个事件?<br /><br />我改选用哪种方式,或者有更好的方式?谢谢!
 楼主| larmstrong 发表于 2007-9-11 09:14 | 显示全部楼层

在非uCos-ii系统的中断中能否Post一个事件?答案是能

  
biao.l 发表于 2007-9-20 22:12 | 显示全部楼层

时基可以改的吧

  
 楼主| larmstrong 发表于 2007-9-27 08:53 | 显示全部楼层

能改,太快了会服务不过来,电动运动发抖

  
soso 发表于 2007-9-29 06:57 | 显示全部楼层

这不是rtos的问题了

&nbsp;&nbsp;&nbsp;&nbsp;看你的描述。你解决问题的路子都错了,要是给你几个servo&nbsp;3000rpm转速,你这样设计就是FPGA恐怕累死也解决不了的。
 楼主| larmstrong 发表于 2007-9-29 13:37 | 显示全部楼层

eeproom:能提供更好的解决方案吗?谢谢!

  
gavin_he 发表于 2007-10-12 09:11 | 显示全部楼层

节拍时间改短后,将线程堆栈放大点,试试看

  
U200712308 发表于 2008-4-30 23:44 | 显示全部楼层

按我的经验是要出问题的,除非你的电机的速度不是很高.

  
TRINAMIC 发表于 2014-10-6 18:38 | 显示全部楼层
最好使用通讯,TRINAMIC有集成6轴或3轴的步进控制驱动一体式智能卡,支持CAN或RS485组网控制,只需要从上位的MCU发指令就可以了  这样可以大大减少上位的负担,而且标准的运动程序可以存在卡内部
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

33

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

19

主题

33

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部