一种基于消费总线的嵌入式家庭网关的制作方法

文档序号:6565879阅读:144来源:国知局
专利名称:一种基于消费总线的嵌入式家庭网关的制作方法
技术领域
本实用新型涉及一种消费总线(CEBus)家电网络系统的网络(Internet)接入方案,具体说是基于消费总线的嵌入式家庭网关。
背景技术
家电按功能可以分为以下几种系统照明系统,如各种电灯、开关;环境控制(HVAC)系统,包括空调、风扇、取暖器等;家庭多媒体系统,包括电视机、机顶盒、DVD、音响等;通讯系统,如电话、传真机等;安防系统,如各种传感器、报警器、摄像头等。作为单个的设备或独立子系统,它们都比较完善,但是作为一个整体就显得缺乏智能和协调,主要表现为首先,各个电器自成体系,而相互之间缺乏联系,甚至会相互干扰;第二,各种电器协调工作的自动化程度不够;第三,用户的操作界面不统一;第四,各个设备的功能有冗余;第五,控制器与执行器之间的对应关系比较固定,缺乏柔性和可扩展性。
如果将电器设备联成网络,使设备之间互相操作,就能在家电单体自动化的基础上联网以实现家电系统的综合自动化。因此所构建的网络一般称为家庭自动化控制网络,或简称为家电网络(见ZL02126052.4)。消费总线(CEBus)作为一种较新和较完备的家电网络标准,是目前家电网络领域的一个主流协议。
随着Internet逐渐融入人们的日常生话,人们对家电连接到Internet的需求也越发迫切,用户希望通过Internet可以从户外对家电网络进行远程监控和操作。

发明内容
针对上述需求,本实用新型的目的是提供一种基于消费总线的嵌入式家庭网关,它是一种连接于家电网络和Internet之间的嵌入式设备,使得用户可以方便地在Internet上从远端对家中的符合CEBus协议的家电设备进行监控和管理,同时也使得远程设备维护和集成设备管理成为可能,还可以使设备主动地通过Internet获取信息或发送信息。
为达到上述目的,本实用新型的技术解决方案是基于消费总线的嵌入式家庭网关,包括主控器模块,双绞线通讯模块,存储器模块,网络控制模块,人机接口模块,其中存储器模块与主控器模块的数据总线和地址总线相连,双绞线通讯模块、网络控制模块和人机接口模块分别与主控器模块的I/O口相连;网络控制模块与Internet相连;双绞线通讯模块通过双绞线与接于消费总线的家电相连。
本实用新型的优点是1)用户操作界面友好,非常便于用户使用;2)双绞线通讯模块采用家庭控制片上系统芯片,成本低,可靠性强;3)该系统是一个开放性系统,可扩展性强;4)利用互联网技术、移动通信技术可方便的对家电进行远程控制,为家庭用户提供更完美的服务。


图1是基于消费总线的嵌入式家庭网关的构成框图;图2是双绞线通讯模块的结构框图;图3是家庭网关的软件框图;图4是家庭网关状态机模型。
具体实施方式
家庭网关是为家电内部网和外部的Internet建立连接用的,通过家庭网关实现智能家居的Internet接入功能。网关支持标准的10M以太网接入方式,可以通过Internet使用浏览器以可视化图形界面的方式,与家电网络中的家电建立快速可靠的连接。
参照图1,本实用新型的基于消费总线的嵌入式家庭网关,包括主控器模块1,双绞线通讯模块2,存储器模块3,网络控制模块4,人机接口模块5,其中存储器模块3与主控器模块的数据总线和地址总线相连,双绞线通讯模块2、网络控制模块4和人机接口模块5分别与主控器模块的I/O口相连;网络控制模块4通过网线与Internet相连;双绞线通讯模块2通过双绞线与接于消费总线的家电相连,如洗衣机、冰箱、电视机、微波炉等。
在图1所示的具体实例中,主控器模块1采用ARM芯片S3C2410;存储器模块3采用64MB的FLASH芯片K9F5608U0C;网络控制模块4采用CS8900芯片;人机接口模块5采用液晶显示屏和USB鼠标;双绞线通讯模块2采用了家电网络控制SoC(片上系统)芯片HN600,该芯片内部结构如图2所示,其以增强型的8位MCS-51为内核,扩展有3通道10位ADC、串行LCD控制器、SPI主控制器、EIA-600(CEBus)数据链路层、11位DAC、I2C主控制器、PCA(可编程控制阵列)、中断控制器、P0口、P1口、P2口、P3口、1K字节启动程序存储单元(BootRAM)、4K字节数据RAM和256字节的数据RAM。
本实用新型的基于消费总线的嵌入式家庭网关运行在嵌入式操作系统ARM-Linux上。软件采用模块化设计方法,主要包括以下模块CEBus数据帧解析模块、事务控制模块、总控模块、网络传输模块,如图3所示。
CEBus数据帧解析模块主要由三部分组成,包括消息处理模块、CEBus协议栈和语义分析模块。现以CEBus信息至Internet的传输过程为例,首先CEBus总线上传输过来的协议数据单元(PDU),借助CEBus协议栈,通过语义分析模块进行语义分析。该协议栈是基于CEBus数据帧和通讯机制的基础上建立的。然后在消息处理模块生成可以为后面的事务控制模块使用的,本网关特有的中间层语言——消息,最后将消息发送到后继模块。Internt信息至CEBus的过程则正好与前述过程相反。
事务控制模块其主要作用是向上提供一个可靠的双向连接,称之为一个事务。为了保证连接的可靠性,使用了重发、定时器、事务标识符三种机制,并且为了实现本网关的高效性,进行了如下抽象1)将事务的处理抽象为一个有限状态机;2)在CEBus数据帧解析模块中对CEBus数据帧,或者说PDU进行解析而得到的数据,以中间语言的形式抽象为消息;3)将事务的所有活动抽象为一系列的状态;4)把事务在各种状态间的转换条件抽象为一系列规则。
所谓状态机模型是一个描述状态变迁的方法,它总是将一个状态向另一个状态的变迁视为由输入消息激励所产生的结果。对于家电网络来说,各设备间的通讯建立过程就是一个典型的有限状态数之间的状态变迁过程。事务处理模块可以根据输入的事务消息和当前状态,确定状态如何变迁。
这样,每当一个事务产生都可以用有限状态机的不同状态来对它进行描述和管理。而每当消息促使事务需要作出某种操作时,有限状态机中的当前状态也随之而改变。而这种改变是根据预先制定好的规则来实现的。要做到这一点,首先要认真分析事务所有可能的状态,及在该状态下可能存在的状态转换规则。
最终设计出的有限状态机如图4所示。从图中可以看到,网关所描述的事务具有系统监听、等待事务标示符分配、等待调用响应、等待事务处理和等待处理结果5个状态,13个状态转换规则(如图中箭头所示)。其中1到4的状态转换负责实际的事务处理,5到8的状态转换则主要进行出错处理,9到13主要是进入消息等待。在具体的实现过程中,创建一个Hash(哈希)表作为状态匹配的主要数据结构,采用了当前状态和消息触发的事件作为索引。在同一索引值下,建立单向链表以存放不同的转换规则。由于Hash表在查询和匹配上的高效性,可使有限状态机在状态间实现高速转换,提高了系统整体性能。
另外,为了提高效率,支持多事务的并发处理,以事务标识符为索引,创建了另一个Hash表来存放当前存在的所有事务。一旦有新的消息到来,即可根据事务标识符将对应事务激活,提交给系统处理。这样就可以使用单个线程来完成多事务并行处理了。
整个模块运行机制如下1)初始化,接收来自CEBus数据帧解析模块的消息,并创建消息队列。
2)从队列中提取需要处理的消息。
3)根据消息的事务标识符对Hash表进行查询,激活相应事务。如果事务不存在,则新建一个事务在状态机中进行状态转移。
4)确定事务在状态机中当前状态。
5)根据状态机的当前状态和消息种类,通过查询Hash表找到相应入口。
6)通过入口进入对应的单向规则链表,依次对比,直到找到合适的规则为止。如果没有合适的规则匹配,则返回一个错误信息。
7)根据找到的规则,转入相应的处理程序,同时更新状态机中事务的当前状态。
8)从消息队列中获取新的消息,重复上述过程。
总控模块如果说CEBus数据帧解析模块、事务控制模块、网络传输模块是整个系统实现的功能器官,那么总控模块就是整个系统的心脏。它负责处理整个网关各个模块的初始化工作并协调它们的运行与中止。另外,在这个模块中利用ARM S3C2410的优秀性能,采用了多线程技术,最大限度的利用了微处理器的工作能力,使各个模块能够并行操作,提高了整个网关的运行效率。
网络传输模块在网络传输模块将网络控制芯片CS8900搭载于ARMS3C2410系统之上,可提供非常优秀的网络互联功能。在其协助下可创建一个网络(HTTP)服务器,并支持CGI(通用网关接口)。使得用户可以通过Web方式来提交事务,配置相应参数,实现家电网络的可视化访问与操作。用户对网络家电的远程访问与监控将会像浏览网页一般轻松,大大简化了操作,方便了使用。
该网络服务器服务器采用事件驱动的方法,将用户对家电网络的访问、监控转化为网络家电的事件,把相关消息发送到事务管理模块。通过事务管理,其所对应事务进行状态转换,并处理相关操作。
网关对HTTP的支持是建立在底层完备的TCP/IP协议栈的基础上的。由网络传输模块结构图可见,HTTP服务运行在应用层,传输层使用了TCP以保证控制信息传输的可靠性,其下由网络层的IP协议提供寻址、路由、数据损坏检测和更正等功能。TCP/IP协议栈的使用是通过特殊的应用编程界面(API)socket编程来实现的。其主要程序设计思路如下1)采用socket_init()函数,初始化系统网络接口;2)构造套接字类型tcp_socket对象作为服务器端套接字;3)调用socket_listen()函数开启网络监听;4)调用socket_wait_established()函数以等待连接建立;5)使用socket_mode()函数设置数据流格式;6)调用socket_gets()函数、sock_puts()函数来收发数据;7)使用socket_tick()函数来进行客户端与服务器端的套接字通讯;8)通讯结束,调用socket_close()函数关闭套接字,断开双方连接。
基于消费总线的嵌入式家庭网关在工作时,其典型应用过程如下1)用户通过网页浏览器来提交对某个网络电器的访问请求;2)HTTP服务器接收该请求,将它转化为相应的网络家电事件;3)事务管理模块接收到对应消息,在Hash表中查询相应事务,如没有则建立之;4)通过状态机进行状态转换,将结果以事件的方式返回;5)网络服务器识别该事件,并将结果显示在用户的网页浏览器上。
在整个过程中,本实用新型为用户提供了一个较为友好的界面,使用方便。用户不需对家电网络有太多了解,甚至无需具备太多计算机、网络通讯方面的专业知识就能实现网络家电经CEBus与Internet的相互访问,远程监控等。这符合家电网络易用性的开发目标。
权利要求1.一种基于消费总线的嵌入式家庭网关,其特征是包括主控器模块(1),双绞线通讯模块(2),存储器模块(3),网络控制模块(4),人机接口模块(5),其中存储器模块(3)与主控器模块(1)的数据总线和地址总线相连,双绞线通讯模块(2)、网络控制模块(4)和人机接口模块(5)分别与主控器模块的I/O口相连;网络控制模块(4)与Internet相连;双绞线通讯模块(2)通过双绞线与接于消费总线的家电相连。
2.根据权利要求1所述的基于消费总线的嵌入式家庭网关,其特征在于主控器模块(1)是ARM芯片S3C2410。
3.根据权利要求1所述的基于消费总线的嵌入式家庭网关,其特征在于双绞线通讯模块(2)是芯片HN600。
4.根据权利要求1所述的基于消费总线的嵌入式家庭网关,其特征在于网络控制模块(4)是CS8900芯片。
专利摘要本实用新型公开了一种基于消费总线的嵌入式家庭网关,其包括主控器模块,双绞线通讯模块,网络控制模块,存储器模块,人机接口模块,其中存储器模块与主控器模块的数据总线和地址总线相连,双绞线通讯模块,网络控制模块和人机接口模块分别与主控器模块的I/O口相连;网络控制模块与Internet相连;双绞线通讯模块通过双绞线与接于消费总线的家电相连。本实用新型的优点是用户操作界面友好,非常便于用户使用;双绞线通讯模块采用家庭控制片上系统芯片,成本低,可靠性强;该系统是一个开放性系统,可扩展性强;利用互联网技术、移动通信技术可方便地对家电进行远程控制,为家庭用户提供更完美的服务。
文档编号G06F17/00GK2930126SQ20062010520
公开日2007年8月1日 申请日期2006年6月29日 优先权日2006年6月29日
发明者倪彬斌, 吴明光 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1