C8051F基于ZNE-100PT的以太网监控系统
扫描二维码
随时随地手机看文章
关键词 监控系统 以太网 嵌入式 单片机
引 言
近年来,随着网络技术的发展,网络化席卷全球。在工业现场中如何将测控系统等仪器和设备接入互联网,实现信息共享和远程控制成为人们关注的话题。传统的工业测控现场所采用的总线技术(如RS232和RS485等)能够很好地解决仪器与设备的互联互通问题,并得到了广泛的应用。但此类总线是专为工业所设计的,并不能解决因特网的接入问题。采用单片机配合以太网控制芯片构成测控系统,可解决测控系统与互联网的接入问题,但却需要花费大量的时问和精力进行开发。采用商品化的串口服务器或网络服务器进行网络互联,虽可实现网络互联,但软硬件成本很高。针对这些情况,我们采用低成本的RS232以太网转换模块作为网络互联媒介,设计了基于美国Cygnal公司的C8051F020的嵌入式以太网监控系统。结果表明,该监控系统充分利用了现有以太网资源,实现了远程测控终端与监控中心的通信功能,从而实现了高可靠性、低成本的实时监控,达到了工业现场安全运行的目的。
1 RS232-以太网模块及C8051F020简介
ZNE-100PT是周立功公司开发的一款RS232-以太网模块模块,内部集成了TCP/IP协议栈,利用它用户可以轻松实现嵌入式没备的网络功能。其主要特点是:
◆内嵌32位ARM7 CPU;
◆支持TCP/IP协议(包括Ethernet、ARP、IP、ICMP、IGMP、UDP、TCP、HTTP和DHCP),工作方式可选择为TCP Server、TCP Client、UDP、Real COM driver和GroupMode.TCP Auto组播地址工作端口目标IP和端口均可设定支持PairConnection对连方式工作;
◆10M以太网接口使用排针方式引出;
◆RS232或RS485串口,TTL电平方式,波特率为300~115200 bps。
采用RS232以太网模块进行网络互联,可大幅度缩短软件开发时间,且成本很低。
单片机C8051F020是一款完全集成的混合信号系统级芯片,与8051指令集完全兼容。它具有如下特点:
◆高速流水线结构的8051兼容的CIP-5l内核(可达25 MIPS);
◆高速非侵入式的在线系统调试接口(片内);
◆真正12位100Ksps的8通道ADC,带PGA和模拟多路开关;
◆2个12位DAC;
◆64 KB可在系统编程的Flash存储器;
◆4352(4096+256)字节的片内存储器;
◆可寻址64 KB地址空间的外部数据存储器接口;
◆硬件实现的SPI、SMBus/I2C和2个UART串行接口;
◆5个通用16位定时器;
◆5个捕捉比较模块的可编程计数器/定时器阵列;
◆片内看门狗定时器、VDD监视器和温度传感器。
C8051 F020是一款真正独立工作的片上系统,将C8051F020用于嵌入式以太网监控系统,可大量减少外围器件,充分发挥C8051F020的高速度特点,大大提高了系统的集成度。
2 嵌入式以太网监控系统的技术要求和硬件实现方案
2.1 技术要求
用户对嵌入式以太网监控系统的要求如下:
◇8位全隔离数字输入接口;
◇8位全隔离数字输出接口;
◇8路12位模拟/数字输入接口,输入电压DC为O~12 V:
◇2路12位数字/模拟输出接口,输出电压DC为O~5 V;
◇RS232串行接口,最高波特率为19.2 khps;
◇RJ45 10M网络接口。
2.2 实现方案
根据用户提出的技术要求,以单片机C8051F020为核心,辅以RS232-以太网模块ZNE-100PT及少量外围电路,构成嵌入式以太网监控系统的硬件电路,如图1所示。
图1中,由于C8051F020具有2个标准串行接口,因而一个分配给ZNE-100PT模块,作为以太网接口,另一个就分配给了RS232接口,作为与上位机的通信接口(其通信速率可根据用户要求在300~19200 bps调整。
对于8路模拟信号输入接口,要求其最高输入电压为+12V,而C8051F020的片内A/D转换器最高输入电压为+3V。对于+12V的输入电压,可采用电阻分压衰减电路,将+12 V的输入电压降为+3 V输入;而对于8路O~5 V的模拟输出电压,则可直接利用运算放大器放大输出,电路如图2所示。
数字输入部分采用光电耦合器将数字输入信号与本系统隔离,从而减小了外界干扰对系统的影响;数字输出部分也采用光电耦合器进行隔离,如图3所示。
3 ZNE-100PT模块的使用和网络通信规约
在使用RS232-以太网模块ZNE-100PT之前,应当按照ZNE-100PT的要求对模块进行软件配置。主要工作有配置模块的IP地址、模块的子网掩码、模块网关和串行接口的波特率等参数。配置完成后模块即可使用。需要注意的是,设置模块属性时,可将帧起始字节和帧结束字节设为空。这样,当模块对通信数据划分TCP/IP数据包时,就可按串口数据的帧间隔作为分包条件。
根据监控系统的要求,设定本系统与以太网之间的通信规约。
通信数据格式字头+命令字+数据长度+数据体
①字头:START。
②命令字:共计1个字。
第1字节:表示数据传输方向。由单片机→以太网为U;由以太网→单片机为P。
第2字节:为命令字。
命令l:由单片机→以太网时,表示后面数据为8路A/D输入值和8路数字I/O输入值;由以太网→单片机时,表示后面数据为2路D/A输出值和8路数字I/O输出值。
命令2:由单片机→以太网时,表示后面数据为RS232接口收到并转发以太网的,数据体长度小于255字节;由以太网→单片机时,表示后面数据需经监控系统的RS232接口发出,数据传送结束时监控系统返回OK,表示传送结束。
③数据长度:>999字节,表示后面数据体的长度。
④数据体:所需传输的数据。
4 监控系统软件流程
由于监控系统需要经由ZNE-100PT双向传输数据并需进行相关操作,因此监控系统软件流程如图4所示。
图4中,CPU首先进行初始化。之后分别采集以太网上发送过来数据以及本机的A/D和I/O输入数据。采集完成后,如果收到的是D/A和I/O输出数据,则进行D/A和I/O输出数据的更新。如果是以太网的RS232输出数据,则启动RS232接口并发送数据;否则,定时向以太网发送本机的A/D和I/O输入数据。如果是RS232接口的数据,则向以太网进行转发。
结语
本文设计的基于SoC单片机C8051F020的嵌入式以太网监控系统,采用了RS232以太网模块,从而使软件开发的工作量大大减少,使监控系统得以依托以太网实现远程测量及控制。本系统已用于日本某公司的生产线,且受到用户的好评。将本系统的某些参数适当修改,也可以用于其他工业控制场合中。