毕业设计论文嵌入式的智能家居设计

上传人:无*** 文档编号:145529545 上传时间:2022-08-29 格式:DOC 页数:33 大小:1.15MB
收藏 版权申诉 举报 下载
毕业设计论文嵌入式的智能家居设计_第1页
第1页 / 共33页
毕业设计论文嵌入式的智能家居设计_第2页
第2页 / 共33页
毕业设计论文嵌入式的智能家居设计_第3页
第3页 / 共33页
资源描述:

《毕业设计论文嵌入式的智能家居设计》由会员分享,可在线阅读,更多相关《毕业设计论文嵌入式的智能家居设计(33页珍藏版)》请在装配图网上搜索。

1、摘 要随着信息社会的发展,人们的生活也在不断发生着变化,大量的电子产品进入了人们的居家生活中,而这一切的发展变化最终的目的都是为了方便人们的生活,为人类提供一个更舒适、更便捷、更安全的生活环境。其中突出的表现在信息型家电的普及与使用,然而许多人只是单纯地,单独地使用这些先进的信息家电,而人们为了更加综合地利用它们,因此人们就提出了智能家居的概念。随着嵌入式技术的发展和高速宽带网络的普及, 利用网络实现远程监控已为人们广泛接受, 嵌入式网络监控技术正是在此条件下逐步发展成熟起来的. 用户使用Web 浏览器, 通过以太网远程访问内置Web 服务器的监控摄像机, 不但可以实现对现场的远程视频监控,

2、而且可以向监控现场发送指令. 在整个系统的实现过程中, 嵌入式Web 服务器起着十分重要的作用, 因此, 在嵌入式网络视频监控系统中,Web 服务器的设计对监控系统的整体性能具有直接的影响, 只有有了高效率的Web 服务器, 监控系统的性能才能得到充分的发挥。 随着Internet 向普通家庭生活不断扩展,消费电子、计算机、通讯一体化趋势日趋明显,现代智能家居由于其安全、方便、高效、快捷、智能化等特点在21 世纪将成为现代社会和家庭的新时尚。当家庭智能网关将家庭中各种各样的家电通过家庭总线技术连接在一起时,就构成了功能强大、高度智能化的现代智能家居系统。而基于嵌入式系统的家庭智能系统在国内才刚

3、刚出现,随着嵌入式技术更加广泛的应用,随着成本的逐步降低,中国的智能家居最终将走向嵌入式。关键词:嵌入式,智能,监控- -AbstractWith the development of embedded technology and high-speed broadband networks, using remote monitoring network has been widely accepted, of embedded network monitoring technology is evolving in this condition, mature up. Users to u

4、se Web browser, through Ethernet remote access built-in Web server, surveillance cameras, not only can be achieved on the field of remote video monitoring, and can send commands to the monitoring site. Throughout the system implementation process, the embedded Web server plays an important role, so

5、, in the embedded network video monitoring system, Web server design of the monitoring system has a direct impact on overall performance, only with efficient Web server, monitoring performance of the system to get full play.Intelligent computing and control unit can not be separated, the system uses

6、 the MCU (S3C2410) as the master device, SCM application system consists of hardware and software. Extended by a single chip hardware memory, input / output devices and a variety of requirements to achieve single chip system control interface circuit and the external circuit chips or components; sof

7、tware by the microcomputer application system to achieve its specific control of various work processes and management procedures composition. In the MCU application development process, should continue to adjust the software and hardware, and coordinated software and hardware designed to improve ef

8、ficiency, when the system closely with hardware and software, and coordinated, can form high-performance microcontroller applications. The subject completed the Application System the development process of system design, hardware design, software design and system debugging, according to the actual

9、 needs of the development, coordination, cross, organic conduct.With the Internet expanding to ordinary family life, consumer electronics, computer, communications integration becomes increasingly apparent, modern smart home because of its safe, convenient, efficient, fast, intelligent and so on in

10、the 21st century will become a modern society and the family Xin fashion. When the family home in the smart gateway to a wide range of home appliances through the bus technology to connect families together, constitute a powerful, highly intelligent, modern smart home system. The family-based intell

11、igent system for embedded systems in the country only just emerging, with the embedded technology is more widely used, with gradually lower the cost of Chinas intelligent home will eventually be embedded into.Key Words:Embedded, Intelligent,Monitoring- 0 -目 录摘 要IAbstractII第1章 绪论11.1 课题背景11.2 智能家居系统概

12、述11.3智能家居在国内外的发展现状及发展趋势11.3.1 国外智能家居的发展现状11.3.2国内智能家居的发展现状31.3.3智能家居的发展趋势41.4 课题研究目的及意义5第2章 硬件电路设计62.1 系统方案选择62.2系统框图72.3相关芯片及模块简介72.3.1开关电源电路设计72.3.2 CPU-S3C2440介绍82.3.3 GPRS模组介绍9第3章 软件设计113.1 linux操作系统介绍113.2 boa简介113.3 CGI简介123.4 AT命令集简介133.5 HTML网页编写143.6 boa服务器的搭建143.7 CGI程序的编写163.8 GPRS的编程163.

13、9 AD程序17第4章 系统搭建与调试184.1 系统硬件连接184.2 软件调试184.2.1 主控程序调试184.2.2 GPRS程序调试184.2.3 boa服务器调试194.2.4 远程控制调试214.2.5 CGI程序调试214.3实现效果图23第5章 结论1参考文献2致 谢1第1章 绪论1.1 课题背景随着电子技术和自动化的发展,传感器的使用越来越多,功能也越来越强,各种传感器都已经标准化、模块化,这给智能家居控制系统的设计提供极大方便。嵌入式的智能家居使系统的处理能力大大增强,可以带来更快的处理速度、更加逼真的图象以及更加真实的语音等。因为嵌入式技术是伴随着Internet 而生

14、的,所以它具有更加强大的网络性能,可以增加更多的网络应用,很显然嵌入式类智能家居产品在应用方面具有相当的优势,相信应该是未来中国家庭智能化技术主流发展方向。家居生活的智能化是当今计算机网络与通讯技术最人性化的应用,给人们的家居生活带来了全新的体验。今天,借助电话控制或互联网,您几乎可以在任何地方、任何时候监控您的家居状况,为您的家居生活带来前所未有的方便。随着社会全面的信息化、智能化和自动化,家庭智能化必将成为未来家居潮流发展的最新方向!1.2 智能家居系统概述智能家居英文为“Smart Home”,它是以住宅为平台,将家庭中各种与信息相关的设备系统、家用电器、安防系统等智能家居相关系统与产品

15、,通过使用家庭总线技术(HBS)将家庭中各种信息相关的通信设备、家用电器和家用安防装置连接到一个家庭智能化系统进行集中或异地的监视、控制和家庭事务性管理,智能化的家居就能提供全方位的信息交互功能,帮助家庭与外部保持信息交流的畅通,优化人们的生活方式,帮助人们有效安排时间增强家居生活的安全性、舒适性和便利性。智能家居控制系统的总体目标是通过采用计算机技术、网络技术、控制技术和集成技术建立一个由家庭到小区乃至整个城市的综合信息服务和管理系统,以此来提高住宅高新技术的含量和居民居住环境水平。1.3智能家居在国内外的发展现状及发展趋势1.3.1 国外智能家居的发展现状20世纪70年代,发达国家就开始对

16、智能家居进行研究。美国于1984年最早建成具有智能系统的建筑,之后加拿大、欧洲、澳大利亚和东南亚等经济比较发达的国家也先后提出了各种智能家居的方案 。1998年5月新加坡举办的“98亚洲家庭电器与电子消费品国际展览会”上,通过在场内模拟“未来之家”,推出了新加坡模式的家居智能化系统。它的系统功能包括三表抄送功能、安防报警功能、可视对讲功能、监控中心功能、家电控制功能、有线电视接入、电话接入、住户信息留言功能、家居智能控制面板、智能布线箱、宽带网接入和统软件配置等。(1)美国的X-10系统,该系统是通过电力线作为网络平台,采取集中控制方式实现多种功能,目前在国内应用极少,这套系统的功能较为强大,

17、但它暂时不具备在国内市场推广的条件。首先,它是基于美国的电力环境设计的,很难适应国内恶劣的电力线环境;其次,它的功能虽然强大,但是针对西方消费的习惯设计的,难以满足国内消费者的要求;最后,也是最为重要的因素,它的价格也是国内的房地产品和普通消费难以接受的。(2)日本实现室内的家用电器自动化联网之外,还通过生物认证实现了自动门识别系统,站在安装于入口处的摄像机前,用大约1秒钟的时间,如果确认来人为公寓居民,大门就会打开。即使双手提着东西,也能打开大门。还在厕所的便器垫圈上安装有血压计,当人坐在便器上时血压计便能检测其血压。而安装在便器内的血糖检测装置,能自行截流尿样并测出血糖值。此外,厕所内洗手

18、池前的体重仪,可在人洗手的同时测量体重。检测结果均能出现在一个显示器上,全家人的检测值都可被分别保存(3)韩国的数字化家庭系统(HDS)这套系统能让主人在任何时间、任何地点操作家里的任何用具、获得任何服务。比如客厅里,录像设备可以按照要求将电视节目录制到硬盘上,电视机、个人电脑、PDA都会有电视节目指南,预先录制好的节目可在电视、个人电脑和PDA上随时播放欣赏;厨房里,始终处于开启状态并联网的电冰箱成了其他智能家电的控制中心,冰箱可以提供美味食谱,也可上网、看电视;卧室内设有家庭保健检查系统,可以监控病人的脉搏、体温、呼吸频率和各种症状,以便医生提供及时的保健服务,通过与卧室的电视机相连,病人

19、则可向医生“面对面”咨询。(4)荷兰PLCBUS技术 上海索博就采用的是PLCBUS技术。它是一种高稳定性及较高性价比的双向电力线通信中线技术,其主要利用已有的电力线来实现度灯光、家用电器及办公设备的智能控制。PLCBUS系统主要有三部分组成,即是发射器、接受器和系统配套设备。发生器主要作用是通过电力线发射PLCBUS控制信号给接收器,通过接收器的控制,从而打到间接控制电器设备的目的;接收器主要作用是接受来自电力线的PLCBUS控制信号,并执行相关控制命令,从而达到灯及电器控制的目的;系统配套设备主要是为了配合发射器及接收器设备,辅助实现控制目的,例如:三相耦合器、信号转换器、信号强度分析议、

20、吸波器等。PLCBUS技术解决方案包括如下领域的应用:灯光控制,电器控制,HVAC控制以及网络与电器设备间的通信。1.3.2国内智能家居的发展现状我国在智能家居方面经历了近7年的起步阶段,发展速度较慢,这主要是因为没有投入大量的资金,开发技术短期内也不成熟。随着人们对智能家居的了解和科学技术的进步,如今智能家居的研究在我国得到了比较好的发展,但是和一些发达国家相比还有一定的差距。从2000年开始中国智能家居方面分为一下几个阶段:2000年概念年;2001年2003年研究开发年;2003年2010年推广年优化。而一些传统家电业的巨头如海尔、创维、TCL、科龙、海信等也开始进入智能化家居市场。经历

21、了近十多年的发展之后,智能家居在国内得到了应用和推广,在行业内形成了不同的标准,部分以我国自主研制开发的智能家居产品应用到市场,以下是目前国内几种智能家居系统:(1)海信的智能家居控制系统它除了实现一般电脑所能实现的各种功能以外,还能够独立担当家庭的“信息家电控制中心”的角色。用户可以通过几乎是一步到位的简单编排控制把诸如电视机、空调、VCD、功放等多种家用电器的控制功能分门别类地储存起来,以便在需要的时候随时调用。(2)清华同方的e-Home数字家园清华同方基于家庭自动化和建筑自动化技术,配合相关的网络、计算机、软件技术,为中国家庭及社区提供全方位的数字化服务。e-Home数字家园包括三个层

22、次,家庭自动化、小区智能化、社区信息化,目的是使人们的生活和工作更加现代化。(3)海尔的U-Home数字家庭系统海尔的“e家庭”以海尔电脑作为控制中心,各种网络家电作为终端设备,以海尔移动电话作为移动数字控制中心。在技术方面,海尔与微软合作,利用微软的Windows系统和海尔的网络家电技术,使“e家庭”己具雏形,海尔己推出了网络洗衣机、网络冰箱、网络空调、网络热水器、网络微波炉等一系列信息家电的产品。(4)科隆的“现代家居信息服务集散控制系统”科隆集团推出的“现代家居信息服务集散控制系统”有效地集成了家电智能控制、家电远程故障诊断及维护、远程互联网控制和家庭娱乐诸项功能。(5)西南交通大学科技

23、公司开发的NDT系统西南交通大学科技公司开发的网络智能控制数据终端(Intelligent Control Network Data Terminal,简称NDT)系统,是一个基于计算机网络的智能住宅控制系统,可以稳定运行在多种宽带网络平台上。它包括住宅防盗报警、贵重物品防盗报警、多重判断防误报功能、火灾报警、煤气泄露报警、紧急求助、防胁持秘密报警、小区电子公告、远程家用电器控制、电话自动报警功能、Internet电子短信、水电气多表自动抄收等功能。通过计算机网络构成整个住宅小区的集中管理控制系统。1.3.3智能家居的发展趋势如今人们在体验着智能家居系统给生活带来便捷的同时,对智能家居系统的研

24、究提出了新的要求。易操作、低功耗、低成本、实时性好和高准确率成为人们追求的目标。未来智能家居系统将会朝着网络化、标准化、绿色化,人性化、功能多样化方向发展:1节能与智能将引领家居消费新趋势2009年绿色的家居消费观念引领人们进入健康的家居消费时代,而2010年人们的消费趋势将更加注重节能与智能两方面。人们在除了选用传统的节能卫具、灯具来节能的同时,也没有忽视对“智能”生活的要求。智能化的家装设计可以更好地实现人们对人性化家居的需求,而通过智能家居的应用不但可以实现智能化,同样也可以起到节能的效果。未来随着经济的发展,人们对生活质量追求的提高,智能家居也将逐渐引领装修时尚潮流,成为新的消费趋势。

25、2物联网推进无线智能家居产业化进程物联网的概念于1999年正式提出,英文名称为The Internet of things。其意为物物相连的互联网,所应用的信息传感设备包括射频识别装置、红外感应器、全球定位系统、激光扫描器等装置。物联网将广泛用于智能交通、环境保护、政府工作、公共安全、智能家居、老人护理、个人健康等多个领域。其中智能家居的应用发展将以最快的速度拓展开来,现在国内有部分城市都在加紧建设物联网项目,而某些通讯运营商也将逐步推出相应的智能家居服务,物联网的建设将大大推进智能家居产业化的进程。33G平台推智能家居快速发展在3G和物联网的推动下,智能家居的发展将迎来了一个全新的变革。3G

26、平台为智能家居的应用提供了良好的基础,视频通话、家庭远程监控、手机网络控制,以及通过3G技术发展的各种智能家电的控制等等都得到了消费者的喜爱。另外,在3G的产业链上,包括电信运营商、网络设备提供商、终端提供商、终端软件提供商等等,每个环节都蕴藏着巨大商机。1.4 课题研究目的及意义虽然目前智能家居系统有了一定的发展,并且市场上也开始出现相应的产品,但从总体的发展来看不容乐观,特别是统一标准和权威产品的缺乏严重影响了家居智能化的发展。随着科技的提高,经济的发展,人们的物质水平的提高,对家居环境的要求也越来越高,作为家居智能化的核心部分智能家居控制系统也越来越发显得重要。智能家居的开发和建设是未来

27、国家经济发展的必然趋势。智能家居能使住户的控制更便捷、更高效、更能为家庭的日常活动节约不必要的能耗。而且在现如今这个注重绿色环保的世界里,智能家居可以为您智能的控制好空气的湿度、温度等,给人最舒适、最健康的体验。嵌入式出色的视频处理能力给我们视频监控提供了强有力的支持,使得智能家居的安防功能也愈趋完善。第2章 硬件电路设计确定嵌入式控制系统总体方案,是进行系统设计最重要、最关键的一步。设计方法大致如下:根据系统的要求,首先确定出系统类型。选择检测元件,在确定总体方案时,必须首先选择好被测参数的测量元件,它是影响控制系统精度的重要因素之一。选择输入/输出通道及外围设备。选择时应考虑以下几个问题:

28、被控对象参数的数量;各输入/输出通道是串行操作还是并行操作;各通道数据的传递速率;各通道数据的字长及选择位数;对显示、打印有何要求。2.1 系统方案选择(1)单片机选择:方案一: 采用普通MCS-51单片机作为总的控制元件。方案二: 采用凌阳S3C2440开发板作为总的控制元件。比较论证: 方法一MCS-51单片机功能较少,不含有模数转换等功能,因此需增加一些外围电路来实现一些功能,使电路复杂化,精确度不高,采样速率偏低。而方法二简化了电路,增加了系统稳定性。凌阳S3C2440开发板在设计方面提供了极大的方便,它的好处在于,功能较多,因为它不仅囊括了普通单片机的所有功能,更增加了许多新的功能,

29、如: A/D、D/A转换, 语音等,另外又提供了便利的编程环境。 (2)显示部分: 方案一: 采用数码管显示。 方案二: 用LCD显示器显示。 比较论证: 就我们的需要而言数码关显示内容单一,不易产生生动具体的图文,而LCD显示器给我们提供了更大的发挥空间,看起来舒服自然,而且能增加显示的美观性与直观性。最重要的是提供了友好的人机界面。(3)服务器部分: 方案一: 采用TCP或UDP服务器。 方案二:采用boa服务器。比较论证:方案一虽然可行,但搭建容易移植和执行困难,而方案二则不同,Boa服务器和普通Web 服务器一样, 能够很容易完成接收客户端请求、分析请求、响应请求、向客户端返回请求结果

30、等。综上,智能家居控制系统其硬件部分主要由五大部分构成,即GPRS模组、以太网模块、AD转换模块、S3C2440 CPU板模块与接口和电源部分。用户可以通过GPRS模组上的RS232接口和PC机直接相连接使用,通过AD转换模块检测温度变化,电源部分则为各个部分提供工作电源。2.2系统框图本系统是单片机在系统检测以及工程控制方面的应用,其特点是体积小,成本低,功能强,功耗低,是微机应用产品化的最佳机种之一,它已广泛地应用在产品智能化和工业自动化上。而把单片机面向工控领域对象,嵌入到工控应用系统中,实现嵌入式应用的计算机称之为嵌入式计算机系统,简称嵌入式系统。本设计系统框图如图2.1所示:S3C2

31、440CPUCGI接口短信发送/接收Boa服务器LED显示模块GPRS模组IE浏览器AD转换模块温湿度检测摄像头模块图2.1 系统框图2.3相关芯片及模块简介2.3.1开关电源电路设计由于本控制系统单元电路较多对且对5V 电源的要求比较高,其中TC35 模块的突发耗电电流峰值可达2.5A,故外加的稳压器件必须达到足以提供TC35 和其他电路额定电流的条件。在本系统中,采用了芯片s3c2440 完成从12V 到5V 的转换,必须特别注意的是,如图3.6由s3c2440芯片完成开关电源转换需要大功率的电感(100uH)和电容,以提高储能的能力,达到单元电路的耗电需求。s3c2440为5.0V3A

32、开关电源稳压器。图2.2 5V 开关电源稳压器电路2.3.2 CPU-S3C2440介绍S3C2440A是韩国三星公司推出的16/32位RISC微控制器,其CPU采用的是ARM920T内核。特点:具有PLL时钟发生器,主频最高可达533M。内核1.2V供电最高400M,1.3V供电最高533M。存储器支持1.8V、2.5V、3.0V、3.3V。I/O均支持3.3V供电。s3c2440为单机器周期执行指令集。具有电源管理功能,可以使系统以普通方式、慢速方式、空闲方式和掉电方式工作,降低产品功耗。内核结构:采用ARM920T内核,具有16KB指令Cache、16KB数据Cache和存储器管理单元M

33、MU,指令高速存储缓冲器(I-Cache),数据高速存储缓冲器(D-cache)提高指令执行效率及数据存储效率,减少主存带宽和响应性带来的影响,加强的ARM体系结构MMU,用于支持winCE、linux等操作系统,内部高级微控制总线(AMBA)体系结构(AMB2.0,AHB/APB)。存储器控制器特性:S3C2440采用总线结构管理片上外设及内存。S3C2440的存储器管理器提供访问外部存储器的所有控制信号。27位地址信号、32位数据信号、8个片选信号、以及读/写控制信号等。总共有8个存储器bank(bank0bank7),其中,bank0-bank5为固定128MBbank6和bank7的容

34、量可编程改变,可以是2、4、8、16、32、64、128MB,最大共1GB。bank0可以作为引导ROM,其数据线宽只能是16位和32位,其它存储器的数据线宽可以是8位、16位和32位。8个存储器bank:bank0-bank5:SRAM、ROM(NOR FLASH)。Bank6bank7:SRAM、ROM SDRAM(NOR FLASH)。s3c2440支持两种启动方式:NOR FLASH启动,即代码直接写入NOR FLASH,运行时直接在NOR FLASH上运行。NAND FLASH启动方式,即代码烧到NAND FLASH中,借助片内4K的sram,将代码由NAND FLASH烤到SDRA

35、M中,在SDRAM中运行。2.3.3 GPRS模组介绍GPRS模组采用SIM300通讯芯片(如图3.3),利用无线移动网络实现语音传输和点对点数据传输。同时,模组内具备TCP/IP协议栈,可以直接利用它实现无线上网。模组使用标准的UART串行通信接口(如图3.4)与主芯片进行通信,可以与任何带有通用UART串行通信接口的控制器进行连接。该模组具有以下特性:(1)支持EGSM900M,DCS1800M,PCS1900M三种频段,兼容GSM Phase 2/2+。(2)集成PAP协议,可供PPP连接使用。(3)集成TCP/IP协议,方便实现上网功能。(4)支持包交换广播控制通道(PBCCH)。(5

36、)无限制的辅助服务数据支持(USSD)。GPRS模组使用标准串口与主控制器进行通讯。模组带有一个10针的接口,该接口可以直接和MCU相连接。或者用户可以通过模组上的RS232接口和PC机直接相连接使用。GPRS模组需通过J4的电源开关信号(PWRKEY)输入引脚向GPRS模组输入如图2.2所示的上电时序GPRS才能被启动,启动后GPRS的信号指示灯会闪烁。也可以手动按下GPRS模组上的ON/OFF按键,大约2秒之后松开,GPRS模组亦可以被启动。图2.3 GPRS模组启动时序图GPRS模组启动之后,即可通过UART接口发送AT指令来控制语音或数据收发。图 2.4 GPRS 模组SIM300核心

37、部分电路图图2.5 GPRS 模组接口部分电路图连接GPRS模组到实验箱的J8(GPRS)接口上,注意一定要按顺序(实验箱的12V接模组的VCC,IOB0接PWRKEY,GND接GND)插接,且不可插反或错位;断开JP7、JP8的所有跳线;断开手柄接口与手柄的连接;如Error! Reference source not found.5配置GPRS;如连接耳麦和天线。第3章 软件设计3.1 linux操作系统介绍Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词

38、本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。除了核心程序以外,一个操作系统还需要其它的系统程序跟应用程序才有实用性,Linux 系统中常用的系统程序大部份是美国自由软件基金会 (Free Software Foundation) 开发出来的软件,而且也有不少机构或个人为 Linux 开发应用程序,这些程序一样大多都是自由软件,任何人都可以免费的在网络上取得,不过自行去取得这些程序再一一安装非常不便,于是有些公司或团体就会去搜集、整合 Li

39、nux 上的程序,把核心-系统程序-应用程序总合起来构成一个完整的操作系统,让一般使用者可以简便的安装完整个系统,这就是所谓的安装软件包(distribution),我们一般讲的 Linux 系统便是针对这些安装软件包而言,同样是 Linux 系统,却分成不同公司、机构整合出来的不同安装软件包,这就是大家常常在网络上看到 Linux 有那么多种的原因。近几年的发展,已使得Linux成为微软、升阳的另一大敌手。Linux挟其价格低廉、品质良好与稳定的竞争优势,正无形无影地扩散至众多以PC为主的工作 平台上。早期因缺乏商业性应用软件,单凭学术味道浓厚的工具程序,是无法打入一般商家的主流操作系统的。

40、然而,今日的Linux已非吴下阿蒙,KDE、 Gimp、Gnome等计划相继地开展,为X提供了更多图形接口的桌面操作环境和应用软件。 约1993年左右,Linux首先以发行软体(distribution)的型态出现。这是一群完整的软件,包含安装程序、核心、应用软件、X、驱动程序等的软件包,经由Internet下载至磁盘片进行安装。那时的安装程序简陋,难以成功地安装妥当,接口亲和力不足和硬件支持不良是最大的障碍。3.2 boa简介Boa 是一款单任务的HTTP 服务器, 与其他传统的Web 服务器不同的是当有连接请求到来时, 它并不为每个连接单独创建进程, 也不通过复制自身进程来处理多链接, 而

41、是通过建立HTTP 请求列表来处理多路HTTP 连接请求, 同时它只为CGI 程序创建新的进程, 这样就在最大程度上节省了系统资源, 这对嵌入式系统来说至关重要. 同时它还具有自动生成目录、自动解压文件等功能, 因此, Boa 具有很高的HTTP 请求处理速度和效率, 在嵌入式系统中具有很高的应用价值。Boa服务器和普通Web 服务器一样, 能够完成接收客户端请求、分析请求、响应请求、向客户端返回请求结果等任务. 它的工作过程主要包括:(1)完成Web 服务器的初始化工作, 如创建环境变量、创建TCP 套接字、绑定端口、开始侦听、进入循环结构, 以及等待接收客户浏览器的连接请求;(2)当有客户

42、端连接请求时,Web 服务器负责接收客户端请求, 并保存相关请求信息;(3)在接收到客户端的连接请求之后,分析客户端请求, 解析出请求的方法、URL 目标、可选的查询信息及表单信息, 同时根据请求做出相应的处理;(4)Web 服务器完成相应处理后, 向客户端浏览器发送响应信息, 关闭与客户机的TCP 连接。Boa服务器根据请求方法的不同, 做出不同的响应. 如果请求方法为HEAD, 则直接向浏览器返回响应首部; 如果请求方法为GET, 则在返回响应首部的同时, 将客户端请求的URL 目标文件从服务器上读出, 并且发送给客户端浏览器; 如果请求方法为POST, 则将客户发送过来的表单信息传送给相

43、应的CGI 程序, 作为CGI 的参数来执行CGI 程序, 并将执行结果发送给客户端浏览器。 Boa 的功能实现也是通过建立连接、绑定端口、进行侦听、请求处理等来实现的。3.3 CGI简介CGI 是 Common Gateway Interface 的缩写,是服务器端和用户沟通的程序, 它可以使你的网页更生动,网络上很多工具例如搜索引擎、留言板、BBS等都是 CGI 程序。 CGI是用来沟通HTML表单和服务器端程序的接口(interface)。CGI并不是一种语言,而是可以被其他语言所应用的一个规范集。理论上讲,你可以用任何的程序语言来编写CGI程序,只要在编程的时候符合CGI规范所定义的一

44、些东西就可以了。由于C语言在平台无关性上表现不错(几乎在任何的系统平台下都有其相应编译器),而且对大多数程序员而言都算得上很熟悉,因此,C是CGI编程的首选语言之一。CGI是: “公共网关接口”(Common Gateway Interface)的简称,是HTTP服务器与其它程序进行“交谈”的一种工具,其程序须运行在网络服务器上。CGI是一段程序,它运行在Server上,提供同客户端 Html页面的接口。1CGI的功能:(1)通常情况下CGI程序被用来解释处理来自表单的输入信息,在服务器产生相应的处理,并将相应的信息反馈给浏览器。(2)CGI程序使网页具有交互功能。2CGI处理步骤:(1)通过

45、Internet把用户请求送到服务器。(2)服务器接收用户请求并交给CGI程序处理。(3)CGI程序把处理结果传送给服务器。(4)服务器把结果送回到用户。3CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。(1)CGI程序的输出:CGI程序中的标准输出是经过重定向了的。CGI程序并不会在服务器上产生任何的输出内容,而是被重定向到客户浏览器。这样,如果编写一个C的CGI程序的时候,把一个HTML文档输出到它的stdout上,这个HTML文档会被在客户端的浏览器中显示出来。这也是CGI程序的一个基本原理。CGI程序第一行输出的内容必须是:Content-Type:text/h

46、tml这个输出作为HTML的文件头。因为CGI不仅可以像浏览器输出HTML文本,而且可以输出图像,声音之类的东西,http服务器向远程发送文件时要说明文件类型。(2)两个重要的CGI环境变量:QUERY-STRING:GET方法表单输入的数据,URL中间号后的内容。CONTENT-LENGTH:POST方法输入的数据的字节数。3.4 AT命令集简介AT即Attention,AT 命令集是从TE(Terminal Equipment )或DTE(Data Terminal Equipment)向TA(Terminal Adapter)或DCE(Data Circuit Terminating E

47、quipment)发送的。通过TA,TE 发送AT 命令来控制MS(Mobile Station)的功能,与GSM 网络业务进行交互。用户可以通过AT 命令进行呼叫、短信、电话本、数据业务、补充业务、传真等方面的控制。SIM300可设置的AT命令包括GSM07.05、GSM07.07、ITU-T介绍的AT命令,除此之外,SIM300还支持SIM公司扩展的AT命令。每个AT命令行必须以“AT”为前缀开始,以r结束。AT命令通常跟随其回应,回应的格式为:rn+回应+rn。下文中r或rn都被省略。SIM300常用的AT命令表1.1。详细的AT命令说明请参考SIM300 AT Command Set。

48、表1.1 常用AT命令命令命令格式功能描述ATAT测试连接是否正常。AT+CMIC=?AT+CMIC=,设置MIC的通道及增益。AT+CMGF=?AT+ CMGF =设置短消息格式。AT+CHFA=?AT+CHFA=切换声音通道。AT+CLVL=?AT+CLVL=喇叭音量调节。AT+CSCS=?AT+CSCS=选择TE 字符集。ATDATD;拨号,建立会话、数据或传真等业务。ATHATH0呼叫挂起。ATAATA呼叫应答。AT+VTS=?AT+VTS=发送DTMF 拨号音。AT+CMGS=?AT+CMGS= , AT+CMGS= 发送短消息。AT+CMGR=?AT+CMGR=,读取短消息。3.5

49、 HTML网页编写HTML(Hyper Text Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。HTML的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。HTML结构: 文件类型标记开始,HTML文件 文件头开始 页面标题 页面标题标记 文件头结束 主题标记开始 正文内容 主题内容 主题内容结束 文件类型标记结束3.6 boa服务器的搭建1配

50、置boa(修改配置文件boa.conf)(1)建立/etc/boa目录, 并复制boa.conf到该目录。(2)修改访问权限:修改User nobody 为 User 0修改Group nogroup 为 Group 0(3)设定日志目录:建立/var/log/boa目录并设置为可读写权限; 修改boa.conf文件; ErrorLog /var/log/boa/error_log AccessLog /var/log/boa/access_log (4)设置html文件目录:DocumentRoot /var/www (5)设置默认索引文件(主页): DirectoryIndex index

51、.html (6)设置cgi脚本目录: ScriptAlias /cgi-bin/ /var/www/cgi-bin (7)根据4、5、6步的设置建立相关文件夹并放入文件。 (8)运行boa程序,观察现象。http:/192.168.220.1202boa配置相关目录: (1)boa.conf的存放目录:默认boa.conf是在/etc/boa.conf目录的,boa运行时会自动去找/etc/bon.conf目录。这个设定是在defines.h文件中定义的,可在编译之前进行修改。 (2)log目录:Boa的日志分为Errorlog 和 AccessLog 两部分,具体目录可在可在boa.con

52、f中修改。如:ErrorLog /var/log/boa/error_logAccessLog /var/log/boa/access_log (3)html文件目录:可在boa.conf文件中修改如: DocumentRoot /var/www(4)cgi脚本目录:可在boa.conf文件中修改如: ScriptAlias /cgi-bin/ /var/www/cgi-bin(5)mime.types存放目录:可在boa.conf文件中修改如: MimeTypes /etc/mime.types若不使用则改为:MimeTypes /dev/null3移植boa到开发板(1)修改Makefil

53、e: 将:CC = gccCPP = gcc -E 该为:CC = arm-linux-gccCPP = arm-linux-gcc -E(2)编译make(3)在开发板上建立相关目录及文件拷贝PC上/etc/mime.types文件到开发板/etc目录下(或者将boa.conf文件中MimeTypes /etc/mime.types修改为:MimeTypes /dev/null )3.7 CGI程序的编写CGI程序主要完成与四个网页接口的连接,即主登陆窗口、led显示窗口、参数设置窗口、短信发送、实时显示参数窗口。分别编写work.c,led.c,msg.c等文件,然后在linux下生成cg

54、i程序。gcc work.c o work.cgi。3.8 GPRS的编程根据AT指令集完成接收报警短信,以及发送短信息控制开发板资源。并且保证实时监听开发板状态!实时可以发信息控制!完成recv_message.c文件。void Info_Send(int fd,char *num,char *Info)char Tel_Num_Uin80;char Info_Uni300;gprs_sendstring(fd,AT+CMGS=);StrToUniTel(num, Tel_Num_Uin);gprs_sendstring(fd,Tel_Num_Uin);usleep(300*1000);St

55、rToUni(Info, Info_Uni);/将信息转换为UNICODE码gprs_sendstring(fd,Info_Uni);gprs_sendstring(fd,032n);3.9 AD程序由于开发板资源有限,本设计中使用AD的三个通道分别仿真温度、湿度。printf(实时温度:%d 摄氏度n,data);ret = read(fd1, buf, 512);sscanf(buf, set_tem_max=%d&set_tem_min=%d, &temmax, &temmin);printf(temmax:%d temmin:%d data:%dn,temmax, temmin, da

56、ta);if(data temmax)printf(警报:温度过高!n);else if(data temmin)printf(警报:温度过低!n);elseprintf(正常n);close(fd1);第4章 系统搭建与调试4.1 系统硬件连接由于应用的是凌阳研制的s3c2440开发板,所以,只需根据要求连接好虚拟机与开发板,并把程序分别烧入开发板,连接好GPRS模组,设置好相应选项。GPRS模组使用标准串口与主控制器交互。模组带有一个10针的接口,该接口可以直接和MCU相连接,也可以通过模组上的RS232接口转化电平后与PC机相连。在GPRS模组的SIM卡座旁边有J5和JP1组成的配置跳线

57、。在使用GPRS模组之前,需要首先正确配置这些跳线,以便选择使用MCU还是PC与模组通信。4.2 软件调试4.2.1 主控程序调试首先,先将虚拟机与pc机建立好连接,以便互相传输数据和文件;然后建立虚拟机与开发板之间的连接,调试好虚拟机的nfs服务器和samba服务器将对后来的设计提供更多的方便。给开发板烧写操作系统(bootloader,kernel,rootfs.yaffs),以便boa服务器可以在其上运行。4.2.2 GPRS程序调试首先,要了解GPRS的机制。GPRS_init()函数就是对GPRS进行初始化的。初始化程序很简单,就是发送一些AT命令给GPRS模组。程序代码如下:voi

58、d GPRS_init()GPRS_SendCommand(AT+CMIC=0,15n);GPRS_SendCommand(AT+CHFA=1n);GPRS_SendCommand(AT+CLVL=100n);GPRS_SendCommand(AT+CSCS=UCS2n);.程序设计参见附录,此处遇到问题是如何提取出短信内容以便过后用来控制开发板,但要注意的是,收到的短信内容为unicode码,要将其翻译为普通的字符串才可使用,另外要注意从模组中接收数据时哪一条是短信内容,经反复调试成功读取短信内容,为后面工作提供方便。4.2.3 boa服务器调试首先配置boa程序生成Makefile,如图4

59、.1,然后如图4.2编译make,配置boa.Conf文件如图4.3,要理清楚配置文件boa.Conf中的设置与相应文件的位置,起初因未能清除致使服务器不能工作,调试过程中更要注意error.Log和access.Log两个文件的作用,前一个是出错记录文件,后一个是访问记录文件,熟练运用它们便于更快的找出错误所在。同时,编译boa可执行程序时也遇到各种各样的问题,通过不断修改、不断上网查找才make成功,其中学到了许多调试方法。最后编写脚本文件以便方便执行程序。图 4.1 配置boa图4.2 配置boa.conf文件图 4.3 编写脚本文件4.2.4 远程控制调试远程通过GPRS控制开发板,需

60、要按步调试:先测试收不收得到短信,再读出短信内容,在通过内容控制相应设备。4.2.5 CGI程序调试其中,开始不能很好协调html和cgi程序,以至使无法登陆、参数无法设置成功、不能实时显示温度,及控制开发板资源,通过向他人学习和上网查找资料,慢慢得以完善。 Int main()printf(Content-Type: text/html;charset=GB2312rnrn);fd = open(/dev/adc/0,O_RDWR);ret = read(fd,&data,4);printf(实时温度:%d 摄氏度n,temp);.例如下面一段便是设置参数的一段程序:int main(void)int fd;char *data;int len;printf(%srnrn,Content-Type:text/html);printf(设置保存中,请稍后.n);Uart_Init();/初始化串口GPRSInit();/初始化GPRS模块len = atoi(getenv(CONTENT_LENGTH);if(len != 0) /printf(%dn, len);data = (char *) malloc(len);read(0,data,len);if(fd=open(parameter,O_RDWR|O_CREAT) = 0)printf(

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!