基于Lonworks技术的模糊控制智能节点的设计
用于冷水阀控制。模糊推理所用的知识库数据存放于神经元芯片的E2PROM存储器中,有一组初始值。系统运行期间可以通过LON总线从上位机获取新的控制参数,从而完成控制参数的更新。
图2 温度控制节点结构图
4.2 温度测量节点的设计
温度测量节点的结构如图3所示。包括神经元芯片MC143150、程序存储器、温度传感器、光电耦合器MOC3020、A/D转换电路ADC0809、FTT-10A收发器等。
图3 温度测量节点结构图
5、智能节点软件设计
节点应用程序用Neuron C语言编写。Neuron C是神经元芯片的专用语言,是ANSI C的扩展,并增添了一些较强的功能,如网络变量类型,事件调度语句等。神经元芯片的任务调度是事件驱动的。当一个给定的条件变为真时,与该条件相关联的一段代码被执行。该智能节点的软件设计包括主程序、A/D转换程序、D/A转换程序、显示子程序、控制算法子程序等,下面以查表法实现模糊控制为例,给出部分源代码:
signed short fc(float-type*input1){
……//设置局部变量
if(mcc==1)
sp=sp1;
pe=e;//记下偏差的上一个状态
fl_sub(input1, sp, e);//计算偏差get e
fl_neg( range_e, f1);//对偏差限幅
if(fl_it( e, f1)==TRUE)
ce=f1;
else if(fl_gt( ce, range_ce)==TRUE)
ce=range_ce;
fl_mul( e, f1_6,f1);//对偏差进行量程变换
fl_div( f1, range_e, f1);
fl_add( f1, f1_6, f1);
fl_round( f1, f2);//对变换后误差进行四舍五入
rol=low-byte(1ro1);
fl_mul( ce, f1_6, f1);//对偏差变化值进行量程变换
fl_div( f1, f1_6, f1);
fl_add( f1, f1_6, f1);
fl_round( f1, f2);//对变换后的偏差变化值四舍五入
lcow=fl_to_ulong( f2);
cow=low_byte(1cow);
table_u=table[ro1][cow];
……
fl_from_ulong(ltable_u, f1);//对查表结果进行量程变换
fl_mul( f1, range_dtu, f2);//查模糊控制表
fl_div( f2, f1_6,f1);
……
return f_out;//返回输出控制增量
本系统投入运行后,取得了比传统单回路PID控制方式更好的控制效果,见图4中的温度曲线对比。从图中可看出,模糊控制过渡过程时间短,超调量小,达到了工艺生产的要求。
图4 温度曲线对比
6、结束语
模糊控制技术在我国已广泛应用于工业过程、家用电器等领域,但模糊控制技术的网络应用还不多见。本文将Lonworks技术与模糊控制技术结合起来,通过上位机实现实时测控,在实际应用中取得了良好的控制效果。该系统还可充分利用主机资源,使模糊控制算法位于上层,从而可以绑定多个设备节点,以便于构造不同的模糊控制器。控制参数可以通过人机界面由用户输入,通用性强、操作灵活便捷,为模糊控制生成器与现场设备的集成提供了一种有效的途径。
本文作者创新点:将Lonworks技术与模糊控制技术结合起来,给出了智能节点的设计方法和实例,通过计算机实现网络监控,能远程实施温度测控,在应用中取得了良好的控制效果。
Lonworks总线 模糊控制 智能节点 嵌入式 相关文章:
- 基于Lonworks总线技术的工业机器人系统研究(12-16)
- Lonworks总线及其应用(12-04)
- 基于LONWORKS总线的油库智能管理控制系统设计(11-12)
- 基于LonWorks总线的楼宇空调控制系统的设计(09-28)
- 基于DSP的无刷直流电动机的模糊控制系统研究(03-16)
- 基于嵌入式Linux的移动机器人控制系统(09-09)