LON仿人思维控制器设计与实现
2017-12-15培进
,培进
(烟台大学 计算机与控制工程学院,山东 烟台 264005)
LON仿人思维控制器设计与实现
王霞,王培进
(烟台大学计算机与控制工程学院,山东烟台264005)
新型智能控制仪表的发展趋势是基于人工智能,人工智能在控制领域的应用核心是模拟人的控制智慧;LON仿人思维控制器是基于LonWorks总线的智能控制器,模拟了人的控制思维与智慧,体现了仿人思维控制理论与方法研究成果;控制器采用双CPU设计,将嵌入式技术与LonWorks总线技术有机结合在一起,可以实现模拟信号、开关信号及其脉冲信号的输入、输出,可与其它控制仪表实现RS-232、USB、LonWorks总线通讯;LON仿人思维控制器集成了独有的仿人思维控制算法,既可以单独使用,也可以构成拟人化分布式智能控制系统;实验结果表明,LON仿人思维控制器对温度、压力、流量、液位等过程工业物理量有很好的控制效果。
LonWorks总线;智能控制仪表;仿人思维控制;嵌入式系统
0 引言
作者十多年以前开始对仿人思维控制进行研究[1-2],出版学术专著《仿人思维控制》。仿人思维控制研究内容与理论体系分三大模块:单输入-单输出系统(SISO)仿人思维控制、多输入-多输出系统(MIMO)仿人思维控制和拟人化分布式智能控制系统。SISO系统仿人思维控制研究是基础,是进行MIMO系统仿人思维控制研究和拟人化分布式智能控制系统研究的前提,MIMO系统仿人思维控制方法将借鉴和应用SISO系统仿人思维控制研究成果,拟人化分布式智能控制系统综合应用单输入-单输出系统(SISO)仿人思维控制和多输入-多输出系统(MIMO)仿人思维控制研究成果。图1给出了拟人化分布式智能控制系统结构图,其中包括智能变送器、仿人思维控制器等。
文献[3]介绍了图1所示中LON智能变送器的设计与实现,本文研究的Lon仿人思维控制器是图1所示中子仿人思维控制器,是针对前期理论研究成果的应用化研究,控制器核心算法是采用仿人思维控制算法。Lon仿人思维控制器既可以单独使用,做独立控制器,也可以网络化使用。Lon仿人思维控制器研制,将为智能化控制提供新型的智能控制器,其最大特点是模拟人的控制思维,集成了仿人思维控制算法,参数设置简单,能够解决一些难以建模的复杂系统控制问题,具有重要的研究价值和实际应用价值。
图1 拟人化分布式智能控制系统结构
1 LonWorks总线与嵌入式WinCE操作系统
图1所示的拟人化分布式智能控制系统,采用了LonWorks 总线。目前世界范围内有90多种现场总线,比较流行的有15种,常用的有9种。其中LonWorks总线又以其完全支持七层协议,支持多种通信媒介,可靠性高,可互操作,兼容性和灵活性好等独特的优点而异军突起,成为了现场总线的主流。LonWorks总线最早应用在楼宇自动化中,现在已经推广到一些大型、工业控制网络,其网络功能强于现在流行的几种现场总线。
LonWorks总线最大特点是网络通信采用“网络变量”,使网络通信的设计简化为参数设置,节省了大量的设计工作量,使开发周期大大缩短。通过Lon Maker 网络管理环境, LonWorks网络中各节点之间很方便的建立起逻辑连接,网络输入、输出变量之间数据传递方便,系统中节点的增加、删减自由灵活、简单,节点之间实现对等通讯,网络维护快捷、便利。
LonWorks总线采用Neuron 神经元芯片实现双绞线通讯,可以很好地模拟人体的通讯机理,组网方便。Neuron 神经元芯片有效集成了3个CPU、存储器、I/O接口等部件,可以实现通信、控制、调度和I/O等功能,内部还集成了LonTalk七层网络协议。Neuron 神经元芯片使用的编程语言是Neuron C,支持面向对象编程,又继承了大部分ANSI C的规范与标准,编程方面。
基于上述原因,我们选择LonWorks总线作为拟人化分布式智能控制系统控制网络,Lon仿人思维控制器就是基于LonWorks总线通讯的控制器。
Lon仿人思维控制器核心控制模块采用嵌入式系统设计,使用ARM9系列CPU S3C2440,集成WinCE操作系统。目前流行的嵌入式操作系统是Linux,它的优点是代码开放,便于裁剪,缺点是设计人机交互界面需要借助于QT等图形化界面,设计较为复杂。Lon仿人思维控制器设计采用了WinCE操作系统,是跟Windows操作系统类似的操作系统,便于用户操作。在WinCE操作系统下,人机交互界面采用VS2005中的VB设计,快捷、方便。因为,Lon仿人思维控制器集成了仿人思维控制算法,需要设置一些初始化参数,同时模拟量、开关量、脉冲量的输入输出需要通道标定,在线编程,人机交互界面设计十分重要。
基于上述原因,我们选择了WinCE操作系统。
2 仿人思维控制器硬件设计
考虑到仿人思维控制器的特殊性,硬件设计采用双CPU设计,ARM 2440完成模拟量和开关量的输入输出及其实现仿人思维控制算法;Neuron 3150实现脉冲信号的输入输出和LonWorks总线通讯。ARM 2440 与Neuron 3150之间采用串行通信。
整个硬件架构采用底版+核心板设计,图2给出了底板各个硬件部件分布结构图。
图2 控制器底板结构
ARM2440核心模块含有CPU 2440 + SDRAM+NOR FASH+ NAND FLASH+系统时钟,其中NAND FLASH为1G,便于存储控制算法程序。
Neuron3150核心模块,采用Neuron 3150神经元芯片,支持64个网络变量,提供LonWorks双绞线接口,通讯速率为78kbps,可在线编程。
上述两个核心模块可以直接插在底板上,拔插方便。控制器采用触摸、液晶显示屏。
为了处理多种控制过程需要的信号,设计了8路模拟量输入、8路模拟量输出、8路开关量输入、8路开关量输出及其两路脉冲信号输入与两路脉冲信号输出,满足不同控制系统需要。图3给出了硬件连接原理图。
图3 控制器硬件连接原理
采用ARM 2440串口0 与Neuron 3150之间进行串行通信,采用ARM 2440串口1设计标准的串行接口-RS232接口,采用ARM 2440主USB接口设计标准的USB接口。RS232接口和USB(主)接口,便于连接外部具有相同接口的数据采集设备或控制驱动设备。利用ARM 2440核心模块提供的系统总线接口,采用AD7606 16位模数转换器,实现8路模拟量(0~5 V或者4~20 mA电流)数据采集;利用DA0832设计8路0~5 V电压或者4~20 mA电流模拟量输出。由于ARM 2440核心模块提供的外围GPIO接口不多,8路开关量的输入、输出设计采用了串行接口芯片74HC165和MAX349。
Neuron 3150核心模块除提供LonWorks总线接口外,提供了11个引脚(I/O0~I/O10),这些引脚可以以各种方式(通过编程,设置34种)配置并提供具有最小外扩电路的灵活的I/O功能。
引脚I/O4—I/O7具有可编程的上拉电阻,引脚I/O0~I/O3具有大电流(20mA)输出能力。利用Neuron 3150神经元芯片提供的两个16位定时/计数器,设计了两路外部脉冲信号输入、输出接口,便于具有脉冲信号输出的传感器数据采集和外部需要脉冲信号驱动的设备(如蜂鸣器)。外部脉冲信号要通过光电隔离器PC817C和施密特触发器SN7414整形后送入Neuron芯片。利用I/O7~I/O10设计与ARM2440串口0进行具有握手信号的串行通信。
控制器8路模拟量输入、8路模拟量输出、8路开关量输入、8路开关量输出及其两路脉冲信号输入与两路脉冲信号输出通过40线槽引出。
3 仿人思维控制器软件设计
仿人思维控制器软件设计包括嵌入式操作系统WinCE设计、外围接口驱动程序设计、应用程序设计和通讯程序设计4个部分。
3.1 嵌入式操作系统WinCE设计
Windows CE具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。基于Windows CE嵌入式操作系统的开发,主要是板级支持包BSP的开发。BSP全称Board Support Package,板级支持包,主要包含各种驱动支持库。BSP主要由Boot loader、OEM适配层(OEMAdaptation Layer, OAL)、设备驱动程序和运行时镜像的配置文件4个部分组成。
Boot loader是引导程序,运行在操作系统内核之前的一小段程序,是系统运行的首要程序。Boot loader的主要作用就是对硬件设备进行初始化、建立内存空间映射图,配置启动环境。我们采用了ARM2440核心板开发商提供的专门为ARM9设计的Supervivi Boot loader引导程序。
OEM适配层即OEM Adaptation Layer,简称OAL,即原始设备制造商适配层,是BSP的一个重要组成部分。OAL是与硬件交互的接口,完成系统内核和硬件设备的通信、数据交换任务。当Boot loader执行完,Win CE操作系统启动后,OAL便发挥作用。我们使用ARM2440核心板开发商提供的OAL。
设备驱动程序是BSP中很重要的核心部分,包括ARM2440处理器自带的设备驱动程序、支持OAL的驱动程序、通用外围设备驱动程序和自己开发的外围接口驱动程序。
运行时镜像的配置文件,有.bib,.db,.reg,和.dat等4种类型。Windows CE最终镜像依据这些文件配置而得到。此外,还有Sources和DIRS配置文件,负责编译相关代码。
Visual Studio2005集成了Win CE 6.0操作系统的开发设计环境Platform Builder,Win CE操作系统的设计可以在Visual Studio2005环境下完成的。
3.2 外围接口驱动程序设计
基于ARM CPU设计的控制仪表,对于像USB、RS-232等通用接口驱动程序不需要设计,在操作系统中已经具备,直接调用即可。对于新增加的外围接口,必须设计驱动程序方能应用。不同类型的操作系统,要求的驱动接口形式也不一样。在Win CE 操作系统下,需要采用流驱动接口设计方法。
流驱动提供给操作系统标准流接口函数,主要有XXX_init()、XXX_Open()、XXX_Read()、XXX_Write()、XXX_IOControl()、XXX_Close()等函数。流驱动由Device Manger (设备管理器)管理的,Device Manger调用ActivateDeviceEx()函数来加载流驱动;而ActivateDeviceEx()函数的参数是流驱动在注册表中的相应值(包括Index、Prefix和D11等)。当流驱动加载成功后,应用程序通过调用 CreatFile()、ReadFile()、WriteFile()、DeviceIOControl()等接口函数来访问流驱动所对应的设备。
RS-232串行通信、USB、触摸显示屏驱动程序采用核心板开发商提供的,我们自己设计了ARM串口0通讯、AD、DA、开关量输入、开关量输出、脉冲信号输入、脉冲信号输出等流式驱动程序。
3.3 应用程序设计
仿人思维控制器应用软件设计又包含人机交互界面设计、数据采集与输入、输出程序设计、控制算法程序设计等。
人机交互界面设计,主要包括是仿人思维控制算法初始化参数设置、模拟量与开关量输入输出通道定义、控制回路定义等。控制回路主要有一般闭环反馈、前馈-反馈、串级、前馈-反馈-串级及其比值控制等,需要通过初始化,确定谁是被控量,谁是干扰量,谁和谁构成什么样的控制回路。这种初始化方法,增加了仿人思维控制器应用的灵活性。
数据采集与输入、输出程序设计,主要包括ARM部分的AD、DA、开关量输入、开关量输出程序设计及其Neuron 3150脉冲信号处理程序设计。由于ARM部分采用了流驱动程序设计,应用程序设计较为方便。
3.4 通讯程序设计
通讯程序设计包含ARM2440 与Neuron 3150之间的数据通讯、RS-232通讯、USB通讯及其Neuron 3150与外部设备通过LonWorks总线进行的通信。Neuron 3150与外部设备通过LonWorks总线进行的通信按照LonTalk协议进行。数据传输采用定时传输和应答式传输相结合,来自传感器的数据采用定时传输,其它数据采用应答式传输,需要就传,不需要就不传。
ARM2440 与Neuron 3150之间的串行通讯,是异步全双工握手式通讯,主要传递AD转换的数据和Neuron 3150采集的脉冲信号数据。通讯格式自己定义,第一个字符为数据种类,随后为有效数据(两个字节),最后为结束字符。
RS-232通讯、USB通讯,主要是与外设的通讯,可以利用WinCE环境下提供的串口控件,在Visual Studio2005环境中开发完成。
4 仿人思维控制器控制算法设计
按照仿人思维控制理论,将人的控制思维分为抽象逻辑推理控制思维和形象直觉推理控制思维。在控制的初始阶段,抽象逻辑推理控制思维发挥主导作用;随着控制经验的积累,形象直觉推理控制思维越来越发挥主导作用。我们研究了3种算法来描述人的抽象逻辑推理控制思维,分别应用于不同的对象。借助控制思维概念,同时给出了形象直觉推理控制思维过程。对于一些复杂的系统控制,可以采用仿人思维复合控制策略,即控制的初始阶段采用先进的控制方法,同时积累控制经验,在相对稳定阶段,采用仿人思维控制,以实现控制系统“稳、快、准”的有机统一。因此在仿人思维控制器中,设置了一般PID控制算法、3种仿人抽象逻辑推理控制算法、一种仿人形象直觉推理控制算法和3种仿人思维复合控制算法(与PID控制、模糊控制、预测控制等结合的复合控制),共计8种控制算法,以供用户选择,运用于不同对象。
为了方便使用各种控制算法,基于面向对象分析和设计,在VC环境下将各种控制算法生成动态链接库HTSC.DLL。在WinCE环境下利用VB.net 编程时,可以声明库中的函数,直接调用。算法调用流程见图4所示。
图4 控制算法调用流程
5 实验结果
本文研究的仿人思维控制器作为独立的控制器使用,应用于实验室三水箱液位实验系统,对下水箱水位进行液位控制实验。控制器通过RS-232接口与PC机连接,构成计算机监督控制系统。
图5是仿人思维控制中抽象逻辑推理控制算法之一“三阶段控制法”的实验曲线。图中有两个很明显凸起出来的“波”,第一个“波”是由于在中水箱添加了“二次扰动”的原因,第二个“波”则是由于在下水箱添加了“一次扰动”的原因。从运行的结果中可以看出,控制系统抗干扰的能力是很强的,不管是中水箱的“二次扰动”还是下水箱的“一次扰动”,系统都能在很短的时间内把扰动的影响给消除掉。通过曲线的上升时间、系统稳定的调节时间以及稳定之后的鲁棒性等特性可以看出,达到很好地控制效果。
图5 仿人思维控制实验曲线
图6是仿人思维复合控制,结合PID控制,下水箱液位的上升速度很快,而且上升曲线很平滑,峰值时的超调量也不大,系统到稳定时调节时间也比较短。在稳定运行之后,虽然曲线上出现了较多的上下间隔的“凸起”,但是“凸起”的数值很小且维持时间也非常小,说明系统的稳定性还是比较好的,控制系统满足了“稳”、“快”、“准”的要求。
图6 仿人思维复合控制实验曲线
图7是基于仿人思维控制的前馈-反馈控制实验曲线,下水箱液位为被控量,流量为干扰量。采用智能前馈-反馈控制算法,当流量有变化,产生扰动时,水箱液位很快稳定,控制效果优良。
图7 基于仿人思维控制智能前馈-反馈实验曲
6 总结
仿人思维控制理论与方法的研究已经有十几年的历史,在液位控制、孵化机控制、智能小车控制等方面得到了应用。文中研制的基于LonWorks总线的仿人思维控制器,是前期理论研究成果的应用化和产品化。Lon仿人思维控制器既可以独立使用,应用于一些较为简单的对象或系统控制;也可以构成拟人化分布式智能控制系统,应用于大型的复杂的流程工业控制。具有人控制智慧的、嵌入式智能控制仪表,将是未来智能控制仪表发展的重要方向。
[1] 王培进. 仿人思维控制[M]. 东营:石油大学出版社,2011.
[2] Wang Peijin. Concept Space Mining of Human-Thinking Simulated Control[J]. Int. J. of ICIC Express Letters, 2013, 7 (2): 485-491.
[3] 刘 云,王培进. Lon 智能变送器设计与实现. 计算机测量与控制[J].2016,24(12):234-236.
[4] Wang Peijin. Human body simulated control system[J]. Int. J. of Modeling, Identification and Control, 2015, 24 (1): 10-18.
DesignandImplementationofLonHuman-thinkingSimulatedController
Wang Xia,Wang Peijin
(School of Computer and Control Engineering, Yantai University, Yantai 264005,China)
Development trend of the new intelligent control instruments is based on artificial intelligence, and the key application of artificial intelligence in the field of control is to simulate human control intelligence. Lon Human-thinking Simulated Controller is based on LonWorks bus and simulates human control thinking and intelligence, and it shows the methods and theoretical research results of human-thinking simulated control. The controller is composed of double CPU, and it integrates embedded technology and LonWorks bus technology together. Lon Human-thinking Simulated Controller can cope with the input and output of analog signal, on-off signal and pulses signal, and it can communicate with other devices by RS-232, USB and LonWorks bus. Based on the special control algorithms of human-thinking simulated control, the controller can be used lonely as well as be used in the human simulated intelligent distributed control system. The test results show that Lon Human-thinking Simulated Controller can be used well for the process control such as temperature, pressure, flow, level, etc.
LonWorks bus; intelligent instrument; human-thinking simulated control; ARM
2017-04-14;
2017-05-15。
烟台市科技项目(2015ZH057)。
王 霞(1990-),女,山东烟台人,硕士研究生,主要从事计算机应用方向的研究。
王培进(1964-),男,山东烟台人,教授,硕士研究生导师,主要从事智能控制方向的研究。
1671-4598(2017)11-0058-04
10.16526/j.cnki.11-4762/tp.2017.11.015
TP3
A