嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例

上传人:E**** 文档编号:89467110 上传时间:2019-05-25 格式:PPT 页数:44 大小:1.35MB
返回 下载 相关 举报
嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例_第1页
第1页 / 共44页
嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例_第2页
第2页 / 共44页
嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例_第3页
第3页 / 共44页
嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例_第4页
第4页 / 共44页
嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例》由会员分享,可在线阅读,更多相关《嵌入式Linux系统开发与应用 教学课件 ppt 作者 康维新 第7章 嵌入式Linux综合设计项目实例(44页珍藏版)》请在金锄头文库上搜索。

1、第7章 嵌入式Linux综合设计项目实例,7.1 网络视频监控系统 7.2车载信息娱乐系统 7.3 基于嵌入式平台的电梯监控系统 7.4无线点菜系统 7.5 基于嵌入式与Web Service的智能家居系统,7.1 网络视频监控系统,1、系统设计概要 本网络视频监控系统是基于客户机/服务器结构的,ARM2410嵌入式开发板作为服务器端,PC机作为客户端。客户端和服务器之间通过Socket通信。 2410开发板端连接USB摄像头作为监控端,放在需要监控的地方; PC机可以是在任何地方,通过网络实时查看监控端传过来的画面。 网络视频监控系统要具备如下功能: 时时监控功能:时时监控摄像头所监视的范围

2、; 数据流采集功能:时时采集监控数据流; 照片抓取功能:比如每隔x秒抓取一张照片。 为了观测到流畅的视频图像,需要对采集来的视频图像数据进行JPEG压缩,以减少网络传输的负担。,7.1 网络视频监控系统,按以上功能分析确定整个系统由 视频图像采集模块、 视频图像压缩模块、 数据发送模块、 数据接收模块、 视频图像显示模块构成, 其中前三个模块在服务器端,后两个模块运行在客户端。,7.1 网络视频监控系统,网络视频监控系统的功能模块逻辑图,7.1 网络视频监控系统,目前市面上最常见、应用最广的USB摄像头有两大系列,采用ov511芯片的摄像头和采用中星微公司生产的zc301芯片的摄像头。Linu

3、x本身自带了采用ov511芯片的摄像头的驱动程序。zc301的摄像头的驱动可以从网上下载针对Embeded环境的专门的patch,比如gspcav1-20071224.tar.gz等。 ov511采集到的数据是rgb的位流,而zc301采集到的数据是jpeg编码的位流。尽管采集到的数据有所差异,但它们采集的方式都是相同的。目前的USB摄像头视频图像采集(监控)系统,无论是采用ov511芯片的摄像头,还是采用zc301芯片的摄像头,其图像采集都是基于Video4Linux编程接口实现的。 Video4Linux为目前市场常见的电视捕获卡、并口和USB口的摄像头提供统一的编程接口,同时也提供无线电

4、通信和文字电视广播解码和垂直消隐的数据接口。本文主要针对USB摄像头设备文件/dev/video0,进行视频图像采集方面的程序设计。,7.1 网络视频监控系统,系统软硬件开发环境: 硬件环境,北京博创科技ARM2410-s及ARM2410经典嵌入式开发平台,ov511或zc301芯片的USB摄像头;宿主机为Windows XP,及VMWare6.0下安装的红帽子Linux 9或RHEL4。 软件环境,Video4linux标准视频处理接口、JPEG压缩库、Socket通信机制、多线程程序设计、C语言开发编译环境、armv4l-unknown-linux-gcc编译器。,7.1 网络视频监控系统

5、,各模块功能流程: 视频图像采集模块:加载USB摄像头驱动,根据Video4linux标准接口编程,将采集的图像存入图像缓冲区; 视频图像压缩模块:将图像进行JPEG压缩,保存为JPEG文件,等待发送; Socket数据发送模块:将JPEG文件发送至远程监控客户端; Socket数据接收模块:发起连接请求,从服务器端接收JPEG图像文件数据; 视频图像显示模块:显示接收到的视频图像。 Video4linux视频编程流程:打开视频设备-读取设备信息-改设备当前设置-进行视频采集(两种方法:内存映射,直接从设备读取)-对采集的视频进行处理-关闭视频设备。 视频图像采集结构体:根据Video4lin

6、ux标准视频接口进行编程时所采用的结构体,包括视频采集部分的5 个关键结构体video_capability、video_picture、video_mbuf、video_mmap、video_channel。限于篇幅,具体视频程序接口设计祥见随书光碟的“远程视频监控程序设计试验指导书”等文档。,7.1 网络视频监控系统,2、系统实现流程 嵌入式开发环境搭建-摄像头采集驱动移植-视频监控模块(完成摄像头采集应用程序接口V4L接口函数编写)-JPEG库环境建立与移植-移植流媒体服务器-配置客户端监控程序。 建立嵌入式开发环境式开发流程的第一步: 建立开发环境(安装Linux)- 安装工具链(安装

7、GCC交叉编译环境,配置环境变量PATH)- 配置宿主机网络环境和NFS服务- 建立与开发板串口连接。,7.1 网络视频监控系统,视频监控系统的核心模块式视频的采集 使用Vdeo4Linux标准接口实现的视频采集流程图,7.2车载信息娱乐系统,娱乐与通讯方面的新技术结合,使得车载信息实现包括三维导航、实时路况、IPTV、辅助驾驶、故障检测、车辆信息、车身控制、移动办公、无线通讯、基于在线的娱乐功能及TSP服务等一系列应用,极大的提升了车辆电子化、网络化和智能化水平。 本例车载信息娱乐系统设计的功能主要如下: 1车辆导航和定位功能 2网络通信 3信息显示和语音提示 4多媒体播放功能 车载系统可根

8、据用户需要实现其他功能,例如通过GPRS自动报警增加自动报警功能,通过USB接口连接图像采集设备,对车内外进行视频监控等功能。,7.2车载信息娱乐系统,车载信息娱乐系统功能图,7.2车载信息娱乐系统,设计思路 车载信息系统是是运用计算机、卫星定位、通信、控制等技术来提供安全、环保及舒适性功能和服务的汽车电子设备,是智能汽车的组成部分,也叫做汽车电子装置。车载信息系统包括汽车电脑、智能导航仪、行车记录仪、车载多媒体等。车载信息系统结构示意图:,7.2车载信息娱乐系统,车载系统的基本原理 基于Linux车载信息系统是以ARM内核处理器和操作系统Linux作为开发平台的,并结合单片机技术、传感器技术

9、、CAN总线等完成各种信息的采集并传输到ARM处理器上,在操作系统Linux的管理下,利用GUI实现对消息的获取和响应车载信息的显示,实现一个友好的人机交互界面,同时为驾驶员方便行车提供了有力的保证。 车载系统开发平台结构 本系统以博创2410s为开发平台,核心板上集成了SamsungS3C2410处理器,64 MB SDRAM和16M的Flash,为应用开发提供足够的空间。底板上还提供了多种外设接口:串口RS-232、以太网接口、LCD接口、触摸屏接口等。 系统软件体系结构 系统采用了嵌入式Linux操作系统,并在此基础上设计软件体系结构。,7.2车载信息娱乐系统,硬件电路设计 系统中硬件部

10、分分为 ARM 嵌入式开发板和各外围模块。前者主要是由ARM920T 内核的处理器S3C2410 及相关FLASH 存储器、RAM 内存及处理器外围接口芯片组成,外围接口芯片包括CAN 驱动器、GPS 接收模块,LCD 触摸屏以及GPS 接收机天线。采用三星公司的S3C2410的ARM920T为核心控制电路,主要用于协调和管理系统中的其他硬件,因其具备丰富的接口电路,能满足不同子模块的不同接口要求。根据需要,以S3C2410为核心扩展64 MB Nand-Flash和2MB的Nor-Flash用于存放bootloader和嵌入式Linux操作系统等。64 MB SDRAM 用作系统运行时的内存

11、,2410提供的LCD提供了更好的人机交互界面。FPGA协处理器,可以负责完成车载信息系统中各子模块中的算法要求有高编程处理性能的功能。例如,对于各种音频/视频流媒体等高速数字信号的处理,以及无线通信、语音识别等。,7.2车载信息娱乐系统,硬件结构图,7.2车载信息娱乐系统,Nor-Flash电路连接 CAN驱动程序软件结构图,7.2车载信息娱乐系统,系统软件设计流程(右) 系统主界面(下),7.3 基于嵌入式平台的电梯监控系统,介绍一种基于嵌入式开发板S3C2410的电梯远程监控系统。以微控制器(MCU)为核心的嵌入式系统,该系统具有开销少、尺寸小、功能强、针对特定应用的开发等特点. 系统结

12、构和功能 本系统基于客户/服务器结构,ARM2410S嵌入式开发板作为电梯服务器端,PC机为客户端。客户端在Linux下开发,客户端和服务器端之间通过Socket通信。 系统在嵌入式开发平台上构建了一个电梯模型并完成了键盘模拟电梯运行,同时用WEBEYEV2000摄像头采集视频图像并对采集的图像进行JPEG压缩处理,然后将视频图像和电梯运行数据传输至监控中心进行实时显示等功能。 (1)服务器端 视频采集模块:采用WEBEYE V2000摄像头,编译并加载OV5ll驱动程序;利用Video4Linux标准视频处理接口进行视频图像的采集;交叉编译JPEG库并移植至开发板,从而实现对视频图像数据的J

13、PEG压缩,以减小网络传输负担。,7.3 基于嵌入式平台的电梯监控系统,小键盘电梯模拟模块:17键小键盘区模拟电梯的按钮区,键盘l9数字键分别对应电梯的9个楼层,适当修改键盘驱动,使其能够随时读取键值;同时选择同方向优先的电梯算法实现电梯的运行。 Socket网络传输模块:采用Linux下的Socket编程方法,利用TCP协议建立现场和监控中心的连接并发送相关数据。 (2)客户端 Socket网络接收模块:采用Linux下的Socket编程方法,利用TCP协议建立现场和监控中心的连接并接收相关数据。 客户端显示模块:将服务器端采集的视频图像和电梯运行状态直观地显示在客户端主机上。,7.3 基于

14、嵌入式平台的电梯监控系统,软硬件环境 系统用到了ARM2410S开发板上的以下硬件环境。 17键小键盘:其作用在前面已经介绍。 HOST端口:连接USB摄像头。 WEBEYE V2000摄像头:连接到HOST端口上,作为电梯内部的视频监控。 系统用到了以下软件环境: 键盘驱动。 OV511驱动程序:USB摄像头的驱动程序,配合video模块使用。 Video4Linux标准视频处理接口:为Linux下的视频应用程序提供了一套统一的API,用于采集视频数据。 JPEG压缩库:静态图像数据压缩标准既可用于灰度图像又可用于彩色图像。 Qt:开发监控中心图形界面,用于处理并显示从服务器端传送过来的图像

15、和电梯数据。 Socket机制:建立网络通信。 多线程; C语言开发与编译环境。,系统体系结构,7.3 基于嵌入式平台的电梯监控系统,系统的模块设计,电梯监控系统的功能模块逻辑图,7.3 基于嵌入式平台的电梯监控系统,电梯模拟方案设计 (1)电梯实体的模拟设计 用ARM2410开发板上的小键盘来模拟电梯的内部操作,数字键代表电梯的楼层,通过按键到达想要的楼层。 在前面的基本设计概念中提到的模拟电梯的基本结构就是模拟电梯的核心数据结构,电梯的运行就是根据这个数据结构进行的。运行过程中每到达一个目标层以及每一次按下键盘都会更新这个结构体,监控中心通过获取这个结构体信息和视频信息来实现了电梯的监控。

16、 (2)电梯运行控制方案设计 电梯总体运行遵循同方向优先算法,该算法如下:电梯有一个运行方向,当有多个目标请求时,先响应同方向的请求,即有多个目标层时先到达同方向上的目标层。举个简单的例子,如果电梯处于上升状态并停靠在5楼,目标层有l楼、4楼、8楼和9楼,则先升到8、9楼再下降到4、1楼,即到达的楼层顺序是:8,9,4,1。 电梯总会通过判断当前到达的楼层是否是目标层或者根据某种算法计算确定下一个目标层的层数等方案来控制电梯正确的停靠。 系统实现(略),7.4无线点菜系统,本系统采用ARM开发板加Linux操作系统开发,能够综合应用LCD、触摸屏和操作系统的API函数的应用程序电子点菜系统。 此系统可由客人自行完成点菜,选菜,计费的整个过程。 系统工作流程 顾客点菜时, 服务员利用手中的PDA进行点菜。顾客确认后通过PDA将数据发送给终端接收系统, 将菜单数据传给后台数据库。系统收到数据后把菜单打印送到各厨房,同时数据库系统保存交易数据记录。收银也同步更新数据,并按规定格式分别打印菜单或酒水单。,7.4无线点菜系统,系统功能模块 (1)用户权限管理 为保证系统安全,要求系统

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号