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

CoroFence - 열 감지기🖖

구성품 및 소모품

파나소닉 그리드아이
× 1
PIR 센서, 7m
× 1
부저
× 1
LED, RGB
× 1
Arduino Nano 33 IoT
× 1
충전식 배터리, 3.7V
× 1
플라스틱 인클로저, 접속 배선함
× 1

앱 및 온라인 서비스

Arduino IDE
DasData Maker 데이터 저장 채널

이 프로젝트 정보

현재 글로벌 팬데믹 위기

세계보건기구(WHO)가 감염 확산 방지를 위해 권고한 바와 같이 "정기적인 손 씻기, 기침과 재채기할 때 입과 코 가리기, 고기와 계란 철저히 익히기, 기침, 재채기 등 호흡기 질환 증상이 있는 사람과의 긴밀한 접촉 피하기"가 포함됩니다.

공항을 통해 여행하는 동안 감염 가능성이 있는 여행자를 찾기 위해 열 스캐너를 갖는 것이 일상적인 관행이 되었습니다.

집에서 만든 열 감지기

현재 상황에서는 보호 계층으로 원격으로 작업을 계속해야 하지만 상황이 통제될 때까지 다른 사람과의 접촉을 피해야 합니다.

주요 아이디어는 집 /lab /office /shuttle 외부에 쉽게 배치할 수 있는 열화상 카메라 감지기를 구축하여 안전 지대에서 보호받을 수 있도록 하는 것입니다.

입력 센서

<울>
  • 그리드 아이
  • "특정 접점의 온도만 측정하는 기존의 열 센서와 달리 Panasonic의 MEMS 기술을 기반으로 하는 Grid-EYE는 어떤 접촉 없이도 특정 영역 전체의 온도를 측정할 수 있습니다.; 즉, "비접촉 열전퇴 어레이 센서"입니다. 64픽셀은 실리콘 렌즈가 제공하는 60° 시야각에서 정확한 온도 측정을 제공합니다. Grid-EYE는 I²C 통신 인터페이스를 사용하여 초당 1 또는 10프레임의 속도로 온도를 측정할 수 있습니다. 인터럽트 기능도 사용할 수 있습니다."

    <울>
  • 크기:11.6 x 4.3 x 8.0mm(L x H x W)
  • 작동 전압:3.3V 또는 5.0V(P/N에 따라 다름)
  • 측정 대상의 온도 범위:-20°C ~ 100°C(P/N에 따라 다름)
  • 시야(FoV):60°
  • 픽셀 수:64(세로 8 x 가로 8)
  • 외부 인터페이스:I²C(고속 모드)
  • 프레임 속도:10프레임/초 또는 1프레임/초
  • 이 센서가 1.5미터에서 사람을 감지하기에 완벽하고 5/7미터 내에 표적이 있는 이유는 무엇입니까?

    <울>
  • PIR
  • 움직임이 감지되면 열화상 카메라도 활성화하기를 원하기 때문에 방아쇠도 필요합니다. 따라서 PIR 센서는 완벽한 선택입니다.

    "PIR 센서는 센서로부터 약 10m 이내에서 움직이는 사람을 감지합니다. 실제 감지 범위가 5m에서 12m 사이이므로 평균값입니다. PIR은 기본적으로 적외선 수준을 감지할 수 있는 초전기 센서로 구성됩니다. . 개인이 그 지역을 떠났거나 들어왔을 때 발견해야 하는 수많은 필수 프로젝트 또는 항목에 사용됩니다. PIR 센서는 놀랍고, 평면 제어와 최소한의 노력으로 이루어지며, 넓은 렌즈 범위를 가지며 인터페이스가 간단합니다."

    다음과 같이 항목을 함께 추가하십시오.

    연결이 완료되면(아래 다이어그램 참조) 다음과 같이 입력 센서용 상자를 준비합니다.

    시각 및 음향 출력

    <울>
  • RGB LEED
  • 열화상 카메라에 들어갈 때 일부 색상을 표시하도록 프로그래밍될 기본 RGB LED와 함께 즉각적인 온도 피드백을 받고 싶습니다.

    <울>
  • 부저
  • 온도가 정상 37'C를 초과하면 가능한 위험과 관련하여 알려주기 위해 소리 경보가 울립니다.

    최종 테스트:

    온도가 정상이고 존재가 감지되면 녹색 표시등이 나타납니다.

    // 다른 색상을 설정할 수 있습니다.
    if (tempC<16) {
    setColor(0, 0, 255); // 파란색
    } else if(tempC <15) {
    setColor(80, 0, 80); // 청록
    } else if(tempC <30) {
    setColor(0, 255, 255); // 아쿠아
    } else if(tempC <36) {
    setColor(0, 255, 0); // 녹색
    } else if(tempC <38) {
    setColor(255, 255, 0); // 노란색
    } else if(tempC <39) {
    setColor(255, 20, 20); // 마젠타
    }

    경보음과 붉은색을 작동시키려면 나중에 집안일을 하다가 우연히 발견한 것처럼 옷에 스팀다리미를 사용하여 제대로 테스트하십시오.

    장수하고 번영하십시오

    또는 NodeJS 인터페이스에서 온도를 보고 이 터미널 애플리케이션과 직렬 연결로 Arduino에서 데이터를 가져올 수 있습니다.

    추가 계획은 das 플랫폼과의 데이터 통합을 확장하고 모델링을 시작하는 것입니다.

    @dasData에서 실시간 스트림 팔로우

    https://dasdata.co/camera/

    은하계에서 이 기간 동안 어디에 있든 안전하기를 바랍니다!

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

    코드

    <울>
  • 관제
  • 관제C/C++
    #include #include GridEYE grideye;String heatData;int ledState;unsigned 긴 회의; uint16_t 초 =3142; // 최대 ==65535int bluePin =8;int greenPin =9;int redPin =10;int buzzPin =11; // LEDint에 대한 핀 선택 inputPin =12; // 입력 핀 선택(PIR 센서용) int pirState =LOW; // 움직임이 감지되지 않는다고 가정하고 시작합니다.int val =0; // 핀 statusfloat tempC를 읽기 위한 변수; 무효 설정() { pinMode(redPin, OUTPUT); 핀모드(그린핀, 출력); 핀모드(블루핀, 출력); 핀모드(버즈핀, 출력); // LED를 출력으로 선언 pinMode(inputPin, INPUT); // 센서를 입력으로 선언 // 선호하는 I2C 객체 시작 Wire.begin(); // 라이브러리는 I2C에 대해 "Wire"를 가정하지만 grideye.begin()이 마음에 들면 begin()으로 다른 것을 전달할 수 있습니다. Serial.begin(115200); } 무효 루프() { 문자 수신발; if(Serial.available()> 0) { receiveVal =Serial.read(); if(receiveVal =='1') { ledState =1; } 그렇지 않으면 ledState =0; } 발 =디지털 읽기(입력 핀); // 입력 값 읽기 if (val ==HIGH) { // 입력이 HIGH인지 확인 // digitalWrite(ledPin, HIGH); // LED 켜기 if (pirState ==LOW) { metime =millis(); Serial.println("움직임이 감지되었습니다!"); // 우리는 상태가 아닌 출력 변경 사항에 대해서만 인쇄하기를 원합니다. pirState =HIGH; 히트맵(); if (tempC<16) { setColor(0, 0, 255); // 파란색 } else if(tempC <16) { setColor(80, 0, 80); // 청록색 } else if(tempC <20) { setColor(0, 255, 255); // 아쿠아 } else if(tempC <24) { setColor(0, 255, 0); // 녹색 } else if(tempC <28) { setColor(255, 255, 0); // 노란색 } else if(tempC <37) { setColor(255, 20, 20); // 마젠타색 } // 클라이언트에서 들어오는 바이트를 읽습니다. // char thisChar =client.read(); // 바이트를 다시 클라이언트로 에코합니다. // char msg[10] =""; Serial.println(열데이터); 지연(1500); } } else { // digitalWrite(ledPin, LOW); // LED를 끕니다. if (pirState ==HIGH){ // 방금 noTone(buzzPin)을 껐습니다. // 소리 중지... Serial.println("모션이 종료되었습니다!"); setColor(0, 0, 0); // 없음 모임 =0; // 우리는 상태가 아닌 출력 변경 사항에 대해서만 인쇄하기를 원합니다. pirState =LOW; } } }void getHeatmap(){ // 각 픽셀의 온도 값을 부동 소수점 섭씨 도 단위로 인쇄 // 쉼표로 구분된 열 데이터 =""; float 이전 값 =0; for (unsigned char i =0; i <64; i++) { if(previousVal>37) { // Serial.println("High temperature!"); 색상 세트(255, 0, 0); // 레드톤(buzzPin, 1000); // 1KHz 사운드 신호 전송... } tempC =grideye.getPixelTemperature(i); 열데이터 +=tempC + 문자열(","); 이전Val =tempC; } // 줄 바꿈으로 각 프레임을 종료합니다. Serial.println(); // 씹을 때까지 처리 시간 부여}void setColor(int red, int green, int blue){ #ifdef COMMON_ANODE red =255 - red; 녹색 =255 - 녹색; 파란색 =255 - 파란색; #endif analogWrite(레드핀, 레드); analogWrite(녹색핀, 녹색); analogWrite(블루핀, 블루); }
    관제
    Arduino IDE용 코드, Visual Studio 2019, NodeJS https://github.com/dasdata/coronafence

    회로도


    제조공정

    1. 박하 사탕 발가락 게임 방문 카드
    2. 다중 온도 센서
    3. 862D+용 DIY 납땜 인두 제어
    4. 모션센스
    5. 3D 프린터 화재 안전
    6. Arduino, Yaler 및 IFTTT가 포함된 IoT 게이지
    7. Arduino 반발 전자기 부상
    8. 원격 제어 그리퍼 봇
    9. Arduino 기반 날씨 풍선 데이터 로거
    10. ArduFarmBot - 2부:IoT 구현과 원격 스테이션