基于STM32芯片的一款智能台灯

2020-02-14来源: elecfans关键字:STM32  芯片  智能台灯

前段时间参加了全国大学生智能互联创新大赛,我们队伍经过半个月的努力做了一款智能台灯,特分享出来供大家学习。

智能台灯侧面图   

智能台灯整体图

智能台灯俯视图 

作品简介:

随着时代的进步人们对灯的要求也越来越多,台灯是普遍的家用照明设备之一,为了结合国家的节能环保计划以及产品人性化的要求,我们团队研发出了一种多功能用途台灯,将智能与节能环保最大化结合。该智能台灯基于多种模块的相互配合,融入了团队智能环保的设计理念,以及人性化的宗旨使“她”可以更加贴心的照顾我们对灯光的需求。智能灯光调节的设计使她拥有最大化保护用户视力的强大功能,通过我们团队特制的手机APP用户可以随心所欲的对她进行远程监控,本智能台灯强大的外设模块使它可以实时获取工作时间、外部环境温湿度、光照强度、可燃气体的数据,并将数据实时显示在手机APP页面端让用户可以实时了解近期工作时间,并掌控外界环境的各种变化。同时语音识别控制和无极调光功能的嵌入更加灵敏化了“她”的可操作性。自动调光模式在不同的时间可以通过获取外界环境来自动调整灯光亮度,有利于节能环保。坐姿纠正功能的实现使得用户能够养成良好的学习工作习惯并保护视力。手速调光的新挑战赋予“她”与众不同的亮点,通过手势扫描的速度来调节灯光亮度,在调节灯光的时候还能给用户体验速度的乐趣,让台灯的使用变得更加便捷、有趣。产品智能化、物联化、人性化的设计将带您进入智能家居的美好生活。


研究背景

随着现代科学技术的不断发展,生活用品的智能化程度也越来越普及,人们对一些家居物品的人性化、智能化设计要求也越来越高。众所周知台灯作为家庭主要照明工具之一,在现代社会生活中占有重要地位,而且台灯的应用范围非常广泛,适用于各年龄阶段的人群,因此它的市场应用性非常高,具有很好的发展前景。随着青少年近视问题越来越严重,家长越来越重视孩子的视力保护,这使得“无频闪、无眩光”的“护眼台灯”越来越受到家长们的青睐。然而实际上,市面上很多护眼台灯虽然声称“无频闪”,但只是“高频闪”而已。这种更高频的频闪,对眼睛的伤害更大,因为眼睛要非常快速地根据灯光闪动作出反应,长时间使用此种台灯,眼睛更容易疲劳,对视力造成一定伤害。真正无频闪的台灯应该是使用直流电恒流驱动的LED作为发光源,所以本次我们采用的便是 LED灯作为发光源。


如果台灯仅仅具有这些功能,未免太缺乏实用性和创新性。因此,我们通过调查和学习,了解到很多人希望台灯有一些特殊功能,例如:能够通过外界光照自动调节亮度、能够对周边环境检测、能够用手机远程控制台灯、能够让台灯拥有多种工作模式、能够对有害气体的预警、能够让害怕黑夜的孩子晚上安稳入睡等。还有很多生活中我们常常会遇到的问题。一切产品的最终目标都是为人类服务,所以我们团队决定此次比赛我们致力于解决在智能家居类普遍存在的问题,我们也希望通过这次学习能够更好地为人们生活带来便捷,更大程度的实现台灯的人性化、智能化,满足未来智能家居的要求。


研究目的

创新来源于生活,一切有价值的创造都将用于提高人们的生活品质。随着现代化社会的不断发展智能物联一体化的创新方向得到了特别的重视,这些方面人们善于开发思想敢于创新,加快了智能化产品的快速发展。台灯作为生活中必不可少的家居用品之一在人们的生活中起着非常重要的作用,尤其对于学生、儿童。但市面上的台灯规格不一种类繁多,为了满足大多数人们的生活要求,我们开始研究了一款符合大众的智能台灯。在一些硬件模块的结合以及一些开发平台的帮助之下让它更具“思想”,能够满足大多数人对于台灯的期望值。


眼睛是人们心灵的窗户,因此,很多人希望台灯能够很好的保护我们的眼睛。所以借助本次大赛的平台我们团队决定做一款多功能的台灯。当然护眼是它的主要功能之一,我们决定采用直流电恒流驱动的LED作为发光源,以减少频闪对人眼的伤害,同时我们采用光照感应模块采集台灯周围环境亮度用来调节灯光自身亮度减少亮度差。我们通过在身边同学的调查得出很多同学希望现代台灯能够等多的拥有科技感时代感,因此在现在智能化,物联化快速发展的今天我们决定用手机APP远程控制台灯,在APP页面上我们做了很多人性化的设计,比如:模式选择功能、远程控制开关、语音开关、亮度调节、温度时间、工作数据显示等一些好玩的功能。这样的设计一是为了满足现代人对于产品智能化的要求,另一个则是物品人性化设计的理念,更好地提高人们的生活质量。手势调节灯光亮度在现代社会中还没有发展成熟,本次我们努力尝试探索以手速快慢等特定条件来调节灯光强弱,使台灯更具科技感。在现实生活中很多小孩子在早期学习中不能养成良好的坐姿,本次比赛中我们试着实现坐姿纠正的功能,用于培养小孩子的正确坐姿养成良好的学习习惯。还有一些人夜晚睡觉害怕黑暗,所以我们此次加入了小夜灯模式,用几个蓝色发光二极管来发出美丽的蓝光,帮助用户安稳入眠。

模块设计图示

功能分布图:

硬件设计之一:

首先考虑到台灯的设计理念要更好地符合智能化、人性化、多功能化的要求,我们使用STM32F401Nucleo作为主控开发板以及Android Studio为软件APP开发平台,同时我们参考研究了很多公司的资料,在这些平台上我们学习了更多的知识,下面介绍一下我们作品的硬件设计流程方案。


1、台灯的外观设计方面,由于外观制作不易成型演示效果不好,所以本次台灯外观选择了在旧台灯上进行改造,使达到废物利用创新节能的作用。该台灯有一个可以弯曲的台柱用于调节光照范围,使得它的实用性更好,同时我们采用了节能护眼的LED灯作为光源,并自己动手进行主灯的焊接工作。

2、设计中使用ST公司的STM32F401Nucleo开发板为主控核心板,并在Android平台下进行手机软件的开发,为了解决硬件与软件的通信,选用了ESP8266wifi模块。ESP8266是上海乐鑫信息科技设计的低功耗wifi芯片,集成完整的TCP/IP协议栈和MCU。而ESP8266模块是深圳安信可公司基于ESP8266芯片研发(增加必要外围电路、串口flash、板载天线等)的串口wifi模块,成本低、使用简便、功能强大。

硬件电路之二:

3、在Android studio软件开发平台上编写了名为“智能台灯”的手机APP。实现台灯的远程监控功能,该应用主页面上有多种灯光模式选择功能,同时具有进度条调节灯光亮度、显示当前温湿度、光强度、时间定时开关、语音开关以及工作数据显示等,方便用户的更多生活需求。在后续的实物照片及演示过程中我们会详细介绍。

4、对于无极调光这一方面采用了电容式触摸模块。电容式触摸模块通常广泛适用于遥控器、灯具调光、各类开关以及车载、小家电和家用电器控制界面等应用中。单线触摸,利用电容触摸原理,感应灵敏触手可即。默认是具有开关功能、调光功能、带亮度记忆渐明渐暗的LED触摸无级调光功能。开灯时慢慢变亮,关灯时慢慢变暗,有效避免了对眼睛的刺激。同时能过通过触摸时间的长短进行光照亮度的调节,总有一种亮度适合您。

硬件电路之三:

5、HC-SRO4超声波模块。超声波测距模块一般有发射、接收和信号处理三个部分。工作时超声波发射器只需要在触发端给一个至少10微秒的高电平信号,它就会自动发送8个40KHz的方波,自动检测是否有返回的信号。用超声波模块主要用于纠正坐姿需要,我们会通过超声波的测距功能来时刻提醒用户在工作学习时要保持正确的坐姿,一旦用户坐姿偏差太大台灯将会发出报警提醒声,让用户培养良好的坐姿习惯。

6、人体热释电探头。用人体热释电模块能够实时检测到是否有人经过,如果有返回信号则台灯自动开启,能够方便用户第一时间的使用并可以记录入座时间及时给予反馈信息提醒。同时有利于用户的夜间使用,当感应到有人经过它便会自动开灯,方便夜间人们的生活且不影响家人的正常休息。对于害怕黑夜的人来说台灯夜间有一个小夜灯模式,能够让用户安心入睡,保障更好地睡眠质量。我们还运用四个热释电探头做了一个手势控制台灯亮度的功能,通过手速的快慢及方向来改变灯光亮灭。

硬件电路之四:

7、DHT11温湿度模块。DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为同类应

[1] [2] [3]
关键字:STM32  芯片  智能台灯 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic488223.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:深度解读STM32数据保存与毁灭
下一篇:基于STM32的家庭服务机器人系统工作原理及设计

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

STM8S库文件判断指定IO输入引脚电平GPIO_ReadInputPin有问题
/**  * @brief  Reads the specified GPIO input data pin.  * @param  GPIOx : Select the GPIO peripheral number (x = A to I).  * @param  GPIO_Pin : Specifies the pin number.  * @retval BitStatus : GPIO input pin status.  */BitStatus GPIO_ReadInputPin(GPIO_TypeDef* GPIOx, GPIO_Pin_Ty
发表于 2020-02-08
STM8 GPIO输入输出模式
悬浮输入悬浮输入,也叫浮空输入,顾名思义,即引脚悬空。这种方式的输入阻抗很高。当悬浮输入的引脚上加上信号时,单片机所得到的信号并不确定是高电平或是低电平,是一个不确定的信号。悬浮输入的典型应用就是模数转换,外部的任何一个小信号都要经过A/D采样转换为数字信号。上拉输入上拉就是把电位拉高,比如拉到Vcc。上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!强弱只是上拉电阻的阻值不同。上拉输入最典型的应用就是外部按键,当按键未按下时,我们要保证它是高电平,当按键按下时才被拉低。推挽输出推挽输出(Push-pull output),也称为互补输出,推拉式输出。推挽输出模式导通损耗小,效率高。在此模式下,N-MOS、P-MO
发表于 2020-02-08
STM8 GPIO输入输出模式
STM8L的USART1串口通信详解 含例程
STM8L除了可以进行串口通信,还可支持红外通信,智能卡协议,这些功能后续会开发,发布程序源码。STM8L还可以使用DMA缓存数据,减少CPU负担,为了简单起见,本文没有用到DMA功能。只需要简单的配置发送的字长度,停止位数,波特率,打开发送接收,就可以进行串口数据收发。下图为串口发送数据流程。对于串口发送数据,需要注意的是,打开发送后,数据发送完成,如果不关闭中断,程序会一直进入中断。所以在确保数据发送完成后,需关闭中断,退出发送数据。本文通过周期性(500ms)的向上位机发送一组数据,来演示STM8L的串口通信。串口接收部分程序也已经调试好,只需把while循环中的程序注释掉,设置断点,查看上位机发送来的数据即可
发表于 2020-02-08
使用STM8S105K4T6C 模数转换器的12通道
分享今天遇到的一个stm8s模数转换的小问题~~~这款单片机一共提供了7个模数转换通道,他们分别是AIN0-AIN5和AIN12。stm8s105k4t6c的管脚图其中AIN0-AIN5的配置和使用方法如下,配置为连续转换、扫描模式(代码写的不好,大神请见谅~):[mw_shl_code=c,true]/*---------------------------------包含头文件---------------------------------*/#include "adc.h" #define        ADC     
发表于 2020-02-08
stm8——LED流水灯实现
最近接触并学习了一款STM8系列的芯片。以前学习了的ARM9+Linux后,再来学习单片机就感到上手很快了。 芯片基本信息:Type:STM8L151G68-bit ultralow power MCU, up to 32 KB Flash, 1 KB Data EEPROM RTC, LCD, timers, USART, I2C, SPI, ADC, DAC, comparators具体可以查看datasheet:http://pdf-file.ic37.com/pdf4/STMICROELECTRONICS
发表于 2020-02-08
MCU程序设计之STM8S的optionbytes
今天使用STM8S在程序中修改optionbyte遇到问题一直读取为0,不能进入设置流程,之前的程序今天重新修改东西,使用新的片子,原来程序如下:  AFR_TEMP = (uint16_t)((uint16_t)0x01 << 8);  AFR_TEMP = AFR_TEMP | (uint16_t)0xFE;  AFR_TEMP = (AFR_TEMP >> 8);之所以直接赋值而不调用函数,是因为程序代码空间有限,使用函数调用方法修改没有问题,如下:  AFR_TEMP = FLASH_ReadOptionByte(0X4803);  AFR_TEMP
发表于 2020-02-08
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved