步进电机控制实验解读.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DSP实验报告 实验名称: 步进电机控制实验 系 部: 物理与机电工程学院 专业班级: 学 号: 学生姓名: 指导教师: 完成时间: 2014-5-7 报告成绩: 步进电机控制实验 一、实验目的 1. 掌握 2812 通用IO 口的使用方法; 2. 掌握 2812 对步进电机的控制。 二、实验设备 1. 一台装有CCS软件的计算机; 2. DSP试验箱的TMS320F2812主控板; 3. DSP硬件仿真器。 三、实验原理 步进电机工作原理,给步进脉冲电机就转,不给脉冲电机就不转,步进脉冲的频率越高,步进控制电机就转的越快;改变各相的通电方式可以改变电机的运行方式;改变通电顺序可以控制步进电机的运行方式;改变通电顺序可以控制步进电机的正反转。 步进电机的控制问题可以总结为两点: (1)产生工作方式需要的时序脉冲; (2)控制步进电机的速度使它始终遵循加速-匀速-减速的规律工作。 对于I/O 口有二类寄存器: 1. 控制寄存器和数据方向寄存器,使用方法如下:首先确定引脚的功能,即IO控制器寄存器,为1 表示引脚功能是原模块的功能,否则为IO 功能。 2. 如果引脚被配置为 IO 功能,就需要确定它的方向:输入还是输出。为1 表示是输出引脚,否则是输入引脚。对于IO 功能的输入或输出是通过读写相应的数据方向寄存器来实现。输入引脚对应读操作;输出引脚对应写操作。 3.步进电机的使用至少需要三个方面的配合,一是电脉冲信号发生器,它按照给定的设置重复为步进电机输送电脉冲信号,目前这种信号大多数由可编程控制器或单片机来完成;二是驱动器(信号放大器),它除了对电脉冲信号进行放大、驱动步进电机转动以外,还可以通过它改善步进电机的使用性能,事实上它在步进电机系统中起着重要的作用,一般一种步进电机可以根据不同的工况具有多种驱动器;三是步进电机,它有多种控制原理和型号,现在常用的有反应式、感应子式、混合式等。 步进电机的速度控制是通过输入的脉冲频率快慢实现的。当发生脉冲的频率减小时,步进电机的速度就下降;当频率增加时,速度就加快。还可以通过频率的改变而提高步进电机的速度或位置精度。?????   步进电机的位置控制是靠给定的脉冲数量控制的。给定一个脉冲,转过一个步距角,当停止的位置确定以后,也就决定了步进电机需要给定的脉冲数。在包装机控制中,给定脉冲数的多少,还与机构的参数有关,例如螺杆的直径等。? 4.实验电路 5.试验框图 四、实验步骤 1.连接好仿真器、DSP实验箱,计算机; 2.本实验工程文件(Example_stepmotor.pjt)加深DSP系统的理解#include include/DSP281x_Device.h // DSP281x Headerfile Include File #include include/DSP281x_Examples.h // DSP281x Examples Include File void delay_loop(void); void Gpio_select(void); short codetab[17]= {0x0001,0x0002,0x0004,0x0008,0x0008,0x0004,0x0002,0x0001, 0x0001,0x0002,0x0004,0x0008,0x0001,0x0002,0x0004,0x0008,0x0000}; main() { short i,j; InitSysCtrl(); EALLOW; EDIS; Gpio_select(); DINT; InitPieCtrl(); IER = 0x0000; IFR = 0x0000; InitPieVectTable(); InitXintf(); // For this example, init the Xintf GpioDataRegs.GPADAT.all=0; Reg06=0x00; while(1) { for(j=0;j400;j++) { for(i=0;i4;i++) { GpioDataRegs.GPADAT.all =codetab[i]; Reg06=0x00; delay_loop(); }

文档评论(0)

风凰传奇 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档