力控-照明系统设计与实现

实验内容

实验内容参考至建筑组态实验指导书

工程描述:

照明监控系统模拟某楼宇某层的照明系统布置及其监控状况,包括房间照明、厅堂照明、走廊照明等正常照明和事故照明。

功能要求:

1、房间照明灯具、会议室照明灯具、走廊照明灯具和事故照明灯具分别采用不同的图元形状加以区别。

2、点击“开灯”按钮,所有正常照明打开,点击“关灯”按钮,所有正常照明关闭。

2、预设置 “早晨”、“下午”、“夜晚”3种灯光场景,利用按钮分别实现灯光场景的控制。“早晨”模式下,要求内部房间打开;“下午”模式下,内走廊灯打开;“夜晚”模式下,所有正常照明全部打开。

3、设置“火灾模拟”按钮,点击按钮模拟火灾发生时的照明系统设置,要求所有正常照明关闭,事故照明启动,指引人员逃生;同时弹出报警界面要求显示火灾报警的信息,火灾报警结束要求关闭报警窗口。

4、利用模拟的调光控制按钮控制厅堂照明的灯具颜色变化,实现彩光照明。

扫描二维码关注公众号,回复: 10240249 查看本文章

5、工程进入运行状态时要求直接进入照明监控系统登陆窗口。

因为找不到灯具,所以有椭圆代替

绿色椭圆代表办公室、厕所的灯;
紫色椭圆代表走廊、电力室的灯;
大椭圆代表会议室的灯,它可以根据游标值的变动,改变颜色;
红色的矩形代表火灾应急灯;
灯亮时为黄色;

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

实验步骤

1.绘制窗口

照明监控系统窗口

在这里插入图片描述
组件放置位置可参照 实验1
//房间的布局是用线画的,网格工具可以使其画直;
游标在标准图库-游标-类别2
背景的灰黑色矩形框是进行了图元后置,右击矩形-图元位置-后置

//可利用ctrl+c / ctrl+v 复制粘贴按钮(复制粘贴的控件会保留原控件的属性

火灾报警窗口

在这里插入图片描述
组件放置位置可参照 实验1
这个表格在复合组件-报警-复合报警

2.定义I/O设备

  • 双击“IO设备组态”
    在这里插入图片描述
  • “IO设备”-“力控”-“仿真驱动”-“Simulator(仿真)”,右击,新建名为“PLC”、设备地址为1的I/O设备。
    在这里插入图片描述
    在这里插入图片描述

3.建立实时数据库组态

  • 在数据库定义模拟量I/O点lightcolor,数字量I/O点lighton、morning、afternoon、night、fireon
    详情可参照 实验1
    在这里插入图片描述

4.建立数据连接

(1)、将模拟量I/O点lightcolor的PV参数连接到I/O设备“PLC”的模拟量-常量寄存器输入区的0通道;

(2)、将数字量I/O点lighton的PV参数连接到I/O设备“PLC”的数字量-状态输出的0通道;

(3)、将数字量I/O点morning的PV参数连接到I/O设备“PLC”的数字量-状态输出的1通道;

(4)、将数字量I/O点afternoon的PV参数连接到I/O设备“PLC”的数字量-状态输出的2通道;

(5)、将数字量I/O点night的PV参数连接到I/O设备“PLC”的数字量-状态输出的3通道;

(6)、将数字量I/O点fireon的PV参数连接到I/O设备“PLC”的数字量-状态输出的4通道;

在这里插入图片描述

在这里插入图片描述

5.实时数据库火灾报警参数的组态

对实时数据库点fireon组态报警参数,报警优先级为高级。

在这里插入图片描述

6…建立动画连接

照明监控系统窗口

  • 对会议室调光灯游标数据绑定

在这里插入图片描述

因为找不到灯具,所以有椭圆代替

绿色椭圆代表办公室/洗手间的灯;
紫色椭圆代表走廊、电力室的灯;
大椭圆代表会议室的灯,它可以根据游标值的变动,改变颜色;
红色的矩形代表火灾应急灯;
灯亮时,统一设置为黄色;

//可利用ctrl+c / ctrl+v 复制粘贴按钮(复制粘贴的控件会保留原控件的属性

  • 绿色灯(除洗手间的):动画连接-颜色变化-条件 表达式:lighton.PV||morning.PV
    在这里插入图片描述
  • 绿色灯(洗手间的):动画连接-颜色变化-条件 表达式:lighton.PV||night.PV
  • 紫色灯:动画连接-颜色变化-条件 表达式:lighton.PV||afternoon.PV
  • 大椭圆灯:动画连接-杂项-一般性动作-运行中周期执行 脚本:this.FColor=lightColor.PV;
  • 红色灯:动画连接-颜色变化-条件 表达式:fireon.PV

如果大家有灯具,其表达,脚本也是一个原理:将灯表达式等于某个值,当这个值为1时亮,为0时灭

  • 开灯按钮 动画连接-触敏动作-左键动作-按下鼠标 脚本:lighton.PV=1;
  • 关灯按钮 动画连接-触敏动作-左键动作-按下鼠标 脚本:
    lighton.PV=0;
    morning.PV=0;
    afternoon.PV=0;
    night.PV=0;
  • 早晨按钮 动画连接-触敏动作-左键动作-按下鼠标 脚本:morning.PV=1;
  • 下午按钮 动画连接-触敏动作-左键动作-按下鼠标 脚本:afternoon.PV=1;
  • 夜晚按钮 动画连接-触敏动作-左键动作-按下鼠标 脚本:night.PV=1;
  • 火灾模拟按钮 动画连接-触敏动作-左键动作-按下鼠标 脚本:
    lighton.PV=0;
    morning.PV=0;
    afternoon.PV=0;
    night.PV=0;
    fireon.PV=1;
    Display(“火灾报警”);
  • 火灾模拟结束按钮 动画连接-触敏动作-左键动作-按下鼠标 脚本:
    CloseWindowEX(“火灾报警”);
    fireon.PV=0;

7.脚本编写

  • 编写“应用程序动作脚本”的“进入程序”动作脚本

在这里插入图片描述

脚本内容如下
注意!这是进入程序的脚本,不是程序运行周期执行的脚本

fireon.PV=0;
lighton.PV=0;
morning.PV=0;
afternoon.PV=0;
night.PV=0;
display("照明监控系统");

这段脚本的意思是,进入程序后,将所有灯关闭,并打开照明监控系统窗口

实验心得

1.对组件的方法、属性和事件加深了理解,对脚本的编写有了很大的提升;
2.有时找不到很好看、很好用、很方便的组件,后期要学会找资源;
3.编程时,要有很清晰的逻辑,要学会举一反三,刚开始时可能都只是在模仿别人的代码,但后期一定会弄出一点自己的东西的!

详情可参照 实验1,有些内容在那写了,这里就不写了

以上为个人学习经验,欢迎大家来交流、改进实验

发布了4 篇原创文章 · 获赞 2 · 访问量 163

猜你喜欢

转载自blog.csdn.net/qq_43662263/article/details/105129862