厨用超声清洗机ARM人机交互系统的设计

厨用超声清洗机ARM人机交互系统的设计[20191214194409]
摘 要
超声清洗技术具有很多优点,如高效、安全、方便、无损等。在厨用清洗领域,传统的清洗方式采用流动的生活用水进行反复冲洗,或者采用洗涤剂进行清洗,存在的缺点即是耗水严重,同时清洗效率低,清洗后排放会造成二次污染。与传统清洗相比,超声清洗节水、无二次污染,并能达到更好的清洗效率。在厨用方面越来越发挥独特的优势。厨用清洗中主要涉及蔬菜、水果和餐具,它们对清洗的要求较高,随着人们生活水平的提高和生活节奏加快,人们对食品的安全也日益重视,清洗机也逐渐向高效、环保、便捷方面发展。
厨用超声清洗机由超声发生器和ARM端人机交互系统两部分组成。本文首先以超声清洗机总体设计为起点,描述了其主要组成部分的具体功能,同时根据实际需求从硬件平台、操作系统及人机交互界面开发平台三个方面论述了人机交互系统的方案设计和开发流程。接下来重点集中在宿主机的嵌入式开发平台的构建、Bootloader与Linux内核及YAFFS2文件系统在ARM S3C6410平台上的移植。在此基础上,阐述了如何移植和编写厨用超声清洗机所需要的底层驱动程序,并详细说明了人机交互界面开发环境Qt的建立过程及向目标平台的移植过程。通过模块化和面向对象相结合确定人机交互的结构和显示界面的功能,重点分析了视频与清洗程序进程的切换、对外部IO设备的操作等的实现方法。
最后完成了基于ARM的厨用超声清洗机的人机交互系统,包括部分设备驱动的开发、显示界面设计和整机测试工作。测试结果表明:人机交互系统设备驱动工作正常,界面简洁直观且操作人性化、多样化,系统拓展性良好。
 查看完整论文请+Q: 351916072 
关键字:厨用超声清洗机;ARM;Linux;Qt/Embeded;人机交互
目录
摘 要 I
Abstract II
目录 III
第1章 绪论 1
1.1 课题目的和意义 1
1.2 国内外厨用超声清洗机的发展现状及趋势 1
1.3 嵌入式系统与Linux的发展现状及趋势 2
1.3.1 嵌入式系统的概念 2
1.3.2 Linux操作系统在嵌入式领域的优势 3
1.4 研究工作和主要内容 4
第2章 厨用超声清洗机系统构成 6
2.1 总体方案设计 6
2.2 具体功能需求分析 6
2.2.1 超声发生器具体功能分析 6
2.2.2 人机交互系统具体功能分析 7
2.3人机交互系统方案设计 8
2.3.1 硬件平台 8
2.3.2 操作系统 9
2.3.3人机交互界面开发平台 10
2.4 人机交互系统开发流程 11
2.5 本章小结 12
第3章 Linux开发平台构建 13
3.1 宿主机开发平台构建 13
3.1.1 交叉编译环境的建立 14
3.1.2 网络文件系统的建立 15
3.2 Bootloader的移植 16
3.3 Linux内核移植 17
3.4根文件系统移植 20
3.5 本章小结 21
第4章 Linux设备驱动移植和开发 22
4.1 Linux设备驱动简述 22
4.1.1 Linux内核模块 22
4.1.2 Linux驱动接口 23
4.2 Linux普通IO驱动设计 23
4.2.1 GPIO接口 23
4.2.1 GPIO程序设计 24
4.3 Linux按键驱动设计 25
4.3.1 按键接口 25
4.3.2 按键程序设计 26
4.4 LCD驱动移植 27
4.4.1 LCD接口 27
4.4.2 嵌入式LCD驱动的移植 28
4.5 本章小结 29
第5章 人机交互界面设计与实现 30
5.1 Qt简介 30
5.1.1 Qt的特性 30
5.1.2 Qt版本 31
5.2 Qt开发环境搭建 31
5.2.1 ubuntu中Qt的安装 31
5.2.2 目标板中Qt的移植 32
5.3 交互界面设计 34
5.3.1播放器的图形界面 34
5.3.2清洗测试主程序的显示界面 35
5.4 关键设计点的实现 37
5.5 系统测试与分析 39
5.6 本章小结 41
第6章 总结与展望 42
6.1 工作总结 42
6.2 研究展望 42
参考文献 44
致 谢 46
附录1 厨用超声清洗机实物图 47
附录2 攻读学士学位期间主要实践创新工作与成果 48
第1章 绪论
1.1 课题目的和意义
随着生活水平的提高,人们对食品的安全和环境保护日益重视,民用清洗领域受到关注。第一是由于食品卫生安全问题频繁曝光,一般清洗难以完全除去农药、细菌残留;第二是清洗中使用的清洗剂对环境造成的污染现象日益加重;第三是食品或餐具的清洗给生活节奏加快的当今家庭带来较大的负担。市场对高效、无污染、省力的消毒清洗的需求,为产品的销售带来快速发展的良机[1-2]。
在国内,家庭中清洗蔬菜水果的方法以浸泡、手动搓洗或反复冲洗为主,清洗餐具的方法以加入的洗洁精等辅助清洗剂为主,而清洗剂的残留会给人体造成巨大伤害。酒店、食堂等对蔬果和餐具的清洗则采用机械式大规模清洗方式[3]。
家庭厨用清洗方法必须满足三个要求:第一,清洗成本和劳动量要低,同时保证高效率地完成表面污物的清洗和农药残留的去除。第二,对餐具的清洗活动中,会大量使用洗涤剂等化学合成物质,对周围水源和生活环境造成二次污染,因此,必须减少或者不使用洗涤剂而实现绿色清洗。第三,清洗蔬果的过程中,在达到清洗和去除药残的同时必须尽量避免对蔬果表皮和外观的破坏,减小营养流失。经已有的研究成果表明[1][2][4],超声波协同臭氧清洗蔬果的方法符合以上要求,本课题基于超声波协同臭氧的处理方法,设计和研制了适于家庭普及的厨用超声清洗机。厨用超声清洗机可以替代传统机械清洗和手工清洗,解放劳动力,对实现居民日常生活中果蔬清洗自动化,提高家庭餐桌的安全性,改善我国居民生活质量等均具有重要意义。
厨用超声清洗机基于ARM11构架的S3C6410微处理器,采用嵌入式Linux操作系统,功能齐全,控制方便,安全可靠,人机界面简单,整体扩展性好。充分考虑到清洗机的实用性和与家庭厨房环境的协调搭配,进行功能上和外观上的优化,着重人机交互的优良体验。这里本文着重厨用超声清洗机的ARM人机交互部分,超声发生器部分由本课题其他同学完成。
1.2 国内外厨用超声清洗机的发展现状及趋势
目前,国内相关学者和企业也在超声清洗机方面取得了一些研究成果,并有相关清洗机已经投入到实际生活中,河南工业大学乔永钦等设计的QXJ150型薯类清洗机和东北林业大学的方迪等设计的滚筒式马铃薯清洗机,都达到了较好的清洗效果[5-6]。然而,使用上述方法的大型清洗机大多数只适用于根茎类蔬菜和质地较硬的水果,而不适用于叶菜类蔬菜、软质水果等的清洗,且耗水量巨大,不利于家庭中的普及。通过观察市场上现有的厨用超声清洗机产品,可发现他们有如下共同特点:
(1)使用不便,每次使用时需要放较多的水,当需要清洗少量蔬果时,会造成浪费。
(2)操作体验一般,控制面板简陋,用户操作不够便捷,系统的拓展性不够。
(3)市场中的清洗机一般是超声波与臭氧两个功能的简单拼凑,对于超声、臭氧参数并不考究,这对于消费者来说,不足以信服其清洗和消毒效果。
因此,若要设计一款能够在家庭中普及使用的超声臭氧清洗机,就必须克服以上三个缺点。在国内,市场中已有成形的超声波臭氧蔬果清洗机,如图1-1所示。
图1-1 市场中的超声波臭氧蔬果清洗消毒机
超声协同臭氧清洗技术具有很多优点,如高效、安全、方便、无损等。与传统清洗相比,超声协同臭氧清洗节水、无二次污染,并能达到更好的清洗效率。在厨用方面越来越发挥独特的优势。厨用清洗中主要涉及的对象有蔬菜、瓜果和餐具等,它们对清洗的要求较高。随着生活品质的进步,人们对食品的安全也日益重视,紧张的生活节奏也要求清洗机逐渐向高效、环保、便捷方面发展。
1.3 嵌入式系统与Linux的发展现状及趋势
1.3.1 嵌入式系统的概念
目前人们已经进入一个崭新的时代,嵌入式技术的广泛应用是其强劲动力之一,在电力电子、能源、航天、金融等涉及人们日常生活的方方面面,嵌入式技术已经极大的丰富了我们的生活体验,同时潜移默化的改变着我们的生活方式。目前关于嵌入式系统的定义有很多种类,但是比较流行的一种是:嵌入式系统一般是指以应用为中心,以计算机技术为基础,软件硬件可剪裁,适合应用于对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。它具有“嵌入性”、“专用性”与“计算机系统”的三个基本要素[7-8]。
从下到上,嵌入式系统主要由硬件、硬件抽象层、嵌入式操作系统以及应用程序四个部分组成[9],如图1-2所示。
图1-2 嵌入式系统结构
硬件层既是底层也是基础层,其主要包括处于核心地位的处理器和其他必备的外围设备。这类似于平常电子制作中使用的单片机最小系统,不过嵌入式系统的含义已经远远不止于单片机了。常见的外围设备有输入/输出设备、存储设备、通信设备和功能拓展设备。
硬件抽象层的存在是为了解决不同的嵌入式操作系统和不用的硬件环境之间的不统一问题,它提供一种特定的接口,不仅能够收集底层的硬件信息,也能根据操作系统对硬件的需求进行合理的反馈操作,它的出现极大的增强了嵌入式操作系统的普适性。
嵌入式操作系统处于中间的位置,作用是协调底层硬件与上层应用程序,在为上层应用软件提供系统调用接口的同时也合理的管理硬件设备驱动,进行任务调度。
嵌入式应用程序特别强调软件运行的准确性、安全性和稳定性,而且对处理算法的时间复杂度以及空间复杂度有较高要求,它提倡代码尽可能优化,以减少对系统资源的消耗,降低成本。
1.3.2 Linux操作系统在嵌入式领域的优势
简单地说,Linux是指一套基于GPL协议类UNIX操作系统,它可以免费使用和自由传播。人们通常所说的Linux系统是指Linus Torvalds所最初开发并逐渐被完善的Linux操作系统内核[10]。
从Linux系统的发展过程可以了解到,Linux从最开始就是一个开放的系统,它始终遵循着源代码开放的原则并且最开始它是被设计为在桌面电脑使用的,但是它的良好的结构设计,让它同样在嵌入式领域有着巨大的前景。它是一个成熟而稳定操作系统,对于本课题而言,它有如下优势[11]:
(1)低成本
任何人只要通过网络就可以很容易获取并自由修改Linux的源码。这样带来的好处是一方面节省了产品开发成本,同时也能够不断地得到世界各地的程序员的支持和拓展。开发人员有时仅仅是发一封邮件,就可以得到专业的Linux维护社区和团队的帮助,其便利是显而易见的。
(2)适应于多种硬件平台
Linux可以支持x86、ARM等多种体系结构,并且目前在各种硬件平台上已经移植成功。Linux统一的管理框架可以很方便的在不同的硬件平台间进行移植。
(3)内核可定制
Linux可以根据用户的需求,提供了模块的静态加载和动态加载两种方式。静态加载即模块与内核源码一起编译,而动态加载则独立于源码,允许自由的进行模块的注册和注销,并且注册后的模块与静态加载方式的效果无异。Linux允许用户根据自己的实际需求在内核编译配置中自定义设置,得到最精简但稳定的嵌入式内核,充分考虑对资源的最大利用。
1.4 研究工作和主要内容
在实验室已有的技术积累和实验结果下,本课题主要任务是开发基于ARM11的厨用超声清洗机人机交互系统。厨用超声清洗机由超声发生器和人机交互系统两部分组成。人机交互系统以三星公司的ARM11构架S3C6410处理器为核心,主要实现对超声发生器的控制、清洗机操作视频的播放、以及人机交互界面的显示等功能。本文主要围绕以下几点进行开发:
(1)厨用超声清洗机的系统方案设计。根据当今现有的厨用超声清洗机产品的共有功能以及结合本课题的实际功能需要,给出了厨用超声清洗机的总体方案设计、系统的结构,并对超声发生器和人机交互系统两部分功能进行了细分。
(2)人机交互系统的设计。根据人机交互系统的功能划分以及嵌入式系统的开发要求,进行了处理器、嵌入式操作系统以及人机交互界面开发平台的选择。经过对实际的应用需求、开发周期、产品通用性、可拓展性的充分考虑后,决定采用三星公司ARM11核的S3C6410为处理器,嵌入式Linux为操作系统,Qt为人机交互界面开发平台。
(3)开发平台的构建及U-Boot、Linux内核、文件系统的移植。就如何构建嵌入式开发平台进行了分析,对其中关键部分进行了深入的分析。
(4)完成Linux下底层驱动的开发。在简单介绍了Linux驱动的结构及相关概念后,对内核中的驱动模型机和重要的相关模块及他们之间的关系进行了深入的研究。并以普通IO驱动为例来说明平台设备的工作流程。最后实现了基于系统的普通IO驱动、按键驱动和LCD驱动。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/dzkxyjs/2512.html

好棒文