当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]由W3100A构成嵌入式网关的家庭智能系统

 摘要:主要从嵌入式系统自身的特点出发,介绍一种新型的基于嵌入式网关的家庭智能系统。系统以以太网为通信媒介,利用嵌入式网关进行家庭内外信息交换,通过浏览器对家庭的各种信息进行实时、有效的管理和调度,为现代家庭生活提供智能服务。

    关键词:W3100A 嵌入式网关 DNS DHCP

引言

当今社会逐渐入网络时代,因特网已成为重要的基础信息设施。目前,大部分网络终端仍以PC的形式出现,但是从计算机应用普及的情况看,嵌入式系统更为普及,过去大量的浩如烟海的8位/16位单片机的嵌入式设备,已经到了享受网络方便的时候了。近来的统计证明:PC机CPU的产量仅是MCU产量的1/100,并且由于MCU的成本低廉,应用非常普及。在工业测控、智能仪器、智能家庭领域,MCU应用系统已无处不在。在这些场合中,以MCU为核心的设备同样也需要解决接入因特网的问题。本文在分析嵌入式系统与常规计算机系统研发不同点的基础上,介绍一种新型家庭智能系统。

1 家庭智能系统的体系结构

家庭智能系统体系结构的总体框图如图1所示。从大的方面看,家庭智能系统可由三部分组成:家庭自动化外部接口模块、家庭自动化图像模块、家庭智能化内部无线收发与控制模块。未来的家庭中,多件家用电器与各种报警器将组成一个家庭的内部网,并通过内部网的网关接入因特网。一方面,内部网中的家电可以通过网关访问因特网上资源。如网络电视机每天早晨自动访问用户喜欢的某个电视台的网站,自动下载晚上的节目表。另一方面,用户可以在因特网任务一点通过浏览器对家里的家用电器与报警器进行远程控制。如用户出门在外,可以在外地上网,通过浏览器,启动家里的摄像机实时监察家里的安全。家庭自动化内部无线网模块要由消息处理模块和基于工频的无线收模块(NRF401)构成。它将成为Internet网的发展沃土,顺应“网络服务”向“网络应用”扩展的大潮。本文主要介绍嵌入式网关,以及如何在远程访问具有静态或动态IP地址嵌入式网关的技术。

2 嵌入式网关

目前,国内外嵌入式网关的设计有二种方案:第一种方案,是基于软件来实现TCP/IP协议栈;第二种是直接利用TCP/IP协议栈芯片。本文介绍的嵌入式网关采用第二种方案,它由W3100A、RTL8201、MCU组成,如图2所示。

图2中,DLC为数据链路控制,MAC为媒体访问控制,IP为网际协议,ICMP为因特网控制报文协议,TCP为传输控制协议,UDP为用户数据摄协议,DPRAM为双端口存储器。

第一种方案在大批量生产时,具有成本低的优点,因为用软件设计的TCP/IP协议栈,是一次投交多次使用;但开始投次比较大且设计复杂,因为需要实时操作系统的支持,而第二种方案,尽管在大指生产时成本高,因为每个智能设备都要嵌入TCP/IP协议栈芯片;但是在非大批量生产时具有投次比较大,设计简单、灵活的特点,因为不需要实时操作系统的支持。本文采用的TCP/IP协议栈芯片是W3100A.它有如下特点:首先,它自带TCP/IP协议栈(如TCP、UDP、Ipver.4、ICMP、ARP、DLC、MAC协议);其次,它能同时支持四个独立的连接通道,具有高速传输速率(如网关的MCU用Atmel 8951,那么网关的传输速率是200b/s;若用Intel386,那么网关的传输速率是3Mb/s)同时,它具有与MCU和物理层电路接口。从图2可以看到;W3100A除了具有上述特点外,还提供了Socket应用程序编程接口,为那种需要进行因特网连接的智能设备,提供了一种简便、廉价、高效的方案,只要将W3100嵌入智能设备就可以了。这样,大大减少了软件研发费用,减轻了MCU的工作量,同时便利该产品具有竞争力,并符合嵌入式系统设计原则:①价格。由于嵌入式设备对价格非常敏感,通常要求价廉质优,故在设计产品时,在满足功能要求的情况下尽量降低成本。②环境。在功能要求满足的同时,要考虑到该产品在恶劣环境下,能否正常工作,比如温度、电源功耗等等。③使用。用户在使用时,操作应尽量简单。

RTL8201是单口10/100Mb/s以太网收发器,超低耗和少于180mA/3.3V操作电压,支持全双工和半双工操作,提供一个LED显示器指示一个网络回环存在。由于上述的优点,该嵌入式网关可以用在IP电话、网络MP3、网络相机和工业控制总线上。图3是嵌入式网关的原理图。

3 软件设计思想

为了适应分组到达的随机性,系统必须具有能够从网络接口读取分组的能力,故本系统采用“软件中断”的机制。当一个分组到达时,产生一个硬件中断,设备驱动程序接收分组重置接口设备。在中断返回之前,设备驱动程序会通知硬件安排下一个较低优先级的中断;在此次硬件中断结束后,低优先级的中断会继续执行。下面结合“软件中断”的机制、动态主机配置协议(DHCP)和域名系统(DNS),来说明如何在远程访问具有静态或动态IP地址嵌入式网关的技术(主要说明如何在远程访问具有动态IP地址嵌入式网关的技术)。在介绍该技术前,先介绍几个概念。

    (1)DHCP原理

当一台设置为自动获取IP地址的计算机在登录网络时,会向网络上发送“租”一个IP地址的请求,专门负责提供IP地址的DHCP服务器回应这个请求,为这台计算机提供一个空闲的IP地址。DHCP的主要用途是:通过服务器的伺服进程协助来控管各个主机(执行中的用户端)上不可缺少的网络连线参数。

(2)DNS

DNS(Domain Name System,域名系统)是一种组织成域层次结构的计算机和网络服务命名系统,用于TCP/IP网络。它主要是通过用户亲切而友好的名称代替枯燥而难记的IP地址,以定位相应的计算机和相应服务。DNS就是完成在名称和IP地址之间的映射。对于动态分配IP,做一个DHCP程序来绑定用户网关的MAC地址和IP地址,然后再根据不同IP设定权限,防止IP地址盗用。

(3)HTTP协议的作用原理

WWW是以Internet作为传输媒介的一个应用系统,WWW网上最基本的传输单位是Web网络。WWW的工作基于客户机/服务器计算模型,由Web浏览器(客户机)和Web服务器(服务器)构成,两者之间采用超文本传送协议(HTTP)进行通信。HTTP协议是基础TCP/IP协议之上的协议,是Web浏览器来Web服务器之间的应用层协议,是通用的、无状态的、面向对象的协议。

图4 基于嵌入式网关的服务器与远程浏览器的请求与应答示意图

    根据上述HTTP协议的作用原理,本文实现了基于浏览器/嵌入式Web服务器模式的家庭智能系统。首先初始化W3100ATRTL8201,通过UDP传输DHCP报文,获取动态IP地址,再得到DNS服务器支持,由DNS服务器负责建立IP地址与域名(别名)映射;同时,创建进程负责IP地址与域名(别名)映射更新,确保通过别名就可以访问该嵌入式设备。初始化完成后,远程浏览器就可以进行TCP链接了。建立TCP链接后,服务器等待远程浏览器的请求,是一个被动的设备。当接收到建立TCP链接的请求后,来识别随后收到的来自远程客户机浏览器的数据包。通过软件中断,监听W3100A、等待、接受客户机连接到RTL8201后,在W3100A体现出来的标志;创建与Socket字相关联的输入流和输出流;然后读取客户机的请求信息。在用户登录前,远程浏览器必须获得存储在Flash内部的网页,由此才能进行登录和控制。GET为其请求数据包中的第一个词,表示这个请求是用来接收Web资源的。该服务器仅对HTTP请求的第一行Get/home.html/HTTP.1进行检查和解释。因为除了数据外,所有响应信息数据都是常量。服务器的响应数据包已经由程序定制好,存放在服务器中。响应的HTTP数据头和资源一起存放在Flash中。服务器与浏览器链接建立后,服务器检查接收的请求数据,然后调用8051内部的程序模块,将相应的home.html发送给远程浏览器。Web页的存储范围为0000H~7FF0H,大约32KB,而8字节的用户名和8字节的密码可以存放在外围Flash存储区未端。在处理浏览器提交的数据信息时,按照两个步骤进行程序设计。首先,服务器根据远程浏览器传送过来的数据信息,决定服务器的HTTP服务的方式。其实,将Web资源发送给远程浏览器或使用函数来处理浏览器提交的数据,并将此数据传递给消息处理模块。该消息处理模块根据所要控制设备类型查表,然后启动无线收发模块将表中的消息发送出去。每个智能设备根据此消息启动相应的操作,并借助于设计合理的数据结构和函数实现软件设计。上述过程可用图4和图5形象地说明。

结语

本文介绍的嵌入式网关有很大的发展前途,它以以太网为通信媒介,利用嵌入式网关进行家庭内外信息交换;通过浏览器对家庭的各种信息进行实时、有效的管理和调度,为现代家庭生活提供智能服务。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在这篇文章中,小编将为大家带来浏览器缓存的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 浏览器 缓存 浏览器缓存

为增进大家对浏览器缓存的认识,本文将对浏览器缓存的清空方法以及清空浏览器缓存时需要注意的事项予以介绍。

关键字: 浏览器 指数 缓存

浏览器缓存是计算机存储技术中的一种机制,主要用于临时存储网页资源(如图片、脚本、样式表等),以便在用户再次访问相同网站时能够快速加载页面内容,提高浏览速度。然而,随着时间的推移,缓存中的数据可能会过期或导致网站显示不正常...

关键字: 浏览器 缓存清除

随着人工智能技术的快速发展,关于通用人工智能(AGI,Artificial General Intelligence)与强人工智能(Strong AI)的讨论日益激烈。这两者概念相似,都追求构建具备类似人类智能的系统,但...

关键字: 人工智能 智能系统 强人工智能

通用人工智能(Artificial General Intelligence,AGI)是指具有类似于人类综合智能的人工智能系统。它能够执行多种任务,并在没有人类干预的情况下独立学习和改进。通用人工智能的目标是创建一种能够...

关键字: 人工智能 智能系统 计算机视觉

纳德拉曾表示:“当公司的核心产品不复往日风采时,推到重来极其困难。我一直在观察那些能做到这一点的公司,并由此获得启发。” 在《刷新:重新发现商业与未来》这本书中,纳德拉回顾了自己早年的工作经历,并对就任微软首席执行官以来...

关键字: 核心产品 浏览器 市场

它能够不断学习并理解你的每一句话。能想象吗?智能系统能像你家人一样了解你。一般导航会根据车主录入的地点去推荐最优路线,而翼虎智能系统则能够通过学习车主出行习惯,适时的主动提供终点引导和路线推荐。每个上班的早晨,上车后在屏...

关键字: 翼虎 智能系统 导航

南京2022年10月17日 /美通社/ -- 当下,消费者的需求更加多元化和精细化,越来越多的消费者选择购买洗碗机等新兴家电。对于注重个性、时尚前卫的90后来说,选择家电不仅注重品质,也在乎颜值。因此,一款集实力与颜值为...

关键字: 洗碗机 西门子 BLDC 智能系统

今天,微软为Win11推送了22H2版本Release预览版的KB5019509更新,在现有22H2稳定版的基础上,提前加入了部分新功能。在KB5019509更新中,Win11终于加入了用户翘首以盼的标签式文件资源管理器...

关键字: WIN 微软 RELEASE 浏览器

北京2022年7月22日 /美通社/ -- 悦商集团(以下简称"悦商"或"公司")(纳斯达克代码: WETG)为微商提供软件服务(SAAS)和云智能系统的技术服务提供商,今日宣布其...

关键字: 纳斯达克 BSP SE 智能系统
关闭
关闭