3.4 对象编程
1.冰箱的编程
参数说明:可以来自HMI(Human Machine Interface,人机界面)或者信息管理系统,包括冷藏室温度设置和冷冻室温度设置。
输入说明:
存储:向冰箱下达存储指令,存储指令包括的信息有存储的对象(大象),存储的位置(冷冻室还是冷藏室)等;
取件:向冰箱下达取件指令,存储指令包括的信息有取件的对象(大象),取出的位置(冷冻室还是冷藏室)等;
启停命令:此信号为True的时候冰箱启动,否则冰箱停止运行。
输出说明:
冷冻室门的开关:True表示冷冻室打开,False表示冷冻室关闭;
冷藏室门的开关:True表示冷藏室打开,False表示冷藏室关闭;
启停状态:True表示冰箱已经启动,False表示冰箱停止运行。
性能说明:
三维尺寸:冰箱的外在存储,包括长宽高的尺寸;
冷藏室:当前温度、当前剩余空间、载重能力;
冷冻室:当前温度、当前剩余空间、载重能力。
逻辑信息:包括运算逻辑以及运行状态。
运算逻辑信息:比如存储对象不符合当前冰箱的容量、取件对象在冰箱里面不存在、大象重量超重(以上信息冷藏冷冻是分别存储的)等。
图3-3 冰箱在PLC中的程序模型
运行状态数:比如冰箱是否启动,是否有故障等。
将以上信息概括后可以在一个统一的模型中(有关模型的说明详见第8章)得到体现,具体如图3-3所示。
2.大象的编程
参数:无。
输入说明:
进冰箱:True表示要求大象进入冰箱,False表示无定义;
出冰箱:True表示要求大象走出冰箱,False表示无定义。
输出说明:
正向行走:True表示大象进冰箱方向行走,False表示无定义;
反向行走:True表示大象出冰箱方向行走,False表示无定义。
性能说明:
三维尺寸:大象的体积,包括长宽高的尺寸;
重量:大象的总重量。
将以上信息概括后可以在一个统一的模型中得到体现,具体如图3-4所示。
图3-4 大象在PLC中的程序模型
经过上述过程,就将冰箱和大象的模型在程序中得以再造,只要将这两个模型在程序中建立接口关系,那客户的需求将“大象装进冰箱”就很容易实现了。此时,只要给大象下达走进冰箱的指令,冰箱就会在得到信息后打开对应门,大象自己就走进去了。
若此时大象体积太大或者超重(数据来自传感器),冰箱模块还会告知系统不能装载大象的原因。
同时,客户有其他后续需求的时候,只要在给冰箱的输入信息中加以说明,冰箱就会执行相应的动作,比如“门打开就好”或者“冷冻温度设置到-18°”等需求。