下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、用串行口控制步进电机两维运动系统2009-5-13 10:00:00王继业供稿摘 要:本文介绍了一种通过微机的串行口控制两维坐标定位系统的新方法。该方法不需要MCU,可以方便的通过改变串口的波特率来改变步进电机的运行速度,可以通过RS232串口中控制Modem状态的输入、输出信号来控制运动的方向和读入不同的位置信息。该方法使用逻辑电路实现控制功能,比用MCU的方法不仅简单,省却了编程的麻烦,而且提高了可靠性。关键词:串行口;步进电机;运动控制Abstract: a new method about the two-dimen
2、sion coordinate contral system by the serial port of the personal-computer is introduced. this method is convenient for changing the motion speed of the step motor throug
3、h chaning the baud rate of the serial port, and contraling the motion direction and getting the position information of the motor by contraling the input or output
4、160;signal of the Modem state in the RS232 serial port. This new method using logic circult to realising the contraling function is more simple, so there is no
5、need of programming, and can improve the reliability.Keywords: serial port、step moter、motion control1. 引言步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控
6、制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。步进电机在数控机床、医疗器械、仪器仪表等自动或半自动设备中得到了广泛应用。用计算机控制步进电机的通常作法是采用步进控制卡, 这种方法不仅成本较高,而且不便于操作。在计算机扩展槽上安装控制卡,必需打开机箱才能操作,而且在小型平板电脑和嵌入式电脑中根本没有安装控制卡的空间和扩展槽。进年来出现了将计算机串行口二次开发,用于控制步进电机的技术,代替控制卡的作用,具有成本低、操作简单、兼容性好等优点。本文介绍了一种通过微机的串行口控制两维坐标定
7、位系统的新方法。串行口是微机系统的标准配置,在仪器仪表控制系统中得到广泛的应用。计算机串行接口采用RS232标准1:规定逻辑1的电平为-3-15V,逻辑0的电平为+3+15V,常用的信号有8个(接口为DB9M和DB25M插座时,引脚号如表1所示),其中RXD、TXD为收、发数据,可与RS232串行口设备直接进行通讯,RTS、DTR、CD、DSR、CTS、BELL为控制与检测MODEM的信号,在通讯过程中起联络与控制作用。数据格式有5、6、7、8位几种,1位起始位(逻辑0),1、1.5、或2位停止位 (逻辑1),可以选择奇校验、偶校验和无校验,常用波特率为2400、4800、7200、
8、9600bps等。表1 标准9针和25针串口的管脚定义用串行口控制步进电机驱动的运动系统的一般方法是通过单片机或其它嵌入式控制系统,由计算机向单片机系统发送控制信息,单片机系统再直接控制运动系统,从而计算机可以间接的控制系统的行为。这种方法有一些缺点。比如控制缺少灵活性,往往只能按照事先定好的模式运动,不能通过控制软件任意改变。单片机要同时接受计算机命令和发送状态给计算机,又要控制运动系统,多任务并行,给程序编制带来一定麻烦。单片机程序容易跑飞,给系统可靠性带来很大威胁,甚至有时需要人工复位操作。为了克服这些缺点,在实际应用中,我们设计了一个串行口直接控制运动系统的方法。该方法不需要
9、MCU,可以方便的通过改变串口的波特率来改变步进电机的运行速度,可以通过RS232串口中控制Modem状态的输入、输出信号来控制运动的方向和读入不同的位置信息。由于是直接控制,没有中间的处理器系统,克服了上面的缺点,降低了成本。下面介绍这种控制系统实现的方法。2. 二维运动步进电机驱动的控制方法步进电机驱动的二维运动定位系统中,每一个维度都是由步进电机驱动丝杠转动,丝杠再把运动转化为直线运动。如图1所示。对该系统的控制,除了要发出步进电机的方向控制和步进脉冲信号外,还要读入绝对定位用的开关信号,这样才能达到绝对坐标控制的目的。图中S1是坐标零点的限位开关,它输出高电平时,表示运动已经
10、到了绝对零点。因为这种机械或光电开关的精度有限,所以由S1输出的零点脉冲精度不高。为了提高零点的位置精度,还设置了开关S0,步进电机每旋转一圈,它输出一个脉冲。虽然S0输出的脉冲宽度和S1比并没有什么改变,但由于丝杠的作用,使S0输出的脉冲相对于线性位置的精度大大提高。因此,零点的判断方法应该是:当向左运动时,首先判断S1是否输出高电平。如果输出高电平,表示已经基本到达零点,只是精度还要继续提高。这时继续驱动步进电机转动,判断S0是否输出高电平。如果S0输出也达到高电平,才表明真正达到了零点。开关S2是坐标最大值的限位开关,它输出高电平表明已经达到了坐标的最大值,不能再向右运动。图1
11、;步进电机驱动示意图图1只是画出了一维运动的示意图,另一维的控制完全相同。下面着重讨论具体的实现方法。3. 步进脉冲的产生和速度计算每给步进电机的驱动器一个脉冲,步进电机就转动一步,而方向是由另外一个电平信号控制的。对于某种步进电机来说,每转动一周需要的脉冲个数是一个固定的常数n,因此,每发送一个脉冲电机转动的角度也是固定的,称为步距角s。s和n的关系是:s=360/n度。比如,一种四相八拍运行的步进电机每周需要400个脉冲,则步距角s=0.9度。步进脉冲采用巧妙的利用计算机串行数据的格式经过恰当的设置产生。计算机的串口数据帧一般由起始位、数据位、校验位、停止位组成,如图二所示是传送
12、B10010011的情况,这里起始位设定为1位,下面是8个数据位,奇偶位设置为“Mark”,即为1,停止位为1位,是逻辑1。停止位的作用是如果连续发送数据时,保证一个数据帧的接受完毕和另一个数据帧的起始保持一定的时间间隔。这样,我们设定的一个数据帧有11位。随着发送的数据不同,我们可以在这11个数据帧中得到不同个数、不同时间宽度的脉冲。比如,发送二进制数B11110000,则起始位0后紧接着4位0,后面4位连续的1,再加上奇偶位和停止位两个1,整个数据帧组成由前面5个连续的0和后面6个连续的1组成的1个脉冲信号。如果选择不同的发送数据,还可以得到不同个数的脉冲。比如,发送B10101010可以
13、得到连续4个脉冲。这里,为了得到均匀的占空比,总是采用发送B11110000数据的方式每个数据帧产生一个脉冲。图二、传送二进制数B10010011的示意图串行通讯的波特率B定义为每秒发送数据的位数,一个数据帧11位,则需要的时间T位11/B,而每个数据帧只产生一个脉冲,则脉冲频率v可以确定为v=B/11,如果步进电机每周需要的脉冲个数为n,则电机转速=60B/11n转/分。例如,如果B取9600b/s,n取400,则=131转/分。4. 位置信号和方向信号的读入和输出计算机的9针标准RS232串行口信号除了数据发送接受用的TxD/RxD外还有RTS/CTS、DTR/DSR、DCD等信
14、号。这些信号原本定义控制Modem用的,我们这里用来读入位置信号和输出方向信号以及维度选择。具体的说,我们用DTR输出维度选择信号,如为“1”,则表示这时的所有输出和输入都是针对X方向的运动,如为“0”,则选择Y方向。信号RTS用来输出运动的方向,即控制步进电机正传和反转。输入信号CTS、DSR、DCD用来输入限位开关和零位开关的信号。另外,还要有RS232电平和TTL电平之间的转换电路。RS232电平是负逻辑电平,为了实现RS232电平和5VTTL电平之间的转换,这里我们采用MAX232专用芯片,该芯片核心是一个“电荷泵”,只需要单5V供电即可。电路的示意图如图三所示,整个电路的逻辑可以用一
15、片可编程逻辑芯片EPM7064实现。在实现上面电路的同时,在可编程逻辑芯片中,我们同时实现了步进电机的脉冲分配逻辑和保护逻辑,在坐标达到最大和最小值后,电机不再允许向右和向左运动。5. 实际应用和编程本文提供的方法对计算机控制软件软件的编制给予了极大的方便2。以MSVB6为例3,放置串口控件MSCOMM32后可以方便的通过程序设置DTR、RTS的值来控制运动的维度和方向,通过读取控件属性CTS、DSR、DCD的值来得到运动的情况,通过设置不同的发送波特率来改变步进电机的速度,通过在发送缓冲区中放置字符个数控制步进电机的运动步数。我们也可以在Delphi下方便的编程4,在其它计算平台上,我们也可以方便的编程,比如,在linux上5,我们可以通过对ttyS0设备编程方便的控制串口设备。本文的方法作者已经成功地应用在金相显微镜载物台的自动控制中。本文作者创新点:1. 通过串口的波特率、格式设置和输出字符来产生不同频率和占空比的步进电机驱动脉冲。2. 通过标准串口的输入、输出控制信号,输入和输出两维运动系统的控制信号和位置信号。参考文献:1. 微型计算机接口技术及应用,刘乐善等,华中理工大学出版社,2000.4。2. Visual C+/Turbo C串口通信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年山东省泰安市泰山区上高中学初三第二学期第一学段考试生物试题试卷含解析
- 福建省泉州市鲤城区北片区重点中学2025-2026学年下学期初三4月月考化学试题含解析
- 云南省保山市重点达标名校2026年初三下学期四模考试生物试题含解析
- 呼和浩特市重点中学2026年初三4月质量检测试题(四)化学试题含解析
- 2026年碳普惠减排量用于自愿碳抵消的流程与证明材料
- 2026年家庭养老床位护理型床位运营补贴申领流程
- 2025年临床执业医师《儿科学》测试卷
- 广告行业创意总监的岗位面试技巧
- 数据分析与数据挖掘技术应用
- 2026年七一建党节领导发言稿文化自信自强建设实践
- 配电箱设备防护维护技术方案
- 2026年苏州工业职业技术学院单招综合素质考试题库附答案
- 2025年江西省公务员考试行测真题解析试卷(含答案)
- 西藏高标准农田施工方案
- 开闭所操作规程与安全规范
- 建筑结构设计优化与案例分析
- 2025年事业单位招聘考试卫生类医学检验专业知识试卷(岗位匹配度测试)
- 辅警管理办法福州
- GB/T 20988-2025网络安全技术信息系统灾难恢复规范
- 商品用批次管理办法
- DB15∕T 3686.2-2024 物业管理服务规程 第2部分:工程运维
评论
0/150
提交评论