工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

自動および音声通知による温度測定

コンポーネントと消耗品

>
Arduino UNO
× 1
UTSOURCE電子部品
× 1

このプロジェクトについて

最近、全世界がウイルスCovid19に苦しんでいます。影響を受けた人(または影響を受けた疑いのある人)を最初にチェックするのは、体温を測定することです。そのため、このプロジェクトは、体温を自動的に測定し、音声で通知できるモデルを作成しています。

始めましょう!

ステップ1:パーツリスト

プロジェクトのコンポーネント:

1. Arduino UNO https://amzn.to/2P58O7s

2.SDカードモジュール https://amzn.to/2E1myhb

3.SDカード8GB https://amzn.to/2xTCz6i

4.アンプPAM8403とスピーカー https://amzn.to/2E1myhb

5.超音波センサーHC-SR04 https://amzn.to/2E1myhb

6. OLED 128x64 https://amzn.to/2E1myhb

7.ブレッドボードケーブル https://amzn.to/2E1myhb

8.赤外線温度計GY-906 https://amzn.to/2Wlab5r

utsource.net で電子部品を購入する

注:需要の高い赤外線温度計のため、センサーGY-906が市場に出回っていない場合があります。

ステップ2:回路設計

回路設計を見てください。

<図>

基本的には、赤外線温度計GY-906から温度を測定し、Oled LCD 128 * 64に結果を表示します。また、スピーカーを介して音声で結果の温度を通知します。スピーカーはSDカードからオーディオファイルを取得し、温度結果に基づいて再生します。スピーカーの音を大きくするには、アンプリファーPAM8403が必要です。

このように使用するための主なプロセス:

1.超音波センサー(距離約10cm)で手を振る

2.次に、音声で挨拶します「温度測定システムへようこそ。センサーの前に手または額を約2cm置いてください」

3.温度を測定するためにセンサーの前に手または額を置きます

4.温度結果を鳴らし、LCDに表示します。たとえば、気温が36.5dgCの場合、「気温は36.5℃です。気温は正常に見えるので、健康を維持してください」と表示されます。

ステップ3:フレームを作成して接続を行う

フレームは厚さ3mmのMDFウッドで、レーザーでカットされています。私はあなたの何人かがそれを切るためにcncレーザーマシンをサポートできることを願っています。そうでない場合は、フレームの段ボールをカットすることができます。デザインファイルはこちらからダウンロードできます(Googleシェア)

<図> <図> <図> <図> <図>

カット後、フレームを作るために接着剤が必要になります。フレームを作るのは難しくありません。次に、すべての部品をフレームに取り付け、回路設計として配線を行います

ステップ4:コードの動作とダウンロード

arduinoコードがその役割を果たします:

1.超音波センサーで検出されたセンサーの近くに人(障害物)があるかどうかを検出します

2.スピーカーで歓迎し、センサーの近くに手または額を約2cm置いたことをユーザーに知らせます

3.結果を話し、体温についてコメントします

<図>

コードはここからダウンロードできます

https://bit.ly/2Za1mjZ

こちらがオーディオファイルです。ダウンロードしてSDカードに保存する必要があります

https://bit.ly/3aZpGWJ

オーディオファイルは8ビット、モノラルタイプ、11025Hzであることに注意してください。コンピューター(または電話)で音声を録音し、ツールでオンラインに変換します(https://audio.online-convert.com/convert-to-wav)

ステップ5:テスト実行

これで、電源を接続して、どのように動作するかをテストできます。システムにとって非常に興味深いのは、体温を測定して音声で通知できることです。

<図> <図> <図>

気に入っていただければ幸いです:)

読んでいただきありがとうございます!https://bit.ly/2Za1mjZ

コード

  • Arduino_ir_temperature_auto.ino
Arduino_ir_temperature_auto.ino Arduino
 // www.youtube.com/c/engineer2you#include  // SDカードの場合#defineSD_ChipSelectPin 10 // SDカードの場合#include  // wavファイルを再生するLib# include  //赤外線温度計用// ------------------------------------- --oled#include "SSD1306Ascii.h" #include "SSD1306AsciiAvrI2c.h" #define I2C_ADDRESS 0x3C // 0X3C + SA0-0x3Cまたは0x3D#define RST_PIN -1 //必要に応じて適切なRST_PINを定義します。//------ --------------------------------- oledAdafruit_MLX90614 mlx =Adafruit_MLX90614(); //赤外線温度計用SSD1306AsciiAvrI2coled; // LCDTMRpcmのオブジェクトを作成しますtmrpcm; //音楽プレーヤー用のオブジェクトを作成しますdoubletemp; //温度値を保存するにはconstint trigPin =17; // ultrasonicconst int echoPin =16; // ultrasoniclong duration; int distance; int step1_judge =0; void setup(){// ------------------------------ --------- oled #if RST_PIN> =0 oled.begin(&Adafruit128x64、I2C_ADDRESS、RST_PIN); #else // RST_PIN> =0 oled.begin(&Adafruit128x64、I2C_ADDRESS); #endif // RST_PIN> =0 // oled.setI2cClock(frequency)を呼び出して、デフォルトの頻度から変更します。 oled.setFont(Adafruit5x7); // -------------------------------------- oled tmrpcm.speakerPin =9; //出力オーディオのピン9Serial.begin(9600); if(!SD.begin(SD_ChipSelectPin)){//カードが存在し、初期化できるかどうかを確認します:Serial.println( "SD fail"); Serial.println( "SD ok"); oled.clear(); oled.set1X(); oled.println( "SDカードが故障しました");戻る; //そうでない場合は、これ以上何もしません} else {Serial.println( "SD ok"); oled.clear(); oled.println( "SDカードOK"); } delay(1000); tmrpcm.play( "m_wel.wav"); //サウンドファイルwelcomeは、arduinoの電源を入れるか、リセットされるたびに再生されますtmrpcm.volume(1); oled.clear(); oled.set2X(); oled.println( ""); oled.println( "ようこそ"); pinMode(trigPin、OUTPUT); // trigPinを出力として設定しますpinMode(echoPin、INPUT); // echoPinを入力として設定しますmlx.begin(); //赤外線温度計の遅延を開始します(10000); //ウェルカムオーディオを待つ} void loop(){// ------------読み取り距離// trigPinをHIGH状態に10マイクロ秒設定しますdigitalWrite(trigPin、HIGH); delayMicroseconds(10); digitalWrite(trigPin、LOW); // echoPinを読み取り、音波の移動時間をマイクロ秒単位で返します。duration=pulseIn(echoPin、HIGH、23529); // 23529usのタイムアウト4.0m //距離の計算distance =duration * 0.034 / 2; // talk_out(temp); Serial.print( "距離は"); Serial.println(距離); if((distance <10)&&(distance> 0))step1_judge ++;それ以外の場合、step1_judge =0; if(step1_judge> 2){step1_judge =0; tmrpcm.play( "m_wel.wav"); delay(10000); //ウェルカムボイスが完了するのを待ちますtemp =mlx.readObjectTempC()+ 1.2; // ---------------------温度を読み取り、LCDに表示します// temp =37.4; //テストのために、実際に読むためにこの行にコメントを付けてくださいoled.clear(); oled.set2X(); oled.println( ""); oled.print( ""); oled.print(temp、1); oled.println( "dgC"); tmrpcm.play( "m_now.wav"); delay(1380); if(temp <20){tmrpcm.play( "m_b20.wav"); // 20 dgC delay(1700);未満で発言します。 //オーディオの終了を待ちますtmrpcm.play( "m_nman.wav"); //「あなたは人間ではない」と話すdelay(2270); //オーディオの終了を待つ} else {if(temp>
 50){tmrpcm.play( "m_over50.wav"); // 50 dgCを超えて発言するdelay(1740); tmrpcm.play( "m_nman.wav"); //「あなたは人間ではない」と話すdelay(2270); } else {speak_out(temp); //温度を話します(20〜50dgCの場合)delay(1500); if((temp>
 36)&&(temp <37)){tmrpcm.play( "m_normal.wav"); // 36〜37dgCの場合は「常温、健康を維持」と話しますdelay(3268); } if(temp>
 37){tmrpcm.play( "m_fever.wav"); //「熱が出た」と話すdelay(2728); }}}} delay(300);} void talk_out(doubletemperature_result){//このサブプログラムは温度を読み上げますtemperature_result =temperature_result * 10; temperature_result =round(temperature_result); int temp0 =temperature_result; int temp1 =temp0 / 10; //温度値、xy桁(xy.z dgC)int temp2 =temp1%10; //温度値、y桁(xy.z dgC)int temp3 =temp0%10; //温度値、z桁(xy.z dgC)if(temp1 <20){tmrpcm.play( "m_below20.wav"); // 20dgC未満delay(1631); } if(temp1> 50){tmrpcm.play( "m_over50.wav"); // 50dgCの遅延(1747); } if((temp1> =20)&&(temp1 <=29)){tmrpcm.play( "m_twenty.wav"); // 20 delay(600); } if((temp1> =30)&&(temp1 <=39)){tmrpcm.play( "m_thirty.wav"); // 30 delay(500); } if((temp1> =40)&&(temp1 <=49)){tmrpcm.play( "m_fourty.wav"); // 40 delay(691); } if(temp2!=0)speak_num(temp2); //温度値、y桁(xy.z dgC)if((temp1> =20)&&(temp1 <=50)){tmrpcm.play( "m_point.wav"); //ポイントdelay(319); talk_num(temp3); //温度値、z桁(xy.z dgC)} tmrpcm.play( "m_dgc.wav"); //摂氏遅延(853); Serial.println(temp0); Serial.println(temp1); Serial.println(temp2); Serial.println(temp3);} void talk_num(int number){//このサブプログラムはサブプログラム "speak_out()"で呼び出されますif(number ==1){tmrpcm.play( "m_one.wav" ); // 1つの遅延(453); } if(number ==2){tmrpcm.play( "m_two.wav"); // 2つの遅延(499); } if(number ==3){tmrpcm.play( "m_three.wav"); // 3つの遅延(406); } if(number ==4){tmrpcm.play( "m_four.wav"); // 4つの遅延(401); } if(number ==5){tmrpcm.play( "m_five.wav"); // 5遅延(354); } if(number ==6){tmrpcm.play( "m_six.wav"); // 6遅延(401); } if(number ==7){tmrpcm.play( "m_seven.wav"); // 7つの遅延(633); } if(number ==8){tmrpcm.play( "m_eight.wav"); // 8遅延(360); } if(number ==9){tmrpcm.play( "m_nine.wav"); // 9遅延(580); } if(number ==0){tmrpcm.play( "m_zero.wav"); //ゼロ遅延(610); }} 

回路図


製造プロセス

  1. QR、RFID、温度検証によるアクセス制御
  2. RASPBERRYPIによる温度測定
  3. PythonとRaspberryPiの温度センサー
  4. ラズベリーパイの簡単な温度と湿度
  5. DIY:HomeBrewの温度監視と規制
  6. 実験室および科学プロジェクトの温度測定
  7. ラズベリーパイ温度および光センサー
  8. 温度および湿度データロガー
  9. 複合材料とボンドライン内の温度の測定
  10. さまざまな種類の測定ツールとその用途
  11. 手動および自動変速機システムの動作原理