PLC模块代理商-西门子代理商-厂家质保
  • PLC模块代理商-西门子代理商-厂家质保
  • PLC模块代理商-西门子代理商-厂家质保
  • PLC模块代理商-西门子代理商-厂家质保

产品描述

产品规格模块式包装说明全新

PLC模块代理商-西门子代理商-厂家质保


一、背景
惠州(HZ)21是4-桩结构的海上石油钻探平台,位于中国南海的115米水下。惠州 21具有浮动式储油装置(FPSO),从位于中国香港东南部160公里处的惠州油田16/ 08区中的六个水下油田之一开采。自从1984年口油井完成之后,HZ 21从1990年开始生产作业,使其成为个开采惠州油田的作业平台。
HZ 21石油钻探平台归CACT经营集团所有。CACT经营集团是一个勘探和开发中国珠江三角洲炭氢化合物储存资源的性公司联盟。CACT经营集团的成员*公司有中国海洋石油有限公司、阿吉普中国公司、美国伽夫隆石油公司以及德士古中国公司。CACT经营集团是中国大的海洋石油开采合作伙伴,日产量可达100,0000桶。
二、挑战
作为惠州油田中早的开采平台,HZ 21至今仍未在后来建设的平台上采用控制技术。尤其是紧急关闭系统(ESD),紧急关闭系统可以在发生设备危害或者人身伤害的情况下对所有的机械设备或者 系统采取保护措施。石油生产系统常常为异常关闭所困扰,系统每次关闭都会导致严重的石油生产中断。
ESD初的控制结构体系包括一个连接到两个三方的网络以及下来的可编程逻辑控制(PLC),用作“工作”和“备用”功能。然而,系统的设置却为每次换控制器时所发生的问题所困扰。
大约每月一次,在换控制器时总会发生无法解释的通信错误,并且会导致平台上的设备异常关闭。每次在系统关闭而工作查找问题原因和试图进行纠正时,都要耽误一到两个小时的时间。糟糕的是,每次并不能明确找出问题的原因,因此根本无法预测系统异常关闭发生的频率。
由于石油市场对不断变化的经济环境其敏感,因而,如果要达到生产状况,尽可能降低运营成本和停工时间。目前HZ 21 所面临的挑战就是安装一套并且易于操作和维护的ESD控制系统,以停工时间。
三、解决方案
在2001年2月,CACT对罗克韦尔自动化ESD控制系统项目进行了决标。中标者的选择是基于公司在其他CACT石油开采平台中使用Allen-Bradley PLC-5的工作经验以及其公认的性。解决方案就是开发出一套集成的控制系统,系统具有冗余的处理器和媒体网络,采用PLC-5和三方报警 设备。
罗克韦尔自动化制造解决方案集团提供了整体系统设计方案和正在进行的工程支持。在方案设计的早 期,已经花了大量的时间来确保解决方案能够符合开采平台的要求并且减少设备的停工时间。系统集成(包括PLC重新编码)由石油工业设备供应商 Petrotec来完成。所有的硬件都安装在现有的控制面板上,以节省空间。
系统升级项目于2001年5月开始。ESD控制系统所选择的配置是基于控制网的“热备份”,安装了一 对PLC-5/40C处理器。安装热备份元件就意味着两个PLC应该具有相同的配置,一个用作工作的主控制器,另一个作为处于“模式”的副控制器。两 个处理器都连接到相同的输出端,并且读取相同的现场输入信息。如果主PLC控制出现任何问题,副PLC就会立即接替过来,而且生产作业不会中断。
应用工程师Alex Ng 在罗克韦尔自动化中国香港公司说:“我们提出的控制解决方案可以确保系统不会因为任何故障而中断。这样就可以在PLC发生故障的情况下保证石油开采平台持续运 行,而不需要停止生产作业。”为了实现人机界面功能,专门安装了两台罗克韦尔软件RSView32 SA 工作站,以监控热备份PLC的工作状态。此外,在开采平台21和附近的开采平台26之间还安装了控制网“同轴电缆到光纤”中继器模块。这样,将来就可以在开采平台26上实现多项功能,如远程数据监测、报警控制以及数据记录等等。
四、成果
HZ 21已经在2002年4月成功安装了ESD系统。尽管新的系统仅仅运行了很短一段时间,在升级ESD控制器时尚未发生过故障。重要的是,系统没有发生过 异常关闭,因而没有造成由于停工而引起的惨重损失。维护工作的减少已经使每月的生产时间增加了两个小时。终,HZ 21 ESD控制系统升级每月可以为操作员节约US$80K。
实践表明,在性提高的同时,系统还具有易于维护的特性。而且,由于系统备件与油田中使用罗克韦尔自动化控制设备的其他CACT开采平台具有通用性,ESD系统将具有加长远的益处。


工作原理:利用Haiwell PLC的易用的通信功能:标准配置2个通信口,1个RS232通信口,1个RS485通信口。用Haiwell PLC的RS485口与变频器通信,控制变频器运行、停止、速度并读取变频器运行状态及输出频率。再通过Haiwell PLC的RS232口与文本显示器通信,对焊接工艺参数进行设定。
系统优点:
1、   利用Haiwell PLC的自由通信协议指令COMM实现与富士变频器的运行控制与状态读取。所有Haiwell PLC的通信功能均可用一条指令实现,对特殊位、特殊寄存器编程,也管理多条通信指令的通信时序,同一个条件下可同时写多条通信指令。
2、   Haiwell PLC标准配置1个RS232口和1个RS485口,且任何一个通信口均可作为主站也可作为从站。任何一个通信口均可作为编程端口,也可作为与3方设备通信的端口。在本应用中,用RS232口与文本显示器通信,用RS485口与富士变频器通信。
3、   利用通信实现变频器的速度调节及运行控制,大大增强系统的抗干扰能力,大大提高系统在强干扰的焊接场合的性与稳定性。
4、   利用通信实现变频器的通信,节省了PLC DA模块,大大节约系统成本,并轻易实现应对不同产品需要不同工艺控制参数(焊接速度、焊接时间)的要求。
 
主要硬件配置:
1、   可编程控制器:HW-S32ZS220R             1台
2、   变频器:      FVR0.4E11S-7JE(Fuji)  1台
3、   文本显示器:  OP320A-S(Xinjie)       1台
三、程序设计亮点:
1、利用COMM指令非常容易的实现与富士变频器通信。用COMM指令写通信协议时,可选择按寄存器低字节(低8位)发送的方式,而接收数据仍按16位接收并自动存放至指令的地址,使用户编程大大简化。;
2、利用通信功能控制变频器,大大提高速度控制的性,并简化了许多原来D/A转换时的数字量——工程量——显示值间转换程序。
四、总结:
利用海为可编程控制器(Haiwell PLC)便利的通信功能及便利的指令集,满足了焊接自动化设备厂商对设备广泛适应性要求。可广泛应用于焊接自动化行业设备配套场合。


三菱FX系列PLC位置控制指令DRVA应用
   位置控制指令DRVA是很实用的一个脉冲指令,应用时关键是理解D8140或是D8142寄存器的用法。
   绝晕恢每刂浦噶顿RVA的格式:
     DRVA D0 D2 Y0 Y2
     *D0:目标位置,可以是数值或是寄存器,也就是PLC要输出的脉冲数。
     *D2:输出脉冲频率,可以是数值或是寄存器。也就是PLC输出的脉冲频率。
     *Y0:脉冲输出,只能是Y0或Y1。
     *Y2:方向控制输出,正向是ON或是OFF,反向是OFF或是ON(根据所控制执行元件设置来确定)
     相关寄存器和位元件:
     32位寄存器D8140:脉冲由Y0输出时,记录当前的位置。
     32位寄存器D8142:脉冲由Y1输出时,记录当前的位置。
     32位寄存器D8146:设定脉冲频率,因为此指令的加减速时间是计算由基底频率升到频率的时间,所以改变D8146的值可以准确的设定执行元件的加减速时间。
     D8145:基底频率。FX的脉冲输出频率并不能从0开始,由一个计算公式可参考。当您把D2的值设定小于计算的基底频率时,小输出频率也是按照基底频率输出。
     D8148:加减速时间设定。
     M8147 : Y000正在输出脉冲时,M8147闭合
     M8148 : Y001正在输出脉冲时,M8148闭合
     原点是针对D8140(D8142)所说,DRVA在开始执行前D8140(D8142)的值就是当前的原点。
     如DRVA执行前D8140(D8142)的值为0,那么图二的右行输出脉冲数则为3000,
     如DRVA执行前D8140(D8142)的值为1000,那么上图的右行输出脉冲数则为2000,
     如DRVA执行前D8140(D8142)的值为3000,那么上图的右行输出脉冲数则为0。
     也就是说位置控制指令DRVA的输出脉冲数是根据D8140(D8142)的值来决定。的方法就是先找到机械原点,然后把D8140(D8142)的值用MOV指令清零,让程序原点与机械原点一致,如此便于计算所发脉冲数。
   (设D8140(D8142)的值在原点时为0)
     右行到目标位置:DRVA K3000 D2 Y0 Y2
     左行回到原点:DRVA K0 D2 Y0 Y2


如果把金字塔结构与NBS模型或ISO模型比较一下,就会发现,PLC及其网络发展到现在,已经能够实现NBS模型/ISO模型要求的大部分功能,至少可以实现4级以下的功能。
PLC要提供金字塔功能或者说要实现NBC/ISO模型要求的功能,采用单层子网显然是不行的。因为不同层次实现的功能不同,所承担的任务的性质不同,导致他们对通信的要求也就不一样。在上层所传送的主要是些生产管理信息,通信报文长,每次传输的信息量大,要求的通信的范围也比较广,但对通信实时性的要求却不高。而在底层传送的主要是过程数据及控制命令,报文不长,每次通信量不大,通信距离也比较近,但对实时性及性的要求比较高。中间层对通信的要求正好居于两者之间。
由于各层对通信的要求相差甚远,如果采用单级子网,只配置一种通信协议,势必顾此失彼,无法满足所有各层通信的要求。只有采用多级通信子网,构成复合型拓扑结构,在不同级别的子网中配置不同的通信协议,才能满足各层对通信的不同要求。
PLC网络的分级与生产金字塔的分层不是一一对应的关系,相邻几层的功能,若对通信要求相近,则可合并,有一级子网去实现。采用多级复合结构不仅使通信具有适应性,而且具有良好的可扩展性,用户可以根据投资情况及生产的发展,从单台PLC到网络,从底层向高层逐步扩展。下面具几个有代表性公司的PLC网络。
一、A-B公司的PLC网络
A-B公司是大的PLC制造商,占据全美市场份额45%。图1表示了A-B公司的PLC网络,采用的是3级总线复合型拓扑结构。底一级为远程I/O系统,负责收集现场信息,驱动执行器,在远程I/O系统中配置周期I/O通信机制。中间一级为高速数据通道DH+(或DH,DHⅡ),负责过程监控,在高速数据通道中配置令牌总线通信协议。一级可选用Ethernet(以太网)或者MAP网,这一级负责生产管理。在Ethernet网中配置以太网协议,在MAP网中配置MAP规约。
 
二、SIEMENS公司的PLC网络
西门子公司是欧洲大的PLC制造商,在大中型PLC市场上,西门子与A-B公司的产品齐全。图2表示了西门子公司的S7系列PLC网络,采用3级总线复合型结构,底一级为远程I/O链路,负责与现场设备通信,在远程I/O链路中配置周期I/O 通信机制。中间一级为Profibus现场总线或主从式多点链路。前者是一种新型现场总线,可承担现场、控制、监控三级的通信,采用令牌方式与主从轮询相结合的存取控制方式;后者是一种主从式总线,采用主从轮询使通信。一层为工业以太网,负责传送生产管理信息。在工业以太网通信协议的下层中配置以802.3为的以太网协议,在上层向用户提供TF接口,实现AP协议与MMS协议。
 
三、MODICON公司的PLC网络
20世纪90年代初德国奔驰集团属下的AEG公司全资收购了MODICON公司,现在称之为AEG-MODICON。MODICON的PLC产品在美国市场上所占份额居二位。图3表示了AEG-MODICON的PLC网络,采用了3级总线复合型的拓扑结构。其一级为Ethernet或MAP网,分别配置Ethernet(DECent)协议及MAP规约,负责传输生产管理信息。下一级为远程I/O链路,采用周期I/O方式通信,负责PLC与现场设备的通信。中间一级为Modbus+或者Modbus网,配置Modbus协议,采用主从方式通信。
 
四、松下电工公司的PLC网络
日本松下电工公司推出的FP系列PLC是世界PLC市场上的一匹黑马,大有后来居上之势.图4表示了松下电工公司的PLC网络,这是一种4级子网的复合型网络,即可采用总线/总线/总线/总线4级复合,也可采用总线/总线/环/总线4级复合。
松下电工的PLC网络一级为以太网,配置以太网协议,可与商用以太网互联,负责传输生产管理信息。下一级为远程I/O链路,采用周期I/O通信方式与现场设备交换信息。中间两级负责过程监控,无论环形还是总线型,其应用层均采用MEWTOCOL协议。
 
五、GE-FANUC公司的PLC网络
近美国的通用电气公司(GE)与日本的数控FANUC公司合并成立了GE-FANUC公司,其PLC产品在美国市场所占份额居三位。GE-FANUC的PLC网络产品是在标准化方面进展快的产品,图5表示了GE-FANUC的PLC网络。
 
由图5可见,GE-FANUC的公司PLC网络有两种结构。一种是右侧的4级总线复合型拓扑结构,一种是左侧的2级总线复合型拓扑结构。
GE-FANUC的公司PLC网络一级子网为GEnet MAP宽带局域网,采用全MAP3。0协议,通信速度高达10Mb/s,用于传输生产管理信息。
Genius网是GE 2级结构的底层子网,他相当于系统90-70可编程控制器的远程I/O链路,负责与现场单元交换数据,采用GE-FANUC协议。
GE 4级复合结构的3级子网为GEnet MMS Ethernet网或者GEnet MAP载带网,前者采用Ethernet协议,后者采用MAP3.0协议。2级为CCM网,采用GE的CCM协议及RTU协议,按主从方式通信,1级子网为SNP望,这是一条多点链路,采用SNP协议,按主从方式工作。
从上述五家有代表性的公司的PLC网络结构分析中可以清楚地看到,PLC网络采用复合型拓扑结构,大多数由3级总线或4级总线复合而成

20220222173907301904.jpg202202221739072455394.jpg202202221739073128824.jpg


一、简述
多年来,可编程控制器(以下简称PLC)从其产生到现在,实现了接线逻辑到存储逻辑的飞跃;其功能从弱到强,实现了逻辑控制到数字控制的进步;其应用领域从小到大,实现了单体设备简单控制到胜任运动控制、过程控制及集散控制等各种任务的跨越。今天的PLC在处理模拟量、数字运算、人机接口和网络的各方面能力都已大幅提高,成为工业控制领域的主流控制设备,在各行各业发挥着越来越大的作用。
二、PLC的应用领域
目前,PLC在国内外已广泛应用于钢铁、石油、化工、电力、建材、机械制造、汽车、轻纺、交通运输、环保及文化等各个行业,使用情况主要分为如下几类:
1.开关量逻辑控制
取代传统的继电器电路,实现逻辑控制、顺序控制,既可用于单台设备的控制,也可用于多机及自动化流水线。如注塑机、印刷机、订书机械、组合机床、磨床、包装生产线、电镀流水线等。
2.工业过程控制
在工业生产过程当中,存在一些如温度、压力、流量、液位和速度等连续变化的量(即模拟量),PLC采用相应的A/D和D/A转换模块及各种各样的控制算法程序来处理模拟量,完成闭环控制。PID调节是一般闭环控制系统中用得较多的一种调节方法。过程控制在冶金、化工、热处理、锅炉控制等场合有非常广泛的应用。
3.运动控制
PLC可以用于圆周运动或直线运动的控制。一般使用的运动控制模块,如可驱动步进电机或伺服电机的单轴或多轴位置控制模块,广泛用于各种机械、机床、机器人、电梯等场合。
4.数据处理
PLC具有数学运算(含矩阵运算、函数运算、逻辑运算)、数据传送、数据转换、排序、查表、位操作等功能,可以完成数据的采集、分析及处理。数据处理一般用于如造纸、冶金、食品工业中的一些大型控制系统。
5.通信及联网
PLC通信含PLC间的通信及PLC与其它智能设备间的通信。随着工厂自动化网络的发展,现在的PLC都具有通信接口,通信非常方便。
三、PLC的应用特点
1.性高,抗干扰能力强
高性是电气控制设备的关键性能。PLC由于采用现代大规模集成电路技术,采用严格的生产工艺制造,内部电路采取了的抗干扰技术,具有很高的性。使用PLC构成控制系统,和同等规模的继电接触器系统相比,电气接线及开关接点已减少到数百甚至数千分之一,故障也就大大降低。此外,PLC带有硬件故障自我功能,出现故障时可及时发出警报信息。在应用软件中,应用者还可以编入外围器件的故障自诊断程序,使系统中除PLC以外的电路及设备也获得故障自诊断保护。这样,整个系统将高的性。
2.配套齐全,功能完善,适用性强
PLC发展到今天,已经形成了各种规模的系列化产品,可以用于各种规模的工业控制场合。除了逻辑处理功能以外,PLC大多具有完善的数据运算能力,可用于各种数字控制领域。多种多样的功能单元大量涌现,使PLC渗透到了位置控制、温度控制、CNC等各种工业控制中。加上PLC通信能力的增强及人机界面技术的发展,使用PLC组成各种控制系统变得非常容易。
3.易学易用,深受工程技术人员欢迎
PLC是面向工矿企业的工控设备。它接口容易,编程语言易于为工程技术人员接受。梯形图语言的图形符号与表达方式和继电器电路图相当接近,为不熟悉电子电路、不懂计算机原理和汇编语言的人从事工业控制打开了方便之门。
4.系统的设计,工作量小,维护方便,容易改造
PLC用存储逻辑代替接线逻辑,大大减少了控制设备外部的接线,使控制系统设计及建造的周期大为缩短,同时日常维护也变得容易起来,重要的是使同一设备经过改变程序而改变生产过程成为可能。这特别适合多品种、小批量的生产场合。
四、PLC应用中需要注意的问题
PLC是一种用于工业生产自动化控制的设备,一般不需要采取什么措施,就可以直接在工业环境中使用。然而,尽管有如上所述的性较高,抗干扰能力较强,但当生产环境过于恶劣,电磁干扰特别强烈,或安装使用不当,就可能造成程序错误或运算错误,从而产生误输入并引起误输出,这将会造成设备的失控和误动作,从而不能保证PLC的正常运行,要提高PLC控制系统性,一方面要求PLC生产厂家提高设备的抗干扰能力;另一方面,要求设计、安装和使用维护中引起高度重视,多方配合才能完善解决问题,有效地增强系统的抗干扰性能。因此在使用中应注意以下问题:
1.工作环境
(1)温度
PLC要求环境温度在0~55oC,安装时不能放在发热量大的元件下面,四周通风散热的空间应足够大。
(2)湿度
为了保证PLC的绝缘性能,空气的相对湿度应小于85%(无凝露)。
(3)震动
应使PLC远离强烈的震动源,防止振动频率为10~55Hz的频繁或连续振动。当使用环境不可避免震动时,采取减震措施,如采用减震胶等。
(4)空气
避免有腐蚀和易燃的气体,例如、等。对于空气中有较多粉尘或腐蚀性气体的环境,可将PLC安装在封闭性较好的控制室或控制柜中。
(5)电源
PLC对于电源线带来的干扰具有一定的抵制能力。在性要求很高或电源干扰特别严重的环境中,可以安装一台带屏蔽层的隔离变压器,以减少设备与地之间的干扰。一般PLC都有直流24V输出提供给输入端,当输入端使用外接直流电源时,应选用直流稳压电源。因为普通的整流滤波电源,由于纹波的影响,容易使PLC接收到错误信息。
2.控制系统中干扰及其来源
现场电磁干扰是PLC控制系统中常见也是易影响系统性的因素之一,所谓治标先治本,找出问题所在,才能提出解决问题的办法。因此知道现场干扰的。(1)干扰源及一般分类
影响PLC控制系统的干扰源,大都产生在电流或电压剧烈变化的部位,其原因是电流改变产生磁场,对设备产生电磁辐射;磁场改变产生电流,电磁高速产生电磁波。通常电磁干扰按干扰模式不同,分为共模干扰和差模干扰。共模干扰是信号对地的电位差,主要由电网串入、地电位差及空间电磁辐射在信号线上感应的共态(同方向)电压叠加所形成。共模电压通过不对称电路可转换成差模电压,直接影响测控信号,造成元器件损坏(这就是一些系统I/O模件损坏率较高的主要原因),这种共模干扰可为直流,亦可为交流。差模干扰是指作用于信号两间的干扰电压,主要由空间电磁场在信号间耦合感应及由不平衡电路转换共模干扰所形成的电压,这种干扰叠加在信号上,直接影响测量与控制精度。
(2)PLC系统中干扰的主要来源及途径
强电干扰
PLC系统的正常供电电源均由电网供电。由于电网覆盖范围广,它将受到所有空间电磁干扰而在线路上感应电压。尤其是电网内部的变化,开关操作浪涌、大型电力设备起停、交直流传动装置引起的谐波、电网短路暂态冲击等,都通过输电线路传到电源原边。
柜内干扰
控制柜内的高压电器,大的电感性负载,混乱的布线都容易对PLC造成一定程度的干扰。
来自信号线引入的干扰
与PLC控制系统连接的各类信号传输线,除了传输有效的各类信息之外,总会有外部干扰信号侵入。此干扰主要有两种途径:一是通过变送器供电电源或共用信号仪表的供电电源串入的电网干扰,这往往被忽视;二是信号线受空间电磁辐射感应的干扰,即信号线上的外部感应干扰,这是很严重的。由信号引入干扰会引起I/O信号工作异常和测量精度大大降低,严重时将引起元器件损伤。
来自接地系统混乱时的干扰
接地是提高电子设备电磁兼容性(EMC)的有效手段之一。正确的接地,既能抑制电磁干扰的影响,又能抑制设备向外发出干扰;而错误的接地,反而会引入严重的干扰信号,使PLC系统将无法正常工作。
来自PLC系统内部的干扰
主要由系统内部元器件及电路间的相互电磁辐射产生,如逻辑电路相互辐射及其对模拟电路的影响,模拟地与逻辑地的相互影响及元器件间的相互不匹配使用等。
变频器干扰
一是变频器启动及运行过程中产生谐波对电网产生传导干扰,引起电网电压畸变,影响电网的供电质量;二是变频器的输出会产生较强的电磁辐射干扰,影响周边设备的正常工作。
3.主要抗干扰措施
(1)电源的合理处理,抑制电网引入的干扰
对于电源引入的电网干扰可以安装一台带屏蔽层的变比为1:1的隔离变压器,以减少设备与地之间的干扰,还可以在电源输入端串接LC滤波电路。如图1所示

(2)安装与布线
● 动力线、控制线以及PLC的电源线和I/O线应分别配线,隔离变压器与PLC和I/O之间应采用双胶线连接。将PLC的IO线和大功率线分开走线,如在同槽内,分开捆扎交流线、直流线,若条件允许,分槽走线,这不仅能使其有尽可能大的空间距离,并能将干扰降到限度。
● PLC应远离强干扰源如电焊机、大功率硅整流装置和大型动力设备,不能与高压电器安装在同一个开关柜内。在柜内PLC应远离动力线(二者之间距离应大于200mm)。与PLC装在同一个柜子内的电感性负载,如功率较大的继电器、接触器的线圈,应并联RC消弧电路。
● PLC的输入与输出分开走线,开关量与模拟量也要分开敷设。模拟量信号的传送应采用屏蔽线,屏蔽层应一端或两端接地,接地电阻应小于屏蔽层电阻的1/10。
● 交流输出线和直流输出线不要用同一根电缆,输出线应尽量远离高压线和动力线,避免并行。
(3)I/O端的接线
输入接线
● 输入接线一般不要太长。但如果环境干扰较小,电压降不大时,输入接线可适当长些。
● 输入/输出线不能用同一根电缆,输入/输出线要分开。
● 尽可能采用常开触点形式连接到输入端,使编制的梯形图与继电器原理图一致,便于阅读。
输出连接
● 输出端接线分为立输出和公共输出。在不同组中,可采用不同类型和电压等级的输出电压。但在同一组中的输出只能用同一类型、同一电压等级的电源。
● 由于PLC的输出元件被封装在印制电路板上,并且连接至端子板,若将连接输出元件的负载短路,将烧毁印制电路板。
● 采用继电器输出时,所承受的电感性负载的大小,会影响到继电器的使用寿命,因此,使用电感性负载时应合理选择,或加隔离继电器。
● PLC的输出负载可能产生干扰,因此要采取措施加以控制,如直流输出的续流管保护,交流输出的阻容吸收电路,晶体管及双向晶闸管输出的旁路电阻保护。
(4)正确选择接地点,完善接地系统
良好的接地是保证PLC工作的重要条件,可以避免偶然发生的电压冲击危害。接地的目的通常有两个,其一为了,其二是为了抑制干扰。完善的接地系统是PLC控制系统抗电磁干扰的重要措施之一。
PLC控制系统的地线包括系统地、屏蔽地、交流地和保护地等。接地系统混乱对PLC系统的干扰主要是各个接地点电位分布不均,不同接地点间存在地电位差,引起地环路电流,影响系统正常工作。例如电缆屏蔽层一点接地,如果电缆屏蔽层两端A、B都接地,就存在地电位差,有电流流过屏蔽层,当发生异常状态如雷击时,地线电流将大。
此外,屏蔽层、接地线和大地有可能构成闭合环路,在变化磁场的作用下,屏蔽层内又会出现感应电流,通过屏蔽层与芯线之间的耦合,干扰信号回路。若系统地与其它接地处理混乱,所产生的地环流就可能在地线上产生不等电位分布,影响PLC内逻辑电路和模拟电路的正常工作。PLC工作的逻辑电压干扰容限较低,逻辑地电位的分布干扰容易影响PLC的逻辑运算和数据存贮,造成数据混乱、程序跑飞或死机。模拟地电位的分布将导致测量精度下降,引起对信号测控的严重失真和误动作。
● 地或电源接地
将电源线接地端和柜体连线接地为接地。如电源漏电或柜体带电,可从接地导入地下,不会对人造成伤害。

● 系统接地
PLC控制器为了与所控的各个设备同电位而接地,叫系统接地。接地电阻值不得大于4Ω,一般需将PLC设备系统地和控制柜内开关电源负端接在一起,作为控制系统地。
● 信号与屏蔽接地
一般要求信号线要有的参考地,屏蔽电缆遇到有可能产生传导干扰的场合,也要在就地或者控制室接地,防止形成“地环路”。信号源接地时,屏蔽层应在信号侧接地;不接地时,应在PLC侧接地;信号线中间有接头时,屏蔽层应牢固连接并进行绝缘处理,一定要避免多点接地;多个测点信号的屏蔽双绞线与多芯对绞总屏蔽电缆连接时,各屏蔽层应相互连接好,并经绝缘处理,选择适当的接地处单点接点。
(5)对变频器干扰的抑制
变频器的干扰处理一般有下面几种方式:
加隔离变压器,主要是针对来自电源的传导干扰,可以将绝大部分的传导干扰阻隔在隔离变压器之前。
使用滤波器,滤波器具有较强的抗干扰能力,还具有防止将设备本身的干扰传导给电源,有些还兼有尖峰电压吸收功能。
使用输出电抗器,在变频器到电动机之间增加交流电抗器主要是减少变频器输出在能量传输过程中线路产生电磁辐射,影响其它设备正常工作。
五、结束语
PLC控制系统中的干扰是一个十分复杂的问题,因此在抗干扰设计中应综合考虑各方面的因素,合理有效地抑制抗干扰,才能够使PLC控制系统正常工作。随着PLC应用领域的不断拓宽,如何的使用PLC也成为其发展的重要因素。21世纪,PLC会有大的发展,产品的品种会丰富、规格齐全,通过的人机界面、完备的通信设备会好地适应各种工业控制场合的需求,PLC作为自动化控制网络和通用网络的重要组成部分,将在工业控制领域发挥越来越大的作用。


引言

可编程序控制器(PLC)都有一个编程口。以日本三菱公司生产的PLC为例(包括FX系列和A系列),其编程口为RS-422格式,根据PLC型号不同又分为8针座编程口和25针座编程口。对于后者,可直接将SC—08编程电缆将PLC的编程口和微型计算机的RS—232口连接起来;对于后者,则还需要一根转换电缆将PLC 的8针座编程口和25针编程电缆相连。无论何种情况,一旦将PLC用户程序由微型计算机编程环境传到PLC 用户程序区,其编程口大多就没有被再利用。其实,这是一种浪费。也就是说,可利用此编程口实现微型计算机和PLC 的数据通讯,将PLC的工作状态纳入微型计算机管理之下。
2 编程口操作命令类型与通讯端口初始化

串行通讯是计算机与其它机器之间进行通讯的一种常用方法,在bbbbbbs操作系统中提供了实现各种串行通讯的API函数。通过SC—08编程电缆或FX232AW模块,可将微型计算机的串行通讯口RS—232和PLC 的编程口连接起来,这样微型计算机就可对PLC的RAM区数据进行读、写操作。由PLC本身所具有的特性,可对PLC进行以下四种类型的操作:
(1)位元件或字元件状态读操作(CMD0);
(2)位元件或字元件状态写操作(CMD1);
(3)位元件强制ON操作(CMD7);
(4)位元件强制OFF操作(CMD8)。
另外,在进行上述四类操作以前,要对端口进行初始化操作,即设定通讯协议(包括设置通讯波特率、数据位数、数据停止位及奇偶校验)。在bbbbbbs的SDK中定义了一个结构DCB,该结构详细地说明了如何对通讯端口进行控制,所以通讯端口的初始化也是围绕着对这个结构的正确设置为进行的。用VC++语言实现端口初始化如下:
BOOL CSerial::Open(int nPort)
{
//nPort 为微型计算机串行通讯口端口号。nport=1为端口1;nPort=2为端口2。
char szPort\\[15\\];
DCB dob;
m_hIDComDev=CreateFile(szPort, GENERIC_READ│GENERIC_WRITE,O,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL│FILE_FLAG_OVERLAPPED,NULL);
dcb.DCB1ength=sizeof(DCB);
GetCommState(m_hIDComDev,&dcb);//通讯资源当前设置
dcb.BaudRate=9600;//设定波特率为9600
dcb.ByteSize=7;//7数据位
dcb.Parity=2;//偶校验
dcb.StopBits=0;//设定1个停止位
if(SetCommState(m_hIDComDev,&dcb)return(TRUE);
else return(FALSE);//设置端口,若设置成功则返回TRUE,否则返回FALSE

需要说明的是CSerial是一个用于串行通讯的类,它包含了进行串行通讯的所需的函数。除上述端口初始化成员函数Open外,还包括另两个重要成员函数:一个是endData,把数据从一个缓冲区发送到串行端口。另一个是ReadData,从端口的接收缓冲区中读入数据。
其次,在每进行一次上述四类操作中的一种操作以前,还要进行握手联络。对PLC发请求讯号ENQ(代码为OX05),然后读PLC 的响应讯号。如果读到的响应讯号为ACK(代码为OX06),则表示PLC已准备就绪,等待接收通讯数据。握手联络VC++语言示PLC已准备就绪,等待接收通讯数据。握手联络VC++语言实现为:
BOOL CNTJD1g::ReadFromPLC(char *Read_char char *Read_address,int Read_bytes)
{
CSerial Serial;//用于串行通讯的类
char read_BUFFER;
if(Serial.Open(2)//初始化串行口通讯口COM2
{ Serial.SendData(&ENQ_request,1);//发送联络讯号
Sleep(1000);//等待1秒钟
Serial.ReadData(&read_BUFFER,1);//读取PLC响应讯号
if(read_BUFFER==ACK)
{ 如果PLC响应讯号等于ACK,则进行上述四种操作:}}
Serial.Close()://操作完毕后,关闭通讯口
}

3 编程口命令操作

(1)位元件或字元件状态读操作
操作对象元件:PLC内部的X、Y、M、S、T、C、D元件;命令格式:
说明:①为读命令起始标志STX,代码为OX02;
②为位元件或字元件状态读命令CMDO,命令代码为OX30;
③为读位元件或字元件的4位起始地址,高位先发,低位后发,且是以ASCII码的形式发送;
④为一次读取位元件或字元件的个数,多一次可读取OXff个字节的元件,以ASCII码的形式发送;
⑤为停止位标志ETX,代码为OX03;
⑥为2位和校验,和累计为②、③、④项代码,取其和两位转化成ASCII码,高位先发,低位后发。
在发送完上述命令格式代码后,就可直接读取PLC响应的信息。响应信息格式如下
VC++语言实现:
BOOL CNTJDlg::ReadFromPLC(char *Read_char char
*Read_address, int Read_bytes)
{
char senddatasum_CHECK\\[2\\];char readdatasum_CHECK\\[2\\]; char total_DATABYTES\\[2\\];
char readdatasum_check\\[2\\];int readdata_sum;
int datasum_check=0;  int i;
Serial.SendData(&STX_start,1);/向PLC发送“开始”标志代码
Serial.SendData(&CMDO_read,1);//发送“读”命令代码datasum_check+=CMDO_read;
for(i=0;i<4;i++){Serial.SendData(&Read_address\\[i\\],1);//发送起始元件地址的ASCII代码datasum_check+=Read_address\\[i\\];}
Change to ASCII(total DATABYTES,Read_bytes);//将字节数转化成ASCII代码
for (i=0;i<2;i++){Serial.SendData(&total_DATABYTES\\[i\\],1);//发送元件字节数的ASCII代码)datasum_check+total_DATABYTES\\[i\\];}
Serial.SendData(&ETX_end,1);//发送“结束”标志代码senddatasum_CHECK+ETX_end;
Change_to_ASCII(senddatasum_CHECK,senddatasum_CHECK);//将“和”转化成ASCII码
for (i=0;i<2;i++) Serial.SendData(&senddatasum_CHECK\\[i\\],1);
Sleep(1000);//等待PLC响应
Serial.ReadData(&read_BUFFER,1);
if(read_BUFFER==STX_start){
readdata_sum=0;
for(i=0;i<2*Read_bytes;i++){Serial.ReadData(&Read_char\\[i\\],1);//读Read_bytes个字节readdata_sum+Read_char\\[i\\];}
Serial.ReadData(&read_BUFFER,1);
if(read_BUFFER==ETX_end){Serial.ReadData(readdatasum_CHECK,2);//读入的“和”的低2位ASCII码Readdata_sum+=ETX_end;}
Change_to_ASCII(readdatasum_check,readdata_sum);//将计算得到的“和”转化成ASCII码
if(*readdatasum_CHECK==*readdatasum_check)//“和”校验
{ AfxMessageBox(“数据读出成功!”)return TRUE;}
else { AfxMessageBox(“校验错误”)return FALSE.}
}
(2)位元件或字元件状态写操作
操作对象元件:同3(1);命令格式:

说明:①为写命令起始标志STX,代码为OX02;
②为位元件或字元件状态写命令CMD1,命令代码为OX31;
③为写位元件或字元件的4位起始地址,高位先发,低位后发,且是以ASCII码的形式发送;
④为一次写入位元件或字元件的个数,以ASCII码的形式发送;
⑤为待写到PLC RAM区的数据DATA,以ASCII码形式发送;
⑥为停止位标志ETX,代码为OX03;
⑦为2位和校验,和累计为②、③、④项代码,取其和两位转化成ASCII码,高位先发,低位后发。
VC++语言实现:
BOOL CNTJDlg::WritePLC(char *data_ADDRESS,char *Write_ASC,int bytesnumber)
{
char total_BYTES\\[2\\];char senddatasum_CHECK\\[2\\];
char read_BUFFER;char read_finishBUFFER;
int datasum_check=0; int i=0;
Serial.SendData(&STX_start,1);//向PLC发送“开始”标志代码
datasum_check=0;Serial.SendData(&CMD1_write,1);//发送“写”命令代码
datasum_check+CMD1_write;
for(i=0;i<4;i++) {Serial.SendData(&data_ADDRESS\\[i\\],1);//发送起始元件地址的ASCII码
datasum_check+=data_ADDRESS\\[i\\];
Change_to_ASCII(total_DATABYTES,bytesnumber);//将字节数转化成ASCII码
for(i=0;i<2;i++)
{
Serial.SendData(&total_BYTES\\,1);//发送元件字节数的ASCII代码
datasum_check+=total_BYTES\\[i\\];}
for {i=0;i  {
Serial.SendData(&Write_ASC\\[i\\],1);//发送要写入的数据的ASCII码
datasum_check+=Write_ASC\\[i\\];}
Serial.SendData(&ETX_end,1);//发送“结束”标志代码
datasum_check+=ETX_end;
Change_to_ASCII(senddatasum_CHECK,datasum_check);//将“和”转化成ASCII码
Serial.SendData(&senddatasum_CHECK,2);
Sleep(1000); Serial.ReadData(&read_finishBUFFER,1);
if (read_finishBUFFER==ACK_reply)
{AfxMessageBox(“数据写入 OK”)return TRUE;}
else {AfxMessageBox(“数据写入失败”)return FALSE。}
(3)位元件强制ON操作
操作对象:X、Y、M、S、T、C元件;
命令格式:

说明:①为强制OFF命令起始标志STX,代码为OX02;
②为强制OFF命令CMD8,命令代码为OX38H;
③为强制OFF位元件4位起始地址,高位先发,低位后发,以ASCII码形式发送;
④为停止位标志ETX,代码为OX03;
⑤为2位和校验,和累计为②、③、④项代码,取其和两位转化成ASCII码,高位先发,低位后发。
VC++语言实现:
void NTJDlg::ForceOffOperation (char *OFF_Address)
{
int i;
char Sum_Check\\[2\\];
char read_buffer;
int Sum=0;
Serial.SendData(&STX_start,1);//向PLC发送“开始”标志代码
Serial.SendData(&CMD8_ForceOFF,1);//发送“OFF”命令代码
Sum=CMD8_ForceOFF;
for (i=0;i<4;i++) {
Serial.SendData(&OFF_Address\\[i\\],1);//发送起始元件地址的ASCII码
Sum+=OFF_Address\\[i\\];}
Serial.SendData(&ETX_end,1);//发送“结束”标志代码
Sum+=ETX_end;
Change_to_ASCII(Sum_Check,Sum);//将“和”转化成ASCII码
Serial.SendData(&Sum_Check,2);
Skeeo(1000);
Serial.ReadData(&read_buffer,1);
if(read_fininhBUFFER==ACK_reply) AfxMessageBox(“OFF 操作 OK ”);
else AfxMessageBox(“OFF 操作失败”)。

注意:严格按照上述四种操作命令格式进行发送,在发送前,起始地址、数据、数据个数、校验和都按位转换成ASCII码。从PLC读到的数据亦是ASCII码形式,需要经过适当转换才能利用。另外,要注意强制命令地址与读写地址的顺序不是一样,且一次多只能传送64个字节数据。
4 结论

利用上述四种操作命令,就可对PLC的RAM区数据进行管理操作。将PLC的工作状态纳入微型计算机管理之下。在此基础上,用户可以应用VC很方便地设计自己的PLC人机接口界面,为监控与管理PLC的运行提供一种良好的方法。



http://zhangqueena.b2b168.com

产品推荐