个人计算机(以下简称PC)具有较强的数据处理功能,配备着多种高级语言,若选择适当的操作系统,则可提供优良的软件平台,开发各种应用系统,特别是动态画面显示等。随着工业PC的推出,PC在工业现场运行的可靠性问题也得到了解决,用户普遍感到,把PC连入plc应用系统可以带来一系列的好处。
1. PC与PLC实现通信的意义
把PC连入PLC应用系统具有以下四个方面作用:
1)构成以PC为上位机,单台或多台PLC为下位机的小型集散系统,可用PC实现操作站功能。
2)在PLC应用系统中,把PC开发成简易工作站或者工业终端,可实现集中显示、集中报警功能。
3)把PC开发成 PLC编程终端,可通过编程器接口接入PLC,进行编程、调试及监控。
4)把PC开发成网间连接器,进行协议转换,可实现PLC与其它计算机网络的互联。
2. PC与PLC实现通信的方法
把PC连入PLC应用系统是为了向用户提供诸如工艺流程图显示、动态数据画面显示、报表编制、趋势图生成、窗口技术以及生产管理等多种功能,为PLC应用系统提供良好、物美价廉的人机界面。但这对用户的要求较高,用户必须做较多的开发工作,才能实现PC与PLC的通信。
为了实现PC与PLC的通信,用户应当做如下工作:
1)判别PC上配置的通信口是否与要连入的PLC匹配,若不匹配,则增加通信模板。
2)要清楚PLC的通信协议,按照协议的规定及帧格式编写PC的通信程序。PLC中配有通信机制,一般不需用户编程。若PLC厂家有PLC与PC的专用通信软件出售,则此项任务较容易完成。
3)选择适当的操作系统提供的软件平台,利用与PLC交换的数据编制用户要求的画面。
4)若要远程传送,可通过Modem接入电话网。若要PC具有编程功能,应配置编程软件。
3. PC与PLC实现通信的条件
从原则上讲,PC连入PLC网络并没有什么困难。只要为PC配备该种PLC网专用的通信卡以及通信软件,按要求对通信卡进行初始化,并编制用户程序即可。用这种方法把PC连入PLC网络存在的唯一问题是价格问题。在PC上配上PLC制造厂生产的专用通信卡及专用通信软件常会使PC的价格数倍甚至十几倍的升高。
用户普遍感兴趣的问题是,能否利用PC中已普遍配有的异步串行通信适配器加上自己编写的通信程序把PC连入PLC网络,这也正是本节所要重点讨论的问题。
带异步通信适配器的PC与PLC通信并不一定行得通,只有满足如下条件才能实现通信。
1)只有带有异步通信接口的PLC及采用异步方式通信的 PLC网络才有可能与带异步通信适配器的PC互连。同时还要求双方采用的总线标准一致,都是RS-232C,或者都是RS-422(RS-485),否则要通过“总线标准变换单元”变换之后才能互连。
2)要通过对双方的初始化,使波特率、数据位数、停止位数、奇偶校验都相同。
3)用户必须熟悉互联的PLC采用的通信协议。严格地按照协议规定为PC编写通信程序。在PLC一方不需用户编写通信程序。
满足上述三个条件,PC就可以与PLC互联通信。如果不能满足这些条件则应配置专用网卡及通信软件实现互联。
4. PC与PLC互联的结构形式
用户把带异步通信适配器的PC与PLC互联通信时通常采用如图1所示的两种结构形式。一种为点对点结构,PC的COM口与PLC的编程器接口或其它异步通信口之间实现点对点链接, 如图1a所示。另一种为多点结构,PC与多台PLC共同连在同一条串行总线上,如图1b所示。多点结构采用主从式存取控制方法,通常以PC为主站,多台PLC为从站,通过周期轮询进行通信管理。
图1 常用结构形式
a)点对点结构 b)多点结构
5. PC与PLC互联通信方式
目前PC与PLC互联通信方式主要有以下几种:
1)通过PLC开发商提供的系统协议和网络适配器,构成特定公司产品的内部网络其通信协议不公开。互联通信必须使用开发商提供的上位组态软件,并采用支持相应协议的外设。这种方式其显示画面和功能往往难以满足不同用户的需要。
2)购买通用的上位组态软件,实现PC与PLC的通信。这种方式除了要增加系统投资外,其应用的灵活性也受到一定的局限。
3)利用PLC厂商提供的标准通信口或由用户自定义的自由通信口实现PC与PLC互联通信。这种方式不需要增加投资,有较好的灵活性,特别适合于小规模控制系统。
本节主要介绍利用标准通信口或由用户自定义的自由通信口实现PC与PLC的通信。