使用物联网的心率监测器
组件和用品
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
应用和在线服务
| ||||
| ||||
|
关于这个项目
在这个项目中,我们将制作一个心跳检测和监测系统 使用 Arduino 将使用脉搏传感器检测心跳,并以 BPM(每分钟心跳次数)显示读数。前几天我们觉得无聊,我们看到了 node.js 并想从中实现一些东西.......最终导致开发了这个 Prototype,它实际上以节拍显示心率每分钟使用红外脉冲传感器.........
“为此 您可以使用 PC、Mac 或 Raspberry Pi 进行项目。”
步骤 为了 做 这个 是 下面给出。
1) Arduino的准备
将给出的草图上传到 Arduino 并确保您在串行监视器中收到数据:
2) 安装 Node.JS
在你的 pc/mac/linux pc/raspberry pi 中安装 node.js:
- 通过从 https://nodejs.org/ 安装包在 Windows 中安装
- 如果是 mac / linux / raspberry pi 打开终端并输入
对于 Mac:
brew install nodejs
对于 linux / 树莓派:
sudo apt-get install nodejs
3) 安装 Node.JS 所需的包
在终端上运行以下命令来安装软件包
npm install -g socket.io npm install -g serialportnpm install -g johnny-fivenpm install -g express
4) 运行脚本
- 安装软件包后,将 Arduino 板连接到 PC / Raspberry pi 并确保数据正在 Arduino ide 的串行监视器中检索....
- 一旦验证.....现在是运行我们的脚本的时候了..按照下面提到的顺序运行它们.....
节点
- 一旦您看到“通讯已开启!”在您的终端中。
- 然后打开page.html 在浏览器中,您可能会看到显示在那里的值....
- 这将仅在 PC 的本地主机中运行您的程序
为了通过互联网查看它们,您需要亚马逊网络服务 已配置。
5)配置亚马逊网络服务(AWS)
- 首先创建一个帐户或登录您的 AWS 帐户
- 转到那边的 EC2 模块
- 点击那里的启动实例按钮
- 从那里选择任何操作系统
- 点击审核并启动按钮
- 在下一页点击启动并创建一个新的配对密钥并下载
- 此文件用于将来访问 AWS 模块
- 创建后点击启动实例按钮
- 然后选择下面显示的服务并点击连接
- 一个 url 和一个 ssh 链接将显示在那里
- 现在转到您下载安全密钥的文件位置并在该文件夹中运行终端,然后将 ssh 链接复制并粘贴到终端中并运行它
- 现在重复步骤2、3和4 一切都结束后,现在在这里关闭终端
- 现在选择您之前选择的服务,如下所示,然后点击连接
- 现在使用它提供的 URL 并通过互联网查看 OUTPUT。
视频
结束!
代码
- IR_Pulsr.ino
- run.js
- page.html
IR_Pulsr.inoArduino
这是必须上传到arduino的代码int UpperThreshold =518;int LowerThreshold =490;整数读数 =0;浮动 BPM =0.0; bool IgnoreReading =false; bool FirstPulseDetected =false;无符号长 FirstPulseTime =0; unsigned long SecondPulseTime =0;无符号长脉冲间隔 =0; void setup(){ Serial.begin(9600); } void loop(){ reading =analogRead(0); if(reading> UpperThreshold &&IgnoreReading ==false){ if(FirstPulseDetected ==false){ FirstPulseTime =millis(); FirstPulseDetected =true; } else{ SecondPulseTime =毫秒(); PulseInterval =SecondPulseTime - FirstPulseTime; FirstPulseTime =SecondPulseTime; } IgnoreReading =true; } if(readingrun.jsJavaScript
这包含在串行数据和服务器之间建立连接的代码........var SerialPort =require('serialport')var Readline =SerialPort.parsers.Readlinevar express =require('express');var socket =require('socket.io');var app =express();var server =app.listen(3005);app.use(express.static('public'));var io =socket(server );io.on('connection', function(socket){ console.log(socket.id); });var serialPort =new SerialPort('/dev/tty.usbmodem1421', { baudRate:9600})var 解析器=new Readline()serialPort.pipe(parser)parser.on('data', function (data) { //console.log('data received:' + data) io.sockets.emit('map', data);})serialPort.on('open', function () { console.log('Communication is on!')})page.htmlHTML
这是将显示每分钟心跳次数的网页。
示意图
制造工艺