基于SOPC的家庭网关

时间:2022-10-16 01:37:54

基于SOPC的家庭网关

摘 要 介绍了基于SOPC技术的嵌入式智能网络家居系统的实现方法。简单介绍了智能家居系统的总体结构,随后对家庭网关的实现在硬件和软件两方面进行了详细论述。其中运用NiosⅡ软核处理器作为主控制器,实时多任务操作系统 C/OS-Ⅱ为应用软件运行平台, 采用LwIP协议栈为 C/OS-Ⅱ加上网络支持。最终实现了家庭外部TCP/IP通信协议与内部RS485通信协议的转换。由于采用了先进的SOPC技术,本系统具有设计效率高和灵活性好等优点。

关键词 家庭网关 SOPC C/OS-Ⅱ LwIP

中图分类号:TP391 文献标识码:A

家庭网关通过统一的网络总线和控制平台,将家庭的信息家电系统、环境控制系统、安防报警系统、远程操作系统等连成体,向上通过互联网连至小区物业控制中心的综合管理系统,实现远程数据采集、设备监控。向下通过家庭总线连接到家庭中各种不同的功能模快,构成家庭信息控制网,实现家庭中所有相关信息点的数据采集和相关控制点的功能控制,并通过网络接口与外部信息社会相连接。

SOPC技术是Altera公司提出的一种灵活、高效的片上系统设计方案。它的特点在于可编程性,即利用FPGA器件的可编程性来进行SOC(System on Chip)设计。因此可以简化采用传统方式设计的家庭网关,使得众多的控制接口芯片在一片FPGA中实现。并使其具有处理能力强、系统架构清晰、网络性能优越等更多的优势。嵌入实时操作系统 C/OS-Ⅱ属于占先式的多任务操作系统,可固化、可裁减、移植性好,具有良好的可靠性和稳定性,非常适和应用于小型控制系统。但由于 C/OS-Ⅱ不能直接支持TCP/IP,所以在系统中加入TCP/IP协议栈LwIP实现嵌入式系统的网络连接。下面介绍具体的设计思路和步骤。

1家庭网关的硬件设计

智能家居控制器的硬件由FPGA、存储器和模块等三个部分构成,结构如图1所示。

图1:硬件结构图

FPGA芯片是采用的Altera公司的CycloneⅡEP2C35。设计中对FPGA进行配置时,选用了NiosⅡ/S CPU、内部定时器、JTAG异步串行接口、SDRAM控制器、Flash存储器接口、LCD接口、片内存储器和EPCS4串行配置器件控制器接口、RS232接口、RS485接口、DM9000A接口等部件。NiosⅡ CPU和所有部件通过Avalon总线连接在一起,构成基于Avalon总线的SOPC系统架构。

系统的模块包括一个16*2的字符型液晶显示屏LCD和一个16位独立式非编码键盘,用来实现系统的人机交互功能。另外,RS485接口用来实现家庭内各检测单元与FPGA的通信。

存储器模块采用SDRAM来给 C/OS-Ⅱ操作系统和应用程序提供运行空间并缓存大量的中间处理数据。

2家庭网关的软件设计

C/OS-Ⅱ因为没有实现TCP/IP的库,所以需移植开源TCP/IP协议栈LwIP来弥补它的不足。

LwIP在设计时就考虑到将来的移植问题,因此就已经将所有与硬件、OS、编译器相关的独立出来,放在/src/arch目录下。LwIP在 C/OS-Ⅱ上的实现就通过修改这个目录下的文件,其它文件可不做修改。

在/src/arch/include/arch目录下cc.h,cpu.h,perf.h中,有一些与CPU或编译器相关的定义,如数据长度、字的高低位顺序等。这些应该与实际采用的情况相一致。

在LwIP中可以有多个网络接口,每个网络接口都对应了一个struct netif。这个netif包含了相应网络接口的属性、收发函数。LwIP通过调用netif的方法netif>input9()及netif>output()进行以太网packet的收、发等操作。驱动程序工作在IP协议模型的网络接口层,在驱动中主要完成的就是实现网络接口的收、发、初始化以及中断处理函数。

3测试与实验

为验证其是否能够达到所需功能,特别设计了以远程控制应用为例的测试方案,对家庭网关进行测试。测试控制对象选择为台灯控制,具体测试控制页面如图2所示。

图2:设备列表页面图

如图所示,将PC机和家居控制器通过以太网交换机组成局域网,控制器的IP设为10.17.5.33。PC机用浏览器访问控制器,可以获得控制器提供的Web页面,页面中显示可以进行的操作,用户选择某个选项,然后家居控制器根据用户的选项,利用RS232数据线与继电器开发板通信,对台灯进行操作,并把响应结果传回PC机。

测试环境中的台灯对应“客厅”选项,所以如果对它进行控制,选择客厅选项的“开”后按“确定”按钮,完成对客厅灯光的控制后,台灯被点亮。

参考文献

[1] 徐光辉,程东旭,黄如,等.基于FPGA的嵌入式开发与应用[M].电子工业出版社,2005.

[2] [美]Jean J.Labroosse.嵌入式实时操作系统 C/OS-Ⅱ(第二版) [M].邵贝贝,译.北京航空航天大学出版社,2005.

[3] 李力清,路海.一种嵌人式TCP/IP的实现[J].信息与电子工程,2003(1).

上一篇:植被混凝土绿化中水泥含量的研究 下一篇:印度尼西亚某锆英石砂矿区地质特征研究