清华大学毕业设计 控制系统的程序设计
5.2 西门子PLC程序的设计
通过对比,我设计PLC语言作为本次设计的语言,使用的是V4.0 STEP 7 MicroWIN SP9 编程软件。
5.2.1 西门子PLC程序的设计规则
对于任何程序的设计,多应该遵循独有的规则,同理,我设计的软件有以下几个规则:
①有PLC的程序都要采用结构化编程,即主程序块完由多个子程序块构成,主程序里没有子语句;
②一个网络只能有一个输出,不能出现多个输出;
③所有元件使用要注意范围,不能超出范围,比如定时器定时最长为32767,不能随心所欲的定时。
对于PLC程序,我进行以下分析供阅读:
5.2.2 水位检测与显示程序
对于水位的检测与显示,是本设计中最重要的,通过对水位的检测来确定电机是否启动排水,我采用的是直接将I0.0连接到Q1.0,没有采用中间继电器过渡。图5.7 显示的是水池1的低水位、排水位、高水位的检测与显示,在本设计中,由于条件缺乏,采用模拟状态进行输入,即当按下I0.0时,水位即为低水位,此时低水位指示灯会亮,同时通电自锁。
图
5.7 水位检测与显示程序
21
清华大学毕业设计 控制系统的程序设计
5.2.3 进出水阀门控制程序
对于阀门控制程序,我采用了通过水位来进行控制,如下图5.8,以1号水池为例,有以下两种情况:
①当水位指示为低水位Q1.0和排水位Q1.1,而满水水位Q2.0没有到达,此时进水阀门打开,排入污水;
②当水位指示为高水位Q2.0和排水位Q1.1,此时低水水位指示灯Q1.0关闭,此时排水阀门打开,排出污水;
图5.8 进出水阀门控制程序
5.2.4 定时计数程序
对于每个控制精确的系统,必少不了定时器,对于此系统的定时器,我选用的是TON定时器,定时精度100ms(即0.1S),最大计数范围32767,即3276.7S。对于计数器,则采用了CTU计数器。
我以统计电机工作时间进行分析:
由图5.9所示,通过Q3.2(启动一台电动机信号)电机的启动,马上开始定时,定时计数为18000,计数到18000重新计数,此时CTU计数器增加1,增加到16或者Q3.2电机停止工作清零,通过计数的次数和定时器的计数时间,从而可以统计出电动机的工作时间。
22
清华大学毕业设计 控制系统的程序设计
图5.9 定时计数程序程序
5.2.5 一台电动机启动程序
电动机在本系统中是最关键的,电机能否正常启动排水,直接影响地铁排水系统,所以对于电机的控制,我们需要做到精确。
对于电机的控制程序,如图5.10所示,由图中程序可以看出: ①当按下启动按钮I2.1时,同时启动定时器T37定时;
②当有一个水池到达排水位时,即Q1.1、Q2.2、Q2.5、Q3.0中任意一个接通,这这个并联回路接通,Q3.2电机则会启动排水;
③一个电机都不运行排水的充要条件是四个水池都处于低水位时,这电机需要关闭,对于这个程序的设计,我采用了四个水池都常闭并联,这样当水池都没水时,电机即可关闭。
图5.10 一台电动机启动程序
23
清华大学毕业设计 控制系统的程序设计
5.2.6 两台电动机启动程序
当集水池中出现2个水池到达排水位时,我们需要启动两台电动机进行排水,这时一台电动机必须运行,对于这个程序,我的设计如下:
①欲达到启动第二台电动机,那么担忧2个水池到达排水位时,这应该启动
2?6种可能,即有Q1.1、Q2.2;Q1.1、Q2.5;Q1.1、第二台电动机,总共有C4Q3.0;Q2.2、Q2.5;Q2.2、Q3.0;Q2.5、Q3.0,当这其中任意有一组满足条件即可完成启动;
②欲关闭电动机,当有3个水池水位到达低水位的,即可关闭电动机,这有3中情况,即Q1.0、Q2.1、Q2.4;Q1.0、Q2.1、Q2.7;Q1.0、Q2.4、Q2.7均常闭即可达到条件。
图5.11 两台电动机启动程序
5.2.7 三台电动机启动程序
当有三个水池都到达排水位时候,我们就应该启动三台电动机排水,作为三台电动机排水程序,我的设计如下:
①预启动三台电动机,则需要有三个水池到达排水位,那么这有以下几种情况满足条件,Q1.1、Q2.2、Q2.5;Q1.1、Q2.2、Q3.0;Q2.1、Q2.5、Q3.0;Q2.2、Q2.5、Q3.0,当这几个水池都达到排水位的时候,这应该启动电动机,因为只需要任意一个满足条件,故这几种情况应该采用并联。
24
清华大学毕业设计 控制系统的程序设计
②欲停止电动机,这需要两个水池到达排水位,则有Q1.0、Q2.1;Q1.0、Q2.4;Q1.0、Q2.7;Q2.1、Q2.4;Q2.1、Q2.7Q,进行常闭触电的并联使用。
图5.12 三台电动机启动程序
25