基于单片机的智能鱼缸的设计与实现毕业设计

时间:2020-03-09 16:40:53 浏览量:

  

 编号

 毕业设计(论文)

 题目

  基于单片机的智能

  鱼缸的设计与实现

  二级学院

 计算机科学与工程

 专

 业

 计算机科学与技术

 班

 级

 学生姓名

 学号

  指导教师

 职称

 教授

  时

 间

  目

 录

 摘

 要 I

 Abstract II

 1 绪论 1 1.1课题背景 1 1.2国内外研究现状 1 1.3研究目的 2

 2 开发技术与原理简介 4 2.1嵌入式技术 4 2.2传感器技术 4 2.3 Android技术 4 2.3.1 Android智能手机平台概述 4 2.3.2 Android手机平台的特点 5 2.3.3 Android系统软件架构 5

 3 需求分析 6 3.1功能需求 6 3.1.1系统的特点及功能描述 6 3.1.2系统流程分析 6 3.2用例分析 7 3.3 开发工具 11 3.3.1 底层硬件电路开发工具 11 3.3.2底层系统开发工具 12 3.3.3 Android客户端开发工具 12

 4 概要设计 13 4.1系统总体方案与功能 13 4.1.1系统功能组成 13 4.1.2系统控制参数 14 4.2系统的硬件结构 14 4.3系统的软件设计 15

 5 详细设计 17 5.1单片机系统设计 17 5.1.1单片机选型 17 5.1.2单片机最小系统设计 18 5.1.3详细说明 21 5.2温度传感器模块设计 22 5.2.1温度传感器选型 22 5.2.2温度传感器电路设计 23 5.3蓝牙串口模块设计 23 5.3.1串口技术 23 5.3.2蓝牙串口电路设计 25 5.3.3系统通讯协议设计 25 5.3.4系统通讯详细说明 26 5.4时钟模块设计 27 5.4.1时钟芯片选型 27 5.4.2时钟模块电路设计 27 5.5 Android客户端设计 28 5.5.1 Android蓝牙通信设计 28 5.5.2 Android界面设计 29

 6 系统实现 31 6.1 底层设备软件实现 31 6.1.1系统软件流程图 31 6.1.2底层系统算法设计 32 6.2手机端软件实现 35 6.2.1手机端软件流程图 35 6.2.2底手机端软件算法设计 36 6.3软硬件设备实物图 38 6.3.1硬件设备实物图 38 6.3.2手机端软件截图 40

 7 系统测试 41 7.1LED灯光变换测试 41 7.2检测温度测试 42 7.3水循环控制系统测试 42 7.4充氧模块测试 43

 结束语 44

 致 谢 45

 参 考 文 献 46

 摘

 要

  近年来嵌入式发展迅速,智能家居也进入了人们的生活。智能鱼缸却没有快速发展。我根据市场上相关设备现状的分析和研究,从系统集成角度进行设计和开发,提出了一套多功能的智能观赏鱼缸控制系统的设计方案。

 该控制系统以STC12C5A60S2单片机为控制核心,结合传感器技术,集多种控制功能于一体,包括检测温度、自动充氧、自动换水、灯光变换和自动喂食等,同时在系统中设计一个蓝牙通信模块,可实现对鱼缸的远程控制和管理。整个系统分为两个部分:第一部分是以STC12C5A60S2为核心的控制部分,实现对各种控制参数的设置、存储、和处理。第二部分是手机安卓部分,通过手机端APP可以对鱼缸进行实时控制、参数设置等,实现人机交互。两个部分之间采用蓝牙通讯技术,将数据信息在上位机与下位机之间交互传输。

 该系统根据当前市场上的需求进行设计和开发,形成了一套自动充氧、自动换水、灯光变换和自动喂食等功能为一体的集成控制系统。同时该系统设计灵活、成本低廉,便于量产,可广泛用于家庭和宾馆等安装观赏鱼缸的场所。 关键词:鱼缸,自动控制,单片机,蓝牙通讯,APP

 Abstract In recent years, with the development of embedded, intelligent household also entered people's lives. The intelligent aquarium is not development. I according to the current market analysis and research status quo of related equipment, system integration from the perspective of design and development, a set of multi-functional intelligent fish tank control system design. The control system STC12C5A60S2 microcontroller core. Combined with sensor technology. Set a variety of control functions. Including temperature detection, automatic oxygenation, automatic water change, transform and lighting automatic feeding. While the design of a Bluetooth communication module in the system can be realized on the tank remote control and management. The whole system is divided into two parts: the first part is STC12C5A60S2 the control part of the core, to achieve a variety of control parameters settings, storage, and processing. The second part is the part of Android phones, the tank can be real-time control, parameter setting via mobile phone terminal APP, human-computer interaction. Between the two parts of the Bluetooth communication technology, information exchange data transmission between the host computer and the next crew. The system is designed and developed according to the needs of the current market. The formation of an automatic oxygenation, automatic water change, transform and lighting automatic feeding and other functions into one integrated control system. Meanwhile, the system is designed to be flexible, low cost, ease of mass production, it can be widely used in homes and hotels and other places to install aquarium. Key words: Aquarium, automatic control, single-chip, Bluetooth communication, APP

  1 绪论 1.1课题背景 随着我们国家经济的快速发展,人民对生活质量的追求也一直在提高,人们也不再像前一代人那样的消费观念。人们追求越来越高的生活品位,导致了消费水平也在提高,家居环境的个性化、环保化也越来越受到人们的重视,同时相关的智能家居等行业相应的出现大发展之机遇。现代都市生活使人们承受着种种压力许多人需要得到精神的安慰,心底渴望怀抱大自然的宁静与和谐,饲养宠物已经成为一股经久不息的潮流。而一个生机勃勃的鱼草生活惬意的鱼缸不但可以给人们带来春季盎然的美感,更能美化居室环境,使人回归那久违的绿色,让自己重新回到大自然美景的怀抱中。在这样的新趋势下,饲养几条观赏鱼将成为新的潮流。 智能鱼缸控制系统正是在这种需求下产生的。水族箱不单单只是一个是养鱼、鱼草的水容器,它更是大自然的一个小小的缩影,是一个相对完整的小型生态系统。最近这些年,这种以水草、观赏鱼为主体的生态鱼缸被叫做“微缩鱼草园林”,人们对其非常喜爱和追捧。但是要让一个适宜水草、小鱼生活的环境长时间保持是一件费时费力的事情,很多都市人忙于工作或者迫于生活压力都没有时间照料小鱼,所以一般结局大都是水草枯死小鱼干死。所以现在出现的鱼缸水体净化和水质改善的设备有很多,目前市场上经常看见的鱼缸控制设备有:换水设备、加氧泵、喂食设备等,但是它们一般都是非智能化的、单独工作需要人工控制开关的器件。但若是把若干独立的鱼缸控制设备机械的组成一个多功能的控制设备,需要的花费是很多的,而且这些器件按装在一起之后,同时存在着电的浪费,不便于集中统一进行管理控制。 1.2国内外研究现状

 “鱼缸"又称“水族箱",水族箱一词起源于英国,水族箱饲养始于1851年的英国万国工业博览会上,沿用至今已经有150年的历史。鱼缸在150年前的定义仅是一个养动植物的容器,最原始的鱼缸只一个结构简单水箱,水族箱也没有什么复杂的功能。德国与英国在这个嗜好上竞争,踏入20世纪,汉堡市成为欧洲入口新奇水族品种的港口。第一次世界大战后几乎所有家居都已经有电力供应,水族箱亦因此更广泛地受欢迎。电力的改善使水族科技得以发展,使人工照明、通风、过滤、水温加热都成为可能。空中运输的出现使更多远方的外地品种能够入口,亦使水族饲养更受欢迎。现时,估计全球有大约6千万水族喜好者。水族嗜好最强列的地区依次序为欧洲、亚洲及北美洲。在美国,大部分人(40%)同时打理2个或以上的水族箱。

 我国的水族箱控制系统发展起步相对较晚。随着经济水平的突飞猛进,装饰业的日趋兴起,人们对生活、家居品位的追求愈加重视,体现在经济形态中就是与之相关的休闲、居家装饰等行业日显蓬勃发展之势。居住、工作环境的生动化、温馨化也越来越和人的精神、情操、新的生活观念紧密地联系在一起。休闲水族行业也正是在人类的这种需求下应运而生,并且近年来其快速发展之状况使其已经成为一股新兴的经济力量受到经济界及业内人士的关注,据最新资料显示:水族产品的日渐丰富,水族市场更加繁荣昌盛,水族行业产业规模的年增长率达到13.8%,仅北京就由传统的几个小市场,发展成8个大规模的市场。其市场空间的拓展速度也昭示着将有更多的投资机会点在这种新的经济形势下诞生。如今是国际水族产品看中国,许多国外大的采购公司都盯准中国这个市场,把长远的目标放在中国嘲。随着水族箱产品迅猛发展,巨大的水族箱市场的需求也极大推动了国内外各种水族箱控制设备的研发和生产。

 水族箱要保持金鱼、水草的生活环境需经常换水和补充氧气,通常配备水泵和空气泵这两种设备来循环水体和补充氧气,但是这些设备都是通过人力进行开关控制,不便宜操作。 1.3研究目的

 目前很多家庭都用小型的水族箱来养水草、观赏鱼,但是人们的生活却很忙碌,可能没有时间来照顾鱼缸里的小鱼和水草,以至于鱼缸这个小型生态环境长时间得不到平衡,进而导致水草、观赏鱼相继死去。智能鱼缸控制系统正是在这种需求下产生的,现在鱼缸水体净化和水质改善的设备有很多,目前市场上经常看见的鱼缸控制设备有:换水设备、加氧泵、喂食设备等,但是它们一般都是非智能化的、单独工作需要人工控制开关的器件。但若是把若干独立的鱼缸控制设备机械的组成一个多功能的控制设备,需要的花费是很多的,而且这些器件组装在一起之后,存在着资源浪费,不便于集中统一进行管理控制。

 现在,鱼缸智能控制器有的很大的市场需求,但是研究和开发尚处于起步阶段,相应的产品也相对较少。因此,自主设计了成本低,操作简单,节能环保的智能鱼缸控制系统。

 本智能鱼缸控制系统以 STC研发生产的 STC12C5A60S2 单片机为控制CPU,同时结合传感器技术、蓝牙通讯技术、手机APP,研发出一套可以用于不同类型水族箱和各种使用环境的集自动充氧、自动换水、灯光变幻、自动喂食、温度监控等各种功能于一体的智能鱼缸控制系统。

 2 开发技术与原理简介 2.1嵌入式技术 嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等4个部分组成,它是集软硬件于一体的可独立工作的“器件”。嵌入式系统是一种面向应用、功能定制、资源受限、响应要求高、性能稳定、无自举开发能力,由硬件和软件两部分构成的专用计算机系统。“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素,应用对象系统指嵌入式系统所嵌入的宿主系统。 2.2传感器技术 传感器技术是现代科学的前沿技术,是新技术革命和信息社会的重要技术基础。在现代生活和科学研究中,各种类型的传感器所提供的大量可靠、准确的信息,不仅能代替人的五官功能,而且还能检测到人的五官所不能感受的信息,从而使人类能更好地认识世界和改造世界。目前,传感器技术广泛应用于航空、航天等尖端技术领域及工业、农业等人类日常生活许多方面。传感器在工业部门的应用普及率已被国际社会作为衡量一个国家智能化、数字化、网络化的重要标志。因此,传感器技术作为一种与现代科学密切相关的新兴学科正得到迅速的发展,并且在许多领域被越来越广泛的利用。 2.3 Android技术 2.3.1 Android智能手机平台概述 Android是Google公司在2008年联合开放手持设备联盟(OHA)推出的基于Linux内核的智能移动设备操作系统,主要应用于掌上便携设备,如智能手机和平板电脑等。Android平台为移动设备提供了有Linux操作系统、中间层、UI(用户界面)和应用程序共同组合的软件平台。 2.3.2 Android手机平台的特点 开放性:源代码开发可以修改无需授权。 自由性:摆脱运营商的束缚让手机能自由接触网络。 兼容性:与硬件无关,降低了开发者的负担。 拓展性:可以兼容各种手机、平板电脑等移动设备。 2.3.3 Android系统软件架构 安卓系统软件架构主要有五层,从下到上依次是:Linux内核层、本地库、安卓运行时、应用框架层、应用程序层。如图2.1所示:

 图2.1 Android系统架构图

 3 需求分析 3.1功能需求 该智能鱼缸控制系统是以鱼缸的日常护理为背景,系统集成开发的角度对水循环、水温监控、水含氧量、鱼饲料量自动化及其应用控制进行设计和开发,根据当前市场上的需求,并且利用高新技术形成了一套集自动水循环、灯光变幻、自动充氧和自动喂食等功能为一体的智能鱼缸控制系统。 3.1.1系统的特点及功能描述 1.功能。采用单片机控制,实现水族箱自动换水、自动喂食、温度状态显示、自动加氧、灯光变幻等功能。

  2.人机界面。本系统的人机操作界面采用手机APP端显示屏,具有直观、简介、易操作等多重特点。用户可直接从手机显示屏读取系统的实时数据。

  3.系统操作。本系统通过上位机手机APP来设置各种参数,用户可以根据观赏鱼的实际生活习性来设定适宜小鱼生活的参数,使该智能鱼缸控制系统能在各种不同的环境适中发挥作用。鱼缸下位机与手机上位机之间的配合使用使本系统具有简易的操作性。

  4.生产成本:本系统使用的控制CPU是STC12C5A60S2单片机,该款单片机价格低廉,其外围电路设备包括:蓝牙模块、温度传感器、时钟模块、Led灯带、电机等,这些外围成本低廉、加工简单,具有很强的可生产性。 3.1.2系统流程分析 如图3.1的智能鱼缸流程图,对智能鱼缸的业务流程进行分析。 业务流程: 用户通过手动操作手机端,与智能鱼缸系统进行人机交互。用户通过手机端以蓝牙通信的方式将需要执行的命令以及参数传输给鱼缸端。 鱼缸端接受到用户发送的命令以及参数执行对应的操作如喂食、换水等。 鱼缸端将检测到的温度值传送给手机端,手机端将温度值显示在屏幕上,以便用户获取温度值。

 图3.1 智能鱼缸业务流程图 3.2用例分析 根据智能鱼缸系统的功能需求,对其进行用例分析。如图3.2 客户端用户用例图,主要用例有:客户端用户、换水、喂食、充氧、变换灯光、监控温度、检测温度、显示温度、设置时间。

  图3.2 客户端用户用例图

 用例规约

 (1)换水用例(UC01)

 用例名称:换水

 简要说明:给鱼缸进行水体循环。

 事件流: 基本事件流 ①打开水泵 ②抽出、抽入水体进行水体循环 扩展事件流 无

 前置条件:无

 后置条件:设置时间自动进行水循环

 (2)喂食用例(UC02)

 用例名称:喂食

 简要说明:把鱼饲料倒入鱼缸进行喂食。

 事件流: 基本事件流 ①打开喂食器 ②倒入鱼饲料 扩展事件流 ①容器中无饲料,人工添加进入容器。

 前置条件:无

 后置条件:设置时间,自动喂食

 (3)充氧用例(UC03)

 用例名称:充氧

 简要说明:给鱼缸中水体充氧,提高水的含氧量。

 事件流: 基本事件流 ①打开气泵 ②给水体充氧 扩展事件流

 无

 前置条件:无

 后置条件:设置时间,自动充氧

 (4)灯光变幻用例(UC04)

 用例名称:灯光变换

 简要说明:打开LED彩灯,提高鱼缸的观赏性。

 事件流: 基本事件流 ①打开LED ②灯带跑马灯闪烁 扩展事件流 无

 前置条件:

  后置条件:无

 (5)检测温度用例(UC05)

 用例名称:检测温度

 简要说明:检测鱼缸的温度。

 事件流: 基本事件流 ①打开温度传感器 ②检测鱼缸的温度 扩展事件流 无

 前置条件:无

 后置条件:无

 (6)设置时间用例(UC06)

 用例名称:设置时间

 简要说明:设置时间,智能鱼缸系统到时自动进行相关操作。

 事件流: 基本事件流

 设置时间,发送相关命令 扩展事件流 无

 前置条件:喂食、换水、充氧

 后置条件:无

 (7)显示温度用例(UC07)

 用例名称:显示温度

 简要说明:把检测到的温度显示到手机客户端。

 事件流: 基本事件流 ①获取温度值 ②显示温度值 扩展事件流

 无

 前置条件:检测温度

 后置条件:无

 (8)监控温度用例(UC08) 1)用例名称:充氧 2)简要说明:检测温度值,并把温度值显示在手机客户端。 3)事件流: 基本事件流 ①打开温度传感器 ②获取温度值 ③显示温度值 扩展事件流

 无

 前置条件:检测温度

 后置条件:显示温度 3.3 开发工具 3.3.1 底层硬件电路开发工具 本系统需要设计硬件电路原理图(SCH),能满足设计要求的工具很多,比如:Protel、Altium Designer、PowerPCB等。在本设计中,采用Altium Designer14绘制原理图。该工具拥有大量的原理图库和印刷电路板(PCB)库,也可以自己绘制原理图库和印刷电路板(PCB)库,还能自动生成pdf文档,使用起来很方便。 3.3.2底层系统开发工具 本系统采用51内核单片机最常用的Keil uVision5软件,,通过一个集成开发环境(uVision)将这些部分组合在一起。上海中颖公司也提供了一套Keil软件的开发驱动,只要SH79F6488单片机的JTAG调试接口配以Keil软件的Debug功能就能实现系统的在线仿真。 3.3.3 Android客户端开发工具 Android客户端开发工具很多,比较常用的有:Eclipse、Android Studio、Basic4Android等。本系统中使用Android Studio。该软件具有很强大的代码提示功能和UI设计功能,有利于开发者开发速度和减小开发者上手难度。能够成功开发Android,还需在windows下配置好Java开发环境以及安装Android SDK。

 4 概要设计

 智能鱼缸系统分为下位机硬件模块和手机安卓软件模块这两大部分。其中硬件模块主要功能为控制鱼缸相关操作以及上报温度功能,软件模块则为向下位机发送命令以及参数,显示温度值。硬件模块与软件模块通信使用蓝牙串口方式,简单快捷。系统的架构图如图4.1所示:

 图4.1系统的架构图 4.1系统总体方案与功能 4.1.1系统功能组成 该智能鱼缸控制系统的设计是在对当前市面上已有的不同类型的鱼缸控制设备充分考察和调研的前提下进行的。整个智能鱼缸控制系统分为以下几个功能子系统:即人工/定时充氧系统、人工/定时水循环系统、LED灯光变幻系统、人工/定时喂食控制、实时温度监控系统等。这些子系统的工作相互独立,但是每个子系统又由单片机控制,该智能鱼缸控制系统还结合了时钟电路模块/看门狗/复位电路,便于系统的自动控制,各子系统的功能参数的设置与蓝牙数据传输电路相连接,通过蓝牙模块与手机控制端进行通信,手机端也通过蓝牙模块发送相关的控制命令以及参数给下位机,上位机手机端与下位机智能鱼缸共同组成了一套功能完善的智能控制系统。 4.1.2系统控制参数 该智能鱼缸控制系统的控制目的是能使鱼缸能够通过人工调节或者自动调节的方式来保证鱼缸的水质、含氧量等生活环境是最适宜观赏鱼生活习性的。设计本系统时需要考虑的环境参数有:温度,水中含氧量,水的质量,led灯光,鱼的饲料等参数。下表4-1显示该控制系统对各项参数的处理。 表4-1系统控制参数 项目 控制参数 相应的处理措施 1 水温 温度传感器获取温度值,并将其通过蓝牙传输到手机端显示 2 水溶氧量 根据人工控制或者定时自动控制气泵充氧 3 水质 根据人工控制或者定时自动控制水泵进行水循环 4 灯光 根据人工控制打开LED灯带,提高鱼缸观赏性 5 鱼饲料 根据人工控制或者定时自动控制喂食器喂食 4.2系统的硬件结构 该智能鱼缸控制系统包含六个模块,分别为单片机核心控制模块、温度传感器、蓝牙模块、时钟控制模块、led灯带、电机。单片机核心控制模块以STC12C5A60S2单片机为核心CPU控制协调其他模块协同工作;温度传感器负责温度的检测以及获取具体的温度值;蓝牙模块负责上位机与下位机之间的通讯;时钟控制模块负责提供智能鱼缸控制系统的时钟参数;led灯带则使鱼缸更具观赏性;不同的电机负责不同的功能主要有气泵、水泵、喂食器。该智能鱼缸控制系统的硬件结构如图4.2所示。

 图4.2 硬件结构图 其中控制部分包括: 中心控制模块:主要以CPU核心,包括晶振,复位电路等。该模块的主要功能是将单片机各个引脚的信号以及通过绿色能源模块接收到的命令及其参数进行运算处理,然后发出各种控制信号。各种控制信号对应的相关操作通过驱动硬件完成,如打开气泵进行充氧操作等。看门狗电路负责系统工作过程的监测,复位模块使系统工作时发生异常情况的复位重启。 其中输入输出部分包括: 1.温度检测模块:将温度传感器检测到的温度数据传输给单片机;该温度传感器模块完成数据的采集功能,主要由传感器,放大器,A/D转换器等组成。温度传感器主要是用来探测鱼缸环境温度参数的变化,并将数字信号的温度变化值转化为电信号以便单片机识别。 2.蓝牙数据传输模块:将手机APP端接受到的命令信号传输给CPU,CPU根据接收到的命令发出对应的控制信号。将检测到的温度值发送给手机端,手机端接收到温度值后,将其显示出来。 4.3系统的软件设计 Android开发中自带有蓝牙API,我们直接使用该API并搭配Socket编程和多线程编程,就可以完成手机端和设备通信。在程序中使用sqlite数据库和Chart图形库,就可以实现历史数管理和可视化图形界面显示。该智能鱼缸控制系统上位机软件框图如图4.3。

 图4.3 手机端软件框图 本课题设计的上位机软件功能包含有三大部分:蓝牙链接界面设计,人工控制界面设计,定时任务界面设计。用户使用时,打开程序,会进入蓝牙链接界面,该过程为整个软件建立一个与下位机之间的通讯;蓝牙链接以后会自动进入到人工控制界面界面,该界面包含温度值的检测与显示、喂食控制、进出水开关、氧泵开关、霓虹效果;第三个页面是定时控制界面,用户可以设置时间让鱼缸每天按照用户设置的时间来自动进行喂食、换水、充氧操作。因此该程序模块会包含有整个工程中最重要的通信功能。

 5 详细设计 5.1单片机系统设计 5.1.1单片机选型 本课题中温度检测部分要求具有高精度AD转换模块,综合考虑后我们选择STC研发生产的STC12C5A60S2型号单片机作为该智能鱼缸控制系统的核心CPU。 STC12C5A60S2单片机是一种单时钟周期的单片机也就是说该型单片机只能执行一个任务,如果要同时执行多个任务就需要开启中断。它是一种加强型8051单片机,相比之前类型的8051单片机具有高速/低功耗/超强抗干扰等特点,因为它是一种加强型8051单片机所以该型单片机指令代码完全兼容传统8051,但是它的速度却要比传统的8051单片机快8-12 倍。STC12C5A60S2单片机的内部集成了MAX810专用复位电路用于系统工作异常时整个系统的复位重启,以及2路PWM用于对电压的精确控制,还有8路速度高达25万次/秒的A/D转换,可以将温度、湿度等数字信号转换为单片机可识别的电信号。该型单片机专门针对电机的控制,可以用于强干扰场合。

 图5.1 STC12C5A60S2结构图 STC12C5A60S2单片机的内部结构框图如图5.2所示。

 图5.2 STC12C5A60S2内部结构框图 STC12C5A60S2管脚图如图5.3所示

 图5.3 STC12C5A60S2管脚图 5.1.2单片机最小系统设计 1)单片机电源模块设计 STC12C5A60S2单片机正常工作的电压范围为3.0V-5.5V,以及蓝牙的供电电压为3.3V,本课题所设计的智能鱼缸控制系统用的是充电宝作为电源,充电宝的电压为5V,因此要确保上述的硬件能够正常工作就需要一个降压稳压的模块将接入电路的电压降到一个合适的稳定的电压值。通过查阅资料实际考察等方式,从多种稳压降压模块中进行筛选,最终德科仪器公司提供的TPS76033电压转换芯片成为最佳的解决方案,通过这种方式我们成功的把3.7V 电压转换为3.3V稳定电压,这使得单片机和蓝牙模块都能同时正常的工作。 TPS76033芯片特点:输入电压16V;输出电压为3.3V;Dropout Voltage:0.001 V at 0 mA;输出电流:50 mA;最大工作温度:+ 125 C;回动电压—最大值:180 mV;Ib - 输入偏流:90 uA;最小输入电压:+ 3.5 V。如图5.1所示。

 图5.1降压稳压模块 在智能鱼缸控制系统设计中,为了给STC12C5A60S2单片机以及相关外围电路提供稳定干净的电源,所以还加上了滤波电路(图5.2 滤波电路)。

 图5.2 滤波电路 2)单片机时钟脉冲设计 可以选择两种振荡器类型作为系统的振荡器 1 (OSC1CLK)时钟源和振荡器 2(OSC2CLK)时钟源。当选择振荡器1 时钟(OSC1CLK)作为系统时钟频率分频器的输入时钟(OSCSCLK )(FS=0),并且系统进入掉电(Power-Down )模式时,振荡器1 时钟(OSC1CLK)和振荡器2 时钟(OSC2CLK)都会关闭。如果时基定时器模块或LCD模块功能开启时,振荡器1 时钟(OSC1CLK)不会关闭,振荡器2 时钟(OSC2CLK)会关闭。当选择振荡器2 时钟(OSC2CLK)作为(FS=1)并且系统进入掉电(Power-Down )模式时,用以支持片上外围设备(例如定时器3 、时基定时器等)。内部12MHz

 RC支持硬件/ 软件校正功能,当CLKLO寄存器中的CLKRCEN=0 时,内部RC由系统硬件自动校正;当CLKRCEN=1 时,内部RC由用户软件校正,通过修改CLKRC0 寄存器的值调整RC振荡频率,CLKRC1 寄存器为出厂校正的初值数据,当调整RC振荡频率偏移较大时,可通过只读寄存器CLKRC1 获取校正初值数据。本课题中为了减小硬件电路开支,我们选择内部12MRC振荡器作为系统时钟。

 图5.3

 单片机振荡器类型选择框图 系统时钟控制寄存器如表5-1所示: 表5-1 系统时钟控制寄存器 B2H 第7位 第6位 第5位 第4位 第3位 第2位 第1位 第0位 CLKCON 32k_SPDUP CLKS1 CLKS0 SCMIF OSC2ON FS - - 读/写 读/写 读/写 读/写 只读 读/写 读/写 - - 复位值 (POR/WDT/LVR/PIN) 1 1 1 0 0 0 - -

 3)复位电路设计 本课题设计中,由于RST引脚内部接有30K上拉电阻,所以直接在RST引脚接GND就可实现上电复位功能,但为了防止系统出错时,可以方便复位系统,于是给出一种手动复位和上电复位结合电路,如图4-7。

 图5.4 复位电路 5.1.3详细说明 1) 打开系统电源,初始化系统时钟 下载设置中设置晶体谐振器,内部12MHz RC振荡器。当系统发生任何形式的复位,如上电复位,看门狗复位等时,系统时钟为OSC1CLK并自动进入32.768kHz加速模式,因此当系统稳定以后需要将系统时钟切换为OSC2CLK。切换方式为:打开OSC2CLK开关,并等待延时4个NOP指令,切换代码如下:

 CLKCON = 0x08;//系统时钟为 _nop_();

 _nop_();

 _nop_();

 _nop_();

 CLKCON = 0x0C;//系统时钟选择为OSC2CLK 2) 系统各模块功能初始化 系统将对以下功能包括外部中断0、定时器2、EUART、ADC、POWER、OP、PGA、PWM以及对端口属性进行初始化。初始化函数名(各函数调用位置视功能需求而定)如下: POWER_init(); //电压初始化 OP_init(); //OP初始化 PGA_init(); //PGA初始化 Timer2_init(); //Timer2初始化 EX01_init(x); //外部中断初始化 pwm1_init(); //PWM1初始化 SET_OUTPUT_PULL(port, pin); //端口初始化宏 5.2温度传感器模块设计 5.2.1温度传感器选型 智能鱼缸控制系统的设计要求温度传感器具有很高的精确度,并且能够传回准确的温度值,根据鱼类的生活习性,测温范围为零下5度到50度之间,传感器测量误差在零下5度到50度之间的精度为±5℃,并且还需要良好的抗干扰能力。综合以上因素考虑,我们使用DS18B20型号数字温度传感器。测温分辨率可达0.0625℃。 如图5.5表示DS18B20的方框图。主要由4部分组成:64位只读存储器储存器、温度传感器、非挥发的温度报警触发器TH和TL、温度配置寄存器。DSl8820的管脚排列是:DQ为数字信号输入/输出端;GND为电源接地;VDD为外接供电电源输入。只读存储器储存器中的64位序列号是生产厂商在出厂以前烧写进DS18B20的不会被改变,因此这个可以当作是不同DSl8820的地址码,所以DSl8820只读存储器储存器中的的64位序列号均不相同。DSl8820只读存储器储存器中的的64位序列号的作用是标识不同的DSl8820,因此多个DSl8820就可以连接到一根总线上协同工作。之所以存储在配置寄存器的数据在系统断开电源后任然能够保存,是因为他们是非易失性的可擦除程序寄存器(EEPROM)。

 图5.5 DS18B20方框图 5.2.2温度传感器电路设计 如图5.5表示DS18B20的电路图。DS18B20数字温度计通过一个I/O口发送或接受信息,所以在STC12C5A60S2单片机CPU和DS18B20数字温度计之间只要连一个I/O口就可以了。DSl8820芯片的引脚2与单片机P10口连接。使用外部5V电源供电,为保证在有效P的DSl8820时钟周期内,链接能使该芯片正常工作的电流。

 图5.4 DS18B20电路图 5.3蓝牙串口模块设计 5.3.1串口技术 本课题所使用单片机STC12C5A60S2自带一路增强型通用异步收发器(EUART),是普通串口的增强版。该串口收发器特性: 1. 自带波特率发生器的EUART; 2. 波特率发生器就是一个15位向上计数器; 3. 增强功能包括帧出错检测及自动地址识别; 4. EUART有四种工作方式。 与普通串口相同,该串口收发器拥有四种工作方式: 表5-2 EUART工作方式列表 SM0 SM1 方式 类型 波特率 帧长度 起始位 停止位 第9位 0 0 0 同步 fSYS /(4或12)

  8位 无 无 无 0 1 1 异步 自带波特率发生器的溢出率/16 10位 1 1 无 1 0 2 异步 fSYS /(32或64) 11位 1 1 0,1 1 1 3 异步 自带波特率发生器的溢出率/16 11位 1 1 0,1 几种工作模式分别为: 1. 方式0:同步,半双工通讯; 2. 方式1:8 位EUART,可变波特率,异步全双工; 3. 方式2:9 位EUART,固定波特率,异步全双工; 4. 方式3:9 位EUART,可变波特率,异步全双工。 本课题中串口工作模式选则——方式1:8 位EUART,可变波特率,异步全双工;波特率为9600。EUART自带一个波特率发生器,它实质上就是一个15位递增计数器(如图4-18)。

 图5.5 波特率发生器框图 由图4-18可以得到波特率发生器的溢出率为:

 在方式1中,波特率可微调,精度为一个系统时钟,因此,EUART在模式1下的波特率计算公式如下:

 在本课题中,系统时钟使用内部RC12M晶振,经计算可精确得到SBRT值和BFINE值: 表5-3 波特率计算表 系统时钟(MHz) 波特率(bps) SBRT BFINE 12 9600 32690 2 12 19200 32729 1 5.3.2蓝牙串口电路设计 在本课题中,蓝牙模块已经为我们引出了两个串口引脚,我们只需要将蓝牙模块中的串口引脚和单片机串口引脚相连,就可以通信了。蓝牙模块单独的为用户提供了几个可操作引脚,其中有一个复位引脚和连接状态引脚。如图4-19蓝牙连接电路图,其中Q5作为蓝牙供电开关,可实现单片机编程控制蓝牙供电;Q6则是蓝牙指示灯开关,当蓝牙模块和其他蓝牙设备(安卓手机)连接时,led灯不间断闪烁,反之,led灯将常亮。

 图5.6 蓝牙电路图 5.3.3系统通讯协议设计 1)通讯协议概要 底层设备和手机安卓端通信需要通过中继——蓝牙模块。其中蓝牙模块和设备之间通信采用串行异步方式,一帧数据分为 1 位起始位,8 位数据位和 1 位停止位,无奇偶校验位,共 10 位。蓝牙模块和手机Android采用主从模式:手机作为主模式,蓝牙模块作为从机模式。 2)指令包协议 数据传输中各字段的定义:

 a)开启智能鱼缸控制系统命令帧(下发)格式定义如下所示: 表5-4 下发数据包格式。 Byte2 Byte3 Byte4 Byte5 Type Cmd Data_length Check 设备类型:0x1 命令码:0x1 数据总长度:0x05 SUM l l Head 为帧头标志,定义为0xAA; l l Data_length 为数据总长度,5个固定长度;

 l l Check 为各字节和校验

 例:fa 11 00 00 00 dd 5.3.4系统通讯详细说明 1)初始化串口 串口初始化需要对相应的寄存器进行初始化,在这里我们设置其串口波特率为9600,进过计算得到BFINE = 2,SBRT = 32690,具体设置代码如下: #define SBRTH_value (((unsigned char)(SBRT >> 8))|0x80) #define SBRTL_value ((unsigned char)SBRT)

 SCON = 0x70;

 //SM0 SM1 SM2 REN TB8 RB8 TI RI

 SBRTH = SBRTH_value;//

 SBRTL = SBRTL_value;

 SFINE = BFINE; 2)数据包 数据包封装为两个结构体,一个为发送数据包,一个为接收数据包。系统初始化时,会对数据包进行初始化,当需要发送数据包的时候会对数据重新组包并发送: typedef struct tagRxDataPacket {

 unsigned char Head;

 unsigned char Type;

 unsigned char Cmd;

 unsigned char DataLength;

 unsigned char Cheak; }RXDATAPACKET_S;

 5.4时钟模块设计 5.4.1时钟芯片选型 该智能鱼缸控制系统需要准确获取时钟参数,需要时钟能在掉电的情况下还能正确计时,因此智能鱼缸控制系统选用DALLAS公司研发生产的涓流充电时钟芯片DSl302来完成系统的绝对时钟和相对时钟的电路设计。 DSl302通过简单的同步串行方式与单片机进行通信。DSl302能够为系统提供提供年、月、日、时、分、秒、周的时间信息,而且DSl302能够不同的月份和不同的年份来自动调整每月的天数以及闰年的天数,DSl302时钟可以通过调节AM/PM 指示来控制采用24 或12 小时的时钟计时模式。DSl302仅需用到三个口线: 1)RST(复位),2)I/O(数据线),3)SCLK(串行时钟)。DSl302的功耗很低,维持整个时钟模块正常工作的功率小于1mw。

 图5.7 DS1302管脚配置图 5.4.2时钟模块电路设计 如图5.8 表示DS1302时钟模块的电路图。DS1302提供控制鱼缸换水、喂食、充氧等操作的相对时钟,DS1302对时间处理的同时还可以为系统提供其他扩展的功能,比如闹钟提醒,事件定时,备忘等。

 图5.8 DS1302电路图 串行I/O 口方式使得DS1302时钟芯片与STC12C5A60S2单片机链接管脚数量很少只需要3个;DS1302时钟芯片的工作电压范围是2.0 V到 5.5V,相对较为宽广可以在不同的电压环境下正常工作;8 脚DIP 封装或可选的8 脚SOIC 封装根据表面装配;是非常简单的3 线接口。 5.5 Android客户端设计 5.5.1 Android蓝牙通信设计 1)使用蓝牙的响应权限 在Android手机应用开发中,如果想要使用系统功能,需要开启对应的系统响应权限。在本设计中,因为我们需要使用到手机自带蓝牙功能,因此我们需要开启蓝牙响应权限。代码如下: <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

  2)配置本机蓝牙模块 在配置本机蓝牙模块时,我们需要使用对蓝牙操作的一个核心类BluetoothAdapter。该类可以直接打开系统的蓝牙设置面板,并设置蓝牙开关,还可以设置蓝牙可见性。在该类中很重要的一个功能就是搜索功能,和广播功能。整个过程可以概述为:打开蓝牙,设置可见性,连接配对,广播监听。 3)蓝牙通信 手机端获取Socket的方式为: socket = device.createRfcommSocketToServiceRecord(MY_UUID); 如果创建成功,则进行连接操作: socket.connect(); 当连接成功以后,就创建一个线程进行接收数据: mreadThread = new ReadDataThread(); mreadThread.start(); 在子线程中,有一个while循环,循环退出条件为蓝牙断开连接。当进入子线程以后,程序会一直监视socket的InputStream,及输入流,当输入流不为空的时候,我们就接收到的数据进行处理,如果是符合4.5.4中通讯协议的数据包,我们就对其进行处理。 5.5.2 Android界面设计 在本系统设计到的Android客户端中,我们采用ViewPager滑动页面设计,主要框架包含三个Tab界面,如图5.9软件界面截图:

 A

 B

 C 图5.9软件界面截图 蓝牙操作已经被封为一个JAVA类,当我们需要使用的时候,只需要定义并实例化一个Bluetooth类就可以了。

 6 系统实现 6.1 底层设备软件实现 6.1.1系统软件流程图 智能鱼缸控制系统工作流程图如图6.1所示。其工作过程主要包括:初始化、蓝牙通信、接收命令及参数命令、执行命令、返回温度值。

 图6.1 底层系统软件流程图 初始化:主要包括输入输出端口初始化、系统时钟初始化、AD模块以及蓝牙模块、温度传感器初始化等。 6.1.2底层系统算法设计 智能鱼缸控制系统主要是对鱼缸硬件进行控制,要让硬件设备正常工作,就需要先对相关的设备写驱动程序。在本系统中,需要驱动的硬件设备主要是电机。该程序模块代码如下: void motor_4(MOTOR_SWITCH_E sw) {

 unsigned char tmp;

 tmp = MOTOR_PORT;

 switch(sw)

 {

  case ENUM_MOTOR_SWITCH_FORWARD:

 MOTOR_PORT = tmp & ~BV(4);

 tmp = MOTOR_PORT;

 MOTOR_PORT = tmp | BV(5);

 break;

  case ENUM_MOTOR_SWITCH_REVERSE:

 MOTOR_PORT = tmp & ~BV(5);

 tmp = MOTOR_PORT;

 MOTOR_PORT = tmp | BV(4);

 break;

  case ENUM_MOTOR_SWITCH_OFF:

 MOTOR_PORT = tmp | BV(5);

 tmp = MOTOR_PORT;

 MOTOR_PORT = tmp | BV(4);

 break;

 } }

 时钟控制模块,主要有设置时间和读取时间这两大功能,可以把时间写入DS1302芯片,然后DS1302芯片从写入的时间开始自动装载正确的时间,控制核心CPU可以读到正确的时间,从而更具用户设定的时间完成相关操作,其代码实现是 //向DS1302写入一字节数据 void ds1302_write_byte(uchar addr, uchar d)

 {

 uchar i;

 RST=1;

  //启动DS1302总线

  //写入目标地址:addr

 addr = addr & 0xFE;

  //最低位置零,寄存器0位为0时写,为1时读

 温度传感器模块主要负责温度信息的检测和传输回单片机,以便用户能够实时监控鱼缸的稳定情况。主控程序主要接收手机端发出的控制命令及参数,然后控制智能鱼缸外围设备协同工作,主要操作有开启/关闭充氧设备、开启/关闭换水设备、开启/关闭喂食设备、开启/关闭LED灯光设备、让温度传感器检测温度、向手机端发送温度值等,具体实现代码如下:

  void process() {

  uchar head = CMD[0];

  uchar *cmd = CMD+1;

  uchar wen[2];

  uchar port_tmp;

  uchar timeArr[8] = {0};

  switch(head)

  {

  case SET_TIME:

 timeArr[4] = (cmd[1]<<4) | cmd[2];

 timeArr[5] = (cmd[3]<<4) | cmd[4];

 ds1302_write_time_by_arr(timeArr);

  break;

  case MOTOR:

 if( str_cmp(cmd, motor[0]) == 1)

  {

 chose_motor(ENUM_MOTOR_CHOSE_1,ENUM_MOTOR_SWITCH_ON);

  break;

  }

  if( str_cmp(cmd, motor[1]) )

  {

 chose_motor(ENUM_MOTOR_CHOSE_1,ENUM_MOTOR_SWITCH_OFF);

 break;

  }

  if( str_cmp(cmd, motor[2]) )

 chose_motor(ENUM_MOTOR_CHOSE_2,ENUM_MOTOR_SWITCH_ON);

  if( str_cmp(cmd, motor[3]) )

 chose_motor(ENUM_MOTOR_CHOSE_2,ENUM_MOTOR_SWITCH_OFF);

  if( str_cmp(cmd, motor[4]) )

  chose_motor(ENUM_MOTOR_CHOSE_4,ENUM_MOTOR_SWITCH_FORWARD);

  chose_motor(ENUM_MOTOR_CHOSE_4,ENUM_MOTOR_SWITCH_OFF);

  chose_motor(ENUM_MOTOR_CHOSE_4,ENUM_MOTOR_SWITCH_REVERSE);

 chose_motor(ENUM_MOTOR_CHOSE_4,ENUM_MOTOR_SWITCH_OFF);

  }

  break;

  case LED:

 if( str_cmp(cmd, led[0]) )

  {

  Timer0Init();

  ET0 = 1;

  break;

  }

  if( str_cmp(cmd, led[1]) )

  {

  port_tmp = LED_PORT;

  ET0 = 0;

  LED_PORT = port_tmp | BV(2)|BV(3)|BV(4);

  break;

  }

  break;

 chose_motor(ENUM_MOTOR_CHOSE_3,ENUM_MOTOR_SWITCH_OFF);

  }

  if( chongyang_cmd[0] == readtime[8] &&//冲氧

  chongyang_cmd[1] == readtime[9] &&

  chongyang_cmd[2] == readtime[10]&&

  chongyang_cmd[3] == readtime[11] )

 {

  chose_motor(ENUM_MOTOR_CHOSE_1,ENUM_MOTOR_SWITCH_ON);

  chose_motor(ENUM_MOTOR_CHOSE_1,ENUM_MOTOR_SWITCH_OFF);

  } 6.2手机端软件实现 6.2.1手机端软件流程图 手机端APP包含有三大部分:蓝牙链接界面设计,人工控制界面设计,定时任务界面设计。用户使用时,打开程序,会进入蓝牙链接界面,该过程为整个软件建立一个与下位机之间的通讯;蓝牙链接以后会自动进入到人工控制界面界面,该界面包含温度值的检测与显示、喂食控制、进出水开关、氧泵开关、霓虹效果;第三个页面是定时控制界面,用户可以设置时间让鱼缸每天按照用户设置的时间来自动进行喂食、换水、充氧操作。因此该程序模块会包含有整个工程中最重要的通信功能。手机端软件流程图如图所示

  图6.2 手机端软件流程图 6.2.2底手机端软件算法设计 手机端APP主要是把用户点击屏幕按钮对应的操作转化为下位机能够识别的命令,通过蓝牙通信传送给下位机。例如充氧操作对应的命令是fa 11 00 00 00 dd。手机端还负责把下位机通过蓝牙通信发送的温度值显示在手机端,便于客户检测鱼缸的温度。其主要代码实现是 switch (v.getId()) {

  case R.id.btn_CheckTemperature:

  m_blueTooth.sendMessage(defines.BYTE_ARRAY_CMD_CHECK_TEMPERATURE);

  m_tvShowStatusInfo.setText("“获取温度”命令已发送");

  break;

  case R.id.btn_Feed:

  m_blueTooth.sendMessage(defines.BYTE_ARRAY_CMD_FEED);

  m_tvShowStatusInfo.setText("“喂食”命令已发送");

  break;

  case R.id.btn_SetTimerFeed: {

  defines.BYTE_ARRAY_CMD_SET_TIMER_FEED[1] = (byte) (h / 10);

  defines.BYTE_ARRAY_CMD_SET_TIMER_FEED[2] = (byte) (h % 10);

  defines.BYTE_ARRAY_CMD_SET_TIMER_FEED[3] = (byte) (m / 10);

  defines.BYTE_ARRAY_CMD_SET_TIMER_FEED[4] = (byte) (m % 10);

  m_blueTooth.sendMessage(defines.BYTE_ARRAY_CMD_SET_TIMER_FEED);

  m_tvShowStatusInfo.setText("“定时喂食”命令已发送");

 }

  break;

  case R.id.btn_SetTimerChangeTheWater: {

  defines.BYTE_ARRAY_CMD_SET_TIMER_CHANGE_THE_WATER[1] = (byte) (h / 10);

  m_blueTooth.sendMessage(defines.BYTE_ARRAY_CMD_SET_TIMER_CHANGE_THE_WATER);

  m_tvShowStatusInfo.setText("“定时换水”命令已发送");

  }

  break;

  case R.id.btn_SetTimerChangeTheAir: {

 defines.BYTE_ARRAY_CMD_SET_TIMER_CHANGE_THE_AIR[4] = (byte) (m % 10);

  m_blueTooth.sendMessage(defines.BYTE_ARRAY_CMD_SET_TIMER_CHANGE_THE_AIR);

  m_tvShowStatusInfo.setText("“定时充氧”命令已发送");

  } 6.3软硬件设备实物图 6.3.1硬件设备实物图

 硬件设备实物图如图6.3、图6.4、图6.5所示,单片机核心控制模块以STC12C5A60S2单片机为核心CPU控制协调其他模块协同工作;温度传感器负责温度的检测以及获取具体的温度值;蓝牙模块负责上位机与下位机之间的通讯;时钟控制模块负责提供智能鱼缸控制系统的时钟参数;led灯带则使鱼缸更具观赏性;不同的电机负责不同的功能主要有气泵、水泵、喂食器。

 图6.3智能鱼缸正面俯视图

  图6.4智能鱼缸电机设备图

  图6.5智能鱼缸反面俯视图 6.3.2手机端软件截图 如图6.6软件界面截图,手机客户端软件包含有三大部分:设备连接界面,人工控制界面,定时任务界面。用户使用时,打开程序,会进入蓝牙链接界面;蓝牙链接以后会自动进入到人工控制界面界面,该界面包含温度值的检测与显示、喂食控制、进出水开关、氧泵开关、霓虹效果;第三个页面是定时控制界面,用户可以设置时间让鱼缸每天按照用户设置的时间来自动进行喂食、换水、充氧操作。

 A

 B

 C 图6.6 软件界面截图

 7 系统测试 7.1LED灯光变换测试 打开智能鱼缸控制系统电源开关,手机端打开智能鱼缸APP,连接设备,选择打开霓虹灯,如图7.1所示。

 图7.1 霓虹灯模块演示图 如图7.2所示,智能鱼缸设备,开启霓虹效果,非常炫目,提高了鱼缸整体的观赏性。

 图7.2 霓虹灯效果图 7.2检测温度测试 打开智能鱼缸控制系统电源开关,手机端打开智能鱼缸APP,连接设备,选择获取温度,手机客户端显示当前鱼缸的温度值为21度,并提示“获取温度”命令已发送,如图所示。

 图7.3 温度检测图 7.3水循环控制系统测试 打开智能鱼缸控制系统电源开关,手机端打开智能鱼缸APP,连接设备,选择获打开进水开关,鱼缸做出抽水操作,如图7.4所示。

 图7.4 鱼缸水循环测试图 7.4充氧模块测试 打开智能鱼缸控制系统电源开关,手机端打开智能鱼缸APP,连接设备,选择获打开充氧泵开关,鱼缸做出充氧操作,如图7.5所示。

 图7.5 鱼缸充氧测试图

 结束语

 本系统根据当前市场上的需求从系统集成角度进行设计和开发,形成了一套自动充氧、自动换水、灯光变换和自动喂食等功能为一体的集成控制系统。同时该系统设计灵活、成本低廉,便于量生产,可广泛安装于家庭、宾馆、网吧、高级写字楼等的场所增加美观。 该智能鱼缸控制系统综合利用了许多高新技术,例如传感器技术,蓝牙通讯技术和嵌入式控制技术,开发了一套简洁实用的鱼缸智能控制系统。整个系统的软硬件设计十分合理,其中底层软件部分采用了模块化程序设计方法,使得硬件部分各个模块之间相互独立工作,同时又受单片机的控制,使得各个模块之间又相互协同工作,提高了整个系统的可靠性和可扩展性。经过我自己对本系统的运行操作验证,本系统具有很快的响应速度,人机交互界面简单清晰便于操作,功能完善工作可靠等特点。 由于鱼缸里的水、观赏鱼、水草、微生物、水含氧量等组成的一个小型生态环境是一个复杂的、多变量的、非线性系统,所以本智能鱼缸控制系统肯定存在许多不足及疏漏之处,希望相关专家提出宝贵的改进意见。 通过这次设计智能鱼缸控制系统,我学到了许多以前不了解的知识,学会了一般课题的研究过程,还学会了论文的撰写。同时在这次课题设计实践中我也遇到了许多的难题,在解决遇到的这些难题中,我学到了将所学的理论知识和实际相结合起来。在一定程度上提高自己的动手能力和问题解决能力。由于我自身的水平不足,在本篇论文中或许会有一些疏漏或者存在一些不妥之处,所以还望各位专家、学者指正和批评。

 致 谢

 在做本次毕业设计的过程,我得到了指导老师XX老师的悉心指导和关怀,论文的选题、与撰写过程中得到了老师很多宝贵的指导意见。 在选择课题的时候,老师就给出具有针对性的建议,并且高标准地要求我们,希望我们务必通过本次的毕业设计得到收获,在能够运用所学知识进行实践之外,还想要确保我们能够切实地学到一些新技术、新知识。感谢老师的高要求,正是因为这样,我才能够有勇气选择此次课题,并且顺利完成。 在论文撰写阶段,老师对论文严格把关,帮助我们顺利完成论文。黄老师严谨的学者风范、深厚的理论修养、平易近人的态度都令我收益匪浅,为学习的楷模。 在此,我也要感谢XX大学的培养。在学校的时光,我不仅得到知识的增长,更明白了很多做人做事的道理,感谢老师们一直以来孜孜不倦的教诲,衷心祝愿我们的XX大学会越来越好!

 参 考 文 献 [1] 王珍娟,宋正刚.

 鱼缸智能控制器的设计[J]. 甘肃科技. 2012(09) [2] 刘焕成,编著.单片机原理及系统设计[M]. 清华大学出版社, 2011

  [3] 杨彦伟,苏卫红,张灏璠.

 基于STC889C51的智能鱼缸控制系统[J]. 电子技术与软件工程. 2015(22) [4] 信息产业部经运司.2010年电子工业统计资料汇编[R].2010 [5] 李建壮.传感器技术的应用与发展趋势展望 中国科技信息2011 年第17 期 [6] 林新霞等.传感器技术发展与前景展望[J].工业仪表与自动化装置.2011 [7] 何立民.从嵌入式系统视角看物联网[J].单片机与嵌入式系统应用.2010 [8] 中国将成全球最大嵌入式市场[J].软件, 2010 [9] 信息产业部经运司.2010年电子工业统计资料汇编[R].2010 [10] 周四六.

 两种实用的双泵排水控制电路[J]. 河南科技. 2013(23) [11] 孔祥洪,王伟杰,宋连伟,钱卫国,郭阳雪,王文俊.

 观赏鱼缸智能控制器的仿真设计[J]. 实验室研究与探索. 2013(05) [12] 余柏林,龚汉东,王颖,余法红.

 基于玻璃的流量传感器研究[J]. 传感技术学报. 2010(11) [13] Hu, Jia,Song, Hocheol,Karanfil, Tanju.Comparative analysis of halonitromethane and trihalomethane formation and speciation in drinking water: The effects of disinfectants, pH, bromide, and nitrite. Environmental Sciences . 2010. [14] Darryl B. Jones,Aysenur Saglam,Hocheol Song,Tanju Karanfil.

 The impact of bromide/iodide concentration and ratio on iodinated trihalomethane formation and speciation[J]. Water Research . 2011 (1)

  [15] Hu, Jia,Song, Hocheol,Karanfil, Tanju.Comparative analysis of halonitromethane and trihalomethane formation and speciation in drinking water: The effects of disinfectants, pH, bromide, and nitrite. Environmental Sciences . 2010.

推荐访问:毕业设计 鱼缸 单片机

《基于单片机的智能鱼缸的设计与实现毕业设计.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:

文档为doc格式

一键复制全文 下载 投诉