第三次培训 心率传感器和烟雾传感器的学习了解

一.pulsesensor传感器
1.学习了解
Pulse Sensor是一款用来检测心率的传感器,使用方法还是比较方便的,用户只需要用手指按住传感器就可以,传感器的实物图如下:

2.如何使用
PulseSensor 是一款用于脉搏心率测量的光电反射式模拟传感器。将其佩戴于手指、耳垂等处,利用人体组织在血管搏动时造成透光率不同来进行脉搏测量。传感器对光电信号进行滤波、放大,最终输出模拟电压值。单片机通过将采集到的模拟信号值转换为数字信号,再通过简单计算就可以得到心率数值。
3.工作原理
Pulse Sensor检测原理是通过发射光源,然后根据光源返回的效果输出ADC数据。由于手指上布满毛细血管,而毛细血管会随着心率而跳动,这就导致传感器发射和接收光的效果不同,从而达到ADC输出效果不同,比如下图就是ADC的输出图:

因此检测心率的方式很简单:测出两个ADC峰值间的时长,假设这个时长为T,单位是毫秒,那么1分钟的心率假设为S,则:
S = 60000/T 次/秒
4.相关程序实例

/********** ADC通道2转换函数 **************/u16 Get_ADC_1_CH2(void){u8 i,j; u16 buff[10] = {0}; u16 temp;for(i = 0; i < 10; i ++)
{/* 开始转换 */
ADC1->CR2 |= 1 << 30;/* 等待转换结束 */
while( !(ADC1-&gt;SR &amp; (1 &lt;&lt; 1)) )
{/* 等待转换接收 */
}
buff[i] = ADC1-&gt;DR;    //读取转换结果
}/* 把读取值的数据按从小到大的排列 */
for(i = 0; i < 9; i++)
{for(j = 0 ; j < 9-i; j++)
{if(buff[j] > buff[j+1])
{temp = buff[j];
buff[j] = buff[j+1];
buff[j+1] = temp;
}
}
}/* 求平均值 */
temp = 0;
for(i = 1; i < 9; i++)
{temp += buff[i];
}return temp/8;

5.相关注意事项


二.烟雾传感器
1.MQ-2可用于家庭和工厂的气体泄漏监测装置,适宜于液化气、苯、烷、酒精、氢气、烟雾等的探测。故因此,MQ-2可以准确来说是一个多种气体探测器。
MQ-2的探测范围极其的广泛。它的优点:灵敏度高、响应快、稳定性好、寿命长、驱动电路简单。
实物图如下
2.工作原理
MQ-2型烟雾传感器属于二氧化锡半导体气敏材料,属于表面离子式N型半导体。处于200~300摄氏度时,二氧化锡吸附空气中的氧,形成氧的负离子吸附,使半导体中的电子密度减少,从而使其电阻值增加。当与烟雾接触时,如果晶粒间界处的势垒收到烟雾的调至而变化,就会引起表面导电率的变化。利用这一点就可以获得这种烟雾存在的信息,烟雾的浓度越大,导电率越大,输出电阻越低,则输出的模拟信号就越大。

3.如何使用
MQ-2常用的电路有两种,一种使用采用比较器电路监控,另一种为ADC电路检测。
比较器电路
ADC转换电路
4.相关程序实例

/****************************************************************************
函数功能:AD转换子程序
入口参数:channel
出口参数:dat
****************************************************************************/
unsigned char adc0832(unsigned char channel )
{unsigned char i,test,adval,dat;adval = 0x00;test = 0x00;Clk = 0;       //初始化DATI = 1;_nop_();CS = 0;_nop_();Clk = 1;_nop_();if (channel == 0x00 )      //通道选择{Clk = 0;DATI = 1;      //通道0的第一位_nop_();Clk = 1;_nop_();Clk = 0;DATI = 0;      //通道0的第二位_nop_();Clk = 1;_nop_();} else{Clk = 0;DATI = 1;      //通道1的第一位_nop_();Clk = 1;_nop_();Clk = 0;DATI = 1;      //通道1的第二位_nop_();Clk = 1;_nop_();}Clk = 0;DATI = 1;for( i = 0;i < 8;i++ )      //读取前8位的值{_nop_();adval <<= 1;Clk = 1;_nop_();Clk = 0;if (DATO)adval |= 0x01;elseadval |= 0x00;}for (i = 0; i < 8; i++)      //读取后8位的值{test >>= 1;if (DATO)test |= 0x80;else test |= 0x00;_nop_();Clk = 1;_nop_();Clk = 0;}if (adval == test)      //比较前8位与后8位的值,如果不相同舍去。若一直出现显示为零,请将该行去掉dat = test;nop_();CS = 1;        //释放ADC0832DATO = 1;Clk = 1;return dat;
}
/****************************************************************************
函数功能:获取烟雾浓度
入口参数:无
出口参数:dat
****************************************************************************/
unsigned char GetYanWuValue(void)
{unsigned int sum=0;unsigned char m,value=0;for(m=0;m<20;m++)           //读50次AD值sum = adc0832(0)+sum;        //读到的AD值,将读到的数据累加到sumvalue=(unsigned char)(sum/20);             //跳出上面的for循环后,将累加的总数除以50得到平均值valueif(value > ADC_Zero) value = value - ADC_Zero;              //首先减去零点漂移elsevalue = 0;return value;}

心率传感器和烟雾传感器的学习了解相关推荐

  1. 第三次培训任务:心率传感器和烟雾传感器

    (撰写时间:2020-08-01) 一.心率传感器PulseSensor Pulse Sensor是一款用来检测心率的传感器,只需要用手指按住传感器就可以测量. 1.外观 2.PluseSensor传 ...

  2. 光学心率传感器工作原理

    光学心率测量原理 原博地址 http://blog.csdn.net/richard_liujh/article/details/49615395 简介: 在这个什么都要和"智能" ...

  3. Plusensor心率传感器简介

    今天小白给大家介绍一款很受欢迎的检测心率的传感器,即:PluseSensor传感器,欢迎大家一起讨论学习. 1 PluseSensor传感器简介 PulseSensor 是一款用于心率测量.脉搏波形测 ...

  4. Pulse Sensor 心率传感器CC2530源码

    ** ZigBee.NBIOT等无线通信技术交流学习,可以加入QQ技术交流群:575036716 可以到CSDN的下载版块下载该源码包: 点击打开链接 最近有朋友需要通过Pulse Sensor也就是 ...

  5. 【雕爷学编程】Arduino动手做(91)---XD-58C心率传感器

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  6. 单片机课程设计数字心率计_光学心率传感器详细使用教程

    该方法非常简单,光学心率传感器基于以下工作原理:当血流动力发生变化时,例如血脉搏率(心率)或血容积(心输出量)发生变化时,进入人体的光会发生可预见的散射.下图1介绍了光学心率传感器的主要元件和基本工作 ...

  7. Arduino使用 MAX30102心率传感器

    1.1 介绍: MAX30102心率传感器主要用到MAX30102EFD元件,它是一个集成脉搏血氧仪和心率监视仪的传感器.它集成了一个红外LED和一个红外光LED.光电检测器.光器件,以及带环境光抑制 ...

  8. 采用arduino UNO和pulse sensor心率传感器进行心率测量

    转自:anning86525的博客 网址:https://blog.csdn.net/anning86525/article/details/80096816 1.准备工作 首先阅读一遍我们编写的pu ...

  9. GH3018超低功耗、超高精度的心率传感器

    GH3018是一款超低功耗.超高精度的心率传感器,集成了3路LED驱动器.一个光学接收器(PD)及模拟前端(AFE),支持心率(HR).心率变异性(HRV).血氧饱和度(SpO2)和佩戴检测功能,可广 ...

最新文章

  1. ​使用端到端立体匹配网络进行单次 3D 形状测量,用于散斑投影轮廓测量
  2. 根据excel中的容填写信息
  3. 如何在Hadoop上运行TensorFlow【部署】
  4. C++虚继承(七) --- 虚继承对基类构造函数调用顺序的影响
  5. java不同环境_Spring Boot系列 – 5. 不同的环境使用不同的配置
  6. 傲游浏览器语言怎么切换 傲游浏览器语言切换方法简述
  7. [置顶] J2EE (八) 策略模式+装饰模式+反射(java)
  8. Vsphere日记01.ESXi5.5.install
  9. 12个免费的 Twitter Bootstrap 后台模板
  10. 进程与线程的一个简单解释【摘】
  11. Glide Golang包管理
  12. 2016中国大数据市场研究报告
  13. 老王的JAVA基础课:第3课 IDEA的安装和使用
  14. 港大HKU邮箱(connect.hku.hk)添加至iphone 自带邮箱方法
  15. php安全开发正则表达式,动态网页制作PHP常用的正则表达式
  16. ssm+jsp计算机毕业设计车辆违章查询系统2hie7(程序+LW+源码+远程部署)
  17. Power oj 2837: 剑道万古如长夜(单调队列优化DP)
  18. 教你做表格(史上最全)
  19. win10右键刷新卡顿解决方案
  20. python地铁查询系统_地铁python——函数

热门文章

  1. 《神契幻奇谭》2月14日即将上线链游玩家平台
  2. 问题 A: 初中化学
  3. androidX 在AndroidMainfest里面加入provider后编译不通过
  4. js删除数组里的某个元素
  5. python函数算面积_Python函数之计算规则图形的面积
  6. 北京诺信创联-Python爬虫工程师
  7. DFS-递归与回溯之放苹果问题
  8. 暴雪hash来作整数的hash
  9. 权威发布2018北京春节期间空气质量受烟花爆竹影响几何
  10. 研究人员获得了朝鲜黑客组织使用的命令服务器