变频器与传动 | 高压变频器 | 运动控制 | 机器人技术 | 机械传动 | 电力电子 | 传感器 | 嵌入式系统 | PLC
  | 工业以太网 | 人机界面 | 工业计算机 | 现场总线 | 仪器仪表 | 低压电器 | 自动化软件 | DCS
  资料搜索 免费加入搜索 热点搜索: PLC DCS ABB
首页 | 企业专栏 | 产品中心 | 新闻动态 | 商业机会 | 技术园地 | 展会媒体 | 人才交流 | 论坛 | 有奖调查 | 帮助 |
泓格科技上海技术服务中心 相关信息:
·系列产品
·在线销售
·资料下载
·典型应用
·解决方案
·新闻动态
·企业介绍
 
可编程设备服务器PDS的典型应用
2007-7-27 15:48:00 泓格科技上海技术服务中心 供稿  收藏

关键词:PDS;串口;以太网;泓格;I-7188EX

为什么需要设备服务器

    在产业自动化应用中,系统管理的数据源是由大量的基础设备提供,包括:传感器、二次仪表、PLC、CNC 控制台、读卡器、UPS、LED 看板等,而这些设备大部分均只提供RS-232 和RS-422/485 通讯介面。由这些设备所实现的自动化控制系统,在架构上是属于孤立的封闭的系统,在各控制系统之间,以及各控制系统与企业资源管理系统(ERP)之间无法实现数据的有效及时的交换,从而在传统的自动化系统中形成了大量的“信息孤岛”。

    在当前的自动化应用中,一个重要的趋势是以太网技术的广泛采用,企业的信息层均已采用Ethernet 完成通信,并进一步地延伸至车间级和现场级。以太网进军工业自动化的最主要动力是:因普遍应用所形成的硬件资源、软件资源和广泛支持。据相关统计,Ethernet 是世界上应用最多的网络,超过93%的网络节点为Ethernet。因为以太网节点的广泛应用,在近十年内以太网通信速度的提高及采购成本的大幅降低是异常引人注目的趋势。

    基于TCP/IP 的Ethernet 构成的工厂网络的最大优点是将工厂的商务网、车间的制造网络和现场级的仪表、设备网络构成了畅通的透明网络,并与WEB 功能相结合,与工厂的电子商务、物资供应链和ERP 等形成整体。

    那么这是否意味着为了建立即时高效的以太网实时监控系统,那些缺少以太网或TCP/IP 联网能力的设备和投资都过时了,必须将成功运行多年的原有系统均淘汰重建?答案是否定的!籍由串口设备联网服务器提供的犀利功能,可以使您的串口设备立刻成为具备以太网联网能力的网络设备,如图一所示:


图一:串口设备立即联网乃大势所趋

    考虑到大部分的现场机电工程师对TCP/IP、Socket API、网络通信协议7 层架构等网络技术知识都不是很熟悉;同时作为已经投入使用的SCADA 系统,也不允许轻易改变I/O 的读取方式。因此对于设备服务器最初的要求是以较低的价格、较高的可靠性使串口设备实现以太网联网能力,对于SCADA 系统而言,通过外挂厂家提供的设备服务器驱动程序,使设备服务器的串口变成PC 管理终端的实端口,从而在不必重新撰写SCADA 系统的I/O 驱动程序的前提下实现系统的快速升级。


图二 泓格可编程设备服务器方案

    但是在部分的进阶应用中,此种模式存在较大的局限性,因此业界开始提出可编程设备服务器(Programmable Device Server,PDS)的概念,以解决此问题。在各厂家中,以ICPDAS 泓格为得风气之先者。针对不同的应用场合,泓格提供高中低搭配的可编程设备服务器的方案,如图二所示:

    在下文中笔者将就泓格PDS 的定位及应用方式加以说明,在文章的最后,将以山东某化工厂的应用为例具体说明采用PDS 与传统设备服务器之间的区别。

可编程设备服务器PDS 的应用方式


图三 泓格PDS 的应用方式

    如上图,PDS 可以有三种应用方式:虚拟串口(Virtual COM)方式、TCP/IP Socket 编程方式、Web Server 方式。其中虚拟串口方式为一般设备服务器常用的应用方式,以I-7188EN 为例:该设备服务器在出厂时即内置有VCOM3009 的Firmware,用户使用泓格提供的VxComm 驱动程序,可以将I-7188EN 的串口映射成PC 的标准串口(如COM3/COM4 等),一台基于Windows 系统的PC 最多可以管理256 个串口设备,如图四所示。VCOM3009 采用UDP 方式发送报文,可以允许多台上位机访问该串口设备服务器,根据网络的数据流量的不同,4~8 台上位PC均在系统的有效负荷能力之内。


图四 虚拟串口应用方式

    第二种方式属于进阶的应用,利用泓格PDS 提供的特定的TCP 端口,通过Socket 存取数据,这种方式可用于任何TCP/IP 的连接,而不会局限于某个特殊的操作系统,或受限于某种特殊的设备,如图五。常用的TCP 端口包括:

􀁺 ●Port502 为Modbus/TCP 端口
􀁺 ●Port9999 为I-8000E I/O 读写端口或自行定义
􀁺 ●Port10000 为设置端口或自行定义
􀁺 ●Port10001 为COM1
􀁺 ●Port10002 为COM2
......

    利用泓格X-Server 集成开发环境提供的强大功能,用户可以轻易地实现多种高级应用模式,如TCP Server(允许串口设备被动连接到TCP 网络)、TCP Client(允许串口设备主动发送数据)、UDP Server/Client(实现基于UDP 协议的快速封包传送和多点数据传送)等。X-Server 支持的功能包括:TCP/IP 函数库;虚拟串口技术;Modbus/TCP 函数库等。其中TCP/IP 函数库支持的以太网通讯协议包括:

􀁺 ●TCP 传输控制协议
􀁺 ●UDP 用户数据报文协议
􀁺 ●IP Internet 协议
􀁺 ●ICMP Internet 控制信息协议
􀁺 ●ARP 地址分析协议
􀁺 ●RARP 保留的地址分析协议


图五 TCP/IP Socket 编程方式

    以下为透过泓格X-Server 集成开发环境实现的以太网通讯实例,从程序中可以看出, 程序员只需对BuildSocket 、ReceiveSocketBinaryCmd 、SendSocketBinaryCmd、KillSocket 等几个简单的函数进行参数设定,即可实现网络通信,而无需复杂编程。

*******************************************
#include <string.h>
#include <stdio.h>
#include "..\..\lib\8000.h"
#include "..\..\lib\VXCOMM.H"
#include "Vsocket.h"

#define SVR_PORT 5000 //server linst port
#define SVR_IP "192.168.0.18" //server ip address
extern int bLedControl;

int iNeedConnect,iOutskt;
unsigned char iTemp=1;

void UserInit(void)

InstallCom1(115200L,8,0);

EnableWDT(); //Watch dog enable

TimerOpen(); //add display fun
StopWatchStart(0); //Timer(0)

iNeedConnect=1; //tcp link need connect

void UserLoopFun(void)

unsigned long t_value;
int i;
int iHour,iMin,iSec;
int iRet,iSend=0;
unsigned char ch, TimeBuf[9],OutBuf[1024],InBuf[1024];

RefreshWDT();
//*************************************
//* Build TCP/IP Socket
//*************************************
if(iNeedConnect) //TCP Cennect

iOutskt=BuildSocket(SVR_IP,SVR_PORT,200); //buildsockets
printCom1("Building Sockot... SKTNO:%d\n\r",iOutskt);
if(iOutskt!=-1)

iNeedConnect=0;


//*************************************
//* send data
//*************************************
StopWatchReadValue(0,&t_value);
RefreshWDT();
if(t_value>1000)

StopWatchReset(0);
iSend=1; //send flag

GetTime(&iHour,&iMin,&iSec);
sprintf(TimeBuf,"%02d:%02d:%02d",iHour,iMin,iSec);
strcpy(OutBuf,TimeBuf);
if(iOutskt>0)

iRet=ReceiveSocketBinaryCmd(iOutskt,InBuf,100,100);
if(iRet > 0)

ToCom1Bufn(InBuf,strlen(InBuf));
ToCom1Str("\n\r");

if(strcmp(InBuf,"$PRINT$")==0)

printCom1("Out:%x\n\r",iTemp);
DO_8(3,iTemp);
iTemp=iTemp<<1;
if(iTemp==0) iTemp=1;




//*************************************
//* Send OutBuff
//*************************************
RefreshWDT();
if(iSend==1 )

if (iOutskt)

iRet=SendSocketBinaryCmd(iOutskt,OutBuf,strlen(OutBuf));

if (iRet < 0)

KillSocket(iOutskt);
iNeedConnect = 1;

else

iSend=0;



int UserCmd(unsigned char *Cmd,unsigned char *Response)

return 1; /* return no error */

void UserCount(void)

//user defined count event;

int VcomUserBinaryCmd(TCPREADDATA *p)

return 1; /* any value will be accept */

int VcomCmdUser(TCPREADDATA *p)

return 1; /* any value will be accept */

*******************************************

    PDS 的第三种应用方式为Web Server 方式,泓格提供Web server 开发框架,该开发框架支持Form 表单和CGI。同时还提供C/C++的程示例序、文档以及库函数,程序员只需要调用几个简单的函数(例如:GetDataFromWeb(void)等),甚至于根本无需编程,只要编写几个Html 文档就可以使用Web server 功能,来完成IO 数据信息采集、信息发布和设备参数设定,从而达成以太网无远弗届的效果,如图六所示。


图六 Web Server 应用方式

多功能可编程设备服务器

    ●上节中所涉及的PDS 均是基于DOS_Like 的操作系统所建立,在具体应用中尚存在诸多的局限性,例如:

    ●不能提供友善的人机界面,当Local 需要显示终端时,将必须使用一台上位PC,未免有叠床架屋的嫌疑,而且在部分应用场合,PC 因其设计上的缺陷,并不适合恶劣的工业环境。

􀁺 ●在编程上不能采用可视化编程技术,只能采用如TC、BC 等编程方式,对程序员有一定要求。

􀁺 ●存储量有限制,不能适应大数据量存储的要求。

    针对此种应用上的需求,市场迫切需要一种既具备普通PC 的特性,如:使用的便利性、网络通信实现方式的多样性、广泛的第三方软件支持、大容量的数据库、友善的图形人机界面等,同时又具备高可靠性的可编程设备服务器。泓格之LinCon系列正是符合此需求的平台。


图七 LinCon 系列多功能可编程设备服务器

􀁺 ●LinCon-8000 系列采用32-bit RISC CPU,提供与普通PC 相同的键盘/鼠标接口、以太网接口、USB 接口、标准VGA 接口等,存储介质为128MB Compact Flash。因为使用RISC 低功耗CPU,其整机功耗最大为20W,主机功耗为5W,及无磁盘、无风扇架构的特性,远比工业PC 更能承受工业现场的恶劣环境。

􀁺 ●操作系统部份采用的是具实时内核的Embedded Linux , 视窗画面为QT-embedded window system。可以避免基于商业Windows 操作系统可能带来的系统”当机”的困扰,同时也可以提供更高的网络安全特性。

􀁺 ●除视窗操作画面外,LinCon 也配置了DHCP、Http、FTP、Telnet、SSH 和SFTP Servers 等功能,可以实现WEB-Based I/O Control。

􀁺 ●内建MySQL 数据库引擎,大为提升在本机处理数据库的能力。LinCon 的缺省配置为128 MB Compact Flash 存储空间(此为用户的应用程序及数据存储空间,操作系统映像保存在独立的32MB Flash 中),用户可升级至1GB,也可通过USB外接USB 硬盘,实现海量数据存储。

􀁺 ●系统开发工具用户可选C 或JAVA,LinCon 内建JVM,在应用程序开发方面LinCon 提供多种SDK,如:用于GUI 开发的SDK,Microsoft desktop OS Cross platform SDK,Modbus TCP/IP SDK,DCON I/O SDK 等。

可编程设备服务器在化工厂关键生产线紧急停车系统中的典型应用

    项目背景:该应用为山东某化工厂之关键生产线紧急停车系统,原本只是用一台iFix 工作站与HonyWell FCS 2004D 系统联结,后来iFix 工作站增加到三台,而该HonyWell 从站设备只提供一个RS-232 串口。一般来说,RS-232 只能一对一联结两端 (即一台 PC 和一台 HoneyWell),无法一个串口同时连接三台 PC。

    方案一:通过RS-232 至RS-485 的隔离转换器将HoneyWell2004D 的RS-232转换为RS-485,因为RS-485 具有广播的特性,允许在一条总线上有多个设备同时工作。这一方案实现了多个iFix 客户端同时对一台从机,但是还是有问题。如图八:Request 是由第二台送出的,应该只有第二台收到Response,可是其它两台会因为RS-485 的广播特性,也都收到这个Response。这样,会把另外两台PC 搞混淆了。所以这是一个不可行的解决方案。


图八 不可行的解决方案

    方案二:所以解决的办法应该是在iFix 工作站和HoneyWell2004D 之间加上一个通讯控制器,来实现PC 和从站设备间的通讯流量控制,实现分时通讯。最简便的方式是在3 台iFix 工作站和HoneyWell2004D 之间加一颗Ethernet/RS-232 的串口设备服务器,采用虚拟串口的方式实现iFix 工作站的分时访问。这个方式实现最容易,可以满足系统升级的设定,实现iFix 工作站对从站设备的同时访问;同时工作站与串口设备服务器间采用以太网方式,通讯速度大为提高。但是因为HoneyWell2004D 的波特率最快只能调到 38400Kbps,对于此架构而言,每台iFix工作站的通信请求该设备服务器都需要进行转发,整个系统的效率会因为串口设备服务器和HoneyWell2004D 之间通讯时间过长的瓶颈而降低。所以这是一个不具效率的解决方案。


图九 不具效率的解决方案之一

    方案三:将上述之通用型串口设备服务器换成 Modbus/TCP 至Modbus/RTU 的Gateway——I-7188EX-MTCP,粗看上去也许会带来效率的提高,但是其结果与方案三一样。只要该设备服务器和HoneyWell2004D 间的数据量无法减少,整个系统在扫描时间上的的瓶颈就无法解决。所以这仍然是一个不具效率的解决方案。

    方案四:综上所述,问题的核心是如何将设备服务器和HoneyWell2004D 之间的通讯量减到最低以提升系统的效率。我们还是采用方案三的设备服务器,因为I-7188EX-MTCP 提供用户编程的设定,可以透过修改Modbus Firmware 的核心,将HoneyWell2004D 的数据全部收集到I-7188EX-MTCP 内的共享内存(Share Memory)中,而3 台iFix 工作站都直接以Modbus/TCP 的协议透过共享内存取得HoneyWell2004D 的所有数据。


图十 完美的解决方案

    这种方式,对于iFix 工作站而言,它们随时可以来I-7188EX-MTCP 的共享内存抓数据,而且抓了就走。这部分,纯粹只有Ethernet 的通讯,速度很快,iFix 工作站花在通讯上面的时间,会比原来通过串口直接以Modbus/RTU 的方式和HoneyWell2004D 通讯, 节省更多时间。而I-7188EX-MTCP 的共享内存和HoenyWell2004D 之间的数据交换、更新,是属于在后台处理,iFix 工作站在取得共享内存中的数据时,根本不需要关心这一部分是否完成了。而且I-7188EX-MTCP和HoneyWell2004D 之间的通讯量,不管Ethernet 端有几个客户端,RS-232 端都只会有一次的通讯量,这就给未来的系统升级留下了充分的余量,而且可以进一步定制各客户端与I-7188EX-MTCP 之间数据交换的内容,以更充分地发挥系统的效
能。

    在程序修改的部分,因该Modbus Firmware 已经提供与Modbus 客户端通讯德能力,同时也提供现成的库函数实现I-7188E-MTCP 和其它Modbus/RTU 设备间的数据交换。所以程序员只要修改Firmware 中与HoneyWell2004D 设备通讯的代码,将数据存入共享内存中就可以了。

    所以这一方案是一个完美的解决方案。用最小的成本和最少的程序开发时间完成了系统设计的最初构想,并为系统未来的升级留下了充分的想象空间。事实上PDS可编程设备服务器的应用领域还非常的多,有待大家在具体的应用中进一步发挥其效能,例如以下的所列的一些领域:

􀁺 ●门禁控制和安防管理系统
􀁺 ●建筑自动化
􀁺 ●LED 状态显示设备
􀁺 ●SCADA、测量仪器及监控系统
􀁺 ●工厂自动化
􀁺 ●PLC 控制与管理
􀁺 ●CNC 管理
􀁺 ●医疗/化工自动化
􀁺 ●电力监视系统
􀁺 ●POS 终端机
􀁺 ●远端图像传输
􀁺 ●其它RS-232/422/485 设备联网应用

发表评论】【收藏此页】【打印】【关闭
相关新闻:
泓格WinCon-8000在农田灌溉中的应用
活用泓格I-7188系列 PC-Based 控制器产品
泓格 I-7018 热电偶信号采集模块在开关检测行业的应用
可编程设备服务器PDS的典型应用
泓格I-8000在锅炉智能控制系统中的应用
ISaGRAF 控制器在楼宇自动化中的应用
联 系 厂 商
TO:泓格科技上海技术服务中心
关于可编程设备服务器PDS的典型应用,我有如下需求意向:
用户名 密 码  
还不是传动网的注册用户? 免费注册
中国传动网版权所有
 粤ICP备05100281号 经营许可证编号:粤B2-20060497 客服电话:0951-5671761 5036968 5051058