智能家庭网关的开发与应用毕业论文目录摘要 (3)Abstract (4)第一章综述 (5)1.1 什么是智能家居 (5)1.2 设计目标 (6)第二章网关环境搭建 (7)2.1 硬件平台概述 (7)2.1.1 S3C2410微处理器 (8)2.1.2 CS8900A以太网控制芯片 (9)2.1.3 RS-232和RS-485 (9)2.1.4 RJ-45以太网口 (10)2.2 软件平台概述 (11)2.2.1 Mizi Linux (11)2.2.2 Boa 小型Web服务器 (11)2.2.3 SQLite 轻型数据库 (11)2.2.4 软件平台构造 (12)2.3 软件环境搭建 (12)2.3.1 烧写Mizi Linux (12)2.3.2 搭建交叉编译环境 (13)2.3.3 Boa移植 (13)2.3.4 SQLite移植 (15)2.3.5 SQLite使用方法与常用命令 (17)第三章网关应用程序设计与实现 (18)3.1 建立数据库 (18)3.2 后台程序设计与实现 (21)3.2.1 CGI与客户端的通讯机制 (21)3.2.2 程序中读写SQLite数据库 (26)3.2.3 RS485串口读写 (30)3.2.4 指令格式定义 (35)3.2.5 CGI脚本举例 (37)3.3 前台网页设计与实现 (40)3.3.1 HTML简介 (40)3.3.2 CSS简介 (42)3.3.3 JavaScript简介 (46)3.3.4 Ajax技术 (50)第四章网关使用说明书 (57)4.1 产品概述 (57)4.2 使用说明 (58)4.2.1 用户登陆 (58)4.2.2 主界面 (59)4.2.3 家电控制 (59)4.2.4 系统设置 (64)第五章结论 (72)参考文献 (73)附录 (74)附录A:外文资料翻译—原文部分 (74)附录B:外文资料翻译—译文部分 (78)附录C:光盘资料说明 (82)第一章综述1.1 什么是智能家居智能建筑已经在世界各地蓬勃地发展起来了,并成为 21 世纪建筑业发展的主流。
智能建筑是集现代建筑技术、现代通信技术、现代控制技术、现代仪器仪表技术和现代计算机技术于一体的产物。
近年来,随着计算机网络通信技术的高速发展和人们对住居环境要求的提高,也将“智能”的概念引进到了住宅的建设当中。
“智能”如今给业者带来诸多的遐想……●当家里发生紧急求助报警时,能及时自动通过自家通知家人,同时通过小区计算机网络通知管理中心;●当您不在家时,为您的住宅提供全面的安全护卫,如防盗、防火、防煤气,发生警情能够迅速通过自家及小区以太网络通知有关人员进行排除,为您的生活与生命提供保障;●盗贼入室行窃,系统会自动通知主人、保安或者110 报警中心,同时家中警号发出刺耳的警报声,家中的灯光全部打开;●不用起身就可以控制家里所有的灯并可调节亮度;外出之前只要按一个键就可以关上所有的灯和应关的电器;●躺在床上就能关掉卫生间的换气扇;●可以根据自己的需要调整灯光亮度并设置场景,轻触一个按键就可以实现各个场景之间的转换;●每天晚上,所有的窗帘都会定时自动关闭;●在办公室或在出差时打开电脑上网,家中的安全设备和家用电器立即呈现在你的面前;●在炎热的夏天,你可以在下班前在办公室通过电脑打开空调,回到家里便能享受清凉;在寒冷的冬季,则可以享受到融融的温暖。
回家前启动电饭煲,一到家就可以吃上香喷喷的米饭。
如果不方便使用电脑,打个回家一样可以控制家电。
当你在家中,可以操起任何一部或免提子机来控制家中的电器;●外出时不必担心自家的窗户是否关闭,一个或轻敲键盘就能随心所愿。
●一个遥控器就可以解决家中的电器进行集中控制,省去了在一堆遥控器中寻找的烦恼;●国国外的新闻时事、金融信息,社区的各种通知和提供的服务可以根据您的选择定期给您发送。
以上所述并非是遥不可及的梦想,本项目开发的智能家庭网关正是为了把这些智能家居的梦想变为现实!您在外忙碌了一天,家里的事让智能家居帮您做吧!1.2 设计目标如上所述,本项目开发的智能家庭网关正是为了实现智能家居控制的目标。
目前,本网关已经实现下列功能:●对家中各个房间的电器设备的控制,如:电视、空调、DVD、音箱、窗帘等。
●配合智能开关,可实现对各个房间电灯的控制。
●网关具备对码学习功能,在通过对各个家电遥控器的对码学习后即可实现网关远程控制功能。
●具有情景设置功能,网关共预设了6个情景。
用户可以点击任一情景,即可使所有进行过情景设置的灯光设备进入相应的状态。
●用户可根据自己的实际房型进行相应的房间设置,并未每个房间添加不同的电器设备。
●网关可以设置普通用户和超级用户二级密码,方便主人对网关核心功能的控制。
由于智能家庭网关这一项目涉及的方面繁多,工程量相当大,所以目前实现的功能还是相当有限的,还有许多非常实用的功能需要进一步去开发。
既便如此,整个家庭网关的构建框架、构建方法已基本形成,为后续开发奠定了基础。
由于家庭网关开发过程中涉及的方面过多,本文主要就基于网关主机平台的后台和前台软件开发做详细阐述。
如无特别说明,后文所涉及的“网关”或“家庭网关”均特指网关主机平台。
第二章网关环境搭建2.1 硬件平台概述网关硬件平台使用基于三星S2C2410微处理器的开发板。
该开发板由一块核心板和一块母版构成,如下图:① SAMSUNG S3C2410微处理器② CS8900A 以太网控制芯片 ③ Hynix HY57V561620CT-H SDRAM 16M*8Bit * 2 ④ SAMSUNG K9F1208U0B 64M*8Bit NAND Flash⑤ JTAG 端口 ⑥ RJ-45以太网口 ⑦ RS-232串口⑧ RS-485串口图2-1 S342410开发板①② ③④⑤⑥ ⑦ ⑧⑨⑨电源接口2.1.1 S3C2410微处理器S3C2410处理器是Samsung公司基于ARM公司的ARM920T处理器核,采用0.18um制造工艺的32位微控制器。
该处理器拥有:独立的16KB指令Cache和16KB数据Cache,MMU,支持TFT的LCD控制器,NAND闪存控制器,3路UART,4路DMA,4路带PWM的Timer ,I/O口,RTC,8路10位ADC,Touch Screen接口,IIC-BUS 接口,IIS-BUS 接口,2个USB主机,1个USB设备,SD主机和MMC接口,2路SPI。
S3C2410处理器最高可运行在203MHz。
(1)S3C2410芯片集成了大量的功能单元,包括:●部1.8V,存储器3.3V,外部I/O3.3V,16KB数据Cache,16KB指令Cache,MMU。
●置外部存储器控制器(SDRAM控制和芯片选择逻辑)。
●LCD控制器,一个LCD专业DMA。
●4个带外部请求线的DMA。
●3个通用异步串行端口(IrDA1.0,16-Byte Tx FIFO and 16-Byte Rx FIFO),2通道SPI●一个多主I2C总线,一个I2S总线控制器。
●SD主接口版本1.0和多媒体卡协议版本2.11兼容。
●两个USB HOST,一个USB DEVICE(VER1.1)。
●4个PWM定时器和一个部定时器。
●看门狗定时器。
●117个通用I/O。
●56个中断源。
●24个外部中断。
●电源控制模式:标准、慢速、休眠、掉电。
●8通道10位ADC和触摸屏接口。
●带日历功能的实时时钟。
●芯片置PLL。
●设计用于手持设备和通用嵌入式系统。
●16/32位RISC体系结构,使用ARM920T CPU核的强大指令集。
●带MMU的先进的体系结构支持WinCE、EPOC32、Linux。
●指令缓存(Cache)、数据缓存、写缓存和物理地址TAG RAM,减小了对主存储器带宽和性能的影响。
●ARM920T CPU核支持ARM调试的体系结构。
●部先进的位控制器总线(AMBA)(AMBA2.0,AHB/APB)。
(2)系统管理●小端/大端存储支持●地址空间:每个BANK128MB(全部为1GB)。
●每个BANK可编程为8/16/32位数据总线。
●BANK0到BANK6为固定起始地址。
●BANK7可编程BANK起始地址和大小。
●一共8个存储器BANK。
●前6个存储器BANK用于ROM、SRAM和其它。
●两个存储器BANK用于ROM、SRAM、和SDRAM(同步随机存储器)。
●支持等待信号用以扩展总线周期。
●支持SDRAM掉电模式下的自刷新。
●支持不同类型的ROM用于启动(NOR/NAND Flash、EEPROM和其它)。
(3)芯片封装●272-FBGA封装2.1.2 CS8900A以太网控制芯片CS8900芯片是Cirrus Logic公司生产的一种局域网处理芯片,在嵌入式领域中使用非常常见。
它的封装是100-pin TQFP,部集成了片RAM、10BASE-T收发滤波器,并且提供8位和16位两种接口。
2.1.3 RS-232和RS-485RS-232和RS-485均属于串口畴。
人们熟悉的RS-232串口标准出现较早,难免有不足之处:1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL 电平不兼容故需使用电平转换电路方能与TTL电路连接。
2)传输速率较低,在异步传输时,波特率为20Kbps。
3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
4)传输距离有限,最大传输距离为50英尺,实际有效距离仅为50米左右。
由于RS-232存在上述这些不足,于是就不断出现了一些新的串口接口标准,RS-485就是其中之一,它具有以下特点:1)RS-485的电气特性:逻辑“1”以两线间的电压差为+(0.2—6) V表示;逻辑“0”以两线间的电压差为-(0.2—6)V表示。
接口信号电平比RS-232-C 降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。
2)RS-485的数据最高传输速率为10Mbps。
3)RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。
4)RS-485最大的通信距离约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。
RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。
在本网关的开发、应用中,RS-232接口主要用于连接PC,以便通过超级终端等软件来连接网关主机进行开发、调试等工作。
而RS-485接口则用于连接转发器,网关发送的任何指令都通过此端口发往转发器,并由转发器完成指令的发送工作。