基于ISA总线的微型电机驱控电路设计

2013-07-25 17:54:07 来源:与非网

摘要:  在工业控制领域,控制并驱动微型电动机做相应的运动是电路设计者经常遇到的课题。这里的微型电动机是指驱动电压在12V以下,驱动电流在40-50mA左右的微型电动机。此类电动机虽然功率和体积都不大,但却有着广泛的应用。例如,自动调光调焦镜头内部往往就是利用这类微型电机实现镜头自动调节,控制镜头运动实际上就是控制相应微型电机的运动。

1 引 言
在工业控制领域,控制并驱动微型电动机做相应的运动是电路设计者经常遇到的课题。这里的微型电动机是指驱动电压在12V以下,驱动电流在40-50mA左右的微型电动机。此类电动机虽然功率和体积都不大,但却有着广泛的应用。例如,自动调光调焦镜头内部往往就是利用这类微型电机实现镜头自动调节,控制镜头运动实际上就是控制相应微型电机的运动。

对这类问题,设计者更容易遇到的情况是用工业控制计算机对微型电机进行控制。利用工控机控制微型电机,有多种设计方案。本文所考虑的主要设计原则是电路简单、可靠性高、便于维护、占用空间小。工业控制计算机与外部设备的接口一般有串行口、PCI接口和ISA口等。利用串行口与单片机进行通信从而控制电机是一种设计方案,但是该方案需要为电动机单独配置电源,并且在工控机机箱外部需要放置电路板,所以成本问题和占用空间较多是该方案的主要弱点;PCI接口是一种较高效的总线接口,但是针对该接口的设计较复杂,且控制电机一般对速度要求不高,因此,使用PCI接口是没有必要的。

ISA接口是一种早期的计算机总线接口,但以其特有的优势,仍在工控计算机中广泛使用。ISA总线接口提供了±5V和±12V的电源,其12V电源可以为微型电动机提供电源。把电机控制和驱动电路设计到一块插在ISA插槽的板卡上就可以实现本文所讨论的电路功能,这种设计方案计算机外部不需附加设备和电路,直接从工控机引线就可以实现对微型电机的控制,符合前面提到的设计原则。

2 总体设计方案

该电路由可编程逻辑器件CPLD、光电隔离电路、电机驱动电路等几个部分组成。系统总体框图如图1所示。

计算机由ISA总线发出指令,CPLD器件接收后进行判断,根据计算机的指令产生相应的驱动指令,经光电隔离电路发给电机驱动芯片,最后由电机驱动电路驱动微型电机执行相应的运动。本文电机运动指令包括粗调正转、粗调反转、微调正转、微调反转四种。粗调由工控机发出启动和停止命令;微调是指工控机发出启动命令后,电机运转100ms后自动停止。根据控制的具体要求还可以设定其他指令。

系统总体框图

3 硬件电路设计

3.1 ISA总线接口简介

在本设计中,工控计算机通过ISA总线接口给电机控制驱动电路发送指令。ISA总线(Industry Standard Architecture)又称为PC/AT总线,是IEEE确立的工业标准总线结构,该总线共62+36芯,其中数据线宽度共16位,地址线共24位。工作频率8MHz,数据最高传输率8MB/s,ISA总线的控制信号主要有IOW、IOR、AEN、RESET等。电路工作时,指令作为数据传输于ISA数据总线,总线上IOW信号下降沿时,由CPLD内部寄存器锁存PC指令。

3.2 CPLD器件

本设计采用CPLD器件作为控制器件,其作用是正确接收ISA总线传来的数据和相应地址,然后根据数据和地址判断出当前计算机发出的指令,并依据指令给电机驱动电路提供控制信号。

CPLD是复杂可编程逻辑器件的简称,它与传统的数字集成电路相比有很多的优点。MAX7000系列是ALTEL公司出品的CPLD器件,该系列器件应用广泛,且价格很低,是一种性价比很高的可编程逻辑器件。本设计选用MAX7000系列CPLD的EPM7128SLC84-15,该器件逻辑门数为2500门,宏单元128个,可用的最大IO端口数量为100个。

3.3 光电隔离电路

由于电机驱动电路可能对前部数字电路部分产生干扰,因此采用适当的抗干扰措施。光电耦合隔离是一种常用的隔离方式,本设计采用光电耦合隔离的设计方案。选用6N137光电隔离芯片,6N137是利用芯片内的光电二极管,实现了输入输出端的完全隔离。该器件需要一定的外围电路,主要是在8和6管脚接入约330欧姆的电阻,管脚3经小电阻接地。注意到6N137输出是反相的,因此,驱动指令也应从CPLD反相发出。

3.4 电动机驱动电路

电动机驱动电路接收CPLD传来的指令,根据指令内容驱动相应的电动机运动。该部分电路选用了电机驱动芯片TA7279P。东芝公司的TA7279P是用于驱动微型电机的专用芯片。每片TA7279P有两路驱动电路,可以分别驱动两组独立的电机。该芯片的输出电压范围为0~16V,最大平均输出电流1A。主板上的12V电压可经过电位器分压接至该芯片,通过调节电位器,实现输出电压的可调控制,驱动电压在12V以下的微电机均可驱动。该芯片的每路驱动电路有两个逻辑控制输入端,包括急停、正转、反转、停止四种指令状态。
根据需要控制的电机数量来选择TA7279P的个数,把每个TA7279P的IN1、IN2集合到一起就可以编写CPLD需提供的若干位驱动指令,从而控制电机运行。图2所示是TA7279P的外围电路连接图。
4CPLD程序设计

4CPLD程序设计

4CPLD程序设计

图3 CPLD硬件描述原理框图

5 本设计CPLD使用Verilog HDL硬件描述语言编程设计。由三态缓冲器、数据锁存与地址译码器、驱动指令发生器以及定时器等几个模块组成。三态缓冲器是用于与ISA接口的总线隔离;数据锁存与地址译码器用于锁存ISA总线上的数据信号,并且对地址进行译码,判断当前指令是粗调还是微调操作,并给驱动指令发生器发出一个粗/微调区分信号;驱动指令发生器是根据锁存到的数据指令和粗微调区分信号进行指令译码,最后输出适合于TA7279P芯片输入格式的指令驱动。程序硬件描述语言原理框图如图3所示。本设计以驱动三路电动机为例。

图3中,IOW、AEN、ALE分别是ISA总线上的写信号和锁存信号;RESET是ISA总线上的复位信号;CLK为1MHz时钟,用于产生微调的定时。A、B、C三路指令送给后续的光电隔离电路,最终传给TA7279P作为驱动芯片的控制指令,这三路指令是随着上位计算机发出的指令变化的。按此种设计方案,选用的MAX7128CPLD利用率为58%,即充分利用了硬件资源,又预留了适当的扩展空间。

在IOW的下降沿,数据锁存与地址译码器锁存数据信号,并对地址译码,给出粗/微调区分信号,该信号为1时是粗调,为0时是微调。锁存后的数据和粗/微调区分信号送给驱动指令发生器。

微调指令要求电机运动100ms后自动停止,这个定时由定时器模块产生。从IOW信号下降沿到来时开始计时,输出定时标志信号为1期间是有效时间,此信号送给驱动指令发生器模块作为判断电机是否运动的一个条件。

驱动指令发生器根据锁存到的数据指令和粗微调区分信号以及时间标志信号进行指令译码,最后输出适合于TA7279P芯片输入格式的驱动指令。ISA总线发来复位信号RESET有效时,驱动指令发生器命令各路电机均处于停止状态,从而保证系统开机时各电机处于停止状态;计算机发出指令时,驱动指令发生器根据粗/微调区分信号先分辨是粗调还是微调指令,然后进行指令译码,其中微调指令还要看定时标志的状态,在其有效时运动。

由于输出给电机驱动芯片的指令定义是根据CPLD与TA7279P的管脚连接进行的,本文设定在ISA总线输入指令数据为11H时,AOUT输出为101111(二进制),控制TA7279P的某一路输出实现正转功能。图4是驱动指令发生器模块仿真波形图,图中设定处于微调模式(粗/微调区分信号DL=0),图中AOUT的3FH为停止状态。
图4 驱动指令发生器仿真波形图

图4 驱动指令发生器仿真波形图

5 结 论
对以上介绍的设计方案笔者进行了硬件实验,并在工程上使用,基于研华公司的ACP-5260工控机,成功对松下公司的Y系列自动调光调焦镜头实现了控制驱动。图5是该控制驱动板卡照片。

照片

 

基于ISA总线的微电机控制驱动电路具有可靠性高、电路简洁、占用空间少等优点,特别适合于带有工控机且空间较少的控制环境,是一种合理可行的设计方案。

本文作者创新点是直接利用工业控制计算机主板上的ISA总线控制驱动微型电机,避免了外加电路和电源,从而简化了系统结构,提高了系统的稳定性和实用性。


 

 

本文为哔哥哔特资讯原创文章,未经允许和授权,不得转载,否则将严格追究法律责任;
Big-Bit 商务网

请使用微信扫码登陆

x
凌鸥学园天地 广告