산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

IoT를 사용한 심박수 모니터

구성품 및 소모품

Arduino UNO
× 1
ProtoCentral Electronics ProtoCentral 맥박 산소 농도계 및 MAX30100 기반 심박수 센서
× 1
USB-A-마이크로 USB 케이블
× 1
점퍼 와이어(일반)
× 1

앱 및 온라인 서비스

Arduino IDE
node.js
Amazon Web Services AWS EC2

이 프로젝트 정보

이 프로젝트에서 우리는 심장 박동 감지 및 모니터링 시스템을 만들 것입니다. 펄스 센서를 사용하여 심장 박동을 감지하고 BPM(분당 비트 수)으로 판독값을 표시하는 Arduino를 사용합니다. 며칠 전 우리는 지루함을 느꼈고 node.js에 대해보고 그것을 구현하려고 생각했습니다............. 그리고 마침내 실제로 심박수를 비트로 표시하는이 프로토 타입을 개발하게되었습니다. IR 펄스 센서를 사용하여 분당 ...........

"이를 위해 PC, Mac 또는 Raspberry Pi를 사용할 수 있습니다."

단계 하는 이다 아래에 나와 있습니다.

1) 아두이노 준비

주어진 스케치를 Arduino에 업로드하고 직렬 모니터에서 데이터를 수신하는지 확인하십시오.

2) Node.JS 설치

pc / mac /linux pc / raspberry pi에 node.js 설치:

<울>
  • https://nodejs.org/에서 패키지를 설치하여 Windows에 설치
  • <울>
  • mac / linux / raspberry pi의 경우 터미널을 열고
  • 맥:

    양조 설치 nodejs 

    리눅스/라즈베리 파이:

    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) 스크립트 실행

    <울>
  • 패키지를 설치한 후 아두이노 보드를 PC/라즈베리파이에 연결하고 아두이노 IDE의 시리얼 모니터에서 데이터가 검색되는지 확인합니다....
  • <울>
  • 확인되면..... 이제 스크립트를 실행할 차례입니다. 아래에 언급된 순서대로 실행합니다.....
  • 노드  
    <울>
  • "통신이 켜져 있습니다!"라는 메시지가 표시되면 터미널에서.
  • <울>
  • 그런 다음 page.html을 엽니다. 브라우저에서 표시되는 값을 볼 수 있습니다....
  • <울>
  • PC의 로컬 호스트에서만 프로그램을 실행합니다.
  • 인터넷을 통해 보려면 AMAZON WEB SERVICES가 필요합니다. 구성되었습니다.

    5) 아마존 웹 서비스(AWS) 구성

    <울>
  • 처음에는 계정을 만들거나 AWS 계정에 로그인합니다.
  • <울>
  • 여기에서 EC2 모듈로 이동
  • <울>
  • 여기에 있는 인스턴스 시작 버튼을 누르세요.
  • <울>
  • 여기에서 OS 선택
  • <울>
  • 리뷰를 누르고 실행 버튼
  • <울>
  • 다음 페이지에서 실행을 누르고 새 쌍 키를 만들고 다운로드하세요.
  • <울>
  • 향후 AWS 모듈에 액세스하는 데 사용되는 파일입니다.
  • <울>
  • 생성 후 인스턴스 시작 버튼을 누르십시오.
  • <울>
  • 그리고 아래 표시된 서비스를 선택하고 연결을 클릭하세요.
  • <울>
  • ssh 링크와 함께 URL이 표시됩니다.
  • <울>
  • 이제 보안 키를 다운로드한 파일 위치로 이동하여 해당 폴더에서 터미널을 실행하고 터미널에 ssh 링크를 복사하여 붙여넣고 실행하십시오.
  • <울>
  • 이제 2, 3, 4단계를 반복합니다. 모든 것이 끝난 후 지금 여기에서 터미널을 닫습니다.
  • <울>
  • 이제 아래에 표시된 이전에 선택한 서비스를 선택하고 연결을 클릭합니다.
  • <울>
  • 이제 주어진 URL을 사용하고 인터넷을 통해 OUTPUT을 봅니다.
  • 동영상

    끝!

    <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

    코드

    <울>
  • IR_Pulsr.ino
  • run.js
  • 페이지.html
  • IR_Pulsr.ino아두이노
    이것은 arduino
    int UpperThreshold =518;int LowerThreshold =490에 업로드해야 하는 코드입니다. 정수 읽기 =0; 부동 BPM =0.0; bool IgnoreReading =false; 부울 FirstPulseDetected =거짓; 부호 없는 긴 FirstPulseTime =0; 부호 없는 긴 SecondPulseTime =0; 부호 없는 긴 PulseInterval =0; 무효 설정(){ Serial.begin(9600); } 무효 루프(){ 읽기 =analogRead(0); if(읽기> UpperThreshold &&IgnoreReading ==false){ if(FirstPulseDetected ==false){ FirstPulseTime =millis(); FirstPulseDetected =참; } else{ SecondPulseTime =밀리(); PulseInterval =SecondPulseTime - FirstPulseTime; FirstPulseTime =SecondPulseTime; } IgnoreReading =true; } if(읽기  
    run.js자바스크립트
    여기에는 직렬 데이터와 서버 간의 연결을 설정하는 코드가 포함되어 있습니다........
    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(서버 );io.on('연결', 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 수신:' + data) io.sockets.emit('map', data);})serialPort.on('열기', function () { console.log('통신이 켜져 있습니다!')})
    page.htmlHTML
    이것은 분당 심장 박동 수를 표시할 웹 페이지입니다.
        <스크립트 src='speech.js'> <메타 이름="viewport" content="user-scalable=no,initial-scale=1,maximum-scale=1" />  <제목> <스타일> 본문 { 여백:0; background-image:url('https://www.skipprichard.com/wp-content/uploads/2015/07/bigstock-Red-Heart-On-Wooden-Background-56485448.jpg') } #speech { 오버플로:자동; } .sender { 테두리 하단 오른쪽 반경:5px; 테두리-위-오른쪽-반경:5px; 경계-상단-좌측 반경:5px; 텍스트 정렬:왼쪽; 배경색:노란색; } .receiver { 테두리 하단 왼쪽 반경:5px; 테두리-위-오른쪽-반경:5px; 경계-상단-좌측 반경:5px; 텍스트 정렬:오른쪽; 배경색:흰색; } .bub { 테두리:1px 솔리드 #000; 패딩:5px; 오른쪽 여백:자동; 여백-왼쪽:자동; 너비:90%; 최대 너비:500px; } #name { 글꼴군:arial; 글꼴 크기:20px; 검정색; 공백:nowrap; 글꼴 두께:600; } #rank { 글꼴군:arial; 글꼴 크기:15px; 검정색; 공백:nowrap; } .bubble { 글꼴군:arial; 글꼴 크기:20px; 글꼴 두께:400; } .dot { 너비:10px; 높이:10px; 여백-왼쪽:자동; 테두리 반경:5px; } .read { 테두리:1px 단색 빨간색; } .red { 배경색:빨간색; } .yellow { 배경색:금색; } .green { 배경색:녹색; } #stat { 패딩:10px; 오른쪽 여백:자동; 여백-왼쪽:자동; 너비:90%; 최대 너비:500px; } #nav { border-bottom:1px solid #000; 너비:100%; 텍스트 정렬:왼쪽; 배경색:흰색; 패딩 하단:3px; } #photo { 위치:상대; 상단:4px; 왼쪽:5px; 테두리 반경:40px; 높이:80px; 왼쪽으로 뜨다; } .time { 글꼴 두께:400; 글꼴 패밀리:arial; } #온라인 { 색상:녹색; } #오프라인 { 색상:빨간색; } #foot { border-top:1px solid #000; 너비:100%; 위치:고정; 하단:0; 배경색:흰색; 패딩:10px; } #box { 테두리:없음; 크기 조정:없음; 너비:75%; 글꼴 두께:400; 글꼴 크기:20px; 글꼴 패밀리:arial; 오버플로:숨김; } #enter { 테두리:0; 배경색:흰색; 색상:#0BB5FF; 글꼴 크기:20px; } h1 { 패딩 상단:100px; 글꼴 패밀리:고정 폭; 텍스트 정렬:가운데; 글꼴 크기:100px; }   <바디> 

    <스크립트> var 소켓 =io.connect("http://localhost:3005"); var socket_1 =io.connect("http://ec2-18-220-142-52.us-east-2.compute.amazonaws.com:4000");//켜기 후 AWS에서 생성한 링크 제공 코드를 인터넷에 연결하기 위해.... socket.on('map', function(data){ //console.log(data); socket_1.emit('map', data); document.getElementById('hello') .innerHTML =데이터; });

    회로도


    제조공정

    1. Windows 10 IoT Core – 심박수 펄스 읽기
    2. 원격 심박수 모니터
    3. 농업의 IoT:연결된 센서를 사용하여 꿀벌 모니터링
    4. Arduino를 사용하여 모니터 Ambilight 만들기
    5. IoT를 사용한 심박수 모니터
    6. IoT를 사용하여 로봇 팔 원격 제어
    7. Arduino를 사용한 DIY 적외선 심장 박동 센서
    8. IOT - ESP8266, Arduino 및 초음파 센서를 사용하는 스마트 항아리
    9. Alexa 및 Arduino IoT Cloud를 사용하여 TV 전체 제어
    10. 의류에 통합된 센서는 심박수를 모니터합니다.