首页 资讯 招标 项目 展会 更多

位置:首页 > 新闻频道 > 技术动态


嵌入式工控网络的Proteus仿真研究

2016-05-23 11:22:10 安装信息网

相关链接: 中国安全网 中国质量网 中国论文网 中国资讯网

 从宏寿  蔡尧尧

 (安徽工业大学电气与信息工程学院,安徽马鞍山243000)

摘要:以Ptoteus为平台,对同一窗口放置多个单片机构成多个子站(下位机)进行了研究。采用COMPIM组件,结合物理串口或虚拟串口,应用VB6.0、C51分别编写上位机程序、下位机程序,实现子站(下位机)与主站(上位机)的通信,构成嵌入式工控网络。若采

用虚拟串口,可在一台PC上实现嵌入式工控网络的仿真研究。设计结果满足嵌入式工控网络的应用要求。

关键词:Ptoteus串口通信通信协议通信模型嵌入式工控网络单片机集散控制系统VB

中图分类号:TP368;TH89DOI:10. 16086/j.cnki. issnl000 - 0380. 201604014

0 引言

 嵌入式工控网络是典型的集散控制系统,在工业控制现场得到广泛应用。该系统由上下位机构成,上位机实现集中管理,下位机负责分散控制。上下位机之间通过网络连接,上位机采用工控机,可记录各站点工作状态、历史曲线,发送控制命令等;下位机通常由单片机、DSP、PLC站点等构成,负责独立控制现场设备。

 Proteus是一款集单片机仿真与SPICE分析于一体的EDA仿真软件。一般情况下,虚拟仿真环境不能与实际的物理环境进行交互通信,但Proteus提供的组件COMPIM(串行接口组件),使Proteus虚拟环境与实际的物理环境直接交互成为可能。当PC机或UART软件生成的数字信号出现在COM口(串口)时,COMPIM能缓冲接收数据。鉴于此,以Proteus为单片机开发平台,可在一台PC上实现嵌入式工控网络设计与仿真分析。PC机与下位机之间通过COM口连接,设计关键是通信协议。

1  Proteus虚拟环境与上位机通信模型

 Proteus虚拟环境在PC1,串口调试助手软件在PC2,且PC1与PC2都有物理串口。Proteus虚拟环境与实际PC通信模型如图1所示。

 Proteus虚拟环境与虚拟PC串口的通信模型如图2所示。

如果不希望使用物理PC串口而使用虚拟PC串口,则可在一台PC上实现Proteus虚拟环境与虚拟PC串口之间的通信。这时,还需要安装虚拟串口驱动软件( virtual serial port driver,VSPD)。这对手提电脑的用户非常实用,因为手提电脑通常没有物理COM口。

2  基于Proteus的嵌入式工控网络设计

2.1嵌入式工控网络结构的设计

嵌入式工控网络结构如图3所示。

 上位机为PC机及应用软件,下位机由单片机构成应用系统,上下位机之间通过串口连接。由于实际工控网络系统需要串口连接线,考虑到串口驱动能力,下位机最多可连接32个单元,且终端需要120 

Ω匹配阻抗。在Proteus虚拟环境中,上下位机之间的通信不需要串口连接线,通过虚拟串口驱动软件Virtual SerialPort Driver实现驱动,且下位机数量不受限制。端口分配:上位机为COMs,下位机1~32全部为COM4。

2.2嵌入式工控网络通信协议设计

 嵌入式工控网络结构可分为应用层、数据链路层、物理层3层。应用层负责应用程序的管理和执行,其功能由单片机及PC应用程序实现;数据链路层为串口通信协议(如异步数据帧格式),保证数据的可靠传输,实现传输速率和差错控制;物理层为物理接口和传输介质。

 应用层通信协议由地址码、数据标志、数据码构成。地址码有5位,共32个代码,对应32个子站;数据标志说明每帧传输的有效数据字节数,如每帧传输128个字节数据,则为7位,数据标志的长度可根据待传输的数据长度增减;数据码为待传输的有效数据,数据量不足的补0处理。在实际应用时,考虑到传输的可靠性,还可在数据码后面增加校验码,如循环冗余校验。

链路层通信协议,即串口异步数据帧,如图4所示。

 上位机发送给下位机的数据,按照应用层协议组成数据包,发送时以二进制形式按字节发送至串口;链路层协议为异步数据帧,上位机和下位机分别通过程序设置完成,包括端口号、波特率、数据位长度、奇偶校验位,应用层数据发送至串口的数据自动按照链路层协议传输。下位机接收到上位机数据以后,先分离地址码,并与本机地址码进行比较,确认为本机地址码后,再接收数据标志和数据;若不是本机地址码,则不接收后面的数据标志和数据。下位机发送给上位机的数据,也按照同样的规则传输。

3  基于Proteus的嵌入式工控网络的实现与仿真

3.1功能要求

 本文所设计的嵌入式工控网络的主要功能要求是:主站(上位机)发送数据至子站(下位机),控制子站LED灯的循环点亮与熄灭;子站接收来自主站的指令后,可以独立工作,互不影响。此外,子站开关闭合后,可控制子站向主站发送文本信息。主站可以接收来自各个子站发送的信息并且加以显示,同时不同的文本信息不会被擦除,以待分析对比。

3.2通信协议设置

 应用层通信协议设置:根据控制子站的个数和所发送指令的长短,可自行确定通信协议中的数据帧长度。本文以控制两个子站为例,考虑到实际应用中最多可控制32个子站,故设置子站地址码为“00000”和“00001”,分别对应子站1和子站2;数据标志为2位,可以标志出数据码中1~4个有效字节数,即“00”(1个有效字节)、“01”(2个有效字节)、“10”(3个有效字节)、“11”(4个有效字节);控制命令循环点亮LED为“1”,熄灭LED为“0”,控制命令作为数据码,需要补零处理,可以组成2个有效字节。数据帧包如表1所示。

 将这些数据帧包赋给data数组,由VB以二进制形式发给子站。主站发送数据帧时,子站接收主站的数据帧,然后对地址和数据进行分离。判断数据帧中的地址码,如果是自己的地址码,则根据数据帧中的控制指令作出相应的反应。

 链路层通信协议设置:为了便于串行通信设置,下位机(AT89 C51)晶振时钟频率为11. 059 2 MHz。打开串行接口组件COMPIM属性对话框,设置端口为COM5。该串口是使用软件虚拟出来的,波特率为9 600 bit/s,有8个数据位,无奇偶校验,有1个停止位。上位机端口为COM4,其他设置与下位机一致。COM4、COM5由虚拟串口驱动软件(VSPD)构建虚拟串口,可在一台计算机上实现嵌入式工控网络仿真。

3.3硬件实现

 上位机使用VB构建应用界面,包括上位机对下位机所有控制按钮及用于接收下位机发送过来的文本信息的文本框,执行数据的发送与接收。下位机是由单片机组成的应用系统,其硬件在Proteus中实现,主要完成硬件平台的搭建和仿真效果的测试。

 在Proteus ISIS环境中,调用2个AT89 C51单片机、COMPIM组件(该组件设置单片机串口通信协议)等,组成单片机通信系统。COMPIM已经自带电平转换功能,就不需要MAX232元件。在P1口接8个LED,单片机的P3.0、P3.1分别与串口元件COMPIM的RXD、TXD相连。同时,单片机的P3.2分别连接一个按钮,用于触发外部中断,使下位机发送文本信息至上

位机。

3.4软件实现

 系统软件的实现包括PC上位机软件和下位机单片机系统软件的实现。

 (1)上位机控制程序设计。

 上位机使用VB建立界面和通信程序,完成数据的发送与接收。在工程中添加MSCOMM控件,然后进行相应的属性设置(波特率、奇偶校验、停止位、发送与接收事件的触发方式、发送数据的类型等),就可以用它发送与接收二进制数据或文本数据。上位机控制流程如图5所示。

 (2)下位机控制程序设计。

 下位机中的单片机主要完成串口接收与发送。下位机的单片机程序在K eil软件中编写。Proteus中的单片机系统加载控制程序,可实现联调,以便对嵌入式工控网络进行评估、验证。此外,还可以通过改变元器件参数优化电路设计。控制流程如图6所示。

3.5嵌入式工控网络的仿真分析

 启动Proteus和VB的仿真按钮,点击VB(主站)中相应的按钮,观察分析仿真结果,如图7所示。

 图7中,电阻R的阻值为200Ω。上位机控制下位机2的LED灯被循环点亮。综合其他仿真结果,分析说明了该嵌入式工控网络设计实现了上位机对下位机即多个单片机的独立控制。单击仿真电路里的K.(或K2)触发外部中断,下位机发送信息至上位机中的VB应用程序。

 本设计不仅实现了PC机控制多个下位机的任务,同时还可以接收多个下位机发送来的信息,从而实现了嵌入式工控网络中上位机与下位机之间的双向通信。

4结束语

 本文在串口通信的基础上,设计了一种适应于嵌入式工控网络的通信协议。以Proteus虚拟环境为平台,采用AT89C51单片机设计了两个子站(下位机),用VB设计主站(上位机)程序,并借用虚拟串口驱动软件( VSPD)构建虚拟串口。该设计在一台PC上实现了上位机与下位机之间的通信。仿真结果表明,设计结果满足嵌入式工控网络的应用要求。

关键字:

上一篇:纳微米SiCp/Al-Si复合材料的摩擦磨损性能

下一篇:返回列表

行业资讯月点击排行

展会信息月点击排行

招商信息月点击排行

首页 资讯 招标 项目 展会
关于我们 | 广告服务 | 友情连接 | 联系我们
触屏版 电脑版
安装信息网 www.36qyk.cn.