传感技术
返回首页

基于W3100A的IP荷重传感器设计

2006-10-20 来源:单片机及嵌入式系统应用

工业生产中,传统测控系统已逐渐由集中式向分散式方向发展。分布在现场的传感器和执行机构的智能越来越强,它们之间也越来越表现出对通信的迫切要求。随着Intelnet的迅速发展,TCP/IP协议正逐渐成为一种世界通用的网络通信协议标准。如果让处于现场的传感器实现TCP/IP协议,也就是把网络连接功能嵌入到现场传感器中,使传统的传感器真正成为一个独立的网络结点,数据采集、信息传输等都能直接在Intranet/Internet上以Web方式进行,既统一了标准,又达到了远程控制和操作的目的。基于W3IOOA的嵌入式IP荷重传感器正是为实现这种目的而设计的。


1 IP荷重传感器结构
  嵌入式IP荷重传感器是在智能传感器的基础上发展起来的具有Internet功能的新型传感器。其实质是在传统传感器的基础上实现TCP/IP网络通信协议接口,将传感器作为网络节点直接与计算机网络通信。它的组成主要有:敏感单元、智能处理单元和TCP/IP通信协议接口。

  图l为嵌入式IP荷重传感器的结构框图。整个传感器的工作原理如下:传统的传感器将被测荷重信号转换为电信号,先通过A/D转换器转换为数字信号,再经过微处理器的数据处理(滤波、校准)将结果传送给网络;与网络的数据交换由基于TCP/IP协议的网络接口模块完成。嵌入式IP荷重传感器的内部存储器存储传感器的物理特征,如偏移、灵敏度、校准参数等;微处理器实现数据的处理及输出校准;TCP/IP协议实现传感器的网络连接。与传统的传感器相比,基于W3100A的嵌入式IP传感器具有可靠、便宜、扩展性好的优点,而且可以在内部直接对原始数据加工、处理,并通过Intranet/Internet与外界进行数据交换,因而它具有微型化、网络化和智能化的特点。由于传感器可与Intranet/Internet互连,因而实现了资源共享。


2 TCP/lP协议栈的几种实现方案
  IP传感器实现的关键在于网络化接口的设计,而网络化接口实现的关键在于TCP/IP通信协议的实现。目前,实现的方法有下面两种:

  ①基于软件来实现TCP/IP协议栈。通过将TCP/IP协议栈移植到系统中,然后调用相关的API函数实现网络通信。或者不采用移植的方法,参照标准的TCP/IP协议精简相应的协议层,编写相关的API函数完成简易的TCP/IP通信。但是这种方法需要有操作系统、高性能MCU及大容量存储器的支持。

  ②直接采用TCP/IP协议栈芯片。这种方案的主要优点在于,应用系统的设计不必考虑任何网络协议,只需要解释并执行网络芯片传送过来的指令和数据就可以实现与Internet网络连接,实现数据对网络的传送,且不需要操作系统的支持。本文基于W3IOOA芯片的嵌入式IP荷重传感器就是采用这种方法实现的。


3 传感器系统硬件设计
3.1 W3100A芯片简介

  W3100A是韩国Wiznet公司生产的一种TCP/1P协议栈芯片,其中包含的协议层有TCP(传输控制协议)、IP(网际协议)、UDP(用户数据报协议)、ICMP(因持网控制报文协议)和协议的DLC(数据链路控制),以及MAC协议。该芯片提供2个接口给上层应用层——MCU接口和I2C接口,1个MII(Media Independent Interface)接口给底层物理层。芯片支持全双工4 M~5 Mb/s的数据通信;内部带有双口RAM的数据缓冲器,64引脚LQFP封装,内部结构如图2所示。


  芯片内部提供512 B的控制寄存器存储空间和16 KB的数据存储缓冲器。其中8 KB传输数据缓冲器供Mcu传输数据用,MCU只能写而不能读;8 KB接收数据缓冲器供MCU接收数据用,MCU只能读而不能写。芯片提供寄存器供MCU访问,具体的寄存器分类如下;控制寄存器(命令、状态及中断);系统寄存器(网关地址、子网掩码、IP地址等);用于数据收、发的指针寄存器;通道操作的通道寄存器。各寄存器功能和地址参阅文献。

3.2 硬件接口及其数据传输

  W3100A提供了并口和串口两种方式实现与MCU的通信。图3为基于12C的串口连接方式。其中MCU为传感器中的处理器,以太网物理层设备选用RTIL8201芯片。W3100A提供MII接口与RTL820l相连,其中引脚RX_CLK、RXDV、RXD[3;O]以及COL用于数据的接收,而TX_CLK、TXE、TXD[3:O]用于数据的发送。MCU中提供模拟的I2C接口与W3lOOA通信。I2C是串行通信总线方式,由数据线SDA和时钟线SCL配合完成通信。


  TCP连接分主动连接(TCP客户机模式)和被动连接(TCP服务器模式)。本文主要用到TCP被动连接方式,具体过程如图4所示。首先,要完成芯片的TCP/IP初始化,初始化主要是对必要的寄存器进行相应的设置。这些寄存器包括GAR、SMR、SHAR以及SIPR等。


  上述寄存器被设置后通过执行控制寄存器CO_CR的0位Sys_init激活芯片。其次,设置相应通道,如0通道,的协议选择寄存器C0_SOPR为0X01,选择TCP协议。执行通道O控制寄存器CO_CR中的Socket_Init,同时将C0_Tw_PR、C0_TR_PR及CO_TA_PR置成同一值。然后执行C0_CR的Connect和Listen命令位,TCP连接建立。

  TCP数据传送和接收要在连接建立后才能进行,通过设置RMSR和TMSR来规定数据缓冲器空间大小。TCP数据传送过程是通过使用C0_TW_PR、CO_TA_PR来进行的,它们的初始值相同。然后MCU根据要传送数据的多少增加C0_TW_PR的值。最后,C0_TW_PR、C0_TA_PR两者之差为空闲数据缓冲器空间大小,执行传送命令,同时增加C0_TA_PR的值,数据传送完毕后它们的值又相同。

4 传感器系统软件设计

  IP荷重传感器的工作流程是:首先采集荷重信号,其次将信号进行A/D转换后将结果存储在EEPROM中,并可将信号和处理结果嵌入到存储在EEPROM中的事先定制好的网页中供客户机通过Internet访问,同时在本机LCD上显示荷重信号的数据。W31130A的工作方式类似于Windows的Socket API,因此程序是在Cygnal公司的集成开发环境下,把仪器作为服务器,基于Socket API用C语言编写的。对C8051F021而言,由于是用W3100A来完成TCP协议,其程序简单了许多。通信主程序流程如图5所示。


  网络配置文件预先存储在EEPR()M中,对于仪器的本地IP地址设置为一个静态IP地址,如果没有一个静态IP地址也可以采用动态主机配置协议(DHCP)来动态获取一个IP地址。


5 应用实例
  红矾钠是一种重要的无机化工原料。在红矾钠的生产中,配料是一个十分重要的工序。由于配料现场的环境恶劣,带毒粉尘多,噪声大,严重影响工人的身体健康[…。传统的计算机配料系统由于其传感器远传能力有限,对配料系统的远距离监控往往力不从心,因此,开发具有web功能的IP传感器十分必要。基于IP传感器的红矾钠配料系统组成框图如图6所示。


  系统中Web的工作基于C/S模型,传感器由Web浏览器和Web服务器构成,两者之间采用HTTP协议进行通信,因此在传感器的上层协议应该采用HTTP协议。同时要实现浏览器与嵌入式Web传感器交互,除了要解决上述TCP/IP通信协议接口外,在传感器中应提供一个EEPROM存储相应的网页文件。交互时,HTTP通过统一资源定位器URL(Uniforrm Resource Locator)确定传感器应该为浏览器提供哪些资源。为了节省空间,通过一种灵活的Hllsh算法实现。EEPROM的每一个文件都有一个不同的Hush值与之相对应,存取时可以很快计算出文件的地址。此外,它可以根据网页中嵌入的特殊标志实现动态网页,即显示实时采集的数据并进行控制操作。

进入传感技术查看更多内容>>
    热门新闻
相关视频
  • 直播回放: Keysight 小探头,大学问,别让探头拖累你的测试结果!

  • 控制系统仿真与CAD

  • MIT 6.622 Power Electronics

  • 直播回放:基于英飞凌AIROC™ CYW20829低功耗蓝牙芯片的无线组网解决方案

  • 直播回放:ADI & WT·世健MCU痛点问题探索季:MCU应用难题全力击破!

  • Soc Design Lab - NYCU 2023

精选电路图
  • 简洁的过零调功器电路设计与分析

  • 开关电源的基本组成及工作原理

  • 比较常见的功率整流器和滤波电路

  • 基于M66T旋律发​​生器的电路图解析

  • 一个简单的红外耳机电路

  • 基于CA3193的热电偶放大器电路

    相关电子头条文章