基于DSP的网络化无刷直流电动机控制系统
2007-03-09
摘要:设计了一种基于DSP的无刷直流电动机控制系统,对其中的转子位置检测电路、驱动电路、保护电路以及驱动器网络控制等内容进行了详细的讨论,并给出了相应的硬件电路。该设计方案电路简单、可靠性强,具有较高的应用价值。
关键词:直流无刷电动机 DSP 网络伺服控制器
众所周期,直流电机具有最优越的调速性能,主要表现在调速方便(可无级调速)、调速范围宽、低速性能好(启动转矩大、启动电流小)、运行平衡、噪音低、效率高等方面。目前无刷直流电机已广泛应用于数控机床的进给驱动、机器人的伺服驱动以及新一代家用电器的变速驱动中。
为进一步提高控制系统的综合性能,就无刷直流电机控制系统的控制器而方,近几年国外一些大公司纷纷推出较MCU性能更加优越的DSP(数字信号处理器)单片电机控制器,如ADI公司的ADMC3xx系列,TI公司的TMS320C24系列及Motorola公司的DSP56F8xx系列。它们都是将一个以DSP为基础的内核,配以电机控制所需的外围功能电路,集成在单一芯片内,使价格大大降低且体积缩小、结构紧凑、使用便捷、可靠性提高。其最大速度可达20~40MIPS,指令执行时间或完成一次动作的时间仅为几十纳秒,和普通的MCU相比,运算及处理能力增强10~50倍,确保了系统有更优越的控制性能。
1 系统原理概述
在本文设计的无刷直流电动机控制系统中,采用TI公司的TMS320LF240x芯片作为控制器。TMS320LF240x芯片作为DSP控制器24x系列的新成员,是TMS320C2000平台下的一种定点DSP芯片。从结构设计上讲,240x系列DSP提供了低成本、低消耗、高性能的处理能力,对电机的数字化控制作用非常突出。
在图1所示的基于TMS320LF240x的无刷直流电动机控制系统中,采用TMS320LF240 DSP作为控制器,处理采集到的数据和发送控制命令。TMS320LF240控制器首先通过三个I/O端口捕捉直流电机上的霍尔元件H1、H2、H3的高速脉冲信号,检测转子的转动位置,并根据转子的位置发出相应的控制字来改变PWM信号的当前值,从而改变地直流电机驱动电路(全桥控制电路MOSFET)中功率管的导通顺序,实现对电机转速和转动方向的控制。电机的码盘信号A、B通过DSP控制器的CAP1、CAP2端口进行捕捉。捕捉到的数据存放到寄存器中,通过比较捕捉到的A、B两相脉冲值可以确定当前电机的正反转状态以及转速。在系统的运行过程中,驱动保护电路会检测当前系统的运行状态。如果系统中出现过流或者欠压情况,PWM信号驱动器IR2130会启动内部保护电路,锁住后继PWM信号的输出,同时通过FAULT引脚拉低DSP控制器的PDPINT引脚电压,启动DSP控制器的电源驱动保护。这时所有的EV模块输出引脚将被硬件置为高阻态,实现对控制系统的保护。该系统中设计的保护电路主要用于保护DSP控制器和电机的驱动电路。
图2 全桥式电机驱动电路控制原理图
下面主要介绍系统的转子位置检测电路、驱动电路、系统保护电路等。
2 转子位置检测电路
2.1 检测电路应用原理
控制无刷直流电动机时,DSP控制器主要是根据转子当前的转动位置,发出相应的控制字,通过改变PWM脉冲信号的占空比来实现对电机的控制。无刷直流电动机的转子位置是由位置传感器检测出来的。在本设计方案中,采用了三个光电式位置传感器(霍尔元件)。这种传感器是利用光电效应制成的,由跟随电动机转子一起旋转的遮光板和固定不动的光源及光电管等部件组成。遮光板开有180%26;#176;左右电角度的缝隙,且缝隙的数目等于无刷直流电动机转子磁极的极对数。当缝隙对着光电晶体管时,光源射到光电晶体管上,产生“亮电流”输出。其它光电晶体管因遮光板挡住光线,只有“暗电流”输出。在“亮电流”作用下,三相绕组中一相绕组有电流导通,其余两相绕组不工作。遮光板随转子的转动而轮流输出“亮电流”或“暗电流”的信号,以此来检测转子磁极位置,控制电动机定子三相绕组轮流导通,使该三相绕组按一定顺序通电,保证了无刷直流电动机正常运行。
随着电机转子的旋转,光电管间歇接收从光源发出的光,不断导通和截止,从而产生一系列“0”、“1”信号。这些脉冲信号通过I/O口传输给DSP,DSP读取霍尔元件的状态值,确定转子当前的位置,通过改变PWM信号输出的高有效或低效来控制驱动电路,改变MOSFET管的导通顺序,很好地实现电机换相的控制;同时改变PWM信号占空比,来调节电机的转速。电动机驱动电路控制桥功率管的导通顺序为Q1Q2、Q2Q3、Q3Q4、Q4Q5、Q5Q6、Q6Q1,为两两通电方式。电机转子每转一圈,霍尔元件H1、H2、H3会出现六种状态,DSP对每一种状态发出相应的控制字,改变电机的通电相序,实现电机的连续运行。
电机驱动电路控制原理图和电机正转换相表如图2和表1所示。
表1 电机正转换相表
PWM6
PWM5
PWM4
PWM3
PWM2
PWM1
H1H2H3
ACTR
Q12Q
00
11
11
11
11
10
101
0X03FE
Q2Q3
00
11
11
10
11
11
100
0X03EF
Q3Q4
11
11
11
10
00
11
110
0X0FE3
Q4Q%
11
10
11
11
00
11
010
0X0FE3
Q%Q6
11
10
00
11
11
11
011
0X0E3F
Q6Q1
11
11
00
11
11
10
001
0X0F3E
2.2 霍尔元件信号处理
电动机上的霍尔元件信号发生时序如图3所示。
直流电机产生的霍尔元件信号通常高低电平相互覆盖。而对电机驱动桥路的控制需要根据检测到的三个霍尔元件的每一次跳变,来触发控制器进入中断响应,同时还要记录霍尔元件的状态。因此在设计中对三个霍尔元件做两步处理:首先把三个霍尔元件的信号接到TMS320LF240的三个I/O引脚上,记录当前的状态;然后把霍尔元件信号作为三路输入接到CPLD的I/O口,通过编程实现一路连续的窄脉冲输出,接到TMS320LF240的CAP3引脚上。每一个脉冲触发一次中断,控制驱动桥路的导通顺序,并根据当前的霍尔元件状态信息对电机的转速和正反转进行控制。
3 驱动电路
电机控制的驱动器采用IR2130芯片。IR2130/IR2132(J)(S)是一种高电压、高速度的功率MOSFET和IGBT驱动器,工作电压为10~20V,分别有三个独立的高端和低端输出通道。逻辑输入与CMOS或LSTTL输出兼容,最小可以达到2.5V逻辑电压。外围电路中的参考地运行放大器通过外部的电流检测电位器来提供全桥电路电流的模拟反馈值,如果超出设定或调整的参考电流值。IR2130驱动器的内部电流保护电路就启动关断输出通道,实现电流保护的作用。IR2130驱动器反映高脉冲电流缓冲器的状态,传输延迟和高频放大器相匹配,浮动通道能够用来驱动N沟道功率MOSFET和IGBT,最高电压可达到600V。
IR2130芯片可同时控制六个大功率管的导通和关断顺序,通过输出HO1,2,3分别控制三相全桥驱动电路的上半桥Q1、Q3、Q5的导通关断,而IR2130的输出LO1,2,3分别控制三相全桥驱动电路的下半桥Q4、Q6、Q2的导通关断,从而达到控制电机转速和正反转的目的。
图4 IR2130的典型电路
IR2130芯片内部有电流比较电路,可以进行电机比较电流的设定。设定值可以作为软件保护电路的参考值,这样可以使电路能够适用于对不同功率的电机的控制。IR2130的典型电路如图4所示。
4 系统保护电路
在无刷直流电动机控制系统中,保护电路占据着很重要的地位,主要作用是保护控制系统的核心部件DSP免受高电压、过电流冲击,同时也保护电机的驱动电路免受损坏。整个系统的保护电路主要由三部分组成:电路隔离电路、信号隔离电路、驱动保护电路。
电路隔离电路选用内部带有隔离变压器的电压模块,把电机驱动电压控制部分的电压隔离开,分成两套供电系统:5V供电系统和24V供电系统。这样当驱动电路部分发生异常情况时,不会从电源部分影响到控制电路,实现控制电路的保护作用。
信号隔离电路主要是把控制电路和驱动电路之间的控制和驱动信号通过光电隔离器进行信号隔离,实现不同电压之间的信号传输。由于本系统中的PWM脉冲信号的输出频率比较高,为了避免信号损失和失真,这里采用6N137光电隔离器。
系统的驱动电路保护作用主要是由IR2130驱动器来实现的。IR2130驱动器保护电路主要有两部分:自保护电路和过电流欠电压保护电路。
自保护电路如图5所示。外围电路中的参考地运算放大器通过引脚VsO的设定值与流入CA-引脚的电流在反馈电阻上产生的电压相比较,如果超出设定或调整的VsO参考值,IR2130驱动器的内部电流保护电路启动关断输出通道,实现电流保护的作用。IR2130芯片内部也有硬件保护电路。如果负载或驱动电路出现过电流或欠电压的情况,IR2130驱动器的FAULT引脚会输出制动信号,通常这个输出信号接到DSP的PDPINT引脚上,拉低PDPINT引脚的输入电平,关断DSP的所有输出并置为高阻状态,实现整个控制电路的保护作用。
5 网络化接口设计原理
为了适应网络发展的要求,必然要求微处理器控制设备提供各种网络通信接口。传统的单片机对于网络支持不足,而新一代的微处理器已经开始内嵌网络接口,除了支持TCP/IP协议外,有的还支持USB、CAN、BLUETOOTH等通信接口,同时也提供相应的通信组网协议软件和物理层驱动软件。
通过网络控制无刷直流电动机的运行可以说是该控制系统的一个特色。通常是无刷直流电动机的控制系统都是单机控制或采用双控制器进行控制,很少通过网络来控制。本控制系统采用RS485通讯接口进行网络化数据传输。主要的网络传输示意图如图6所示。上位机或PC机为每个控制模块软件分配地址,发送数据给每个模块,而主机在发送数据时主要是通过分配给每个模块的地址识别发送对象。网络系统上电后,在进行网络初始化之前,除了主机的组地址和地址可以确定外,所有驱动器模块组地址和地址都是0xFF,
表示该驱动器模块只在0xFF这个全体组内,且地址没有初始化。由硬件的连接方式决定,此时网络的下一个驱动器模块处于等待网络初始化指令状态,主机应当发送一个地址分配指令对该驱动器模块进行地址分配。一旦该驱动器模块地址分配成功,它便通过硬件向下一个驱动器模块传递信息,表示自身已经分配完毕。然后主机的下一个地址分配指令将作用于下一个驱动器模块。这个过程将一直持续下去,直到主机在发送地址分配指令后收到分配成功的反馈信息为止,此时表示没有需要分配的驱动器模块了。至此网络初始化完毕。在网络已经建立好的情况下,主机可以通过发送网络复位指令,使所有驱动器模块复位为刚上电的状态,然后再次进行初始化,即提供了网络“热”重建能力。
无刷直流电机配以高性能高速实时数字控制器构成的调速装置,整个系统控制相对简单、成本低、转速平衡、噪音低,特别适合在家用电器产品中应用。同时,也可推广到其它工业应用领域,如机床、机器人和电梯驱动等。
进入嵌入式查看更多内容>>
相关电子头条文章