西门子模块6ES7235-0KD22-0XA8现货包邮
随着PLC在工业控制中的推广普及,PLC产品的种类越来越多,其结构型号、性能、容量、指令系统、编程方法等各不相同,适用场合也各有侧重。因此,合理选择 PLC,对于**PLC在控制系统中的应用有着重要作用。
一、机型的选择
我国市场上流行的有如下几家PLC产品:
1.施耐德公司,包括早期天津仪表厂引进莫迪康公司的产品,目前有Quantum、Premium、Momentum等产品;
2.罗克韦尔公司(包括AB公司)PLC产品,目前有SLC、Micro Logix、Control Logix等产品;
3.西门子公司的产品,目前有SIMATIC S7-400/300/200系列产品;
4.GE公司的产品;
5.日本欧姆龙、三菱、富士、松下等公司产品,其中使用较多的是三菱公司F1、F2、FX2等系列产品。
PLC机型选择的基本原则是:在功能满足要求的前提下,选择可靠、维护使用方便以及性能价格比优的机型。通常做法是,在工艺过程比较固定、环境条件较好的场合,建议选用整体式结构的PLC;其他情况则好选用模块式结构的 PLC;对于开关量控制以及以开关量控制为主、带少量模拟量控制的工程项目中,一般其控制速度无须考虑,因此,选用带 A/D转换、D/A转换、加减运算、数据传送功能的低档机就能满足要求;而在控制比较复杂,控制功能要求比较高的工程项目中(如要实现PID运算、闭环控制、通信联网等),可视控制规模及复杂程度来选用中档或机(其中机主要用于大规模过程控制、全PLC的分布式控制系统以及整个工厂的自动化等)。根据不同的应用对象,表1列出了PLC的几种功能选择。
表1 PLC的功能及应用场合
应该注意的是,同一企业应尽量做到机型统一。这样,同一机型的PLC模块可互为备用,便于备品备件的采购和管理;同时,其统一的功能及编程方法也有利于技术力量的培训、技术水平的**和功能的开发;此外,由于其外部设备通用,资源可以共享,因此,配以上位计算机后即可把控制各独立系统的多台PLC联成一个DCS系统,这样便于相互通信,集中管理。
二、I/O的选择
PLC在20世纪90年代已经形成微、小、中、大、巨型多种PLC。按I/O点数分,可分为微型PLC(32I/O)、小型PLC(256I/O)、中型PLC(1024I/O)、大型PLC(4.69I/O)、巨型PLC(8195I/O)五种。
PLC与工业生产过程的联系是通过I/O接口模块来实现的。PLC有许多I/O接口模块,包括开关量输入模块、开关量输出模块、模拟量输入模块、模拟量输出模块以及其他一些特殊模块,使用时应根据它们的特点进行选择。
(一)确定I/O点数
根据控制系统的要求确定所需要的I/O点数时,应再增加 10%~20%的备用量,以便随时增加控制功能。对于一个控制对象,由于采用的控制方法不同或编程水平不同,I/O点数也应有所不同。表2列出了典型传动设备及常用电气元件所需的开关量的I/O点数。
表2 典型传动设备及常用电气元件所需的开关量的I/O点数
(二)开关量I/O
开关量I/O接口可从传感器和开关(如按钮、限位开关等)及控制设备(如指示灯、报警器、电动机起动器等)接收信号。典型的交流输入/输出信号为24~240V,直流输入/输出信号为5~240V。尽管输入电路因制造厂家不同而不同,但有些特性是相同的,如用于消除错误信号的抖动电路等。此外,大多数输入电路在高压电源输入和接口电路的控制逻辑部分之间都设有可选的隔离电路。在评估离散输出时,应考虑熔丝、瞬时浪涌保护和电源与逻辑电路间的隔离电路。熔丝电路也许在开始时花费较多,但可能比在外部安装熔丝耗资要少。
(三)模拟量I/O
模拟量输入/输出接口一般用来感知传感器产生的信号。这些接口可用于测量**、温度和压力,并可用于控制电压或电流输出设备。这些接口的典型量程为-10~+10V、0~+11V、4~20mA或10~50mA。一些制造厂家在PLC上设计有特殊模拟接口,因而可接收低电平信号,如RTD、热电偶等。一般来说,这类接口模块可用于接收同一模块上不同类型的热电偶或RTD混合信号。
(四)特殊功能I/O
在选择一台PLC时,用户可能会面临一些特殊类型且不能用标准I/O实现的I/O限定(如定位、快速输入、频率等)。此时用户应当考虑供销厂商是否提供有特殊的有助于大限度减小控制作用的模块。有些特殊接口模块自身能处理一部分现场数据,从而使CPU从繁重的任务处理中解脱出来。
(五)智能式I/O
当前,PLC的生产厂家相继推出了一些智能式的I/O模块。一般智能式I/O模块本身带有处理器,可对输入或输出信号作预先规定的处理,并将处理结果送入CPU或直接输出,这样可**PLC的处理速度并节省存储器的容量。
综上,表3归纳了选择I/O模块的一般规则。
表3 选择PLC的I/O接口模块的一般规则
三、存储器类型及容量选择
PLC系统所用的存储器基本上由PROM、EPROM及RAM三种类型组成,存储容量则随机器的大小变化,一般小型机的大存储能力低于6kB,中型机的大存储能力可达64kB,大型机的大存储能力可上兆字节。使用时可以根据程序及数据的存储需要来选用合适的机型,必要时也可专门进行存储器的扩充设计。
PLC的存储器容量选择和计算的种方法是:根据编程使用的节点数**计算存储器的实际使用容量。第二种为估算法,用户可根据控制规模和应用目的,按照表4的公式来估算。为了使用方便,一般应留有25%~30%的裕量,获取存储容量的佳方法是生成程序,即用了多少字。知道每条指令所用的字数,用户便可确定准确的存储容量。表4同时给出了存储器容量的估算方法。
表4 控制目的估算存储器容量的方法
四、编程器和外部设备的选择
在系统的实现过程中,PLC的编程问题是非常重要的。用户应当对所选择PLC产品的软件功能及编程器有所了解。通常情况下,小型控制系统一般选用价格便宜的简易编程器,如果系统较大或多台PLC共用,可以选用功能强、编程方便的图形编程器。如果有个人计算机,可以选用能在个人计算机上运行的编程软件包。同时,为了防止因干扰、锂电池电压下降等原因破坏RAM中的用户程序,可以选用EEP-ROM模块作为外部设备。
五、实例
(一)利用三菱PLC实现对印刷机的**控制
印刷机的一套电气设计属于系统设计,为了使产品性能稳定,易于维护,采用以PLC为主控器的控制方案。印刷机要求易于操作,精度高,输入、输出点较多,因此采用双机通讯。上位机采用三菱高性能的FX2N-80MR、FX2N-80MR自带I/O接口,可以接40点输入,40点输出,主要负责主传动的控制,各机组离合器的控制,以及气泵,气阀的控制等。下位机采用三菱FX2N-64MR、FX2N-64MR可以接32点输入,32点输出,主要负责水辊电机的控制,主传动的调速输出,调版电机数据采集等。上位机与下位机采用RS485, 通讯,通讯方便,可靠。同时选用了一台三菱5.7寸触摸屏,主要负责水辊电机速度显示,调版显示,以及整机故障显示等。本系统运行可靠,维护方便,操作简便直观,大大**了胶印机的档次。
(二)欧姆龙(OMRON)PLC在石油加工工业中的应用
在石油加工工业中,大型旋转机组是装置设备的重要组成部分,重油催化裂化气压机组的联锁-自保系统从满足工艺生产需求出发,考虑到安全性、可靠性、经济性、可扩展性等因素,采用了OMRON公司生产的CPM2AH型PLC进行系统构建,CPM2AH自带I/O接口,可以接36点输入,24点输出,输出形式是继电器,并且通过RS232C串口与PC机通讯,使生产过程表现稳定,动作可靠,在事故状态下对机组及生产装置实行了自我保护,杜绝了恶性事故的扩大和蔓延,取得了显著的效果。
程序很简单,目的是在仿真软件上练习FC的使用。编写的程序是设定电机的星三角启动时间(xing_time)和电机运行时间(san_time),程序如图。现在的问题是分别调用功能块时,设定两组不同的时间,但效果都是一样,不知什么问题。(程序调试过很多次,都没问题)
答: 你的FC功能块了调用了全局变量!出现上述问题!
如果要把你个FC功能块作为通用的块来调用,就要全部运用局部变量来编程。
然后,在引用FC的时候,只需要向相应的管脚填写相应变量即可!
全局变量和局部变量的区别:
全局变量就就是在整个程序中都有效,内存中有固定的存储地址,局部变量只是在某个程序块中有效,只有在调用该程序块时,系统才为它在内存中分配存储空间,该程序块调用结束时,它的存储地址将不再有效,可能被分配给别的变量,也可能处于空闲状态。
你现在的功能块是无条件调用的,而你的定时器是同一个定时器,你让一个定时器,同时有两个设定值,怎么能正确呢,建议将两个FC1的前面加两个按钮,注意不要同时调用FC1,这样应该就OK 了(1)逻辑与指令WAND (D)WAND(P)指令的编号为FNC26。是将两个源操作数按位进行与操作,结果送指定元件。 (2)逻辑或指令WOR (D) WOR (P)指令的编号为FNC27。它是对二个源操作数按位进行或运算,结果送指定元件。如图4-48所示,当X1有效时,(D10)∨(D12)→(D14)(3)逻辑异或指令WXOR (D) WXOR (P)指令的编号为FNC28。它是对源操作数位进行逻辑异或运算。 (4)求补指令NEG (D) NEG (P)指令的编号为FNC29。其功能是将[D.]指定的元件内容的各位先取反再加1,将其结果再存入原来的元件中。 WAND、WOR、WXOR和NEG指令的使用如图1所示。
使用逻辑运算指令时应该注意: 1)WAND、WOR和WXOR指令的[S1.]和[S2.]均可取所有的数据类型,而目标操作数可取KnY、KnM、KnS、T、C、D、V和Z。 2)NEG指令只有目标操作数,其可取KnY、KnM、KnS、T、C、D、V和Z。 3)WAND、WOR、WXOR指令16位运算占7个程序步,32位为13个程序步,而NEG分别占3步和5步。
我是PLC的初学者,遇到了一些问题,感觉看书也理解不了现场的一些问题,请大家帮帮忙,看我的理解有没有错!
工厂电控柜内部装有小型PLC,(西门子200系列)可以自动控制电机的运行,我点击电控柜外部的“运行”按钮,给一个运行信号,PLC执行程序内部,执行输出,带动外部接触器线圈接通,电机按照程序自动运行。
工厂的中控室内还装有一台PLC控制柜(西门子300系列),从现场控制柜内引接触器的长开点到模块的输入点,
问题一:中控室的PLC所谓的远程监控作用可以可以理解为中控室的PLC输入输出点是分开工作来的,一个起监视,一个起控制作用?并不能通过该模块输入点的导通再带动现场接触器动作,不象现场的PLC的输入点导通再执行程序带动输出?我看过书上所给出的PLC的输入输出图(给出一个输入信号,能自动输出带动现场设备运行)这些是不是针对现场的PLC所言?
问题二:现场PLC的梯形图编程可以根据现场继电器控制图来设计,可远程PLC的编程是不是也用到梯形图编程,如果也是用梯形图编程,两者编的是一样的吗?不一样的话一般会有哪些差别?而且我发现上位机调试编程的人,他压根儿就不用知道现场的继电器控制电路图啊!
(所有的分都在这拉,希望大家帮帮忙,好是通俗易懂,尽量不要复制,帮帮小妹!也不知道我的意思大家能不能看懂,能让我理解了这个问题,我又能前进一步了)
问题补充:我们公司是做污水运营的,现在目前的情况是在进水的地方装有一台厂家自带S7-200的控制柜,但只单台控制,而且没有通过DP建立主-从关系连入S7-300,而是还是通过控制电缆给出的故障运行信号进PLC柜,我觉得这样并没有节约电缆,有什么意义吗?而且我觉得在本地用时间继电器控制自动运行该电机就可以了,装个S7-200控制不是浪费吗?
答:1.)PLC不分现场的还是中控的,中控PLC也可以输出信号控制现场的执行机构,现场的PLC也可以做为监控的一个分站来使用.只不过某项场合,为了方便,在现场安装PLC直接控制执行机构,然后再在集控室安装另一个PLC,用来监测和控制.其实都是PLC,只是人为编程赋予它们不同的作用而已.
2.)S7 200是很便宜的一种PLC,比用继电器要便宜和可靠,你的问题就是上位机与现场的S7200没有通讯,确实,这要看是否值得通讯,因为要通讯的话还需要加一个Profi-bus或者Modi-bus模块,增加了成本.既然是用来控制一个水泵的,没有几个信号,用一根多芯电缆就解决问题了,没有必要再加个通讯模块.
还有一点,如果你不是老板的话,就不要管那么多,按照设计图纸施工,如果出了问题也怪不到你头上
为什么要学习编制VB与PLC通讯程序,学会编制VB与PLC通讯程序有什么用呢?
简单地说:省钱!
小型的控制系统触摸屏即可胜任,5.7寸的屏价格不一。便宜也就一千多点,这个时候用VB做PLC的上位机控制系统当然是不合算。当控制系统要求上位机与PLC的通讯量很大时,触摸屏已经不能胜任了,需要用到组态软件。组态软件确实是好东西,但是我们小家小业的,还是省着点好。
此时VB就派上用场,用VB在电脑上编制一套PLC通讯程序,如果我们的脑力劳动暂不计成本的话,一台电脑几千元基本就搞定了上位机与PLC的通讯。
怎么才能学会用VB编制PLC的上位机通讯程序呢?
1、买一个VB6.0中文企业版的软件(VC,DELPHI,VB三合一的光盘也不过二十元左右)
2、买本VB入门基础书,边看边练习做些小程序(别不舍得花钱,网上虽然可以下载,但是看起来并不方便,影响您的学习进度)
3、VB看几天就可以了,VB与PLC通讯只需要应用几个简单的VB控件而已。如文本框用来读、写PLC寄存器的值,按钮用来置、复位PLC位元件,文字标签用来显示PLC位元件的ON、OFF状态,三个控件应用就可以学会编制VB与PLC通讯程序了。您先学会了VB与PLC通讯方法,后期您再努力学好VB。(真正用到工程上,VB要学很长时间呢)
4、查找一些有关通讯方面的书籍翻翻,了解一下通讯格式是怎么回事。比如说波特率,停止位,开始位,校验位,数据位。看不懂没关系,先记住这些概念,在学习编制VB与PLC通讯程序的过程中您会理解这些(实践是好的老师)
5、找一些别人做好的VB与PLC通讯程序看,别幻想您自己做出来,除非您基础雄厚,时间也雄厚(时间是金钱,参考是捷径。)
6、找一个朋友帮忙指导,还是不要幻想自己看懂找到的VB与PLC通讯程序,除非您基础雄厚,时间也雄厚(好学生也需要进学校学习,听课比自学学得好又快是真理。)
7、学懂了VB与PLC通讯的原理与程序编制方法后,千万别因满足而停止,动手去编制自己的VB与PLC通讯程序。在编制过程中才会发现新的问题,解决问题的过程才是真正进步的过程(学而不思则罔,思而不学则贻。手脑并用是老孔这句话的含义吗?)
8、个人认为初学编制VB与PLC通讯程序还是应用MSCOMM32串行通讯控件比较好,虽然现在有很多专用通讯控件,在VB上应用起来很方便,但是用得再熟悉也是熟练工而已(MSCOMM32串行通讯控件是需要您自己动手编制通讯程序的,根据相关的协议一条条编制,协议理解不透,就可能通讯不畅。)
9、也许您现在或是以后都不会用VB编制与PLC的通讯程序,感觉学习编制VB与PLC通讯程序没什么用处。以我的体会是,学习V编制VB与PLC通讯程序目的是真正理解和掌握通讯的原理(您以后再听到那些can总线、modbus通讯、PROFIBUS总线不会再头痛)。
10、学习编制VB与PLC通讯程序,在编制过程中还可以深入理解PLC的程序扫描周期(经常有人问,在上位机对PLC某个位元件进行置/复位操作,为什么有时候可以,有的时候不可以?)。
写出以上十点的目的:广告是也!您如果想学编制VB与PLC的通讯程序,又不想花太多的学费,用太多的时间。那么请来找我,俺本事不大,但是让您短期速成还是没问题。(此速成非拔苗助长也!没有PLC应用经验的学生五六天也学会了,何况您!)
网上有很多开源的VB与PLC通讯程序,但是大多源码都是侧重讲解通讯原理,并没有注重讲解如何才能编制出可靠、通讯速度快的程序!按照目前开源的PLC与VB通讯程序的方法,编制单纯的置/复位、写寄存器通讯或是单纯的读寄存器值(位元件状态)是没问题的,但如果编制大量点数的通讯程序(实时读取许多寄存器值,间或写、置/复位元件),则会出现通讯速度慢,偶尔通讯不正常(读取的寄存器值乱变!存储到数据库的值突然大了许多或是小了许多,起不到数据分析作用。)等现象. (初学时深受其苦,用其方法编制程序经常受到使用者的投诉,现在投诉没有了!)