基于LM3S8962 ARM的神经元控制直流调速系统

时间:2022-05-06 01:28:43

基于LM3S8962 ARM的神经元控制直流调速系统

摘 要:介绍采用LM3S8962作为主控器件、结合智能控制理论的直流调速系统设计及实现。主要内容涉及神经元控制器、硬件、软件设计,并对该系统进行了仿真实验。从仿真结果可知:该系统具有良好的控制性能,并能达到很高的控制精度。

关键词:ARM;神经元控制;直流调速系统;直流电机

中图分类号:TP273 文献标识码:B 文章编号:1004373X(2008)1718002

Neuron Control DC Speed Regulation System Based on LM3S8962ARM

LIAO Jingsheng

(Maoming College,Maoming,525000,China)

Abstract:This paper introduces the design and realization of DC speed regulation system controlled by neuron controller based on LM3S8962ARM.This article mainly introduces the design of neuron controller,the hardware and the software.This system is simulated,and the simulation results prove that this speed regulation system not only has better control performance,but also can gain higher control precision.

Keywords:ARM;neuron control;DC speed regulation system;DC motor

收稿日期:20080324 直流电动机具有良好的起制动性能,能大范围内平滑调速,因而在可控的电力拖动领域中得到了广泛的应用。然而传统的直流调速系统所采用的是由分立元件构成的复杂PID模拟控制系统。常规PID控制虽然具有结构简单、稳定性好、易于工程实现等优点,但该方法过分依赖控制对象的模型参数,鲁棒性差。对于复杂系统如对机器人的控制,由于其负载模型参数的大范围变化以及非线性因素的影响,常规PID控制难以达到满意的效果。本文提出一种基于lm3s8962 arm芯片的模糊控制系统,以替代传统的PID模拟控制,提高直流调速系统的控制性能。

1 控制系统的控制方案

系统控制框图如图1所示,采用串级控制,分为转速环(外环)和电流环(内环)。为了提高系统响应的快速性和限流的必要性,电流环仍采用传统的PI调节器,而转速则采用神经元控制器,以提高其鲁棒性。

图1 控制系统框图2 单神经元PSD自适应控制算法

单神经元自适应PSD算法控制框图见图2。

图2 单神经元自适应PSD算法控制框图图2中状态转换器的输入为设定值r(k)和过程输出y(k),转换器的作用是获得单神经元的三个输入量x1(k),x2(k),x3(k),在这里:

x1(k)=e(k)=r(k)-y(k)

x2(k)=Δe(k)=e(k)-e(k-1)

x3(k)=Δ2e(k)=e(k)-2e(k-1)+e(k-2)

单神经元控制器的输出为:Δu(k)=K∑3I=1Wi(k)xi(k)其中:Wi(k) (i=1,2,3) 为对应于神经元输入xi(k)的加权系数。

控制器总输出为:

u(k)=u(k-1)+Δu(k)

=u(k-1)+K∑3i=1Wi(K)xi(k)

学习规则为:Wi(k+1)=Wi(k)+ηiri(k)其中ηi为学习速率,ri(k)是递进信号并取作:ri(k)=z(k)u(k)[e(k)+Δe(k)]z(k)为教师信号,在这里取z(k)=e(k)。这是因为控制效果主要与e(k)和Δe(k)有关。为了保证学习算法的收敛性和控制的鲁棒性,一般采用规范化学习算法以构成单神经元PSD控制规律,所以单神经元自适应PSD的控制算法如下:

u(k)=u(k-1)+K(k)∑3i=1Wi(k)xi(k)

W′i(k)=Wi(k)∑3i=1Wi(k)

W1(k+1)=W1(k)+ηIe(k)u(k)[e(k)+Δe(k)]

W2(k+1)=W2(k)+ηPe(k)u(k)[e(k)+Δe(k)]

W3(k+1)=W3(k)+ηDe(k)u(k)[e(k)+Δe(k)]

其中ηi(i=I,P,D)分别称积分、求和、微分学习速率。由于采用规范化学习算法,一般ηi都取的较大。

K(k)=K(k-1)+cK(k-1)TV(k-1),

sign e(k)=sign e(k-1)时

K(k)=0.75K(k-1)

sign e(k)≠sign e(k-1)时其中:TV(k)=TV(k-1)+L*sign[Δe(k)-TV(k-1)Δ2e(k)],TV=Δe(k)Δ2e(k),Δe(k),Δ2e(k)是求和、微分二项绝对平均值,0.025≤c≤0.05,0.05≤L*≤0.1。

3 控制系统的硬件设计

控制系统以LM3S8962为核心,LM3S8962是基于ARMsRCortexTM-M3的32位RISC控制器,具有内部存储器、4个通用定时器、遵循ARM FiRM规范的看门狗定时器、控制器局域网(CAN)、10/100以太网控制器、同步串行接口(SSI)、2个完全可编程的UART、4个10位ADC、模拟比较器、I2C、6个PWM输出、2个QEI模块。

系统主电路采用晶闸管三相全控桥式电路,控制电路主要由LM3S8962芯片构成,一是完成速度脉冲的采样、控制算法的实现和控制极脉冲的输出等。二是完成起、停控制,键盘及显示器接口等。系统硬件方框图如图3所示。

图3 系统硬件方框图从LM3S8962芯片出来的PWM输出信号,经过光电隔离驱动,送入晶闸管控制极,实现对全控桥的控制。

电流检测回路采用霍尔电流传感器CSNP661检测直流电流Id,当检测到电流值超过设定的限幅值时ARM立即进行中断处理,封锁输出给晶闸管的PWM信号,并发出声光报警信号。

系统采用测速发电机测量电动机转速,把转速信号转换成电压信号,经分压电阻送给ARM的ADC转换输入中断。

4 控制系统软件设计

软件结构:本系统软件采用功能模块设计方法,软件由系统、主程序、中断服务子程序及其他相关的子程序组成。

主程序主要完成芯片的初始化、变量的初始化等。

中断程序主要包括ADC转换结束中断等几个部分。

在串行口中断中,主要完成与主机信息的传输,根据制定的串行通信协议,按照主机的命令进行各种动作。

在ADC中断中,通过ADC转换的数值经过计算得到当前负载电流值,进行电流环调节,每经过一定次数电流环调节,就进行一次速度环调节,以保证系统按照要求进行控制。

5 仿真实验

为检验本系统的控制性能,对直流电机(额定数据:380 V,37 A,200 r/min)进行了空载起动和突加负载的仿真实验,得出电流和转速的变化曲线如图4和图5所示。

图4 空载启动转速变化曲线图5 突加负载时电流、转速变化曲线

6 结 语

实验结果表明,本系统结构简单,控制可靠,能保持快速响应及无静差和较小超调等优良性能,采用了高性能高精度的ARM芯片的模糊控制器,能达到很高的控制精度。同时,系统具有较强的扩展能力,可以通过串行口或者以太网与上位机通信。

参 考 文 献

[1]廖京盛,游林儒,张清华,等.基于TMS320LF2407的神经元控制直流调速系统[J].微计算机信息,2005,21(7Z):123-124.

[2]陈伯时.电力拖动自动控制系统[M].北京:机械工业出版社,2002.

[3]李士勇.模糊控制・神经控制和智能控制论[M].哈尔滨:哈尔滨工业大学出版社,1998.

[4]LM3S8962 Microcontroller Data Sheet Luminary Micro,Inc 2007.

[5]Cortex-M3 Technical Reference Manual.ARM Limited.2006.

[6]蔡自兴.智能控制:基础与应用[M].北京:国防工业出版社,1998.

[7]周立功.Cortex-M3开发指南――基于LM3S8000.广州:广州致远电子有限公司,2007.

[8]周航慈,吴光文.基于嵌入式实时操作系统的程序设计技术[M].北京:北京航空航天大学出版社,2006.

[9]StellarissRPeripheral Driver Library User′s Guide Luminary Micro,Inc 2006~2008.

[10]Jean J.Labrosse.嵌入式实时操作系统μC/OS Ⅱ[M].2版.邵贝贝,译.北京:北京航空航天大学出版社,2003.

作者简介 廖京盛 男,1962年出生,华南理工大学控制工程专业工程硕士。茂名学院计算机与电子信息学院讲师,从事自动化、电气工程的教学和研究,研究方向为单片机和嵌入式在自动化方面的应用开发。

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文

上一篇:矿用隔爆兼本质安全型八组合开关的研制 下一篇:有源电子式电流互感器高压侧电源的研究