前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇网络控制器范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
关键词:网络控制器;通信协议;Rabbit2000单片机;套接字;串口通信
中图分类号:TN91 文献标识码:B
文章编号:1004373X(2008)0105403オ
Communication Technology of Jia-xiao-tong Network Controller
WEI Zi,YANG Qingjiang,ZHANG Guanglu
(Heilongjiang Institute of Science and Technology,Harbin,150027,China)
オ
Abstract:For the function demand of the network controller in Jia-xiao-tong system,the paper proposes a communication technology of combining serial-port with network.Firstly,it describes the network controller′s hardware platform and the application-layer protocol based on TCP/IP protocol stack.Then,it mainly discusses the communication network technology and the communication serial technology.The polling scheme is applied to improve data transfer effectiveness and reduce data collision.Finally,it explains and analyzes the communication technology′s feasibility and stability through filed test data.
Keywords:network controller;communication protocol;Rabbit2000 single chip;socket;serial communication
オ
1 引 言
随着TCP/IP等网络通信的出现,将串口通信与网络通信相结合的趋势越来越明显,这是保护使用者既往投资和整体利益的一种有效办法。本文所讨论的通信技术就是将串口与网络通信相结合并在实际应用中取得良好效果的一种通信解决方案。
“家校通”是利用现代信息技术实现家庭与学校实时沟通的教育网络平台,其组成部分为:家校互联卡、读卡器、无线网关、网络控制器、短信发射接收机。网络控制器的主要功能是通过无线网关从读卡器获取信息,并与互联网服务平台进行网络通信,是家校通系统的核心。
2 网络控制器的硬件平台
根据网络控制器的功能要求,考虑整体的性能、价格方面,CPU采用Rabbit2000单片机,他是Z-World公司特别为中小型控制器而设计的高性能8位微处理器。编译环境为Dynamic C,提供Socket级TCP/IP编程。网络控制器的硬件结构如图1所示。
3 应用层通信协议
3.1 网络控制器与读卡器的串口通信协议
网络控制器与读卡器的通信主要通过异步串行RS 485接口,基于通用串行通信RS 485数据传输单元(字节格式)有不带校验位的10 b和带奇偶校验位的11 b两种数据格式。为了提高数据传送的效率和可靠性,采用无奇偶校验位的10 b数据格式,并由BBC校验生成校验码与数据一起发送。
开始标志读卡器地址信息长度命令和参数校验
2 B1 B2 B14 B1 B
(3)命令字:
A1:从读卡器读取一条记录。
A2:控制器正确接收记录信息后,返回更新记录的读地址命令,使地址指针指向下一条记录。
A4:设置校正读卡器时间。
A6:测试控制器与读卡是否正常通信。
3.2 网络控制器与服务平台的网络通信协议
网络协议通常分不同的层次进行开发,每一层分别负责不同的通信功能。TCP/IP通常是一个4层协议,包括数据链路层、网络层(含IP协议)、传输层(含TCP协议)和应用层。本网络协议就是基于TCP/IP协议之上的应用层协议,采用请求应答的通信模式。考虑到协议的可靠性和实现的方便性,数据采用ASCII码表示。
(1)报文组成
4 通信技术
控制器建立socket连接后,向服务器发送连接请求和数据传输,并实时判断连接的有效性,在有效连接的状态下,实现控制器、服务器、读卡器三者的正常通讯,程序流程如图2所示。
4.1 网络通信技术的实现
socket初始化: 首先要对RTL8019AS的控制寄存器进行初始化配置,Dynamic C已将这部分配置封装成函数放入REALTEK.LIB库中,应用时只需调用相关函数。之后再调用函数库dcrtcp.lib中的几个简单函数可完成socket的初始化,以下是程序的主体框架。
#define TCPCONFIG1
#memmapxmem
#usedcrtcp.lib
main()
{
sock[CD#*2]init( );
while(ifpending(IF[CD#*2]DEFAULT)==IP[CD#*2]COMING[CD#*2]UP)
tcp[CD#*2]tick(NULL);
tcp[CD#*2]open(&socket,0,destIP,sockport,null);
…… ……
}
在建立TCP的连接中,Dynamic C有两种方法打开TCP socket:一种是被动的方式,调用函数tcp[CD#*2]listen(),等待客户端进行连接;一种是主动的方式,调用函数tcp[CD#*2]open(),根据相应的参数(IP地址和端口号)主动连接到服务器端。本通信技术采用的就是主动方式(作为客户端)。
Socket数据的发送与接收:数据发送调用sock[CD#*2]write(&socket,str[CD#*2]send,str[CD#*2]send[CD#*2]len)。在读取socket缓冲区数时,先判断缓冲区中是否有数据,有数据再进行读操用,同时有超时设置。
start[CD#*2]time=SEC[CD#*2]TIMER;
/*SEC[CD#*2]TIMER为秒级系统时间*/
end[CD#*2]time=start[CD#*2]time;
while((end[CD#*2]time
!recv[CD#*2]count)/*READ[CD#*2]TIME为设定的等待时间*/
{
str[CD#*2]recvbuf[CD#*2]len=sock[CD#*2]bytesready(&socket);
/*判断socket读缓冲区是否有数据*/
if(str[CD#*2]recvbuf[CD#*2]len>0)
recv[CD#*2]count=sock[CD#*2]read(&socket,str[CD#*2]recvbuf,
str[CD#*2]recvbuf[CD#*2]len); /*读socket*/
}
if(revc[CD#*2]count)
{…… ……}
/*拆分接收到的命令字,读取有效信息*/
else
break;
4.2 串口通信技术的实现
主要包含3个步骤:命令字的组合,设置串口D,通过设置Rabbit2000的PE3来控制数据的发送与接收。以A6命令为例,程序主体框架如下:
command[0]=0xA6;/*A6命令*/
create[CD#*2]command(addr,command,pack);
/*组合命令字*/
serDopen(9600);/*9600为波特率*/
send[CD#*2]command(command,returnlen);/*发送数据*/
read[CD#*2]command(readbuf,sizeof(readbuf),10);
/*接收数据*/
void send[CD#*2]command(char *pack,int len)
{
int i;
WrPortI(PEDR,& PEDRShadow,0x08);
WrPortI(PEB3R,NULL,0);
for(i=0;i
serDputc(pack[i]);
}
int read[CD#*2]command(char *buf,int len,int time)
{
int i[CD#*2]return;
WrPortI(PEB3R,NULL,1
i[CD#*2]return=serDread(buf,len,time);
return i[CD#*2]return;
}
5 数据采集与分析
网络控制器联网正常运行时,向服务器发送的一包测试记录数据为:
对数据包进行分析:0244为数据包的总长度,01为协议版本号,02为命令字,000003为序列号,21000102*****为设备号,09为数据包中的刷卡记录总数,0080D122为测试卡号,07070414152715为刷卡时间(顺序为年周月日时分秒),03为状态。
采集从服务器返回的命令:001501020000031,其中
列号,1为正确接收。返回命令格式符合协议要求,内容正确。
网络控制器向读卡器发送的命令(以A6为例): aa ff 01 00 03 a6 41 41 f1,其中aa ff表示本命令为控制器发给读卡器,01为读卡器地址,00 03为数据长度,a6为命令字,41 41为测试数据,f1为校验位。
采集从读卡器返回的命令:bb ff 01 00 02 41 41 47 d1 22 07 07 04 14 15 42 17 1 6b 00 00 00,其中bb ff表示本命令为读卡器发给控制器,01为读卡器地址,00 02为数据长度,41 41为测试数据,47为校验位,之后的为无效数据。
6 结 语
基于Rabbit2000实现串口与网络结合的通信技术可以实时、准确地对数据进行处理、发送与接收。由采集到的数据表明数据收发的正确性,证明了本通信技术的可行性与可靠性。本通信技术已在家校通系统中取得了良好的通信效果,并可应用于其他数据传输系统中,具有广泛的发展前景。
参 考 文 献
[1]Z-World Inc.Rabbit2000 Microprocessor Designer′s Hand-book,2003.
[2]Z-WorldInc.Dynamic C TCP/IP User′s Manual,2003.
[3]林丽,朱宏.基于Rabbit2000的网络通信技术[J].福建电脑,2005(4):45-46.
1 概述
CS6208是Myson Century公司最新推出的嵌入式网络微控制器,尤其适用于一些网络控制和传输的场合。该器件基于8051体系结构硬件平台的支撑,使用Keil 51编译环境?并且处理速度比8051系列单片机有很大的提高。通常8051单片机中的12个时钟周期可组成一个机器周期,而在CS6208中只需要4个时钟周期,因此在相同的时钟周期下,CS6208的处理速度是51系列单片机的3倍。CS6208将TCP/IP协议栈的底层函数标准化,并把它封装成API函数。这样,原来用户要编写TCP/IP协议代码才能解决的问题现在只需调用API函数即可解决,因而大大缩短了产品的开发周期;CS6208内部集成了4周期的8051和一个以太网控制器,并配备有标准10MHz以太网接口(包括MAC和PHY),同时支持ARP、ICMP、IP、UDP、TCP、DNS、DHCP、HTTP等常用协议,应用技术门槛极低,用户无需自己开发TCP/IP等核心协议程序,特别适合传统行业的产品改造和升级,而且极其方便;CS6208把原来需要单片机和MAC控制器两个芯片才能解决的网络接入问题集成到了一起,从而大大降低了产品的成本;此外,它的节能机制更加科学高效,CPU核仅工作在1.8V。系统工作在60MHz时,如果输入电压为5V,典型电流值为258mA在节能模式下仅为128mA。
图1
2 引脚功能及芯片主要特点
2.1 引脚功能
图1所示是CS6208的引脚排列。
2.2 主要特点
CS6208内部的功能模块组成框图如图2所示。其主要特点如下:
CPU
基于8051体系结构的硬件平台,它的时钟在内部可编程,系统最高可工作在60MHz。
存储器结构
片内有65k字节ROM和32k字节的RAM存储器,外部最多可以扩展到98k字节数据存储器和131k字节程序存储器。
串口和计数器
全双工的通用串口和计数器,与8051单片机相类似,同时,该芯片内部还集成有看门狗电路,而且其串口具有增强的自动地址识别和帧检错功能。
中断
具有8个中断源和3个中断优先级。
网络接口
集成有10/100MHz以太网控制器和IEEE 802.3 7线ENDEC接口?内部有发送缓冲区和接收缓冲区,通过硬件能够自动计算各类网络协议栈中的校验和。
I/O
带有4个8位数字双向通用I/O,它们具有超强驱动能力以及3.3V和5V的输入输出能力。
协议
编制的应用程序可以访问TCP/IP网络协议栈,同时支持ARP、ICMP、IP、UDP、TCP、DNS、DHCP、HTTP等常用协议和软件,用户也可根据需要增加自己的协议。
A/D
内含四通道7位模数转换器。
电源管理
具有可编程的自动监测掉电和复位模式,CPU核工作在1.8V。
3 工作原理
CS6208物理层支持以太网接口和RS232串口的点到点协议。在CS6208中,每一个以太网的发送缓冲区是1.5k字节,其接收缓冲区也经常使用的,因为数据有时是以猝发形式收到的,因此,当收到数据时,就把收到的数据放到这个缓冲区中,然后由数据链路层直接从该缓冲区取走数据。链路层通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡,它们将一起处理与电缆的物理接口细节数据,其缓冲区可用来暂时存储要发送或接收的数据帧。网络层则处理分组在网络中的活动,比如分组的选路等。传输层可为两台主机的应用程序提供端到端的通信。在TCP/IP协议族中有两个互不相同的协议TCP和UDP;其中TCP为两台主机提供可靠的数据通信,而UDP则提供一种简单的服务。对于TCP发送过程而言,应用程序把数据先写到缓冲区中,再写到TCP的发送缓冲区,然后写到数据链路层的缓冲区,最后再通过以太网发送缓冲区到网络上。TCP的接收数据过程与此类似,每一个TCP套节字的接收缓冲区是可选的,如果应用程序要使用这个接收缓冲区,那么传输过来的数据就先写到这个缓冲区中,之后再从这里取走,如果没有这个接收缓冲区,接收来的数据就会直接送给应用程序。在这种情况下,对于UDP来说,其过程还相对简单,应用程序只要把缓冲区中的数据送到数据链路层缓冲区中,然后通过以太网发出去即可,而应用层则要负责处理特定的应用程序细节,这就要求每一个应用程序都有自己的缓冲区,这在一些标准的TCP应用程序(如POP3、SMTP、HTTP、FTP)中是很常见的。具体的数据处理过程见图3所示,图中箭头所指是数据的流向。
【关键词】静止同步补偿器;直接电流控制;多模型;神经网络;PI控制器
1.引言
利用静止同步补偿器(STATCOM)来改善电能质量主要有两个目的[1-3]:提高功率因数和调节系统电压。然而在一些用电场合,负载的变化并未导致系统电压发生明显降低,但系统的功率因数却发生了较大的变化,因此对功率因数的补偿就显得尤为重要[4-5]。
STATCOM的主要控制目标是通过补偿负载无功功率来提高系统的功率因数。为了达到这个目的,文献[6]采用电压外环和电流内环相结合的双闭环PI控制方法,通过PI控制器可以实现无稳态误差的无功电流跟踪控制,然而,当负载发生变化时,仅仅依靠PI控制器难以满足无功电流跟踪控制的精度要求。为此,为此文献[7]提出了基于多模型PI控制器的直接电压控制法,该方法引入多模型理论[8],设定多个模型来适应负载的变化,大大提高了控制精度,在稳定接入点电压能力方面具有出色表现,但该方法对于负载变化后系统功率因数的提高并没有明显效果,且多个模型导致PI参数成倍增加,大大增加了人工PI参数整定带来的繁琐工作量。
本文针对系统接入的冲击性负载的不确定性,提出了一种基于多模型神经网络PI控制器的STATCOM直接电流控制方法。该方法根据负载的功率因数,建立多个模型,利用神经网络[9-10]具有任意非线性函数逼近的能力,通过不断学习来优化每个模型中PI控制器的控制参数,然后根据瞬时检测到的负载功率因数切换相应的模型。仿真结果表明,基于多模型神经网络PI控制器的STATCOM直接电流控制方法在不同冲击性负载下均具有较快的补偿速度和较高的精度,能够使系统的功率因数维持在1左右,从而获得了满意的控制效果。
2.基于PI控制器的STATCOM直接电流控制原理
STATCOM接入系统的等效拓扑结构图如图1所示,其中为无穷大系统的等效电势,为由负荷端视入的无穷大系统等效戴维南阻抗,是STATCOM的等效阻抗,为STATCOM接入点处的电压,也就是负荷的供电电压。当STATCOM没有投入运行时,负荷电流中的无功分量完全由系统承担,即。如果较大,功率因数会很低,线路损耗也会大大增加。当STATCOM接入系统后,将产生容性无功电流,补偿负荷无功电流,为系统提供无功支持。理想情况下,当时,STATCOM将完全抵消负荷无功电流,使系统功率因数等于1。
直接电流控制的目标就是使STATCOM发出无功电流跟踪上负载侧无功电流分量,这样才能使无功电流达到就地补偿的目的,维持负载侧功率因数在1左右。STATCOM的直接电流PI控制框图如图2所示,和经过PI控制环节,得到STATCOM交流侧电压的直轴分量。为保证直流侧电容电压稳定,这里设定直流侧电压参考值,将直流侧电容电压的参考值和其瞬时值相比较后再经过PI控制环节,就可以得到STATCOM应该吸收的有功电流,将其与STATCOM实际发出的有功电流进行比较后再经过PI控制,得到STATCOM交流侧电压的交轴分量。将、以及(赋值为0)经过dq0-abc变换为指令信号作为调制正弦波,经过三角载波调制后,产生PWM触发脉冲,触发IGBT,使STATCO M输出补偿电流。
3.基于多模型神经网络PI控制器的STATCOM直接电压控制方法
3.1 多模型建立的基本原理
直接电流PI控制虽然具有较好的响应速度和无功补偿精度,但当负载发生较大变化时,该控制方法难以适应负载的变化,会造成补偿精度和速度的降低。因此,此处将多模型理论应用到直接电流PI控制中。
在一些用电场合,负载的变化主要体现在功率因数的变化上。当接入冲击性负载时,单相等效电路如图3所示。由于本文研究的仿真模型中,设定系统侧的阻抗远小于负载侧的阻抗,即:
当STATCOM未接入时可以表示为:
当系统的负载的功率因数发生较大变化时,STATCOM需要吸收或发出较大的无功电流,才能补偿负载侧的无功电流。这就需要能够在较大的范围内变化。由于系统侧的阻抗远小于负载侧的阻抗,因此STATCOM输出电压的相位近似等于系统侧电压的相位。根据式(4),可以得出,当增大时,增大,当减小时,减小。因此,STATCOM输出电压的变化决定了STATCOM发出的无功电流的变化。
3.2 神经网络PI控制器的基本结构及工作原理
利用神经网络整定PI参数可以大大减少整定PI参数的工作量,神经网络PI控制器由PI控制器和神经网络两部分组成。PI控制器直接对被控对象进行闭环控制,神经网络通过自学习和权值的调整控制器参数、,以期达到性能指标的最优。这里采用BP神经网络,其输入层有3个节点,分别为指令电流、实际输出电流以及两者的差值,输出层为2个节点,即比例系数和积分系数,隐含层设置为5个节点。这样,即可通过神经网络的学习和训练,实现对PI控制器参数的整定,如图4所示。
神经网络隐层神经元的激励函数采用正负对称的Sigmoid函数:
因此可知,STATCOM输出电压的幅值大小与和的大小有关。而和分别由d轴第二级PI控制器和q轴PI控制器得到。由此可见,调节d轴第二级PI控制器参数和q轴PI控制器参数,可以起到调节有功电压信号和无功电压信号的作用,从而达到调节STATCOM输出电压的目的,而输出电压决定了STATCOM发出无功电流的大小。当系统负载的电流一定时,负载侧无功电流的变化可以体现为负载功率因数的变化,即负载无功电流较大时,功率因数较小,反之亦然。因此,当功率因数发生较大变化时,可以采用不同的d轴第二级PI控制器参数、和q轴PI控制器参数、,使STATCOM发出的无功电流跟踪负载所需的无功电流。当系统各元件参数确定时,便可以根据负载侧功率因数的大小来划分模型,对于不同的模型来确定相应的d轴第二级PI控制器参数和q轴PI控制器参数。
根据3.1分析可知,随着负载的变化,可以认为近似不变,而负载的功率因数变化较大,因此可以将负载侧功率因数作为模型划分的依据,将系统划分为多个模型(),然后对于每个模型分别设计d轴第二级神经网络PI控制器()与q轴神经网络PI控制器,基于多模型神经网络PI控制器的直接电流控框图如图5所示。当冲击性负载接入后,多模型控制器检测负载电流,经过adc/dq0变换后由式(8)计算出功率因数,并选择相应模型,每个模型中的d轴第二级PI控制器和q轴PI控制器参数和由神经网络进行整定以达到理想的控制效果。
理论上讲模型分得越多系统控制越精确,但系统稳定性会以及控制器计算量会受到影响,故本文设定了3个模型。
4.仿真研究
为了验证基于多模型神经网络PI控制器的STATCOM直接电流控制策略在不同冲击性负载下都具有良好的无功补偿能力,本文将其与基于传统PI控制器的直接电流控制法进行比较。利用MATLAB/SIMULINK对STATCOM系统进行了仿真研究,仿真电路的参数如下:系统电压,系统频率,线路电感线路电阻,输出滤波器等效电感,输出滤波器等效电阻,输出滤波器等效电容,直流侧电容,调制三角波频率,直流侧电容电压参考值,神经网络PI模块通过调用MTALAB的S函数实现。
仿真中所采用的基于传统PI控制器的直接电流控制法的PI参数采用恒定参数,与模型1相同,即与表1中Q大于0.55时一致。
图6、图7、图8分别给出了0~0.2S的时段内,接入冲击性负载后负载侧功率因数Q分别为0.62、0.40、0.18时的两种方法的补偿效果图;图中6/7/8A为未采用STATCOM补偿的系统侧电压电流,6/7/8B为采用传统PI控制器时的补偿效果图,6/7/8C为采用本文提出的多模型神经网络PI控制器时的补偿效果图。需要特别指出的是,图6中,由于传统PI控制器和多模型神经网络PI控制器均采用同一种PI参数,因此补偿效果一样。
比较以上仿真效果图,我们可以发现:
1)当负载侧功率因数Q为0.62时,如图6,此时Q>0.55,故多模型控制器选择模型1。由于此时传统PI控制器和多模型神经网络PI控制器采用同一组PI参数,因此补偿效果一致,均能在半个周波内使系统侧电流可以达到稳定且系统侧电流和电压保持同相位,从而使系统侧功率因数为补偿到1。
2)当负载侧功率因数为0.40和0.18时,如图7、8,随负载侧功率因数的变化,传统PI控制器已经无法适应负载的变化,虽然在几个周波后能够勉强维持系统侧电压电流同相位,但是前半个周波冲击电流较大,电流波形较差,谐波畸变率较高,无法获得理想的补偿效果。而采用本文提出的多模型神经网络PI控制器后,多模型控制器根据Q的范围选择与各自模型相适应的PI参数,补偿后的效果较理想,系统电压和电流均能保持同相位,系统电流的谐波畸变率较小,并且均能在半个周波内使系统侧电流达到稳定。
5.结论
针对STATCOM在补偿系统功率因数时,传统的直接电流PI控制方法未能有效适应负载的变化,且人工整定PI参数过于繁琐,本文提出了基于多模型神经网络PI控制器的STATCOM直接电流控制方法。既利用多模型技术更好的适应负载的变化,又利用神经网络训练大大降低了PI控制器的控制参数人工整定的工作量。通过仿真研究,从对负载的变化的适应能力,系统功率因数的提高以及补偿速度,对传统PI控制方法与多模型神经网络PI控制方法进行了比较,得出在基于多模型神经网络PI的STATCOM直接电流控制方法下,STATCOM能够提高系统功率因数至1左右,且能够更迅速的适应接入负载的变化,具有更好的无功补偿能力。
参考文献
[1]聂子玲,张波涛,孙驰.et al.级联H桥SVG直流侧电容电压的二次谐波计算[J].电工技术学报,2006(4):111-116.
[2]唐杰,罗安,周柯.静止同步补偿器电压控制器的设计与实现[J].电工技术学报,2006(8):103-106.
[3]王兆安等.谐波抑制和无功功率补偿[M].机械工业出版社,2005:444.
[4]赵渊,周家启.静止无功补偿器和移相器的最优配置及其对发输电系统可靠性的影[J].电工技术学报, 2004,19(1):55-60.
[5]谢小荣,姜齐荣.柔流输电系统的原理与应用[M].北京:清华大学出版社,2006.
[6]An Luo,Ci Tang,Zhikang Shuai,Jie Tang,Xian Yong Xu,Dong Chen.Fuzzy-PI-Based Direct-Output-Voltage Control Strategy for the STATCOM Used in Utility Distribution Systems[J].IEEE Transactions on Industrial Electronics,2009,56(7):2401-2411.
[7]王盛,李立学,郑益慧.et al.基于多模型PI的STATC-OM直接电压控制方法[J].电力系统保护与控制,2011, 32(7):42-46.
[8]柳玉甜,蒋静坪.基于多模型和小脑模型关节控制器神经网络的移动机器人故障诊断[J].电工技术学报,2007,22(3):153-158.
关键词:足球机器人;神经网络;PID;运动控制
中图分类号:TP
文献标识码:A
文章编号:1672-3198(2010)12-0292-01
1 基于BP神经网络参数整定的PID控制器仿真
仿真的一项重要内容就是神经网络初始权值的确定。我们可知隐含层节点的输入为ui=∑4wijxj在计算中常用两个矩阵来表示。输入矩阵,输出矩阵,输入层至隐含层和隐含层至输出层权值矩阵。初始权值矩阵选取是关键之一,其决定最终优化效果,但是权值初始化非常困难,一般采用的方法是随机生成初始权值矩阵,进行仿真,取仿真效果较好的几组随机初始矩阵值。此法随机性较大,需要通过输入不同目标点进行检测,取得仿真效果较好(多数样本有效)的一组作为初始矩阵。但此法还是有一定缺陷,只能局部目标点可以采用。为了获得良好控制效果,这里对PID控制器进行简单改进。将PID控制器的偏差量error(k),error(k-1)(上次误差),error(k-2)(前次误差)全部进行预处理,即同时除以第一次误差d1。然后按神经网络输出的PID参数原值进行计算,得到输出。
2 基于BP神经网络参数整定的PID控制器设计改进
通过研究,在能到达目标点的前提下,机器人的速度曲线理想情况下应该要使启动平稳,在增量PID中若初始压低输出(即经过一段距离后,控制器输出才到达最大值,距离长短由角度控制器决定),随时间累积到达一定值时被控对象输入为最大值,最大值持续输出一段距离后,被控对象输入开始下降,使被控对象输出下降到一定的可控范围内。此时,PID控制器中随时间累积的项就是积分项。但积分作用初始很强,所以初始速度过猛,这就需要减弱微分作用的灵敏度,于是本文就采用不完全微分控制算法,来达到此改进目的。不完全微分控制算法的作用就是减弱初始一段时间的积分作用,将其作用延后,即如上图所示,中间段速度持续最大值。
这里改进后控制器输出为:u(k)=a×u(k-1)+(1-a)×du(k)。
3 PID控制器与基于BP神经网络整定的控制器的仿真对比
下面,通过与P控制比较来分析基于神经网络整定的PID调节的优点。为了便于设计和调节,在此简化PID控制器为P控制器,即v=k1×Ed,w=k2×Er。进行仿真对比,这里针对一般目标点(1000,5000),两个特殊目标点(10000,50)、(50,10000)三个点进行检测。对比例系数调节过程遵循两个原则:
(1)末端可控(即末态速度在下一阶段开始时的速度可控范围内);
(2)在规定时间内到达目标点。接下来就是根据快速性和平稳性优化参数。在此我们不妨观察目标点为(10000,50)时两者的对比图。其中(k1=0.67,k2=15),
图1 目标点为(10000,50)的PID控制器仿真
图2 目标点为(10000,50)改进后的神经网络控制器仿真
图1 目标点为(10000,50)改进后的神经网络控制器仿真(the simulation of improved neural network controller on target point(10000,50))
通过上面P控制器和基于BP神经网络的PID控制的仿真的比较,可以看出,改进后的控制效果明显优化了很多,初始速度有一段上升时间,可见控制器的输出被压低取得明显效果,并且能保证大的输出持续一段时间(积分作用有效),最后输出下降,有利于下一阶段控制。这是控制器进行不完全积分后取得的好效果。本次设计的控制器PID参数是实时在线进行优化的,所以每次PID参数都在改变,有利于实时跟踪输入信号,达到优化控制的目的。
参考文献
【关键词】汽车;控制系统;结构设计;故障检修
控制系统是汽车的重要组成部分,对于汽车的形式以及使用性能具有重要影响,其是指汽车中装载的各种电子元件组成的系统,各式各样的电子元件组成了汽车中的发动系统、照明系统、空调系统等。因此,文章主要针对汽车控制系统结构设计及常见故障检修方向展开分析,报道如下。
一、汽车控制系统结构设计分析
汽车中使用的电子元件品种繁多,且受到使用性能、方式等方面的影响,各电子元件之间的差异也较大,但是为了方便控制系统结构设计,在设计过程中,是通过将各种电子元件作为独立概念进行设计,而不是通过以仪器的实际外形进行设计,这样能够将这些电子元件作为控制系统中的独立仪器,从而制作控制系统单元结构,有助于设计师阐述控制系统结构设计的方法与目的[1]。
现代科学技术的更新推动了汽车使用性能的提升,并且现阶段中汽车装载的电子元件的技术含量不断提高,控制电路、智能芯片等产品的研发使得汽车电器系统的智能性得到进一步发展,尤其是在控制电路方面,其具有强大的功能以及使用性能,通过与各电子元件的连接,实现对各种电子元件的控制[2]。典型的控制系统结构分为分布式、集中式以及近似全分布式这三种结构。分布式结构的优点在于通过单个电子元件对多个电子元件的控制,从而优化控制系统的运行性能;但是其缺点在于电子元件之间可造成相互影响,导致控制系统容易出现故障;集中式结构的优点在于控制器能够实现对所有电子元件的控制,缺点也同样明显,即一旦控制器出现问题,可造成控制系统瘫痪,严重影响汽车使用性能;近似全分布式结构的优点在于通过多个控制器实现对各电子元件的控制,但是这种结构的造价高,使得汽车生产成本增加。这些结构各有各的优缺点,在实际生产中受到了广泛的应用,能够提升控制系统的使用性能。
二、基于神经网络的汽车控制系统常见故障以及诊断分析
随着现代智能计算的发展,提升了汽车控制系统的性能,这同时也是现代汽车的发展趋势[3]。但是由于目前市面中汽车品种繁多,许多控制系统故障检测系统无法兼顾全局,因此,在日常生活中,要加强汽车的养护和检修,避免出现意外事故。
(一)常见的控制系统故障以及故障原因
在长时间的使用过程中,电子元件免不了发生老化、故障等问题。笔者根据多年工作经验分析,常见的汽车电子元件故障有:①电子元件老化,这主要是由于线路老化发生的线路断裂,对于控制系统的性能造成严重影响;②电子元件损坏,这主要是由于电子元件过热或高温天气造成的原件电阻增加,进而引起短路、断路;③线路问题,这主要是由于运行过程中汽车出现较大幅度的位移、颠簸造成的线路松动等现象,可能导致短路、短路或是电子元件磨损。
(二)神经网络下汽车控制系统故障诊断
神经网络的研发是从生物神经系统中获得的灵感,通过模仿生物神经元的组织结构,进而展现出现与人脑相似的性质,其能够通过症状搜集或状态收集从而处理复杂的非线性映射关系。神经网络之所以具有强大的功能,主要是由于其具有较强的学习能力、分布式信息储存能力、独立计算能力等,能够解决复杂的问题。
由于现代实际应用的控制系统故障诊断方法有很多,本文主要针对几种常见的诊断方法进行分析:①神经网络诊断系统。该方法主要通过应用神经网络故障诊断系统,通过输入相关的数据或故障症状,从而推算出故障的原因,进而进行故障诊断。②神经网络残差检验法:该方法主要利用神经网络模拟系统的常规属性,在系统中输入一些特定的参数,并与控制系统的实际值进行比对,从而得到残差,这样能够实现故障诊断[4]。在此过程中,可以利用数学模拟系统计算差值,能够提升计算的准确性。③神经网络评价残差法:这种方法与上述方法不同,上述方法是获得残差,而该方法是评价残差,利用神经网络对残差进行分析,从而获得控制系统故障问题。④神经网络诊断分析:利用神经网络诊断系统进行故障分析,其主要是利用神经网络的模拟系统进行控制系统相关参数以及控制器等方面的非线性关系,从控制系统的输出情况分析,以此来了解控制系统的故障情况。⑤神经网络自适应误差补充检测法:其主要是利用了基于神经网络中的非线性观测器,能够迅速判断故障发生未知,进而提升故障检出率[5]。⑥模糊神经网络故障诊断:其主要是利用模糊理论以及神经网络相结合的方式,这种方法是通过普通神经网络中加入模糊概念,在输出时加入模糊层,通过语言规划网络,使得神经网络中的参数具有意义,并且由于神经网络具有较好的学习能力,比一般神经网络的诊断准确率更高。
结束语
随着现代科学技术的不断提升,汽车控制系统不断向智能化发展,因此,要加强控制系统故障诊断系统建设,保障用户的使用体验。
作者简介:张骞(1985.11-),男,河南新乡人,硕士研究生,助教,主要研究方向为汽车检测与诊断技术,汽车电子控制,新能源汽车系统等。
参考文献:
[1]夏天,王新晴,梁升等.带自适应遗传算子的粒子群神经网络及其应用[J].理工大学学报(自然科学版),2013,12(1):70-74.
[2]张晨,韩月秋,陶然等.基于神经网络预测器的单传感器故障检测方法[J].北京理工大学学报,2015,19(2):220-223.