微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于PSoC平台的重力感应式智能闹钟设计与实现

基于PSoC平台的重力感应式智能闹钟设计与实现

时间:07-02 来源:互联网 点击:

一、项目概述

1.1 引言

普通的闹钟只具有时间显示和语音提醒功能,若设想一种闹钟不仅可以进行时间显示,而且到达设定的闹钟时间时可以在表盘上显示相关的事务提醒,那么闹钟的功能可以得以极大的丰富。

1.2 项目背景/选题动机

第一,参照PSoC Rocks例程所演示的效果,拓展到可以用一系列的LED灯来进行文字显示;

第二,曾看过有人用一个马达带动一系列LED灯,并施以一定的控制来完成表盘时钟的显示,觉得既有趣又具有观赏性,所以会想到将其功能复杂化,尝试完成文字显示;

第三,考虑到PSoC开发板集成有重力感应器,可以用来对闹钟的功能进行扩展,当器件处于不同的放置状态时进行不同的内容显示;

二、需求分析

2.1 功能要求

1、时钟显示功能:这是系统最基本的功能,通过控制器控制LED灯的点亮与熄灭,在人的视觉暂留效应下,就会在视线里出现表盘和走动的指针;该功能比普通时钟更具观赏性和趣味性。

2、温度显示功能:这是时钟系统的一个附加功能,主要是为了扩展时钟功能并进一步利用PSoC芯片的资源。

3、闹钟功能:这是该系统较大的亮点所在,将闹钟的语音提醒与文字提醒相结合,从更好更准确地完成提醒功能。

2.2 性能要求

1、时钟的准确度要求:这是时钟必须具备的性能之一,不准确的时钟基本没用。

2、温度的精度要求:温度检测允许存在一定的误差,由于不涉及高精度测量,所以1~2度以内的误差都是可以接受的。

3、显示系统的清晰度要求:LED显示系统的视觉效果应足够清晰易于辨认。

三、方案设计

3.1 系统功能实现原理(除图片外需有文字介绍)

系统硬件结构框图

系统功能说明:该系统通过马达带动一系列的LED灯旋转,加之人的视觉暂留效应从而完成一个简单的显示系统。重力感应传感器用以检测闹钟放置状态,并反馈给控制器从而控制LED显示系统进行不同模式下的内容显示(时钟模式、温度模式、设置模式);温度传感器只在温度模式下启用,用来检测环境温度,继而通过LED显示系统显示;时钟模式时,在控制器作用下,控制各LED灯的闪烁从而实现表盘时钟的显示。

3.2 硬件平台选用及资源配置

硬件平台选用基于PSoC的自制平台,因为考虑到系统功能的实现原理,无法采用大赛提供的开发板来完成,且开发板所集成的各模块并未全部用上,所以我们选择自主设计硬件结构。简单来说,硬件主要包括有PSoC芯片、加速度感应器、温度感应器及数十个LED灯外加一个直流马达(需配备减速器),硬件结构选用易于做旋转运动的长条状结构,如下图所示。

简易的硬件结构示意图

3.3系统软件架构

构建系统的元件主要有检测元件、控制器和显示元件,这些元件搭建的系统架构可用下图进行简单的说明。

系统软件架构

由于构建的系统并不复杂,故其架构相对简单明了,下面对各模块进行简单的介绍。检测元件:相当于是信号采集元件,负责搜集周围环境的信息并反馈给控制器分析,继而是控制器发出相应指令控制其他元件。信号采集阶段的关键是对采集信号的处理,如AD转换,PSoC所集成的Delta-Sigma ADC完全能够满足我们的高精度信号采集的需求。

控制器:是系统的核心部分,外围设备所有的功能实现基本上都由控制器发出指令并加以控制,系统的功能实现关键在于控制器能够正确控制LED灯的闪烁,从而完成显示。

显示系统:由马达和一系列LED灯组成,显示功能的实现主要依赖于控制器的控制指令及马达的转动。

3.4 系统软件流程(除图片外需有文字介绍)

主程序流程图

中断服务程序流程图

3.5 系统预计实现结果

时钟模式下,LED显示系统显示表盘式时钟,即带有转动时针、分针、秒针的时钟,到达设定的闹钟时间,如早上7点时发出声音且表盘显示“get up”,提示起床;下午1点时表盘上发出声音显示“rest”提示午休等;将闹钟旋转90度放置进入温度显示模式,根据温度传感器的测量值显示环境的温度;继续将闹钟旋转90度放置进入设置模式,可用来设置闹钟时间。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top