STM32/STM8技术论坛
直播中

ben111

11年用户 2662经验值
擅长:MEMS/传感技术 嵌入式技术 模拟技术
私信 关注
[经验]

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位单片机相连接。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为同类应用场合的最佳选择。所以此次我们选择了这一模块用来实时监测台灯周围的环境变化,用于给用户提供更加健康、舒适的工作学习环境。

8、MQ-2烟雾、甲烷、液化气、可燃气模块。MQ-2气体传感器对液化气、丙烷、氢气的灵敏度高,对天然气和其它可燃蒸汽的检测也很理想。这种传感器可检测多种可燃性气体,是一款适合多种应用的低成本传感器。现在家庭很多在使用天然气、煤气,在为人们生活提供方便的同时,但也存在着一些安全隐患。因此,我们采用该模块对家庭室内环境实时检测,也是为了给用户提供更加安全健康的生活场所。

硬件电路之五:

9、时钟显示PCF8563模块。PCF8563是低功耗的CMOS实时时钟日历芯片它提供一个可编程时钟输出一个中断输出和掉电检测器所有的地址和数据通过I2C总线接口串行传递最大总线速度为400Kbits/s每次读写数据后内嵌的字地址寄存器会自动产生增量。该模块为我们获取实时时间提供了保障,可以使手机APP页面端实时更新数据提供可靠地时间参考依据。

通过以上模块的协作,我们将各模块收集的数据上传至云端与手机APP之间进行打通连接,让这台台灯拥有了“思想”,它能尽可能多的满足人们的生活需求,提高人们的生活质量,同时适应科技创新、智能化、物联化、未来化的发展方向,为智能家居的发展注入了了新的活力。

APP软件设计(局部)

/**

* 发送指令,下发单个数据点的命令可以用这个方法

* 注意

* 下发多个数据点命令不能用这个方法多次调用,一次性多次调用这个方**导致模组无**确接收消息,参考方法内注释。

*

* @param key   数据点对应的标识名

* @param value 需要改变的值

*/

public static void sendCommand(String key, Object value) {

if (value == null) {

return;

}

int sn = 5;

ConcurrentHashMap hashMap = newConcurrentHashMap();

hashMap.put(key, value);

// 同时下发多个数据点需要一次性在map中放置全部需要控制的key,value值

// hashMap.put(key2, value2);

// hashMap.put(key3, value3);

mDevice.write(hashMap, sn);

Log.i("liang", "下发命令:" + hashMap.toString());

}

[size=21.3333px]     

APP软件设计(局部)

/**

*更新界面数据显示

**/

protected void updateUI() {

myPowerCheckBox.setChecked(Lamp_Power);

myAutoCheckBox.setChecked(Lamp_Auto_Control);

tv_data_Lamp_Size.setText(Lamp_Size +"");

***_data_Lamp_Size.setProgress((int)((Lamp_Size - LAMP_SIZE_ADDITION) / LAMP_SIZE_RATIO - LAMP_SIZE_OFFSET));

tv_data_Today_Humidity.setText("湿度:" + Today_Humidity +"");

tv_data_Today_Temp.setText(Today_Temp +"°C");

tv_data_lamp_illumination.setText("光强度:" + Light_Intensity);

tv_data_have_CombustibleGas.setText((Have_CombustibleGas) ? "有可燃气体" : "无可燃气体");

tv_data_sitting_posture.setText((Sitting_Posture) ? "坐姿正确" : "坐姿不正确");

HashMapHMSataHashMap = DateTimeUtils.getIntTimeToHMS(Now_Time);

tv_data_time.setText(HMSataHashMap.get("h") + ":" +HMSataHashMap.get("m"));

initViewPager();

HashMapstringDataHashMap = new HashMap<>();

stringDataHashMap.put("Today_Study", Today_Study);

stringDataHashMap.put("Last1day_Study",Last1day_Study);

stringDataHashMap.put("Last2day_Study", Last2day_Study);

stringDataHashMap.put("Last3day_Study", Last3day_Study);

stringDataHashMap.put("Last4day_Study", Last4day_Study);

stringDataHashMap.put("Last5day_Study",Last5day_Study);

stringDataHashMap.put("Last6day_Study", Last6day_Study);

//设置温度折线图

studyTimeContentPager.setData(stringDataHashMap, Today_Date);

/**

* 如果灯关了,强制顶部图片最暗

*/

if (Lamp_Power)setTopLampLight(Lamp_Size);

else setTopLampLight(-255);

}

STM32硬件代码(局部)


STM32硬件代码(局部)


APP页面:局部图 灯光控制主界面



APP时钟设置界面图,可以通过APP来控制台灯上面的数码管时钟实现网络时间的同步与时间调节。


设置日期和时间界面图


APP智能台灯模式选择界面图


创新点

现如今社会LED灯以高节能,长寿命,促环保的优点在社会上面占据着强大的市场,也因此是大家关注的焦点。这几年高亮度的LED光源因科技的迅速发展,制作技术方面突飞猛进,同时造价成本的降低,如今台灯得以使用LED光源作为高亮度,高效率而又省电无碳排放的节能光源。

团队秉持着创新智能、简约实用为主题来设计这款台灯。台灯在现如今的生活比重越来越重,社会大众对台灯的功能要求也越来越高,为适应更加宽广的人群要求,我们在这款设计方面加入了许多新颖的创新理念和设计要求:

1、用手机APP实现对台灯进行远程监控,使用方便并可以实时了解家庭环境的最新情况;

2、自动调光、语音调光、手动调光时刻为了您的方便与快捷作出努力;

3、手势调节光照亮度,通过扫描手速的快慢与方向来改变光亮;

4、对于坐姿的纠正有一定帮助,可以使您培养良好的坐姿习惯,促进身体健康;

5、久坐提醒、定时提醒、小夜灯等为您的健康生活提供便利和保障。

科学技术是第一生产力,创新是科技不断进步的力量源泉。创新要更好地服务于人类的生活,提高人们的生活水平,我们的创新想法是来自于人们生活中的真实需要,我们努力用所学的知识去创造价值,用求知的心态去探索世界,每一次小小的进步都是我们不断前行的动力,我们热爱着生活、我们热爱着科学、我们热爱着无限的创造力。

实用性

我们的智能台灯,与其他台灯相比智能化设计理念优势较为明显。现如今,智能、节能、环保产品不断出现在大众眼前,科技的快速发展也让越来越多的物品变得智能化、简单化。普通台灯或者说家居产品都将会面临着改革的命运,这是一个趋势,也是一个必然现象。现就我们的作品功能分析来说它在现实生活中具有以下实用性:

1、信息化的快速发展让我们的生活变得近在矩尺,一切事情好像都能够通过一个手机来完成,手机成为了我们生活中必不可少的物品。所以,我们给台灯配备了APP连接,通过手机APP页面端我们可以对台灯进行一些特殊的操作,使远在其它地方的您可以随时控制它。

2、在手机APP页面端我们不单单设置有开关功能,还设置了语音调节、进度条调节、多种工作模式选择功能,操作简单易于上手。我们的台灯还可以通过外界光照强度来调整自身亮度,通过不同形式的灯光调节来保护您的眼睛,给你一个舒适的学习工作环境。

3、APP页面端还可以通过台灯实时收集到您的入座时间、周围温湿度、光强度、可燃气体等数据,并将这些数据显示在APP页面端,让您能在千里之外就能对家里的环境了如指掌,随时作出应对准备,还可以查看近一周的工作时间数据,对台灯的使用情况有所了解。

4、在事务缠身想要通过阅读读物放松身心或者睡前阅读一些文章又怕沉迷书海不能自拔的时候,您可以通过手机APP页面端对小台灯进行定时关灯,在约定时间结束的时候会通过自动关闭台灯来提醒您该要工作或者休息了,这弥补了我们经常遗忘时间的通病。

5、孩子的学习是我们每个家庭特别关注的问题。学习的同时孩子学习的坐姿也是家长们头疼的难题。孩子们在学习的时候不经意间就会弯腰趴在桌子上面长时间下来对孩子的身体骨骼发育会造成较大的影响,同时近距离学习对眼睛的伤害也会特别的严重。我们的台灯设计上面考虑到这个问题,所以我们添加了坐姿纠正的功能。利用超声波模块通过使用者与台灯的距离远近判断是否存在坐姿偏差,如果您的身体严重倾斜或下趴,台灯将自动熄灭以此来提醒使用者纠正坐姿。

6、我们的产品可以根据手势和无极调光来实现灯光控制。在台灯的上面有4个传感器,当我们的手势在上面快速通过的时候,小台灯的亮度会从最暗直接增加到最亮,如果您的手势缓慢通过的时候我们的小台灯会缓慢变亮,这跟我们台灯上面的实现无极功能的4次指纹按键实现相同的功能------无极调光。第一次指纹按键在上面的时候灯光会由暗缓慢的变到最亮;第二次指纹按键时间在第一次灯变换的过程中时,小台灯直接调到最大亮度;第三次指纹按键会实现小台灯的灯光从最亮缓慢转化到最暗直至灯熄灭;第四次指纹按键时间在第三次灯光变化过程中时,小台灯直接熄灭。这就是我们的无极调光功能的实现过程。

总的来说,我们所有的思想设计都是为了改善我们的生活质量,提高我们的生活水平。每一项功能都尽可能多的为用户提供便利,符合现代化社会人们对商品的要求。

市场应用前景

现在社会上的台灯应用比较广泛,包括家庭,学习,工作各个领域。而且台灯的样式也琳琅满目。特别是随着现代社会的迅速发展,科技时代的来临,新材料,新技术,新设备的逐渐完善,科技产品的应用会更加贴近生活。应国务院要求,发展节能环保产业是培育发展新动能,提升绿色竞争力的强大举措。但是现如今,市场上面台灯的质量良莠不齐,好的LED台灯能够做到节能,环保,寿命长三个大大的优点,能做到适应国家的要求,但是他的价位相对来说也是比较高的。而普通的台灯与之恰恰相反,在瓦数相同的情况下,普通的灯会更加耗电,同时亮度的控制也不会根据实际情况来自动调节,做不到智能化。这跟我们这台节能灯的设计理念相差甚远。

关于智能台灯程序部分:1.手动模式与自动模式的切换 ,可以通过按键或者APP端来控制自动模式与手动模式的切换。


自动模式1:通过获取外界的光线值来实现台灯的自动调节。


自动模式2:实现了人来灯亮,人走灯灭,人学习时自动调节。


手动模式:在手动模式下可以通过旋钮,APP和手势控制装置实现台灯的控制。



回帖(4)

王建昌

2018-8-12 17:22:43
谢谢楼主。不错,非常好,谢谢分享
举报

杨利军

2018-8-15 20:33:11
{:4_95:}{:4_95:}
举报

李东乾

2019-5-13 11:16:41
介绍的很详细啊,可以分享一下源代码吗?
举报

青桅0

2020-6-11 10:18:15
我也想要源代码
1 举报
  • 書同jkhk: 你搞出来了吗?我毕业论文这个是

更多回帖

发帖
×
20
完善资料,
赚取积分