1、上位机与 PLC 通讯的设计及应用摘 要:随着当前计算机技术的不断发展,在自动化控制过程中,上位机和下位机需要大量的数据进行传输,本文就上位机与 PLC 通讯的设计及应用进行阐述。 关键词:上位机 PLC 通讯 设计及应用 一、前言 随着当前计算机、网络通讯技术的不断发展,可编程控制器已经成为可提供过程控制和数据处理功能的控制器,但是,在数据处理上由于受到数据库的限制,不能满足用户的要求。因此,将 PLC 和上位计算机结合,完成对 PLC 的监控。 二、PLC 与上位机之间的通信协议原理 在上位机中必须依据与之互联的 PLC 的通信协议来编写通信程序,因此先论述 FX2 系列 PLC 的通信协
2、议。使用 FX2 系列 PLC 的编程口与上位机通信时,波特率和字符帧格式是固定的。其波特率为 9600bps,具体格式为 7 位数据位、偶校验、1 位停止位。所有的字符均为 ASCII 码。上位机与 PLC 采用呼叫应答的通信方式,即采用上位机具有优先权发送方式,其具体通信过程如下:首先上位机主动向 PLC 发送命令,即命令帧;然后 PLC 收到命令后,自动向上位机回复响应,即响应帧。它们在通信过程中所采用的通信格式为信息报文格式,该格式规定了通信所使用的控制字符,ENQ、STX、ETX、ACK、NAK5 个控制字符。STX 和 ETX 分别为开始标志和结束标志;正文为命令码和数据信息;校验
3、和为从正文到 ETX之间的所有字符的 ASC码的相加,取和的低闷位。上位机与 PLC 通信时可以使用的命令有四个,它们是:命令、写命令、强制通命令、强制断命令。 上位机向 PLC 发送读命令时。它是由 STX、读命令 0,软元件组起始地址、字节数(即软元件组个数) ,ETX 和校验和对应的 ASCII 码组成的一个字符串。而 PLC 对上位机读命令的响应格式。 三、基于工业以太网的开放式通信方法 自动化系统中,各设备在进行数据交互时都需要遵循一定的协议,西门子公司提供了多种通信协议来适应不同的工业环境,一般西门子工业以太网通信协议包括 S7 通信协议,S5 兼容通信协议。S5 兼容协议运用最为
4、广泛,它包含了 TCP/IP 协议,可直接适用于非西门子设备与西门子站点进行通信。S5 通信协议包括了 ISO-ON-TCP 协议、UDP 协议、TCP/IP 协议。开放式通信即运用 S5 兼容协议使 PLC 与其他 PLC 或者 PC直接进行以太网通信的方法。西门子 PLC 有多种型号,有些型号的 PLC的 CPU 自带 PN 口,可直接实现开放式通信;没有 PN 口的可以配备 CP 模块来实现开放式通信。开放式通信的原理是在 PLC 程序中调用已有的 FB程序块,设置相关的通信参数,通信内容采用自定协议的方式达到上位机对下位机控制的目的。所调用的 FB 程序块包括用来建立通信连接的FB65
5、“TCON”模块;用来终止通信连接的 FB66“TDISCON”模块;用来发送数据的 FB63“TSEND”模块和用来接收数据的 FB64“TRCV”模块。相较于 NetPro 通信,开放式通信提供了一种动态连接,PLC 无需中断 CPU运行即可随时增加或减少通信连接数,确保了通信资源的优化和系统的稳定。在使用上述功能块之前需要使用 STEP7 对 PLC 硬件进行组态,并且需要创建一个数据结构体来存放连接参数。 四、数据上传下载原理 数据传输主要是控制 VB 中的 MSComm 控件,来实现打开诵讯端口和发送、接收命令的功 NvVB 中的 MSComm 控件提供了功能完善的数据的发送和接收功
6、能,其中的一项常用属性数据的通讯过程为:程序开始,第一步打开诵讯端口(MSComml.Portoen) ;第二步对端口进行判断,是否打开,如若未打开,返回第一步继续打开的步骤,若打开,则进行第 1步;第三步 MSComml.onmnt 按照端 u 输出格式向下位机传输数据,这一步中,需要将数据按照格式进行组合;第四步是下位机等待相应,并不断的循环扫描,读取回值;第五步接受下传数字 MSComml.innnt 需对其进行提取处理,整个数据诵讯过程结束数据下传下载的流程,程序开始后,首先设置端口通讯频率,系统默认的标准设置为(9600;1,7,2,E) ,由于数控系统中有大量的数据进行传输,波特率
7、选择为最大值(115200;1,7,2,E) ,然后开始向下位机发送指令,验证诵讯是否成功,若成功,正式开始诵信过程,不成功则返回检查连接情况,重新连接通信成功后,确定发送数据的帧数,按照规则数据发送。需要注点的情况是每次发送结束后需要进行 FCS 验证,若验证成功,该过程结束,反之则需要重新进行数据发送过程。 五、波特率分析 波特率指的是信号被调制以后在单位时间内的变化比特率是每秒钟传送的二讲制位数,用 b/s 表示(b 表示 bit)例如数据传送辣率为120bit/s,而每一个字符为 10 位,则其传送的比特率为10x120=1200b/s。OMRON 公司该型号的 PLC 波特率范围为
8、9600-115200,每秒钟上传的数据最大可达到 115200 个字节。 PLC 中规定,双精度类型的数据在下位机中需要用 8 位二讲制数字来表示,每位数字占 8 个字节,即每个数字占 64 个字节为了方便下位机对下传以及下载的数据讲行翻译,所有上传下载的数据都用 8 位二讲制数码来表达对干样点以及插补点,每秒传输最大的数据量为 258 组;对干焊榕工艾参数,每秒最大传输为 1800 组,基本可以满足实时性的要求。 六、运行情况 上位机系统和下位机系统采用工业以太网的通信方式,下位机系统通过现场控制模块实现对生产线的控制。 上位机系统由上层管理软件、生产调度控制软件和数据存储软件组成。上层管
9、理软件包括系统状态监视模块、历史数据查询模块、系统参数设置模块。系统状态监视模块能够监视生产线各个部位的状态,并且实时显示产品在生产线上的具体位置,也可以通过查询数据存储系统了解产品的生产状态、下一步工序等信息;历史数据查询模块用来查询、处理产品的历史数据,可将历史数据生成、统计各种直观的图表,也可以将所需的数据导出成 EXCEL 文件并打印;系统参数设置模块根据不同的生产需求动态地对生产线相关的参数进行设置,还可以根据现场情况对生产线的某些需要维护的功能部件进行屏蔽。系统状态监视模块和历史数据查询模块可由现场操作人员使用,系统参数设置模块关系到生产的顺利进行只能由拥有高等级权限的工程师才能使
10、用。整个控制系统的核心由数据存储软件和生产调度控制软件组成。数据存储软件存储产品历史数据和相关的生产工艺步骤,生产调度控制软件控制整个生产线的运转。数据存储软件和生产调度控制软件中都具有复杂的优化算法和控制模式。下位机系统中,产品条码与工艺绑定模块的功能是把要生产的产品的编号和生产工艺输入至数据存储系统,以便产品在生产时的控制和生产数据的记录。没有录入成功的产品将视为非法产品,由问题产品退出模块退出,并提示重新录入信息。产品成品分档模块在产品完成所有的加工工艺后,负责产品的归类、分档。问题产品退出模块退出问题产品、显示产品故障的具体原因并告知工作人员后续的故障处理流程。生产控制模块和机械设备控制模块即装载了硬件设备控制程序的 PLC。 七、结束语 随着计算机控制技术的不断发展,通过上位机对 PLC 进行监测和控制,提高自动化控制的水平。 参考文献 1吴涛.PLC 与上位机的高速通信实现J.微计算机信息,2007