老古开发网首页
导航:老古开发网首页文章索引文章分类网络文摘→[PC基自激步进电机控制器]
| -文章搜索 - 最新文章 - |

PC基自激步进电机控制器

发布时间:2006年5月29日 点击次数:1762
来源:   作者:
 

步进电机在电子—机械装置中变换电脉冲为不连续的机械运动。一般电机具有一个自由转动轴,加上电源能连续转动。步进电机的转动轴在加电脉冲时以合适的时序不连续的转动。电机轴转动方向与脉冲时序有关。转动速度与输入脉冲间的时间有关,转动的持续时间直接与所加脉冲数有关。

因此,步进电机允许电对机转动轴距离、方向和向量的简单开环控制。若希望的话,也可以用一个编码器加一个闭环反馈,但通常所用的步进电机没有任何反馈环路。


图1  驱动单极性步进电机

图2  用UCN5804IC控制一个单极性电机

步进电机优缺点

与一般电机相比,步进电机具有如下优点:
  用数字输入脉冲和开环模式可以非常精确地控制电机转动轴位置。控制形式不需要昂贵地传感器和控制电路。跟踪所加输入脉冲数可知其位置。
  步进电机工作在非常低速是可能地。
  步进电机是非常可靠地,这是因为无电刷,这种电机具有很长地工作寿命。
  改变所加脉冲地频率,可以容易地控制步进电机速度。
  只有绕组被激活,电机在间歇时具有全转矩。
  良好地起动和停止响应》

但步时电机也有缺点:
  成本通常高于一般电机成本。
  不容易工作在非常高地速度。
  步进电机通常适用于低转矩应用。


表1  1相全步驱动

控制单极性步进电机
基本上有三类步进电机:可变磁阻,永磁和混合电机。本文描述用PIC微控制单极性步进电机的速度、方向和步大小。本电路的独特性是可以工作在远程模式、编程模式或独立应用模式。任远程模式,从RS-232串行口接收转动命令,这些命令存储在微控制器的非易失性EEPROM中;在独立应用模式,电机跟随EEPROM中的命令在PIC微控制器控制下转动,而不用任何外部脉冲。

单极性电机容易控制,可以用1/n计数器电路产生所需的步进时序。每个绕组可以用一个推动晶体管。最通用的驱动方法之一是1相全步,也称之为“波驱动”,在这种方法中每次激励电机绕组(见表1)。对每个线圈绕组可以用一个MOSFET功率晶体管驱动电机(见图1)。

单极性电机也可以用集成电路(如UCN5804B)控制。UCN5804B工作电压6V~30V,它包含用于时序逻辑的CMOS逻辑部分和直接驱动单极性步进电机的高电压输出部分。如图2所示,电机直按连接到此芯片。脉冲加到此芯片的STEP输入,而芯片产生合适的信号时序来驱动电机。芯片的DIR逻辑输入控制电机方向。

尽管像UCN5804这样的集成电路能简化步进电机控制过程,但有的应用希望产生脉冲来控制独立应用模式中的步进电机。例如,希望顺时针转动电机500步,然后,3秒延迟,逆时钟转动电机2000步,然后,2秒延迟,电机顺时钟转动60步,并停止。实现这样操作的一种方法是用微控制器和UCN5804芯片,可以编程微控制器来产生UCN5804所需的脉冲。

本文所采用的方法是基于采用低成本PIC16F84微控制器和ULN2003A驱动器来控制单极性步进电机的转动。图3示出控制器的框图。


图3  控制器框图

图4  控制器电路图



控制器工作在3个模式:远程运行模式、编程模式和独立应用运行模式。

在远程运行模式,每一个脉冲到STEP输入,电机转动1步。转动方向由DIR输入控制(类似于UCN5804B控制器的工作)。在编程模式,用RS232接口把所需的转动命令送到微控制器。本电路中用PC把所需的转动命令送到微控制器。所接收的命令存储在微控制器的非易失性EEPROM中。当微控制器处于独立应用运行模式时,电机由存储在微控制器EEPROM中的命令步控制。

控制器电路示于图4。工作在4MHz的PIC16F84微控制器是控制器的心脏。配置口RAO~RA3为输出,用这些口驱动ULN2003A输入。ULN2003A的输出直接驱动步进电机。微控制器的RB2输入配置为串行RS232输入,而晶体管—二极管电路用于输换RS232信号电平到+5V。1个两路DIL开关连接RB3和RB4输入。靠开关选择工作模式 (见表2)。S1选择编程或运行模式。在运行模式时,S2选择来自内部EEPROM或外部脉冲的操作。RB0和RB1是STEP和DIRECTION输入。当控制至处于远程运行模式时,每加一个脉冲,电机转动一步。

一个小的LED连接到PORTB的bit7。当控制器处于编程模式和从串行口接收有效命令时,LED每秒闪光一次。此电路设计用于具有高达500mA(在+12V)电流的步进电机。


表2  选择模式

软件
软件分两部分:微控制软件(运行在PIC微控制器)和PC软件(用于经PC串行口下载命令到微控制器)。
用Hi-Tech PICC Lite C  compiler 开发微控制器软件。此编译程序是由Hi-Tech 公司开发的,可以用于编程PIC16F84和PIC16F877芯片。用高级语言开发微控制器系统具有容易开发和测试代码以及容易维护代码的优点。程序清单见程序列表。

命令用字符‘S’开始,然后发送步进角和步间延迟。其次,送5个字节来指定所需的转动。前两个字节是转数。然后规定转动方向,其后是命令间所需的延迟。送一个“#”字符来指明数据结束。LED每秒闪烁一次表明已按收的数据无错误。


图5  一个典型的运行实例


用Visual  Basic 开发PC软件。程序用Microsoft MSComm ActiveX子序列送出串行数据。程序由单元格式组成(见图5),每个单元用于输入所需的电机命令。以这种形式,用户输入电机步进角、每个步之间所需的延迟和所用串行口数。然后输入所需的电机控制步(转数)、方向(0或1)和命令之后的延迟(ms)。

9步用于用户输入电机控制命令,但修改程序可以增加此步骤数。

结语
本文给出的控制器可以很容易地通过串行线接收控制命令,并存储在微控制器的EEPROM中。用PIC16F84微控制器,在EEPROM存储器中,可存储多达12个控制命令。较大的PIC芯片,如PIC16F877,在EEPROM中,可存储多达50个控制命令。■(京湘)


欢迎进入老古论坛进行讨论
[网络文摘] 相关文章:
用dsPIC30F的QEI模块测量交流电机速度和位置
简介:
本文介绍用dsPIC30F数字控制器的正交编码器接口(QEI)模块,对电机的速度和位置进行控制的方法。提供了典型电机控制中转子的速度和位置测量的代码实例。 正交编码器接口(QEI)模块 图1 正交编码器接口信号 图2 正交编码器接口功能方框图 dsPIC30F的正交编码器接口(QEI)模块提供了一个与增量光编码器的接口,允许从电机或机械系统中,获得速度和相对转子位置信息。QEI模块提供16位时基,接受从增量编码器连接的A、B和标志信号。电机速度和位置信息能用×2或×4分辨率进行测量。 QEI模块有两个速度通道:A相(QEA)和B相(Q......

即插即用传感器
LVDT:一种简单而又准确的位置传感器
下一代自动测试系统与合成仪器的发展
IR第三财季报告捷报频传
最佳噪声性能的信号调理
电子行业有必要实施 RoHS 指令吗?将来的一些不确定性需要积极的环保措施
无铅化/RoHS最新通报
三星LN-R408DX高清LCD电视拆解分析
喇曼和掺铒光纤放大器在WDM系统中的应用
 
下一个:[新闻热点]TD-SCDMA产业链充实完善有四个方向
简介:
   3G国标再起底   “电信产业从垄断走向过度竞争,从旧技术演进到新技术,从旧的电信网成为互联网,给我们带来的实际含义是,变革是永恒的。”日前,在“3GPP标准与产业发展研讨会”上,3GPP(第三代合作伙伴计划)主席Rosnebrock 在说完这句后,又强调了一遍,“变革是永恒的”。这似乎暗指TD-SCDMA技术曾走过怎样的一路荆棘:从应和者寥寥,到产业链的逐步完善;从申请专利开始,到埋头进行诸轮测试。最新的消息是,TD-SCDMA的“升级版”TD-HSDPA系列产品已经在加强研发。   最近,来自3GPP各合作伙伴和独立成员的60余名电信专家齐聚北京,参加“3GPP标准与......
 

上一个:[新闻热点]AMD回收3千服务器芯片 Opteron异常高温

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:10分钟 执行时间:16毫秒