제조공정
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
| ||||
|
현재 글로벌 팬데믹 위기
세계보건기구(WHO)가 감염 확산 방지를 위해 권고한 바와 같이 "정기적인 손 씻기, 기침과 재채기할 때 입과 코 가리기, 고기와 계란 철저히 익히기, 기침, 재채기 등 호흡기 질환 증상이 있는 사람과의 긴밀한 접촉 피하기"가 포함됩니다.
공항을 통해 여행하는 동안 감염 가능성이 있는 여행자를 찾기 위해 열 스캐너를 갖는 것이 일상적인 관행이 되었습니다.
집에서 만든 열 감지기
현재 상황에서는 보호 계층으로 원격으로 작업을 계속해야 하지만 상황이 통제될 때까지 다른 사람과의 접촉을 피해야 합니다.
주요 아이디어는 집 /lab /office /shuttle 외부에 쉽게 배치할 수 있는 열화상 카메라 감지기를 구축하여 안전 지대에서 보호받을 수 있도록 하는 것입니다.
입력 센서 <울>
"특정 접점의 온도만 측정하는 기존의 열 센서와 달리 Panasonic의 MEMS 기술을 기반으로 하는 Grid-EYE는 어떤 접촉 없이도 특정 영역 전체의 온도를 측정할 수 있습니다.; 즉, "비접촉 열전퇴 어레이 센서"입니다. 64픽셀은 실리콘 렌즈가 제공하는 60° 시야각에서 정확한 온도 측정을 제공합니다. Grid-EYE는 I²C 통신 인터페이스를 사용하여 초당 1 또는 10프레임의 속도로 온도를 측정할 수 있습니다. 인터럽트 기능도 사용할 수 있습니다."
<울>이 센서가 1.5미터에서 사람을 감지하기에 완벽하고 5/7미터 내에 표적이 있는 이유는 무엇입니까?
<울>움직임이 감지되면 열화상 카메라도 활성화하기를 원하기 때문에 방아쇠도 필요합니다. 따라서 PIR 센서는 완벽한 선택입니다.
"PIR 센서는 센서로부터 약 10m 이내에서 움직이는 사람을 감지합니다. 실제 감지 범위가 5m에서 12m 사이이므로 평균값입니다. PIR은 기본적으로 적외선 수준을 감지할 수 있는 초전기 센서로 구성됩니다. . 개인이 그 지역을 떠났거나 들어왔을 때 발견해야 하는 수많은 필수 프로젝트 또는 항목에 사용됩니다. PIR 센서는 놀랍고, 평면 제어와 최소한의 노력으로 이루어지며, 넓은 렌즈 범위를 가지며 인터페이스가 간단합니다."피>
다음과 같이 항목을 함께 추가하십시오.
연결이 완료되면(아래 다이어그램 참조) 다음과 같이 입력 센서용 상자를 준비합니다.
시각 및 음향 출력 <울>
열화상 카메라에 들어갈 때 일부 색상을 표시하도록 프로그래밍될 기본 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="코드">
#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(블루핀, 블루); }
제조공정
구성품 및 소모품 SparkFun Arduino Pro Mini 328 - 5V/16MHz × 5 5 초음파 센서 × 5 Perfboard × 5 진동 모터 × 5 부저 × 5 5mm LED:빨간색 × 5 슬라이드 스위치 × 5 암컷 헤더 8 위치 1 행(0.1) × 2 남성 헤더 40 위치 1 행(0.1) × 2 점퍼 와이어(일반) × 4
전자 부품을 함께 결합해야 하지만 어디서부터 시작해야 할지 모르십니까? 열 접착제를 사용하면 올바른 방향으로 나아갈 수 있습니다. 여기에는 구성 요소를 함께 유지하기 위해 추가 강도를 제공하는 특수 충전제가 포함되어 있습니다. 열 접착제는 전자 부품의 열을 발산하고 미세한 틈을 메울 수 있기 때문에 유용합니다. WellPCB에서는 장기적으로 도움이 되도록 이 기사를 작성했습니다. 읽으면 열 접착제의 용도와 이것이 열 페이스트와 어떻게 다른지 이해하게 될 것입니다. 열전도성 접착제란 무엇입니까? 일반적으로 열전도성 접착제는 열을