无线电子温度仪
简介
目的:解决儿童生病时不愿意配合量体温,以及腋下量体温时,不能实时了解发烧情况。 功能:1-精度0.1度;2-可液晶显示;3-支持蓝牙双模传输;4-可运行12h以上;5-可DIY报警功能。
简介:目的:解决儿童生病时不愿意配合量体温,以及腋下量体温时,不能实时了解发烧情况。 功能:1-精度0.1度;2-可液晶显示;3-支持蓝牙双模传输;4-可运行12h以上;5-可DIY报警功能。开源协议
:CERN Open Hardware License
(未经作者授权,禁止转载)描述
Idea
缘起孩子生病时,总是不愿意去量体温。传统的水银温度计测量温度慢,孩子总是问好了没?好了没?好了没?等的着急了就把温度计拿出来了,功亏一篑,我更是崩溃!!!市面上的耳温计、额温计,买了之后发现测量精度,实在偏差太大,还不如水银温度计。所以就想有一个便宜好用、测量温度精准、速度快的温度计。一直没有找到,因此我决定自己做一款,也让广大的家长的更快更准的知道孩子的温度情况。
你的温度,我来守护,这是我的初心。
项目目的
解决儿童生病时不愿意配合量体温,以及腋下量体温时,不能实时了解发烧情况。
产品功能
1-精度高,小于0.1度;
2-带有显示屏,方便老人不会用手机的使用;
3-最重要的是支持蓝牙传输,支持BLE和SPP,既可以连接手机,也可以连接电脑;
4-运行时间长,可以连续使用12个小时以上。
5-使用便捷,不需要时时拿出来看温度,直接手机或电脑接收数据,可以DIY设置报警功能等,方便看护儿童时,不知道什么时候又温度升高了,都不敢打个盹。
历经多次迭代如下:
做个产品真的好累啊,各种坑,熬夜都爬不出来啊。
产品设计及验证
分为四个部分进行介绍。这中间踩坑无数啊,做好一款产品真的不容易啊。
硬件设计
系统框图
电源部分
通过Type-C给产品充电,充放电芯片采用TP4057,该芯片便宜,支持升压确保系统供电稳定。
系统采用3.3V供电,因此采用LDO进行电压转换。
锂电池,采用200ma容量,规格如下
连接方式采用焊接方式,预留的2.54排针,方便调试哦。
Type-C为了节约成本,选择了6PIN的,其实microUSB更便宜,第二版中已经进行替换了。
主控部分
系统主控采用stm32f030c8t6,以下是该芯片的介绍,我选择的原因就是合适:1-功耗低,M0内核;2-便宜,降低成本;3-外设丰富,足够使用了。欢迎大家推荐更合适的主控哦。
STM32F030x4/x6/x8/xC 系列微控制器集成了以 48 MHz 频率运行的高性能 Arm ® Cortex ® -M0 32 位 RISC 内核、高速嵌入式存储器(高达 256 KB 的闪存和高达 32 KB 的 SRAM)以及广泛的增强型外设和 I/O。所有器件均提供标准通信接口(最多 2 个 I2C、最多 2 个 SPI 和 6 个 USART)、1 个 12 位 ADC、7 个通用 16 位定时器和 1 个高级控制 PWM 定时器。STM32F030x4/x6/x8/xC 系列微控制器工作在-40至+85°C温度范围,电源电压为2.4V至3.6V。一整套省电模式允许设计低功耗应用。STM32F030x4/x6/x8/xC 系列微控制器包括四种不同封装的器件,从 20 引脚到 64 引脚不等。根据所选的设备,包括不同的外围设备集。这些特性使STM32F030x4/x6/x8/xC 系列微控制器适用于广泛的应用,如应用控制和用户界面、手持设备、A/V接收器和数字电视、PC外设、游戏和GPS平台、工业应用、PLC、逆变器、打印机、扫描仪、报警系统、可视对讲机和AC。
该主控实现以下个功能:
1-ADC采集,也就是检测锂电池电量;
2-串口通信,控制蓝牙芯片,进行数据发送;
3-IIC通信,控制温度传感器,配置以及初始化,最重要的是读取温度;
4-IIC通信,显示电量、蓝牙连接状、实时温度、测量时长等。
5-其它可扩展功能
蓝牙部分
采用KT6368A,该芯片支持双模,具体规格如下,为了降低功耗建议使用KT6328A,但是只支持BLE哦。
相关原理图如下所示:
显示部分
自己采用了0.91寸的OLED模块,只有4个管脚,如下所示,
立创采购很便宜,是白光的,我试了蓝光的也挺好的,这个看个人喜好了,我在淘宝买的。
温度传感器
为了验证效果,我选择了2种哦,具体大家可以自己去立创看手册。
这是我能找到的精度高且便宜的,最具性价比的也就这两颗了,大家放心在立创商城采购吧
焊接比较麻烦哦,大家要选择好点的电烙铁,比如立创的黄花牌电烙铁,立创商城记得给我广告费哦。
T117
超低温至-103℃测温!测温精度±0.1℃@+28~+43℃,I2C/单总线数字输出,分辨率16位/0.004℃,测温最快2.2ms可配置,支持4路I2C通信地址;超低功耗2μA@1HZ,1.8V~5.5V宽电压供电,2*2*0.75mm小尺寸,DFN6L封装,内置112bit EEPROM用户空间。广泛应用于智能穿戴、体温计、动物体温检测、医疗电子、热表气表水表等行业。
MTS4
I2C协议数字输出,可同时兼容数字单总线,测温精度±0.1℃@+28℃~+43℃,16位输出0.004℃,测温速度15.3ms/8.5ms/5.2ms/2.2ms可配置,超低功耗3.1μA(AVG=16,1次测量/s),1.6x1.2x0.55mm超小尺寸,DFN4L封装,内置112bit EEPROM用户空间,广泛应用于表贴小尺寸的智能穿戴、电子体温计、动物体温检测、医疗电子、冷链物流、热表气表水表等。
对应原理图
PCB设计
整体采用了4层板设计,板厚1.6mm,主要考虑传感器职称部分,只有几个mm宽,实际确实有点软了,后续考虑做宽和加厚,但是收费贵很多哦。为了免费,长度也在10cm以内。
这里的装配孔是m3,个人感觉大了,其实m2感觉就可以。
外壳设计
3D设计方面我是个新手,所以设计的比较简单,也是在一步步犯错中成长,一共做两版,第二版还没有回来。
设计软件采用立创的EDA哦,确实好用,现在教程也慢慢多了起来,这里非常感谢他们的技术支持,非常给力哦,反馈非常及时,这个叶总很认真,立创记得给加奖金哦,至少加个鸡腿哦。我感觉立创会发展的越来越好,大家记得买他们的股票,估计会大涨。
外壳设计非常简单,就是各种尺寸需要自己算好哦,立创的3D模型可能不准哦。
比如我这个开关,我设计的居中,实际上有误差:如下图所示,拨动的太靠上了哦。
不管如何,成品还是非常满意的,大家多使用多摸索吧。现在有券,给我们试错的机会。
做了几个如下,真的有了外壳,产品的档次很大的提升了。
面板设计
这个也是采用立创EDA设计的,为了省钱啊。这个没有3D设计好用,很多位置需要计算,这里有个技巧,可以先导出PCB的DXF,这里定位就方便很多了。
走了不少弯路,做了两次,一次是亚克力,一次是PET模的,真的太好看了,做了很多颜色,可以随便换壳子和面板了哦。
设计如下:
实物如下所示
两个版本区如下:
1-材质不同,第一版亚克力,第二版PET
2-第二版有背胶
3-第一版带安装孔,可以独立装配无需外壳
4-大小不同,第二版外扩1mm。
两个版本各有各的好处,我都试了一下。感觉都不错。
程序设计
开发工具和环境
采用CubeMX与Keil5结合的方式,使用C语言进行开发。
设计思路
1-电量采样,通过timer+DMA+DAC进行数据采集,timer定时2S,为啥2秒,降低功耗。之前1s感觉刷新有点快。
2-检测蓝牙是否连接,读取PA1管脚状态,若连接显示器显示OK,否则是NO。
3-每两秒读取一次温度,根据状态寄存器进行判别是否温度转换完成。
4-OLED显示2更新一次。
效果下图数所示:
蓝牙驱动
关于KT6368A的驱动实现,可以去梁山派的模块移植手册查看详情,具体实现我这里就不再赘述。如下链接
OLED驱动
这个0.91寸显示屏,网上有很多移植好的,这里也不再赘述,可以去梁山派的模块移植手册查看详情,如下链接:
温度传感器驱动
由于手感焊接目前只焊接成功了T117芯片,这里给大家展示一下这个驱动的编写,如下所示。
这里是头文件
C++ |
这里是C文件
C++ |
其它串口IIC驱动
这个是老生常谈,串口使用的是USART2,支持printf,IIC采用IO模拟方式,这样不受IO位置控制了。具体啰嗦的代码就不这里贴了,节省空间哦。
main函数实现
这里是整个实现方式,对应前面的设计思路,这里包含一些中断和回调函数的实现
C++ |
效果验证
具体视频可以看B站链接哦
【立创暖冬造物征集令】-无线电子温度仪-整体展示及温度显示
【立创暖冬造物征集令】-无线电子温度仪-蓝牙传输展示
补充
第二版正在进行中,希望立创商城在支持点券吧。
第二版做了无屏幕的,这样降低功耗,整体厚度降低了,也就更好看了。
PCB、面板、外壳都做了第二版,耗费巨资啊,全力支持这个活动哦。
插播的立创广告,可否换点券啊啥的呢?
关于APP
能力有限,目前还不会开发APP,后续慢慢摸索。
大家可以采用电脑蓝牙串口接收,也可以使用手机BLE调试工具哦。
关于手机端APP如下载
评论