直接用计算机串行口控制步进电机方法.docVIP

直接用计算机串行口控制步进电机方法.doc

  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文档。上传文档
查看更多
直接用计算机串行口控制步进电机方法

直接用计算机串行口控制步进电机方法摘 要: 介绍了计算机串行口经二次开发,用作步进电机控制器的新方法。通过向串行口发送数据产生控制脉冲,实现对步进电机的控制。 关键词: 串行口再开发; 控制脉冲; 步进电机控制 中图分类号: TP39 文献标识码: A 文章编号: 1009-8631(2012)08-0065-01 步进电机在数控机床、医疗器械、仪器仪表等自动或半自动设备中得到了广泛应用。控制步进电机常用步进控制卡,卡中Pulse、Dir分别为控制电机的转换步数和旋转方向的信号;CWL、CCWL分别为电机顺、逆时针旋转的限位信号;ORG为定位信号。这种方法不成本较高,不便于操作,在计算机扩展槽上安装控制卡,也很不方便。将计算机串行口二次开发,用于控制步进电机,具有成本低、操作简单、兼容性好等优点。 1 RS232串行口及编程 计算机串行接口采用RS232标准,常用信号有8个(为DB9M插座时,引脚号如表1所示),其中RXD、TXD为收、发数据,可与RS232串行口设备直接进行通讯,RTS、DTR、CD、DSR、CTS、BELL为控制与检测MODEM的信号,在通讯过程中起联络与控制作用。数据格式有5、6、7、8位几种,1位起始位(逻辑0),1、1.5或2位停止位(逻辑1),可以选择奇校验、偶校验和无校验,串行口编程方法主要有三种:硬件编程法、文件操作法。 1.1 硬件编程法 直接使用端口的输入、输出(I/O)函数对串行口的控制电路进行编程。适用于DOS及Windows平台,但在基于NT技术构建的操作系统中因不允许用户程序直接操作硬件而不适用。常用的端口输入、输出函数(指令)有:汇编语言的IN、OUT指令及软中断调用,C语言的inport()、outport()、inportb()、outportb(),C++的_inp()、_outp()等。计算机串行口采用Intel 8250异步串行通讯组件构成,COM1、COM2、COM3、COM4的基地址分别为03F8H、02F8H、03E8H、02E8H,波特率因子(DR)计算方法为:DR=1.8432×1000000/16B, 1.2 文件操作法 文件操作法是将串行口作为系统的一个文件来处理,通过对这个文件的读、写操作引发串口对数据进行收、发动作。这种方法在DOS、Windows、Windows NT、Windows 2000及Windows XP等平台下都能正常工作。例如在BASIC语言中可用语句:OPEN “COM1,1200,n,8,1,rs,cs,ds,cd”AS #1将串行口COM1作为文件#1进行读写操作。在VC++中,可用CreateFile()、BuildCommDCB()、Read()、Write()、EscapeCOMMFunction()等函数将串行口作为文件进行操作。 2 串行口步进电机控制器工作原理 2.1 串行口发送数据过程研究 在串行口发送数据的过程中,串行口先发送起始位(逻辑0)进行同步,接着按规定的波特率(B)从低位到高位依次发送通讯数据的各二进制位,最后发送停止位(逻辑1)。表示每个二进制位的逻辑电平在TXD端的保持时间为1/B秒。如果按8位数据位、1位停止位、无奇偶校验方式发送数据,所发送数据的二进制位是0、1交替的。例如:数据即55H),每发送一个字节,在TXD端发出5个脉冲,周期T=2/B,即频率f=B/2。改变发送数据的各二进制位,便可在TXD端得到不同的波形。 2.2 串行口步进电机控制器工作原理 通过分析串行口发送数据的过程可知,从TXD端所发出的脉冲完全满足控制步进电机的需要: ①改变发送的字节数及所发送的字节内容,可在TXD端产生任意数量的脉冲; ②改变波特率可动态改变发送脉冲的频率。 所以,可用TXD作为控制步进电机的脉冲信号(Pulse)。 串行口的DTR、RTS、CTS、DSR、CD、RI虽然在串行通讯接口中被定义为不同功能的握手信号,但通过对8520/1的分析可知,它们均可作为一般的I/O量使用,而且不论采用哪种编程方法,都能很方便地对这些信号进行读写操作。若以DTR(或RTS)作为方向控制信号(Dir),同时分别以CD、DSR、CTS、RI作为状态检测信号(CWL、CCWL、ORG等),则仅用一个串行口就已提供了步进电机控制器需要的所有信号。由于串行口已直接提供了控制步进电电机所需的所有信号,只需将各信号由RS232电平变成TTL电平即可。常用的电平转换器件有DS1488、DS1489。 3 软件设计及计算 为避免电机失步和提高电机运行速度,将步进电机运行过程为分三个阶段:低速起动并加速、高速运行、减速并停止;相应地控制脉冲也

文档评论(0)

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

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

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档