浔之漫智控技术-西门子PLC代理商
西门子PLC模块 , 变频器 , 触摸屏 , 交换机
西门子模块6ES7222-1EF22-0XA0选型说明

西门子模块6ES7222-1EF22-0XA0选型说明

前言

  光缆护套机是通信光缆制造过程中的后工序的设备,它的作用是在成缆后的缆芯上加综合保护层,以保护缆芯不受外界机械、热、化学及水分的影响。设备的配置如图1所示,传动部分主要由缆芯放线架、钢(铝)带轧纹机、挤塑机、履带式牵引机、收线架等组成。在光缆的护套过程中,根据工艺的要求,整条生产线的速度必须保持稳定,各传动单元间的线速度比例必须协调。高精度地、可靠地保持这个比例系数是保证产品质量,生产正常运行的重要条件,任何原因破坏这种比例协调,就会影响产品的质量,比如光缆外径发生变化、生产过程中钢(铝)带断裂,甚至缆芯被拉断等。由于光缆价格昂贵,成本较高,一旦发生如上质量问题,对企业将造成巨大损失。

  因此,本文介绍了由西门子的S7-226 PLC与MM440变频器组成的电气控制系统,该系统自动化程度高、稳定性好、运行可靠。

2 系统构成

  在控制系统中,放线、轧纹、挤塑机、牵引机、收线和排线电机均采用交流变频电机,驱动器采用西门子的MM440系列变频器,该变频器是由微处理器控制,采用IGBT作为功率输出器件的西门子新一代变频器。具有很高的运行可靠性和功能的多样性。操作和生产工艺参数的显示采用西门子的TP-070触摸屏作为上位监控,可以实时、形象地显示现场信号,并可以实时地对现场控制点进行控制。全线控制采用西门子的S7-226 PLC,外加模拟量输入模块EM231。为了tigao设备的整体性能,采用S7-226 PLC的自由通讯口分别与上位机TP-070和变频器进行通讯。其中S7-226的端口0用于和MM440通讯(USS4),端口1用于和TP-070通讯。系统结构如图2所示。




3 系统原理

  由于该生产线无需频繁启动,而且工艺要求的变速范围也不大,所以达到稳速是该电气传动自动控制主要的目标,尤其是在系统的升降速过程中各传动单元之间的速度比例必须保持协调。在整条生产线中,生产的线速度是由牵引机的速度决定,因此在该系统的设计中我们以牵引的速度为参考,各传动单元的速度随牵引速度的变化而变化,并且各部分又能单独启动和停止。

  1 放线、轧纹和收线电机的速度控制

  在生产过程中,由于缆芯和钢(铝)带的盘具都是由满盘到空盘,收线盘是由空盘到满盘,而牵引的速度不会经常变化,所以放线、轧纹、收线电机的线速度(V=ω*D,式中V:线速度,ω:电机角速度,D:盘具直径)为了与牵引保持同步,随着生产的进程必须根据盘具直径的变化不断对电机的角速度进行微调。该微调信号主要是通过各自的张力舞蹈轮上的电位器来给定,具体是这样的,该电位器信号通过模拟量输入模块EM231送入S7-226 ,与反馈到PLC中的牵引速度信号(即同步信号)叠加,再通过USS4协议由S7-226加到各自的MM440变频器中,作为它们的速度给定信号,间接达到各自张力的恒定,从而保证与牵引同步。在这里需要注意的是,虽然生产线的速度并不是很快,但是由于线盘具有有较大的转动惯量,所以放线和收线电机的加速度不宜太大,因此它们速度的设定应采用PID运算。

  2 挤塑机的控制

  在光缆护套的开始阶段,为了使光缆的直径达到工艺要求,挤塑机的挤出量必须有一个微调,也就是除了牵引的同步信号外,还要有一个微调信号对挤塑电机加以控制,使挤出量达到规定的工艺要求。该信号可以通过TP-070进行设定并送入PLC,与牵引的同步信号进行叠加后再通过USS4协议送到其MM440变频器重,作为控制该电机的给定信号。另外,在生产开始前,挤塑机一般都要进行排料这一步工序,以检验从模口出来的料的塑化质量。因此还必须有一个独立的手动信号来加以对挤塑电机的控制,该信号也可以由TP-070来设定,后再通过USS4协议送入变频器。

  3 牵引速度控制

  牵引机的速度决定了整条生产线的线速度,它的控制非常简洁,其速度给定信号直接由TP-070设定后送入PLC,再通过USS4协议从PLC传输到MM440变频器上。在生产过程中,改变牵引的速度给定值不仅改变牵引机本身的速度,还使其它各传动单元的速度随着它的变化按一定的速度比例相应的发生变化,从而使整条生产线保持同步。

  线速度的检测主要采用旋转编码器,由S7-226的I0.1和I0.2端口(高速计数器0)送入PLC。单位时间内高速计数器的计数值即为该生产线的线速度,通过TP-070显示于屏幕上。

  4 排线控制

  由于排线的速度需要根据光缆的直径自动跟踪收线的速度,即V=K*ω*D,其中V:排线速度,K: 修正系数,ω:收线速度,D:光缆直径。所以排线电机驱动器的给定信号由以下两个因素决定:(1) 收线速度通过旋转编码器测定,其信号通过S7-226的I0.6和I0.7送入PLC(高速计数器4)。PLC编程采用定时中断,在单位时间内测量到的高速计数器的计数值即为收线速度。(2) 光缆的直径直接由TP-070设定并送入PLC。

  PLC将上述两个参数相乘后再乘以相应的修正系数,所得的值就是控制排线电机速度的给定信号,该信号通过USS4协议传输到其MM440变频器上。在这里要注意的是,由于排线电机在工作过程中需要经常换向,也就是说当收到换向信号时排线电机需要高速的降速和升速过程,因此该变频器需外接制动电阻。

  5 变频器设置

  变频器的设置主要是注意以下几个参数的设定,见列表1所示。


表 1


4 结束语

  本系统采用S7-226 PLC自由通讯口方式通讯,由于在MM440变频器上具有RS485接口,从而可以方便实现变频器给定的数字化控制,并且硬件上无需再添加通讯接口。由于MM440变频器具有区别一般通用变频器的自由功能模块和BICO技术,因此可以实现灵活的组态设计,完成工艺复杂的控制要求。变频器的矢量控制,tigao了系统的动态响应能力,克服了控制系统由于工艺参数的改变而引起的速度波动,从而保证了该控制系统的稳定性。

在棉纺织企业广泛使用喷气织机的情况下,空压站建设是一项重要的辅助工程。在天津纺织园区所有空压站配备的主要设备为离心式空气压缩机、冷冻式空气干燥器,通过储气罐、连接管道和阀门等组成压缩空气供气系统,并配套冷却系统、仪表空气系统,计算机检测系统,以实现空压站为生产一线保证不同压力、不同负荷的用气需求。在此前提下确保合格的供气品质,满足稳定的气源压力,自动调节供气liuliang等是空压站自动控制的基本任务。随着自动化水平的不断tigao,关于建设无人值守空压站的讨论,是一个发展过程中的必然的课题。


  空气系统自动控制的必要性

  应用在天纺投资控股有限公司棉纺一工厂的空压站,安装有4台70M3/min 4台,53M3/min 4台,48M3/min 2台,43M3/min 4台离心式空压机和1台42.5M3/min螺杆式空压机,配有相应处理量的冷冻式干燥器。空压机设备自身带有的CMC控制器,能够自动控制和保护主机的运转,自动提示工作信息,具有故障报警和保护停机功能,能自动根据用气量的大小加载或卸载,并配有LCD显示屏供现场观察各工艺参数和设备状态,具有RS422/485通讯接口,可以实现与现场控制室计算机监控系统的完整连接。



图:分级控制网络实施方案图


  目前,空压站的自控系统通过西门子S7-300可编程控制器,将部分空压机的实时运行数据通过RS422/485通讯接口采集进PLC控制系统,并将数据传送到现场控制室计算机上进行显示,以代替传统仪表。但是没有对空压机进行控制。

  空压机设备自带的CMC控制器已经能很好的控制单台空压机,但是不具备对空压系统的整体调控能力。在空压系统中,相对单台空压机的调整,空压系统的整体自动调控具有更重要的意义:

  ■ 单台空压机无法保证空压系统整体供气压力的稳定,而空压系统的整体自控可以有效保持系统内空气压力稳定。
  ■ 整体的负载平衡,减少排气放空,可以节约更多的能源,节省人力成本。
  ■ 可以实现无人操作,根据实际需要自动开机或加载空压机以保持系统压力。
  ■ 可以定时间断地记录空压机运行数据和报警,如跳车、喘振、通讯故障、压力等。

  在已有的PLC系统中,没有实现空压系统的整体调控功能。由于空压机自带的CMC控制器提供了RS422/485通讯接口,所有的数据采集和控制功能都通过通讯接口来实现,对比原有的控制系统,不需要增加硬件设备的投资,只需要改进和增加控制软件即可实现空压系统的整体控制。

  除空压机设备外,还可以将与空压机配套的冷冻式干燥器集成到RS422/485网络中来,实现空压供气设备的全面自控。

  空压站其他系统的自动控制

  除空压供气系统外,空压站的其他系统也需要进行自动控制,如水循环冷却系统等。这些系统的控制方法与空压供气系统不同,主要是采用传统控制模式。使用仪表采集需要的运行参数,进行数据处理和分析运算后,输出控制信号给执行机构就可以实现系统的自动控制。

  自动控制具有以下优点

  ■ 操作简单,可以实现无人值守;
  ■ 良好的实时调节,防止了人为因素滞后;
  ■ 具有高可靠性;
  ■ 减轻工作人员负担;
  ■ 节省人力成本。

  需要控制的参数和可能的控制方式

  空压站需要的控制需求;⑴高、低压供气压力控制(机组自动开停控制); ⑵系统自动排水控制; ⑶循环水液位控制和自动加药控制; ⑷所需压缩空气温度、循环水温度等参数控制等等。

  空压系统的整体自动调控一般可以使用以下2种方法之一来实现:

  ⑴采用PLC系统进行通讯和控制。

  ⑵可以采用英格索兰公司或自己编制的控制软件。

  种方法可靠性高,适用于工业控制系统。当监控计算机出现故障时,PLC还可以按照设定的程序进行自动控制。

  第二种方法是通过控制系统的计算机进行单独的分析运算进行控制,它具有较好的灵活性,但缺点是如果出现如计算机死机等故障时,有可能影响系统的正常运行。好在计算机的一般恢复往往不需要太多的时间。

  除空压供气系统自控外,空压站可与制冷站、热力站系统一起建立设备控制网络,实现集中控制,或与工厂控制中心联网,由控制中心的控制器实时远程监控,实现真正的无人值守。

  系统构成

  对于以上讨论,如果需要实现空压站的整体自控,又许多成熟PLC自控系统可以选用,现以ZH公司的PLC自控系统为例。

  该自控系统选用西门子S7-300系列可编程控制器,带有RS422/485网络接口,支持MODBUS等相关网络通讯协议。该系统可以采用专用工业通讯网络技术实施远程联网。空压站自控设备可根据生产实际情况和各设备的特点,以及可能存在的问题,综合各方面因素后确立分级控制网络的实施方案,如图1所示。

  ■ 硬件配置

  现场仪表,受控设备、执行器、带有串行通讯接口的设备(如空压机,冷干机等),PLC和监控计算机。

  ■ 软件功能

  选用专用的工业组态软件(如WINCC或iFIX)用来监视和操作整个生产过程,为控制系统提供通讯、显示及报表管理等功能,各设备控制器自成一子系统,其应用程序功能包括:信息采集,设备控制,故障报警,连锁保护,以及数据处理和通信传输。

  在系统实施过程中,还可引入故障检测和故障诊断的处理程序,能够tigao系统的智能化程度,有利于进一步改善自控系统的有效性和可靠性,通过优化调度策略,软件连锁保护等自动控制功能模式的应用,有望将自动化水平tisheng到更高层次,可以为确定空压机设备状态检修点提供依据,并由此获得更大的效益。

  结论

  总之通过自动化控制可以克服由于人为因素造成的调节滞后等不利因素,减少运行参数的波动,达到减少用工和节约能源的目的。对于tisheng天纺控股有限公司的整体技术水平是相当重要的。

0 引言

  随着工业企业自动化技术的发展,PLC (Programmable Logic Controller,又称可编程控器),以其可靠性、灵活性、优良的性能价格比、使用方便等特点在工业控制领域迅猛发,得到了越来越广泛的应用。

  石油焦是铝电解用碳素阳极生产的主要原料。石油焦转运系统,是把贮存在仓库中的石油焦,经过破碎筛分处理成满足煅烧需要的原料,输送到煅前料仓。由于该系统逻辑控制点多、自动化程度高、上下游设备间关联度大,所以选用PLC进行自动控制,并设立上位机进行全系统监控。本文着重讨论PLC在系统中控制功能的实现和上位机监控界面的开发。

  1 工艺介绍

  石油焦转运站系统主要由天车抓料系、破碎筛分系、tisheng系、分料输送系、收尘系组成。用来满足煅烧窑系统煅前日用料仓物料供给。主要抓料天车、调速皮带、破碎机、筛分机、输送皮带、斗式tisheng机、分料挡板等设备组成。其中破碎筛分系、tisheng系是两套系统,破碎筛分系统可以一备一用,也可以同时工作;tisheng系实现设备一备一用。工艺流程简图见下图1.

图1石油焦转运站工艺流程简图
图1石油焦转运站工艺流程简图





  2 控制系统设计及实现

  2.1 SLC500的特点

  SLC500模块化可编程控制器及输入输出模块由罗克韦尔自动化公司生产,产品目录号为1746和1747系列。该系列产品采用框架式结构,为在不同的工业现场使用提供了同样稳定可靠的平台。SLC500系统构成处理器、输入输出模块和相关外部设备。处理器功能强大、使用灵活,并有各种内置通讯方式和不同容量的内存供用户按需选择。根据用户的实际需要,输入输出模块可以非常方便的扩展。同时罗克韦尔自动化提供了便捷的内置通讯接口、种类丰富的第三方专用模块、简单方便的基于bbbbbbs平台的编程软件。因而SLC500成为当前市场上为流行的中小型PLC之一。


  2.2 硬件配置

  基于SLC的上述特点,本系统采用了美国罗克韦尔自动化公司的SLC505 PLC。系统所需的输入/输出配置是:开关量输入100点;开关量输出50点;模拟量输入5点;模拟量输出2点;在适当考虑余量的基础上,实际的硬件配置如下:

    ⑴ CPU选用1747-L551;

    ⑵ 8块开关量输入,共16×8=128点;4块开关量输出,共16×4=64点;1块模拟量输入,共8×1=8点;1块模拟量输出,共4×1=4点;

    ⑶ 两个机架,分别是10槽和7槽;

    ⑷ 交换机一台

    ⑸ 上位监控操作员站一个

    ⑹ 工程师站一个



  2.3 系统网络拓扑

  上位机通过RSLINX软件,建立与PLC的联系,可以通过RS232和以太网任意一种通讯方式通讯。本控制系统中,上位机监控操作员站通过以太网借助交换机与PLC进行通讯,设置工程师调试接口,同时交换机预留和其他系统进行数据交换和通讯的端口。网络拓扑图见下图2.

  监控软件RSview-SE安装在上位监控计算机,开发出工艺流程界面,通过以太网一方面把设备的状态点取上来,在流程界面上显示;另一方面把操作员发出的操作命令送到PLC,进而通过PLC的输出驱动相应的设备做出动作响应。


图2
图2 石油焦转运站系统网络拓扑图




  2.4 控制系统设计

  通过PLC程序完成石油焦转运自动控制系统,结合上位监控操作员站,在主控室实现对现场各个设备、工艺参数的监视、控制、操作、调整。 在程序设计中,考虑上、下游设备之间的关联性,设计了相关的连锁保护,下游设备不运行,上游设备无法启动;代表电机电流大小的4~20mA信号通过模拟量输入模块采集进PLC,送给监控界面显示,控制调速皮带速度的控制信号从监控软件写到PLC,再转换成4~20mA的标准模拟信号控制皮带调速。

  在这个系统中有以下几个需要注意、影响整个系统平稳运行的关键问题点:

  2.4.1 实现系统设备在线切换控制

  根据工艺设计要求,两套筛分系统、两个分料挡板和两台斗式tisheng机必须可以在线切换控制,即如果其中一套(台)设备出现故障,操作人员可以在不停料的情况下,立即把另外一套(台)设备加入流程控制,出故障的设备退出流程检修。

  设计的程序中考虑了在切换系统时,系统上、下游流程继续运行,新进入流程的和即将退出流程的设备有一个时间段是同时运行,具体的参数需要根据实际情况进行整定。这样能确保退出流程的设备里的物料能够完全排出,新进入流程的设备不会造成堵料。


  2.4.2 自动停车保护

  从安全角度考虑,在输送皮带两侧安装了拉绳开关。在斗式tisheng机的入口和出口处,安装了堵料报警开关。在设计程序时,编制了如下的保护。

  如果有人不小心摔到皮带上或者违犯规定穿越(跨、钻)正在运行的皮带碰到拉绳开关,系统会立即停车,并发出声光报警,提示操作人员前往检查、处理。处理完毕后,按压复位按钮清除故障,系统方可重新启动。

  一旦斗式tisheng机的入口或者出口出现堵料,堵料开关动作,系统会立即停车,并发出声光报警,提示操作人员前往检查、处理。处理完毕后,按压复位按钮清除故障,系统方可重新启动。

  在设计PLC程序时,把两个煅前日用料仓的高限报警信号引到PLC程序,一旦煅前日用料仓料位超过高限报警,操作人员没有发现,程序会自动保护性的停止系统。


  2.4.3 收尘器的脉冲振打控制

  石油焦转运系统中有三个收尘器,为了延长脉冲阀的使用寿命,在咨询厂家技术参数的基础上,设计了收尘器收尘布袋脉冲振打控制的PLC程序。根据生产厂家提供的数据,在设计的PLC程序中采用定时器和计数器,jingque地控制收尘器收尘布袋的脉冲振打时间和振打间隔时间,让脉冲阀按照固定的顺序依次振打。

   根据HomePlug AV标准,实际应用中,数据每秒的传输速度可过70-100MB。HomePlug AV标准还对QoS技术进行了规定,以便它能确保128位的AES编码的视频和音频能正常传输。而且其安全性远超过HomePlug 1.0所规定的56位的DES编码标准。HomePlug AV支持术能实现在同轴电缆、电话线、以及电力线上数据传输。

    HomePlug AV的物理层使用OFDM调制方式,去除美国无线电爱好者使用的频率后,在2-28MHz频段使用917个子载波;功率谱密度可编程,以满足不同国家的频率管制;每个子载波可以单独进行BPSK、QPSK、8QAM、16QAM、64QAM、256QAM和1024QAM调制;采用Turbo FEC错误校验;物理层线路速率达到200Mbps,净荷为150Mbps,接近电力线信道的通信容量;前同步码可被HomePlug 1.0设备检测,从而实现两者共存,但互操作是可选项。

    在10个家庭中进行的性能测试中,80%的插座达到55Mbps以上的带宽,95%的插座达到35Mbps以上的带宽,98%的插座达到27Mbps以上的带宽,典型的物理层速率为70-100Mbps。

    而且更关键的是HomePlug AV含有先进的噪声处理技术,能够消除噪声。在实际测试中,即使电线陈旧,也没发现HomePlug AV的性能下降。而且HomePlug AV的算法在双绞线电话接线和同轴电缆上的表现同样出色。在同轴电缆上采用HomePlug AV技术可以获得与MoCA技术大致相同的性能。在测试中,HomePlug联盟发现,HomePlug AV在80%的电线插座中净数据率至少为50-55Mbps。当利用同轴电缆进行测试时,HomePlug AV的数据率约为110Mbps。因为当初设计HomePlug AV的时候就是要保证它能在恶劣环境中正常运行,在同轴电缆上运行时性能更好。

    所以,我们可以肯定的是,要想为目前举步维艰的PLC电力上网解困,抛弃掉原有的HomePlug 1.0标准已成大势所趋,势不可挡。相比HomePlug 1.0,HomePlug AV不仅是带宽更宽,而且稳定性也大幅tisheng,未来通过大规模采用HomePlug AV将真正在家庭内部的电力线网络上构筑起高质量、多路媒体流、面向娱乐的网络,满足家庭数字多媒体传输与高速宽带上网的需要。

在现代工业控制系统中,PLC以其高可靠性、适应工业过程现场、强大的联网功能等特点,被广泛应用。可实现顺序控制、PID回路调节、高速数据采集分析、计算机上位管理,是实现机电一体化的重要手段和发展方向。但 PLC无法单独构成完整的控制系统,无法进行复杂的运算和显示各种实时控制图表和曲线,无良好的用户界面,不便于监控。将个人计算机(PC)与PLC结合起来使用,可以使二者优势互补,充分利用个人计算机强大的人机接口功能、丰富的应用软件和低廉的价格优势,组成高性能价格比的控制系统。

1. 系统构成

  系统设备组成,如图1所示。



图1 系统组成示意图


  推进系统中,PC机选用工控计算机。它是整个控制系统的核心,是上位机。其主要利用良好的图形用户界面,显示从PLC接收的开关量和控制手柄的位置,进行一些较复杂的数据运算,并且向PLC发出控制指令。

  PLC是该系统的下位机,负责现场高速数据采集(控制手柄的位置),实现逻辑、定时、计数、PID调节等功能,通过串行通讯口向PC机传送PLC工作状态及有关数据,同时从PC机接受指令,向蜂鸣器、指示灯、滑油泵、控制手柄的位置等发出命令,实现PC机对控制系统的管理,tigao了PLC的控制能力和控制范围,使整个系统成为集散控制系统。

2. 通讯协议

  计算机与PLC之间的通信是建立在以RS232标准为基础的异步双向通信上的,FX系列PLC有其特定的通信格式,整个通信系统采用上位机主动的通信方式,PLC内部不需要编写专门的通信程序,只要把数据存放在相应的数据寄存器中即可,每个数据寄存器都有相应的物理通信地址,通信时计算机直接对物理通信地址进行操作。通信过程中,传输字符和命令字以ASCⅡ码为准,常用的字符及其ASCⅡ码对应关系如表1所示。


表 1


  计算机与PLC进行通讯时,计算机与PLC之间是以帧为单位进行信息交换的,其中控制字符ENQ、ACK、NAK,可以构成单字符帧发送和接受,其余的信息帧发送和接受时都是由字符STX、命令字、数据、字符ETX以及和校验5部分组成,如图2所示。



图2信息帧的组成


  在图2中,CMD是通信命令字,其意义如表2所示。


表 2


  校验和在信息帧的尾部用来判断传输的正确与否,和校验码的计算方法是将命令码到ETX之间的所有字符的ASCⅡ码(十六进制数)相加,取所得和的低2位数,在后面的通信程序设计里面还会提到。进行差错检验的方法很多,常用的有奇偶校验码,水平垂直冗余校验LRC,目前广泛使用的是CRC校验码,它能查处99%以上18位或更长的突出错误,而在计算机与PLC点对点的短距离通讯时,出错的几率较小,因而采用校验和法,基本能满足要求。

3. 多线程技术及在VC++串口通信程序中的实现

  在bbbbbbs的一个进程内,包含一个或多个线程,每个线程共享所有的进程资源,包括打开的文件、信号标识及动态分配的内存等等。一个进程内的所有线程使用同一个32位地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行和什么时候执行线程。线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完任务后再执行。在多处理器的机器上,调度程序可以把多个线程放到不同的处理器上运行,这样可以使处理器的任务平衡,也tigao系统的运行效率。

  bbbbbbs内部的抢先调度程序在活动的线程之间分配CPU时间,bbbbbbs区分两种不同类型的线程,一种是用户界面线程(User Interface Thread),它包含消息循环或消息泵,用于处理接收到的消息;另一种是工作线程(Work Thread)它没有消息循环,用于执行后台任务、监视串口事件的线程即为工作线程。

  本系统采用MFC编程方法,MFC是把串口作为文件设备来处理的,它用CreateFile()打开串口,并获得一个串口句柄,用SetCommState() 进行端口配置,包括缓冲区设置,超时设置和数据格式等。然后调用函数ReadFile() 和WriteFile() 进行数据的读写,用WaitForSinglebbbbbb() 监视通信事件。在用ReadFile() 和WriteFile() 读写串口时,一般采用重叠方式。因为同步I/O方式是当程序执行完毕才返回,这样会阻塞其他线程,降低程序执行效率。而重叠方式能使调用的函数立即返回,I/O操作在后台进行,这样线程就可以处理其他事务,同时也实现了线程在同一串口句柄上实现读写操作。

  使用重叠I/O方式时,线程要创建OVERLAPPED结构供读写函数使用,该结构重要的成员是hEvent事件句柄。它将作为线程的同步对象使用,读写函数完成时hEvent处于有信号状态,表示可进行读写操作;读写函数未完成时,hEvent被置为无信号。

  利用bbbbbbs的多线程技术,在辅助线程中监视串口,有数据到达时依靠事件驱动,读入数据并向主线程报告;并且,依靠重叠读写操作,让串口读写操作在后台运行。

4. 上位计算机通信程序设计

  以读取PLC输出线圈Y0为首的2个字节的数据为例,编写一个通信程序。查PLC软元件地址表可知,输出线圈Y0的首地址为00A0H ,2个字节的数据即为Y0-Y7和Y10-Y17,根据返回的数据,就可以知道PLC此时的状态,以实现对PLC的监控。在每一次读操作之前,先要进行握手联络。对PLC发请求讯号ENQ,然后读PLC的响应讯号。如果读到的响应讯号为ACK,则表示PLC已准备就绪,等待接收通讯数据。

  BOOL CPlcComDlg::ReadFromPLC(char *Read_char, char *Read_address, int Read_bytes)

  { CSerial Serial;//用于串行通讯的类

  if(Serial.Open(1))//初始化串行通讯口COM1

  {Serial.SendData(&ENQ_request,1);//发送联络讯号

  Sleep(20);//等待20ms秒

  Serial.ReadData(&read_BUFFER,1);//读取PLC响应讯号

  if(read_BUFFER==ACK){

  … …

  Serial.SendData(&STX_start,1);//向PLC发送“开始”标志代码

  Serial.SendData(&CMD0_read,1);//发送“读”命令代码

  datasum_check+=CMD0_read;

  for(i=0;i<4;i++){

  Serial.SendData(&Read_address[i],1);//发送起始元件地址的ASCⅡ代码

  … …

  Serial.SendData(&ETX_end,1);//发送结束标志代码

  Change_to_ASCII(senddatasum_CHECK,datasum_check);//将“和”转化成ASCⅡ代码

  Sleep(40);//等待PLC的反应

  … …

  Serial.ReadData(&Read_char[i],1);//读Read_bytes个字节

  if(*readdatasum_CHECK==*readdatasum_check)//“和”效验

  { AfxMessageBox("数据读取成功!");

  return TRUE;}

  else{AfxMessageBox("校验错误!");

  return FALSE;}}

  }

5. 结束语

  本文作者创新点:笔者提出了一种基于多线程的PC机与PLC的通讯,该通讯程序采用VC比用VB具有更好的实时性;并采用MFC编程方法用重叠结构读写串口,使串口读写在后台进行。该通讯程序可靠、可移植性好。

  本通讯程序作为该系统的一个重要组成部分,经现场调试证明,既简单又实用,具有很好的实用价值。同时,该系统具有直观的人机界面和方便的操作方式,具有广阔的应用前景。


展开全文
优质商家推荐 拨打电话