工控编程,西门子PLC编程技巧 多年经验积累
一、程序结构http://p4.qhimg.com/t01e2597e25f473fbb1.jpg?size=640x5761、 程序结构统一OB1:主程序;OB100:初始化程序(无需主程序调用);OB35:100ms(可修改)中断(无需主程序调用),可以调用PID模块;OB80、OB82、OB85、OB86、OB87、OB121、OB122:故障诊断模块(无需主程序调用、无需编程);FC1:系统模式;FC2:输入处理;FC3:输出处理;FC4:运行处理;FC5:停止处理;FC6:手自动切换;FC7:。。。。。。FC100:之后用来建立一些可以循环调用的子程序;FC105:系统自带,模拟量输入子程序(可以循环调用);FC106:系统自带,模拟量输出子程序(可以循环调用);modbus通讯(CP341):FB7:P_RCV_RK,FB8:P_SND_RK;通讯CP340:FB2:P_RCV,FB3:P_SND;一般PID:用FB41;温、湿度PID:用FB58;如果程序块与系统块重复,请避让。2、 数据块DB1:AI数据,类型:REAL,与上位机接口;DB2:AO数据,类型:REAL,与上位机接口;DB3:DI数据,类型:BOOL,与上位机接口;DB4:DO数据,类型:BOOL,与上位机接口;DB5:设备运行时间及流量累计,类型:REAL,与上位机接口;DB6:报警消息,类型:BOOL,与上位机接口;DB7:类型:REAL,中间寄存器;DB8:类型:INT,中间寄存器;DB9:类型:WORD,中间寄存器;DB10:类型:BOOL,中间寄存器;DB11:之后用作与设备通讯用,例如:MODBUS通讯等;DB100:之后用作调用FB块时的背景数据块;M区:也作为中间变量。3、 DP从站故障诊断DP从站必须做故障诊断,故障报警,用FB125即可。二、控制模式1、 系统设置远程/本地/手动按钮1.1、 远程:只能通过上位机对系统进行自动启/停控制,单台设备就地控制优先,在程控时,可以通过上位机对设备进行软手操/自动切换,软手操启/停;1.2、 本地:只能通过触摸屏对系统进行自动启/停控制,单台设备就地控制优先,在程控时,可以通过触摸屏对设备进行软手操/自动切换,软手操启/停;1.3、 手动:手动控制时,上位机/触摸屏失效,只能通过手动控制设备的启/停。2、 单台设备控制单台设备必须有软手操/自动切换以及软手操时可以启/停功能,由自动切换到软手操时,设备不能停机;由软手操切换到自动时,设备启/停取决于自动程序。3、 单台设备(泵、风机及其它大型设备)运行满24小时必须进行轮换,且必须有运行时间累计,如果由上位机设定启/停顺序除外,操作人员自行设定;三、编程技巧1、 程序块尽量细化,方便阅读,将同一类型的设备控制放在一个程序块中;2、 如遇特殊情况下采用语言编程,多数情况下请使用梯形图编程,方便别人阅读;3、 对于经常调用的子程序,可以做成子模块,频繁调用,例如:求几个数平均值或求几个数的最大值;4、 程序要有注释,变量及中间变量必须有描述,方便别人阅读或以后查阅;5、 定期做程序备份,最好以工程名称+系统名称+当天日期;6、 程序加密,防止别人窃取。四、西门子PLC按照控制规模来分类可以分为大型机、中型机和小型机。西门子PLCS7-300系列西门子PLCS7-300系列小型机:小型机的控制点一般在256点之内,适合于单机控制或小型系统的控制。西门子小型机有S7-200:处理速度0.8~1.2ms ;存贮器2k ;数字量248点;模拟量35路 。中型机:中型机的控制点一般不大于2048点,可用于对设备进行直接控制,还可以对多个下一级的可编程序控制器进行监控,它适合中型或大型控制系统。西门子中型机有S7-300:处理速度0.8~1.2ms ;存贮器2k ;数字量1024点;模拟量128路 ;网络PROFIBUS;工业以太网;MPI。大型机:大型机的控制点一般大于2048点,不仅能完成较复杂的算术运西门子PLCS7-400系列算还能进行复杂的矩阵运算。它不仅可用于对设备进行直接控制,还可以对多个下一级的可编程序控制器进行监控。西门子大型机有S7-400 :处理速度0.3ms / 1k字;存贮器512k ;I/O点12672;http://p5.qhimg.com/t01649c23724156a9be.jpg?size=454x394
绝对干货,楼主给力,支持了!!! 太生气了,无法HOLD啦 >_<...... 真是难得给力的帖子啊。 看了楼主的帖子,不由得精神一振,豁然开朗,牛掰 看了楼主的帖子,不由得精神一振,豁然开朗,牛掰 绝对干货,楼主给力,支持了!!! 党的好公民,人民的好公仆。。。 淡定,淡定,淡定……
我只是路过打酱油的。