PLC编程到底是啥?看电气大神讲PLC,膜拜!真是一针见血
PLC常见的用途是替代电气控制中的继电器逻辑控制电路。例如电机控制、变电站市电进线互投和自备发电机起停控制、过程控制DCS操控系统和楼宇消防系统控制等等。一般的城市居民小区高层建筑的水压控制,就是采取PLC配套变频器执行水泵操控的。
PLC更重要的用途是构建数据交换系统,它把现场总线变换为工业以太网,实现现场设备与后台的数据交换,以及接收和执行遥控命令等等。
在工业、民居、国防、交通(地铁、港口、民航)、银行和移动的数据中心中都大量使用PLC,由此可见PLC的用途之广。
PLC的硬件系统简介
图1:ABB的AC500系列PLC
图1的左侧是通信接口模块,它能实现PLC的通信数据和网络数据交换。向右显示了"AC 500"的是PLC的主体,即CPU模块。再往右是开关量输入/输出模块以及模拟量输入输出模块。
由此我们看到,PLC类似于一个单片机系统。事实上,PLC就是单片机智能化系统,但它的可靠性和稳定性非常高,远远超过了一般的单片机。
在工业环境下的电磁骚扰强烈,所以PLC必须要满足国家标准对电磁骚扰的要求。有关电磁骚扰的国家标准如下:
图2:国家标准中对工业条件下电磁骚扰的测量方法和要求
PLC抵御电磁骚扰的硬件措施包括电源隔离、开关量输入接口采取光电隔离、模拟量也采取光电隔离等措施。输出接口的电磁骚扰会弱一些,但也需要采取一定的措施,包括OC门和继电器接口等等。
为了提高PLC的可靠性,在重要场合还采取主PLC与从PLC冗余配套工作的措施,见下图:
图3:PLC的冗余措施
我们原来在变电站电力监控系统中用工业控制计算机作为中间层面的数据处理中心,但工业控制计算机存在电源故障、硬盘故障,抗电磁骚扰能力弱,后来就淘汰了,转而使用PLC作为数据处理中心。下图是《低压成套开关设备的原理及其控制技术》中的插图:
图4:图中的CCU就是PLC构建的通信管理中心
在图4中,既有利用PLC执行低压进线、母联和自备发电机间的备自投系统,也有执行数据交换的PLC系统。
PLC的软件系统
学过初级编程知识的人都知道循环语句。一旦程序进入死循环,程序事实上就是死机了。对于PLC来说也是如此。一旦PLC进入死循环,它的接口会复位,被控制量会发生严重问题。因此,PLC的程序语句是一条条顺序执行的,一直运行到最后一条再返回,不会出现死循环。即便是转移指令,只要转移条件满足就转移,否则跳过转移程序段继续执行。
这就是PLC软件系统的可靠性很高的原因之一。
我们看下图:
图5:PLC的模块化编程语言
图5摘自北京地铁工程的PLC程序局部。
PLC程序格式有两种,其一是梯形图格式,其二是模块化编程语言格式。对于较复杂的PLC程序,一般都采用模块化编程语言来编写。不管是梯形图也好,是模块化编程语言也好,它们都必须符合国际电工委员会IEC61131-3标准的要求。
下图是用于控制电机实现星三角转换的程序:
图6:电动机星三角转换的PLC程序局部
图6中的STEP2和STEP3就是转移程序端。如果不符合条件,程序会跳过转移程序段执行。
最有意思的是PLC的PID程序模块,很有使用价值。
给大家的建议
学习PLC技术,刚开始大都以梯形图为主。实际上,PLC刚开始学习时无非就是控制十字路口红绿灯等等,真正的PLC技术绝不仅仅在于此,只要做过一个工程,对PLC的认知就会大幅提升。
AB PLC梯形图下的MOVE指令来看AB PLC编程的一些特点
说明:
AB PLC很早以前接触过,不过没有认真去了解过,这段有时间就来细看一番,发现它和西门子的PLC编程方法和理念还是很不一样,虽然我也用过美国GE的plc,但是还是和这个AB的很不一样,因此AB的PLC有必要仔细的学习一下,故有此随笔。
正文:
Rockwell Allen-Bradley也就是罗克韦尔AB PLC的英文名称,后边我都说AB PLC了。目前AB plc的软件版本非常多,我主要使用RsLogix 5000和Studio 5000这2个软件(需要说明的是这是两个不同的软件,可能你搜索软件的时候都是叫RS5000,但是下载下来却发现是Studio5000),因此后续的文章也都主要是这个2个软件环境下的讲解。
今天本文先来讲一个简单的MOVE指令,让朋友们感受一下,AB PLC和西门子PLC有多大的区别。
MOVE指令的区别
这个图片的上边部分是STEP7软件中西门子300项目中的一个MOVE传送指令,实现把MW20中的值传送给DB1.DBW20中。而下边的这个是AB PLC软件中的MOVE传送指令,这个指令中的source是源,来源的意思;而这个dest不是桌子的是意思,是destination目标,目的地的意思,所就是把来源的数据传送到目标数据中的一个传送MOVE指令。
Move指令不就是把一个数据传送到另外一个数据么?为何AB PLC中的Move指令右侧有四处问号呢?
其实,帮助文件中也没有解释的太清楚,不过我可以测试,请看下图:
AB PLC move指令
这个图片是我把3个图片整合在一起了,图中①是离线时候的原始程序,所以②③图片的左右两侧的母线是绿色的粗线,而①处则没有,因为是在离线状态。
①和②的程序是一样的,是都没有执行时候的程序状态,可以看到TP1下的箭头处是20,TP2下的箭头处是0,TP3下的箭头处是45。而当我把两个MOVE指令前边的常开接点让其接通的时候,可以看到③处Local:2:Data.0两侧的横线变为了绿色表示该接点接通了,而此时TP2和TP3下方箭头的数值都变成了20。---这样的程序接通前后的变化,就可以说明箭头所指的数据,可以理解为是你定义的初始值,比如TP1和下边的20,就相当于TP1的初始值定义为20,TP2的初始值定义为0,TP3的初始值定义为45,经过MOVE指令的传送后TP2和TP3中的值都变为了source中的值。
箭头所指的值是初始值,那TP1是由何而来呢?是我创建的一个标签名字或者说一个变量名字!
示例图片1
AB PLC中的变量系统设置应该说和很多PLC的变量系统设置不一样,因此在使用很多指令的时候都需要建立一个标签。这里先说一示例图片1中Dset处的35为何我放置了一个错误的x号,因为Dset处是只能放标签tag的是不能放立即数的,在程序编译的时候会报错!
再来看一下下方的AAA,就是我要创建的一个标签名字,是随意取的。在没有定义这个AAA之前,我只是在这里写了个AAA,那么下方的??处,将无法写入数值,必须对AAA有个明确的定义,让系统知道你是创建了这个AAA的tag才行,见下图:
创建Tag
该图右上角的Creat就是创建的意思,即使你的一切设置都是按照这个默认设置去设置,也要进入这个画面点击一个这个Creat,这样才算告知系统已经创建了一个叫AAA的变量,进而上边图片中下方赋予初始值那里才能写入数值!
再开看一下之前程序运行时,创建的标签在监控中的情况:
TP2标签的值
这个图片可以看到TP2标签的值是20,TP2是一个DINT类型的变量,所以它是32位的,可以看到有32个位,TP2.4和TP2.2这两个位的值都是1,也说明了TP2中的32个位,数据排列的方法是T2.0是最低位,TP2.31是最高位。
MOVE指令大概就说到这里了,我想朋友们应该已经能看到,还是和西门子PLC有很多不一样的地方。感谢阅读,如果有问题欢迎留言和批评指正,谢谢!
相关问答
plc编程谁家的好用?
很高兴回答的问题!就市场占有率来看,西门子最大,其次是三菱、欧姆龙。具体谁家好用,这个不能一概而论,还取决于编程人员对其使用的熟练程度。西门子PLC又...这...
西门子的PLC与GE的PLC有什么不同?
1、西门子是德国的牌子,质量上比国产的整体的稳定性和抗干扰等性能都要好2、编程软件是西门子专用,自成一系,和三菱、欧姆龙的差别很大1、西门子是德国的牌...
GEPLC怎么打开编好的程序?
是从plc吧?先要有通讯(要知道是那种网络),再有硬件配置(网络配置).编程软件(编程设备,pc,工控机什么的),然后下载打开!是从plc吧?先要有通讯(要知道是那种...
GE90\70PLC组态软件能否升级?-盖德问答-化工人互助问答社区
2楼说的是用高版本打开低版本开发的程序的方法目前主推6.0的但我一直使用5.8的哈哈可以,只要打开me后转换程序就可以了啊现在的me软件应该早就...
如何把GEplc中的程序下载下来(下载到编程软件中)?
程序编好后,编译成功;在连好编程线后,接通plc电源,应当就可以下载了。下载方法,可参见编程软件的帮助。注意安全(接plc电源线和接通电源前需核对,或请有...
...间采用PROFIBUS通讯.远程控制采用GE的Genus通讯方式._作业帮
[最佳回答]CHICHE于99年10月进行了电气改造,采用9030可编程序控制器控制,启动/停车采用TE的RTV84驱动器驱动;PLC与驱动器之间采用PROFIBUS通讯.远程控制采用GE...
电厂PLC控制中用到的UNITY软件和IFIX软件是什么关系?
UNITY是施耐德PLC的编程组态软件(一层,现场级),主要用来对PLC进行相关的编程以实现对现场传感器及执行器的数据采集和控制。IFIX是GE开发的二层上位界面组态...
plc编程好学吗??四川成都plc编程好学吗?
[回答]四川成都plc编程好学吗?,成都万通高级技工学校PLC编程课程,教学以实操为主,一人多套实操设备,理论结合实操,从PLC编程入门到电气设计,大量的工程实...
学plc需要什么工具?
学习PLC前期需要对硬件,接线等知识有一个大致的理解,而后边则主要是变成了对该类型的PLC编程软件的操作以及相关指令的学习,甚至说PLC软件中相关指令的学习,...
西门子PLC,GE的plc这些产品的代理都是通过什么渠道获得呢?
代理是直接找西门子这些公司的分公司或者代理处谈判的,现在是买方市场,只要你去电话,一般他们都会派业务员过来找你谈的代理是直接找西门子这些公司的分公司...