该电路为了延长电池的供电时间、电路采用了PWM脉宽调制系统。本电路的占空比调节达到了20%至95%,可提供的亮度调节范围。该电路在最小占空比时储...
PIC16F1508的开关磁阻电机伺服系统设计
引言
开关磁阻电机(Switched Reluctance Motor,SRM)因其结构简单、成本低、可靠性高、效率高、启动转矩大以及调速范围广的优点,广泛应用于航空航天、家用电器、机械及电动车辆等领域[1]。因此,对开关磁阻电机伺服驱动系统的技术研究,一直是机电一体化领域的热点。本文以PIC16F1508单片机为控制核心,与专用驱动功率芯片结合,设计了一款可靠性高、价格低廉、性能稳定的开关磁阻电机伺服控制系统。
1SR电机伺服控制系统组成
开关磁阻电机的运行遵循“磁阻最小原则”,即磁通总是沿着磁阻最小的路径闭合,从而迫使磁路上的导磁体运动到使磁阻最小的位置为止。以四相8/6极开关磁阻电机为例,定子上有A、B、C、D四相绕组,按照既定顺序依次给四相通电,就可以实现电机的运转。开关磁阻电机运行在连续的开关状态,因此开关磁阻电机伺服控制系统主要由控制器、功率变换器、位置检测和开关磁阻电机4部分组成,其系统结构如图1所示。
图1 开关磁阻电机伺服系统组成
2系统硬件设计
该伺服控制系统的硬件部分主要包括控制器(PIC16F1508)、功率变换器电路、换相控制电路、速度检测电路、键盘显示电路等,其硬件结构框图如图2所示。
图2 系统硬件结构框图
2.1控制器
控制器选用Microchip公司生产的8位单片机PIC16F1508,它具有高性能的RISC CPU、丰富的外设特性,并且具有XLP超低功耗管理功能。选择PIC16F1508单片机主要考虑的是使用其4个可配置逻辑单元CLC。Microchip公司创新性地把电路中可能用到的逻辑功能集成到单片机的内部,即可编程逻辑单元CLC。这个模块可以提供可超越软件执行速度限制而工作的可编程逻辑[2],大大地简化了电路的复杂性,并且由于外部逻辑器件的减少,系统的可靠性得到了一定程度的提高。
目前在开关磁阻电机控制系统的设计中,控制外部开关管工作时,总是由内部发出一路波形,外部通过简单的逻辑器件进行逻辑转换,产生可以控制开关管工作的4路或者多路波形,而通过使用PIC16F1508单片机就可减少这些外部逻辑器件的使用。外部电路连接如图2所示,RC3、RC6作为CLC2、CLC3的输入信号,仅需要把RC2、RC3、RC6连接起来,由RC2输出信号,并与CLC2、CLC3的另一路输入信号PWM4OUT进行逻辑运算,就可以产生输入到功率变换器的所需波形。
2.2功率变换器
功率变换器在开关磁阻电机伺服控制系统中有着重要的地位,它直接连接电源和电机绕组,是电能转化为机械能的通道,是保证实现控制的根本。通常,功率变换器在整个系统中所占的成本比重最高,因此功率变换器的合理选择可以有效降低系统成本。
综合考虑本系统所用的0.37 kW、四相8/6极开关磁阻电机的各项参数,功率变换器选用飞兆公司生产的开关磁阻电机专用集成驱动芯片FCAS20DN60BB,其内部集成了4个IGBT、4个快速恢复二极管、两个Bootstrap二极管、1个热敏电阻,并带有多项的功能保护。FCAS20DN60BB的外围电路如图3所示。
图3 FCAS20DN60BB的外围电路
2.3换相控制电路
开关磁阻电机换相的实现,主要是通过检测磁阻电机本身所带传感器发出的S、P两相信号,在不同位置给单片机不同的信号,通过单片机使能不同的相进行通断,以此实现电机的换相。在S、P信号进入单片机之前,要进行光电隔离,从而防止信号受到外部的干扰,使用型号为HCPL4504的光电耦合器完成。采用双四拍的工作方式,令逆时针为反转,顺时针为正转。因此,正转通电顺序为ADDCCBBA,反转通电顺序为ABBCCDDA, S、P两相在正转和反转时的不同励磁相如表1所列,换相外部电路如图4所示。
图4 换相电路图
2.4速度检测电路
开关磁阻电机内部定子上的两个光电脉冲发生器发出的周期为60°,且有相差15°的方波,这在换相时是十分有用的,但是在速度检测时,已经达不到所需的精度要求,通常的做法是将S、P两相信号异或,使其成为一个周期为30°的方波信号。如图2所示,RA1、RB5分别作为CLC4的输入信号,利用CLC4的内部异或逻辑将S、P两相信号异或,可以达到目的,并且减少了外部逻辑器件的使用。
速度检测的准确是实现速度伺服控制的基础,虽然PIC16F1508单片机没有捕捉功能,但是其TMR1模块自带门控使能计数的功能,可以把S、P相信号异或后作为TMR1的门控信号输入源,以系统时钟的8分频为TMR1的时钟,并且使能门控反转和单脉冲模式,从而完整地测量门控信号一个周期的时间。一个位置信号的周期相当于转子转过30°机械角,只要测得转过1个位置信号周期时间Δt,就可根据ω=30°/Δt,计算出平均转速。
2.5键盘显示电路
键盘显示电路用于动态地显示开关磁阻电机实时速度,本文使用单片机的主同步串行口模块(MSSP),通过I2C接口与外部器件ZLG7290进行通信,驱动数码管显示。ZLG7290是具有I2C串行接口功能、可同时驱动8位共阴式数码管的智能显示驱动芯片,该芯片同时可以连接多达64键的键盘矩阵,单片即可完成LED显示、键盘接口的全部功能[4]。根据其数据手册设计外部电路图如图5所示。
图5 键盘显示电路
3系统软件设计
软硬件的正确配合是系统正确运行的保证,软件部分的设计任务主要包括:主程序、换相中断子程序、速度检测子程序、按键中断子程序、故障中断子程序等。
3.1主程序设计
主程序中包括:系统初始化、变量的赋值、CLC单元的设定、中断配置、TMR1模块配置等。主程序流程图如图6所示。
图6 主程序流程图
3.2换相中断子程序设计
根据位置检测及换相硬件电路的设计,PIC16F1508单片机的RA0/RB5口接入开关磁阻电机凹槽式光电传感器H92B4发出的两个电平信号,从而判断出电机通电相,实现电机的换相控制。换相中断子程序流程图如图7所示。
图7 换相中断子程序流程图
3.3速度检测子程序设计
PIC16F1508没有自带捕捉的功能,因此使用其TMR1模块的门控计数功能,S与P经内部CLC4异或后的信号作为门控信号,通过读取
图8 速度检测子程序流程图
3.4按键中断子程序设计
在系统进入正常高速运转之前要输入给定的速度值以及比例、积分、微分调节系数,因此在主程序中需要加入按键中断子程序。考虑到硬件电路设计中键盘输入电路的设计,需要使用I2C总线通信的方式与ZLG7290芯片进行通信,所以在按键中断子程序设计中加入了读子程序设计以及写子程序设计等。按键中断子程序流程图如图9所示。
图9 按键中断子程序流程图
3.5故障中断子程序设计
当电路出现欠压、短路等故障时,智能功率模块发出一个电平信号经INT中断输入引脚给控制器,控制器收到这个信号后就产生INT中断,停止控制信号的输出,以保证智能功率模块及电动机的安全。故障中断子程序流程图略——编者注。
4实验现象及结论
测试各硬件设备的连接,系统上电,此时由PIC16F1508单片机发出的4路控制波形略——编者注。PIC16F1508单片机可以发出控制开关磁阻电机运转的4路波形,从而有效减少外部逻辑器件的使用,提高集成度和可靠性。
由功率驱动芯片FCAS20DN60BB的数据手册可知,最佳载波频率为3 kHz,此时开关磁阻电机的调速范围略——编者注。开关磁阻电机的转速与PWM的占空比不是严格的比例关系,而是存在一定的误差。理论转速与实际转速的相对误差的平均值为0.1%,满足应用的要求。
结语
由此可见,以PIC16F1508单片机为核心设计的开关磁阻电机伺服控制系统,不仅结构简单,大大减少了外部逻辑器件的使用,而且性能稳定,可靠性得到提高。本系统的设计可以为其他电机设计者提供借鉴。
标签: 开关磁阻电机 PIC16F1508 CLC PWM
相关文章
发表评论