利用VB实现上位机与DX中波发射机通讯

分享到:
点击量: 203679

前言

  dx系列中波发射机是由美国harris公司制造的全固态数字调幅发射机,由于其运行稳定、各项指标好、整机效率高等优点,在**各台站得以广泛应用。我台自1999年起开始使用dx-400发射机,在10年左右的使用与维护工作中我们曾对dx-400发射机进行了两次自动化改造。**次改造是用omron

  c200hplc加外围电路来实现对发射机和附属设备进行采样和控制的,但在实际的使用过程中我们发现这样的控制系统有其致命的局限性。因为系统是plc加外围电路实现的控制系统就决定了系统无法显示机器内部数据的实时状态,无法与发射机内部实现直接通信。因此只有实现了工控机与发射机的控制核心——plc(可编程控制器)直接通信才能克服这一局限性,真正实现实时掌握机器内部数据状态和对发射机的直接控制。dx-400发射机控制单元使用的是a-bplc,这种plc是rockwell automation的**产品,使得第三方的软件不能很好地与a-bplc进行连接。在实际改造工作中我们找到了一种采用dde(动态数据交换技术)技术与a-bplc进行数据交换的方法,能够更好的解决这一瓶颈问题。

dde技术的工作机制

  dde是动态数据交换技术的缩写,是为在同一台计算机或不同计算机上运行的程序提供动态数据交换的一种新技术,*早由microsoft公司提出的。动态数据交换(dde)技术由于其具有实时性好、网络通信连接实现方便等特点,在控制软件与信息网络集成中得到了广泛应用。

  动态数据交换基于widnows消息机制,各应用程序间通过传递消息进行对话交换信息。windowsdde消息传递采用client/server模式,客户(client)是数据的请求和接受者,而服务器(server)是数据的提供者,两者之间通过请求、应答、传输三个步骤来完成数据的传送。dde协议使用服务(service)、主题(topic)和数据项(item)三级命名来标识dde所传递的数据单元。一般情况下,服务(service)就是应用程序的文件名,主题是对服务器有意义的信息单元。每次dde客户与服务程序之间的对话都是先由客户启动的,所以在每次客户启动之前,dde服务器应当首先投入运行。

  当客户程序需要向服务器程序请求数据时,客户程序发送一条wm-dde-initeate消息给当前运行的所有widnows应用程序,这条消息不但包含了它所需要的服务器名(service)和主题名(topic),而且指明了它所希望的数据类型,收到wm-dde-initeate消息的应用程序通过判别服务器名和会话主题决定是否应答,一旦dde服务器响应了这条被传播的消息,dde会话就开始了。

  dde的工作方式有冷连接(cool link)、温连接(warm link)和热连接(hotlink)等3种。在冷连接方式下,当server中的数据发生变化后不主动通知client,但client可以随时从server读写数据;在温连接方式下,当server中的数据发生变化后马上通知client,client得到通知后将数据取回;在热连接方式下,当server中的数据发生变化后马上通知上位机(工client,同时将变化的数据直接送给client。

1  2  3  4  5