步进电机控制器.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
步进电机控制器.doc

步进电机控制器 特点: ?可调整的步进电机控制器 ?中断驱动 ?简洁的代码(中断子程序仅10字节) ?运算量小 ?支持所有AVR系列单片机 介绍: 此应用笔记介绍了如何实现一个代码简洁,中断驱动的步进电机控制器。步进电机通常用 于相机变焦、卷动胶卷、传真机、打印机、复印机、送纸机/分拣机及磁盘驱动器。 高性能的AVR单片机使设计者可以用较小的MCU运算量实现高速步进电机应用。 原理: 直流步进电机根据电流脉冲的变化进行旋转动作。通常电机有四个绕组线圈。线圈通常标 为红、黄/白、红/白、黄,但也会有其它颜色。在这些线圈上施加电压驱使电机步进工作。 在正常运行时,有两组线圈同时动作,当线圈脉冲顺序改变一次步进电机顺时钟旋转一步。 如果脉冲电压反向,电机会逆时钟运转。 旋转速度由脉冲频率控制。每当脉冲施加到电机时它会旋转一个固定的角度,通常每步旋 转1.8度。以1.8度/步完成360度旋转需要200步。通过改变中断吋间,电机的速度可以调 节,并且通过计算步数,可以控制电机的角度。 图1步进电机时序:黄 图1步进电机时序: 黄 ,STEP 0 , STEP 1 , STEP 2 , STEP3 表I表示的是输出到步进电机执行每步动作的16进制值。 步 黄 红/白 黄/白 红 HEX值 0 1 0 0 1 9 1 1 1 0 0 C 2 0 1 1 0 6 3 0 0 1 1 3 软件描述: 软件使用16位定时器(带俘获功能)产生间隔为100微秒的中断。当中断程序执行时, 新的步进值输出到PORTBo 电机步进值存于FLASH存储区,初始化时,此值复制到SRAM以得到最快的读収速度 和最高的控制性能。 执行中,中断程序每7+4个时钟循环运行一次,退出需要4个时钟循环,总的需要15 个循环。步进电机控制少于2微秒。如果中断间隔为100微秒,则步进电机的处理仅占用 CPU 2%的处理性能。 此例中步进电机的控制值存于RAM的0100 (十六进制)地址。RAM地址的高8位是 常量并且仅有低8位用于访问地址信息。见图2: 变量的低位(4位)是用于控制电机的实际值,髙4位保存的是下一个控制值的地址。 图2:步进电机的地址和值: 地址(HEX)0100010101020103值(HEX)19 地址(HEX) 0100 0101 0102 0103 值(HEX) 19 2C 36 03 上述方法可以用最少的处理器资源达到最快的工作速度。 表2。CPU和内存使用 函数 代码大小 时钟循环 寄存器使用 中断 描述 main 38 words / R16, XL, XH, ZL, ZH / 初始化并演 示稈序 OC1A 10 words 13+返回 R16, XL, XH Timer 1 Output Compare A 输出步达电 机控制值并 计算下一值 TOTAL 48 words / R16, XL, XH, ZL, ZH / / 表3:芯片引脚使用 引脚 描述 使能的中断 4 个 I/O 口 步达电机输出脚 / Timer 1 定时中断,用于产生步进脉冲 Timer 1 Output Compare A ********************************* ********************* ****************** *AVR系列应用笔记 *文件名*标题 *文件名 *标题 * FI期 *版本 *目标单片机 :简单的高速步进电机控制器 :907.02 :1.00 :AVR全系列;* ?上 ?上 ?上 ?上 ?上 ?上 ?上 ?上 ?上 ?上 ?上 ??????,??、 include H..\8515def.incir ************** * ([卜 *** ********************************* *** ***** def temp = R16 *!?*!?*!?*!?*!?*!? ?土 *!? ?土 *!? 〃 W ?」 ?土 ?土 ?土 ?」■ ?」■ ?丄■ ?丄■ ?士 ?士 ?士 ?士 ?士 ?士 ■[“ ?士 ?士 ?[“ ?士 叫.叫.叫.叫.叫.叫.叫.叫.叫.%叫.%叫.%. %. %. %. 叫.叫.叫. 人匸中宝 equ c_value = 500 ;输出比较中断的比较值 ;50() cycles@5Mhz = 100us rj r^ rj^ r^ rj r^ rj r^ rj^ r^ rjw r^ rjw rjw r^ rjw rjw r^ rjw rjw rjw rjw rjw rjw rjw rj* rjw rjw r^ rj* rj^ rj^ rj* rj^ rj^ rj^ rj? rjw rj? rj^ rjw rjw rj^ rjw

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档