看看外国工程师的PLC程序,你给打几分?
分享一个外国工程师写的PLC程序,你觉得可以打几分?
部分程序截图:
免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!
超全280G电气资料
一文了解西门子PLC系统,如何编写出质量较高的PLC程序?
一西门子PLC按照控制规模来分类
可以分为小型机、中型机和大型机。
一 西门子小型机:
小型机:小型机的控制点一般在256点之内,适合于单机控制或小型系统的控制。
1 S7-200
S7-200是西门子公司推出的一种小型PLC,它的优点是
(1)结构紧凑,占用空间小。
(2)拓展型良好,可以接称重模块,数字量、模拟量输入输出模块等等,使用起来非常方便。
(3)价格低廉
但是除此之外,它还有一些缺点:
(1)虽然国内还可以买到这种PLC的备件,但西门子公司宣布这款产品已经停产,未来的发展很受限。
(2)没有以太网接口,只可以使用西门子配套电缆进行调试编程,不方便。
(1)对于运动控制的支持不好。(S7-200的大多数PLC脉冲输出最大频率是20KHZ,S7-200smart的最大频率是100Khz,也就是对伺服电机的驱动不是很好。)
2 S7-200smart
S7-200smart是西门子公司针对中国市场研发的一款产品,只在中国销售。其原因可能是西门子的S7-200已经停产,西门子公司又不想放弃中国庞大的低端PLC市场,而作为S7-200的升级版,与S7-200相比,它有以下的特点:
(1)同是小型PLC,结构紧凑,价格低廉。
(2)拓展能力不如S7-200,它不支持称重模块,所以你不能使用精确的称重功能,可以选择用称重仪表模拟量输入代替,但精确度不如称重模块。
(3)Smart拥有以太网接口,调试编程拓展都非常方便。
(4)运动控制的支持比S7-200强大。无论是最大脉冲输出,还是运动控制向导,都比S7-200好用。
3 西门子S7-1200
S7-1200是一款紧凑型、模块化的PLC,可完成简单逻辑控制、高级逻辑控制、HMI 和网络通信等任务。
西门子中型机:
中型机: 中型机的控制点一般不大于2048点,可用于对设备进行直接控制,还可以对多个下一级的可编程序控制器进行监控,它适合中型或大型控制系统。
西门子中型机有S7-300: 处理速度0.8~1.2ms ;存贮器2k ;数字量1024点;模拟量128路 ;网络PROFIBUS;工业以太网;MPI。
西门子大型机:
大型机的控制点一般大于2048点,能完成较复杂的算术运算。
1 西门子S7-400
西门子S7-400PLC的主要特色为:极高的处理速度、强大的通讯性能和卓越的CPU资源裕量。
2 西门子S7-1500
西门子S1500是西门子博途系列,也是西门子未来发展的主体方向,其性能自然非常好!
软件及编程语言:
对于西门子所有的PLC,我们都已经整理了版本!需要软件的的同学可以点赞加关注并转发,然后留言“我要西门子软件”,让更多人能够分享到软件。
S7-200的编程软件是“STEP 7-Micro/WIN V4.0 ”留言后可以发私信;西门子200
西门子S7-200smart的编程软件是“STEP7‑Micro/WIN SMART ”。留言后可以发私信;西门子200smart。
西门子S7-300/400的编程软件是“STEP7”。留言后可以发私信;西门子300。
西门子S7-1200/1500的编程软件是“TIA PAORTAL”。留言后可以发私信;西门子博途。
西门子的编程语言主要有:LAD,FBD,STL,SCL,GRAPH,SFC,CFC等等,
在国内,大多数工程师只使用LAD,FBD,高级一点的使用STL,PCS7会涉及到SFC和CFC,其他的大多数时候都是外国工程师在使用,以后有机会我们会讲一些这些常用语言,也会拓展非常用语言。便于大家学习。
二 控制模式
西门子PLC在编程时主要有以下几种控制方式,系统设置远程/本地/手动按钮:
远程: 只能通过上位机对系统进行自动启/停控制,单台设备就地控制优先,在程控时,可以通过上位机对设备进行软手操/自动切换,软手操启/停。
本地: 只能通过触摸屏对系统进行自动启/停控制,单台设备就地控制优先,在程控时,可以通过触摸屏对设备进行软手操/自动切换,软手操启/停。
手动: 手动控制时,上位机/触摸屏失效,只能通过手动控制设备的启/停。
单台设备控制
单台设备必须有软手操/自动切换以及软手操时可以启/停功能,由自动切换到软手操时,设备不能停机;由软手操切换到自动时,设备启/停取决于自动程序。
单台设备
(泵、风机及其它大型设备)运行满24小时必须进行轮换,且必须有运行时间累计,如果由上位机设定启/停顺序除外,操作人员自行设定。
西门子程序FB和FC的区别:
FC:功能,它没有自己的数据块。
FB:功能块,它有自己的存储区,即背景数据块。FB=FC+DB(背景数据块).
如果FC也想使用数据功能的话,需要在外部连接全局数据块进行数据存储。
程序结构统一规范
OB1:主程序
OB100:初始化程序(无需主程序调用)
OB35:100ms(可修改)中断(无需主程序调用),可以调用PID模块;
OB80、OB82、OB85、OB86、OB87、OB121、OB122:故障诊断模块(无需主程序调用、无需编程)
功能块和数据块:
FC1:系统模式 FC2:输入处理
FC3:输出处理 FC4:运行处理
FC5:停止处理 FC6:手自动切换
FC100:之后用来建立一些可以循环调用的子程序
FC105:系统自带,模拟量输入子程序(可以循环调用)
FC106:系统自带,模拟量输出子程序(可以循环调用)
modbus通讯(CP341):FB7:P_RCV_RK,FB8:P_SND_RK
通讯CP340:FB2:P_RCV,FB3:P_SND
一般PID:用FB41
温、湿度PID:用FB58
如果程序块与系统块重复,请避让。
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区:也作为中间变量
功能块FC,FB和数据块DB以上只是经验丰富的工程师根据多年的经验进行总结,试图找到一种通用的方式,但不是说这些块就必须严格按照上述功能来编写程序,西门子程序功能是开放的,你可以按照自己的风格私人定制。
记住,学习西门子PLC编程的技巧是:多看,多学,多模仿!
相关问答
西门子plc485通讯怎么编程?
西门子PLC485通讯可以使用ModbusRTU协议进行通讯。以下是一个基本的ModbusRTU通讯程序编程示例:硬件环境搭建:主站设备:西门子S7-1200从站设备:DTD433FC...
plc编程必背十大程序西门子?
梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。不同型号的PLC编程软件对以上五种编程语言的...梯...
PLC编程语言中LD/IL/FBD,ST/SFC/CFC的全称是什么?望高手指点?
LD:laderdiagramIL:这个又叫STL,statementlist而IL应该是日系叫法,I什么list的意思吧,没仔细研究过日系的PLC。FBD:FunctionBlockd...
PLC的离线编程方式有什么?
在线,就是连接到PLC,离线,就是不连接到PLC,前者必须是在有PLC,且在接通电源状态下进行,后者则无此限制。在线,就是连接到PLC,离线,就是不连接到PLC,前者必须...
怎样使用西门子S7-300编程读取PLC程序?
如果你的是普通的PC机(含有串口),那么要有一根MPI通信电缆,普通的电缆是不行的,最好用西门子原装的(大概一千多),国产的也可以就是不可靠(几百),连接...如果...
施耐德PLC的程序是怎么拷贝的?
在电脑上是以文件形式存在的,直接复制就行,在plc上,需要下载,用施耐德的编程软件下,不过有可能程序在写进去的时候设置了权限和下载限制,有可能不能下载到...
对于一个较为复杂的自动化任务,PLC编程的思路是什么,应该怎样考虑?
根软件设计一样根据需要硬件配置(plc点数,IO余量)程序设计需要先要规划(数据寄存器,中间继电器分配,IO分配),程序结构框架,单元功能实现,整体程序调试...根软...
7款plc编程软件介绍?
1、欧姆龙plc编程软件欧姆龙plc编程软件集成了CX-ProgrammerV9.5,能够为欧姆龙PLC编程提供全面的软件支持,本版本为最新版,全面支持32/64位WIN8系统,为多国...
step7microWIN怎么把PLC模块里的程序读出来?原理是什么?
这个我来答吧~这个step7microWIN是对西门子S7-200系列PLC的,你要读取里面的程序首先需要有根数据线:有了数据线后将PLC通电,并且将USB插至电脑,串口插PLC...
plc编程很难吗?
不难,PLC编程比PythonJavaWET这些语言要简单多了,我本身就是学电子信息专业,但我没学好,只懂一些皮毛,前段时间报了一个线上课程,包括寄来了6本书(...不难,...