单片机系统是整个系统控制的核心,它的选择决定了整个系统的稳定高效运行,结合我们认识,以下两种方案选择:
方案一:采用STC公司的IAP15W4K58S4单片机作为主控器,其算术功能强,软件编程简洁灵活、自由度大,可用软件编程实现各种逻辑控制功能,且其功耗低、技术成熟,成本低廉。但是该单片机的计算速度不够处理大量的信息,不适合本产品的使用。
方案二:采用ST公司的STM32F103VET6单片机作为主控器,该单片机使用高性能的ARMCortex-M3
32位的RISC内核,工作频率为72MHz,内置高速存储器(高达512K字节的闪存和64K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。包含2个12位的ADC、3个通用16位定时器和1个PWM定时器,还包含标准和先进的通信接口:多达2个I2C接口和SPI接口、3个USART接口、一个USB接口和一个CAN接口。且功耗低,计算速度快,功能强大。
本产品主要是对多个模块收集到的信息进行快速的计算并处理,然后在触摸液晶屏上显示因此我们选择STM32F106VET6单片机。
综上所述,采用方案二。
(三)红外传感器的选择
红外传感器是本产品主要功能能够实现的重要器件,需要精确调整感应人体的距离,因此我们需要对各种传感器的灵敏度和精确度进行比较和选择。可供选择的方案有以下两种:
方案一:使用HC-SR501人体红外感应模块,该模块是基于红外线技术的自动控制模块,采用LHI778探头设计,灵敏度高,可靠性强,超低电压工作模式,但是在测试过程中发现其只能检测到移动的人体而无法检测到静止不动的人体,但是为了增加精度,所以采用。
方案二:使用ED80NK红外光电开关,这是一种集发射与接收于一体的光电传感器。检测距离可以根据要求进行调节。该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点,且该传感器可以检测到静止不动的人体。
综上所述,方案一和方案二综合使用。
(四)传感器的选择
传感器是为了检测办公室环境质量的传感器之一,需要对空气中的颗粒进行较为灵敏的感应并进行检测,因此给出了以下两个方案:
方案一:使用SDS021激光传感器,该传感器使用激光散射原理,能够得到空气中0.3~10微米悬浮颗粒物的和PM0浓度。使用进口激光器与感光部件,数据稳定可靠;数字化输出,集成度高。但是单个传感器价格较高,使用该传感器会使产品的成本成倍增大,所以不选择。
方案二:使用GP2Y1010AU灰尘传感器,该传感器具有非常低的电流消耗(最大20mA,11毫安典型值),最高7VDC供电。传感器的输出是一个模拟电压成正比的测量粉尘密度,具有0.5V/0.1mg/m3的灵敏度。与方案一比较虽然灵敏度有所降低,但在测试过程中发现其灵敏度已符合室内环境的使用,加上功耗低和成本低的特点,所以选择我们GP2Y1010AU灰尘传感器。
综上所述,选择方案二。
(五)温湿度传感器的选择
温湿度传感器是为了检测办公室环境质量的传感器之一,需要对环境温度湿度有较高的灵敏度和数据采集的精确度进行选择,因此给出以下两个方案:
方案一:使用温度传感器DS18B20和湿敏电阻HR2用温度传感器DS18B20测量环境的温度,用湿敏电阻HR202测量环境的湿度。它们的感温能力和感湿能力都比较高,数据收集方便,但是在实际测试中其受电路等因素的影响较大,测得的数据不够稳定。
方案二:使用DHT11数字温湿度传感器,该传感器包括一个电阻式感湿元件和一个NTC测温元件,是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。该传感器具有快速响应、抗干扰能力强、功耗小、简易快捷、性价比较高等优点。
综上所述,选择方案二
(六)语音提醒模块
语音提醒模块是为了将处理的信息用语音回馈给使用者而设置的模块,我们使用的语音模块采用BY83SSOP24MP3主控芯片,支持MPWAV格式双解码。模块内置SPI-FLASH作为存储介质,配有MicrocUSB接口,无需上位机软件,可以通过数据线连接电脑自由更换FLASH的音频内容。并且内置3W功放,可以直接驱动3W的喇叭。具有声音优美,应用广泛,使用方便的优点。
三、单元模块电路说明(一)电路原理图
图3:桌面久坐健康助手PCB原理图
(二)电路PCB图
这是桌面久坐健康助手的原理图纸和PCB图纸,我们采用AltiumDesigner09PCB绘制软件进行模块电路和核心电路的硬件制作。
图4:桌面久坐健康助手PCB图
(三)温湿度传感器
DHT11含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性,可以为用户提供准确的温度和湿度。
图5:DHT11温湿度模块电路
(四)灰尘传感器
传感器的输出是一个模拟电压成正比的测量粉尘密度,具有0.5V/0.1mg/m3的灵敏度。与方案一比较虽然灵敏度有所降低,但在测试过程中发现其灵敏度已符合室内环境的使用,加上功耗低和成本低的特点,所以选择我们GP2Y1010AU灰尘传感器。
图6:GP2Y1010AU0F夏普粉尘传感器电路
(五)BY8316P语音模块
BY8316P是深圳市百为电子科技有限公司自主研发的一款小巧的新型高品质MP3模块,采用BY83SSOP24MP3主控芯片,支持MPWAV格式双解码。模块内置SPI-FLASH作为存储介质,配有MicrocUSB接口,无需上位机软件,可以通过数据线连接电脑自由更换FLASH的音频内容。并且内置3W功放,可以直接驱动3W的喇叭,使用更方便。
图7:BY8316P语音模块
(六)HC-SR501人体红外感应模块
采用LHI778探头设计,灵敏度高,可靠性强,超低电压工作模式,但是在测试过程中发现其只能检测到移动的人体而无法检测到静止不动的人体,为了增加精度,依旧采用。
图8:HC-SR501人体红外感应模块原理图
(七)ED80NK红外光电开关
这是一种集发射与接收于一体的光电传感器。检测距离可以根据要求进行调节。该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点,且该传感器可以检测到静止不动的人体,搭配HC-SR501一起使用精度大大增加。
图9:ED80NK红外开关原理图
四、控制软件说明与采集数据计算(一)控制软件说明
软件采用模块化程序设计方法,通过人机交互控制桌面久坐健助手实现指定的功能,下面介绍一下按键控制单元、警控制单元、空气质量控制单元、健康数据控制单元、人性化设置控制单元。
1.按键控制单元流程图
系统中所有功能的实现都需要触摸屏按键的支持,我们采用3.2寸电阻触摸屏进过算法能够精准的分析触摸点的位置,从而触发相对应的操作。
图10
2.警控制单元流程图
上电各模块程序初始化,等待触摸按键执行不同的任务,警从久坐触摸按键按下开始工作,若使用者向左右方向移动或伸腰而弹出感应范围,会有10秒的延时,当人坐直,回到了感应范围,健康助手继续正常工作,定时时间到了,给使用者双重声音提示。而且加入HS人体感应模块,会识别红外开关前面是物体还是人体,避免了健康助手进行错误的计算,从而产生误报的现象。
图11:图久坐定时程序流程图
3.空气质量控制单元流程图
传感器的输出是一个模拟电压成正比的测量粉尘密度,具有0.5V/0.1mg/m3的灵敏度。与方案一比较虽然灵敏度有所降低,但在测试过程中发现其灵敏度已符合室内环境的使用,加上功耗低和成本低的特点,所以选择我们GP2Y1010AU灰尘传感器。
图12:模块程序流程图
4.健康数据单元流程图
健康报告是使用者使用桌面久坐健康助手时记录久坐天数和久坐总时间,再和久坐年限和久坐时间相结合,根据柳叶刀医学杂志和ZOL论坛的报道,得出久坐时间长短对身体不同程度的危害。
图13:健康数据程序流程图
5.人性化设置单元流程图
如图14所示,这是日期时间和久坐时间参数设置,可以随时的改变日期或者根据自己习惯设置久坐时间。
图14:参数设置程序流程图
(二)数据处理和算法实现
1.久坐定时数据处理方式
久坐定时采用STM32的定时器2资源,当用户按下久坐提醒按键,系统开始计时,久坐定时函数中每过十秒,计时变量加等到目标计时变量达到用户设定值乘于即目标定时时间。系统还和人体红外搭配使用,能过感应人体的存在,增加了产品的性能。
目标定时时间(秒)=用户设置值*60*计时变量
人体红外计数时间=目标定时时间(秒)/2
2.数据处理和算法实现
传感器需要采集模拟电压,设置STM32的ADC外设进行采样转换。
转换流程:开启ADC转换——等待转换完成——转换完成——提取数字转换值——数字转换值换算为模拟电压。
模拟电压值=(ADC提取值*3.3V电源电压)/4096
根据夏普GP2Y1010AU0F型号的数据手册中公式中得到具体的算法。
图15:电压输出和微粒空气含量图
从灰尘的含量为0mg/m3时输出电压为0.55V左右,按照线性图得出。
空气微粒含量(mg/m3)=((模拟电压值-0.55)*0.17)-0.1(减去0.55是为了减去误差值)。
图16:电压输出和微粒空气含量图
根据上图(摘自外国未署名博主)可以得知具体可视化的空气质量。
假如为空气质量=AQI
AQI=((模拟电压-0.55)-0.0356)*120000*0.035
具体值定义空气质量
3000+=VERYPOOR(非常差)
103000=POOR(差)
31050=FAIR(一般)
1300=GOOD(好)
150=VERYGOOD(很好)
75=EXCELLENT(卓越)
3.DHT11温湿度模块
还有DHT11温湿度模块是采用模拟IIC接口来获取数据和通讯,数据接收5个字节,分为8位储存在定义为5大小的字符型数组里面,取出前四位和第5位校准,程序格式如下:
for(i=0;i5;i++)
{
buf[i]=DHT11_Read_Byte();
}
if((buf[0]+buf[1]+buf[2]+buf[3])==buf[4])
{
*humi=buf[0];
*temp=buf[2];
}
五、产品测试
(一)测试方法
先通过使用软件实现程序仿真调试,确保软件的正确执行以及硬件电路无误之后,将软件下载进产品单片机里,进行调试,记录数据,然后分析误差率、准确率、功能实现和性能指标。
(二)测试结果
1.久坐测试数据
下表为桌面久坐健康助手正常测试产生数据
图17:久坐时间数据图
下表为桌面久坐健康助手在感应器有物体遮挡的情况测试,没有人体。
图18:久坐时间数据图
从上面2图可以看出,当红外开关正常工作,久坐健康助手感应范围内存在人体,若是用户开启久坐提醒红外开关和人体红外感应就会相互协调工作,时间越长,人体红外计数越大,若感应范围没有人体,等待一段时间,产品则会智能的关闭久坐提醒功能。
六、产品参数
(一)产品尺寸及外观
在产品外观方面,我们采用先将3维图纸画出,再转化为具体尺寸的二维图,最后采用亚克力制作外观,因为亚克力强度好、美观、无毒性、价格低廉。
图19:产品三维图
图20:产品二维图
按照正向面对为参考点。
包装参数
产品长度:125mm
产品宽度:220mm
产品高度:135mm
外观材质:高清晰度透明亚克力3mm厚
电气参数
输入电压:USB头5V输入
是否含充电电池:不含
产品满载功率每秒:1200mw
人体离开功率每秒:100mw
传感器感应距离:小于1.2m
七、创新性
手环的局限性:现在市面上搭载意义上的久坐提醒功能的产品大多数是可穿戴类手环,但是由于陀螺仪的算法的不完善,久坐提醒往往是建立在人体活动幅度很小的情况下才能定义为久坐,但是人们在工作中往往相反,人们通常都会有一定幅度的活动,还有许多手环的久坐提醒功能需要手机的同步,就是说手环本身不处理久坐,只是简单的让手机定时提醒,所以这两者都不是我们想要的,我们的产品能智能的识别坐在他面前的人。
面向群体:市面一般的手环价格为50到200RMB左右,而且功能单一,缺乏趣味,现实中许多人往往购买到手环戴了几天过后就会将手环从手中摘下。好的手环大多数运动手环价格通常92000RMB都有,但是现实中往往都是那些健身爱好者才会有兴趣花费一笔资金去购买,那些整天埋在电脑前、文案前的程序员、文员、白领往往没有时间去运动。所以二者都有很大的消费方向冲突。
智能识别:桌面久坐健康助手能过智能的识别人体和物体的差别,在感应范围能够准确的提醒使用者,在20多次长达100多个个小时的测试中,误差率都为0%,桌面久坐健康助手还能够记忆使用者使用以来的天数和总的久坐时间。
实用性:我们的产品可以放在桌子前面还搭配收纳盒功能,既不碍事有整洁大方,既能保障互联网人一定时间的健康要求又能有效处理到处"失踪"的小物品。
设计费用:桌面健康助手设计合理,很好的控制成本实现了优异性能。
桌面久坐健康助手费用
注:作者的社区原帖中有更详细的制作过程,有兴趣的朋友可查看原帖:
「关于」立创商城()成立于2011年,致力于为客户提供一站式电子元器件线上采购服务,成交量全国领先。自建6000多平米现代化元器件仓库,现货库存超40000种。本文由立创商城原创,转载请注明出处。