สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: De Photon Instellen
- ขั้นตอนที่ 2: Paardenhaar
- ขั้นตอนที่ 3: Maak Een Horizontale Opstelling พบกับ Daaraan Een Kastje
- ขั้นตอนที่ 4: Maak Een Kastje Voor De Photon En LCD-scherm
- ขั้นตอนที่ 5: Maak Een Hefboom
- ขั้นตอนที่ 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
- ขั้นตอนที่ 7: รหัส Schrijven
- ขั้นตอนที่ 8: Verbind De Photon
- ขั้นตอนที่ 9: Plaats De Photon En Het LCD-Scherm ใน De Opstelling
- ขั้นตอนที่ 10: Kalibreren (ตัวเลือก)
- ขั้นตอนที่ 11: De Warmte Index Meter คือ Klaar Voor Gebruik
วีดีโอ: เครื่องวัดดัชนี Warmte: 11 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
พบกับ deze ผู้สอน kun je je eigen warmte index meter ที่สร้างขึ้น
Een warmte index meter geeft de gevoelstemperatuur aan op Basis de omgevingstemperatuur en de luchtvochtigheid.
Deze meter คือ bedoeld voor binnen maar kan buiten worden gebruikt mits er geen neerslag valt en er een windvrij plekje wordt gebruikt
เสบียง
- อนุภาคโฟตอนพบเขียงหั่นขนม
- เซ็นเซอร์อุณหภูมิ (TMP36)
- Afstandsensor สำหรับ afstanden tussen 10 en 20 cm.
- พาวเวอร์แบงค์
- ขาตั้ง 220 โอห์ม
- เขียงหั่นขนม 9+
- โทรศัพท์เคลื่อนที่ + คอมพิวเตอร์
- พาเดนฮาร์
- Hout en houtlijm
- Gereedschap: Boormachine/schroevendraaier, zaag en vijl
- ซีป
- 2 potloden- เคิร์ก
- Kartonnen plaatje + ปัญญา papier
- Gewichtjes, denk aan kleine loodjes ของ metalen plaatjes
ตัวเลือก:
- LCD scherm + โพเทนชิโอมิเตอร์ 10k Ohm + draadjes จัมเปอร์ชาย/หญิง, 12
- Luchtvochtigheidsmeter
- เครื่องวัดอุณหภูมิ- Rolmaat
ขั้นตอนที่ 1: De Photon Instellen
เบโนดิกเฮเดน:- โทรศัพท์เคลื่อนที่
- โฟตอน
- คอมพิวเตอร์
ดาวน์โหลดแอปอนุภาค op je telefoon en maak een particle account
Stop de usb-kabel van de photon ในคอมพิวเตอร์ je อ้างสิทธิ์ de photon en stel de wifi ใน
กันผ่าน setup.particle.io
ขั้นตอนที่ 2: Paardenhaar
เบโนดิกเฮเดน:- Paard
Voor het maken van de haar-hydrometer heb je een ontvette paardenhaar nodig van bij voorkeur minimaal 60 cm
De haren kunnen worden afgeknipt, ของ uit de staart/manen worden getrokken (op eigen risico)
ขั้นตอนที่ 3: Maak Een Horizontale Opstelling พบกับ Daaraan Een Kastje
เบโนดิกเฮเดน:- Zeep
- เฮาท์ + ลิจม์
- เกรียดชัป
Maak een ombouw waarbij de paardenhaar Horizontaal kan worden gespannen en die tegelijkertijd ขอร้อง bescherming biedt
Ontvet de paardenhaar
Span de haar แนวนอน, bij voorkeur minimaal 50 ซม. Zorg dat er genoeg haar over is om de hefboom en het gewicht te bevestigen (zie volgende stap)
ขั้นตอนที่ 4: Maak Een Kastje Voor De Photon En LCD-scherm
เบโนดิกเฮเดน:- Hout en houtlijm
- เกรียดชัป: zaag
Maak een simpele houten bak zonder deksel พบ een houten plank ตายใน het midden staat als een divider Op deze plank moet het เขียงหั่นขนม พบกับ de photon passen als de bak op zijn zijkant wordt gezet Daarnaa kan aan de onderkant van de bak een gat worden gemaakt สำหรับ het LCD-scherm. Dit gat moet parallel zijn พบ het plankje dat ใน de bak is gezet Als de bak klaar คือ kan deze op zijn zijkant naast de haar worden gezet aan de kant waar de gewichtjes aan de haar hangen
ขั้นตอนที่ 5: Maak Een Hefboom
เบโนดิกเฮเดน:- 2 potloden
- เคิร์ก
- Kartonnen plaatje + ปัญญา papier
- เกวิชเชส
- Gereedschap: vijl en boor
Boor een gat ใน het kastje en plaats het korte potlood. Het lange potlood dient uitgevijld te worden zodat deze op het korte potlood kan สมดุล
Plak een wit velletje papier onder een plaatje (in dit geval karton) กับ plaats deze aan het uiteinde van de hefboom.
Verbind de paardenhaar aan de hefboom en balanceer deze uit met een gewichtje (zie afbeelding 3 ringen).
ขั้นตอนที่ 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
เบโนดิกเฮเดน:
- อัฟสแตนต์เซ็นเซอร์
- Opzetstukje (ตัวเลือก)
- ชุดบัดกรีเสริมพิเศษ (optioneel)
Bij voorkeur พบ een afstand van minimaal 12 cm bij een relatieve luchtvochtigheid van +- 60%
ชาวอินเดีย nodig op een opzetstukje.
Als de bedrading van de afstandssensor niet de houten bak halen zullen deze eerst verlengd moeten คำ
ขั้นตอนที่ 7: รหัส Schrijven
Benodigdheden:- คอมพิวเตอร์กับบัญชีอนุภาค
Ga naar build.particle.io en maak een nieuwe app aan. ลงชื่อเข้าใช้ Noem deze bijvoorbeeld HeatIndex.
ไลบรารี่บน, zoek LiquidCrystal และการนำเข้า deze ในแอพ
Dan kan de volgende รหัส gekopieerd worden ในแอป:
แสดงความคิดเห็น goed door als je wilt begrijpen wat elk stukje code precies doet.
Ook al er een ปัญหา optreedt is het go om de comment te raadplegen.
// รวมไลบรารีต่อไปนี้:#include #include
// หมุดอ่านแบบอะนาล็อกสำหรับเซ็นเซอร์ทั้งหมดในโครงสร้างนี้:
int tempSensor = A0; int disSensor = A1;
// กฎการเผยแพร่:
// เวลาล่าช้าและชื่อเหตุการณ์สำหรับการเผยแพร่ // หน่วงเวลาเป็นมิลลิวินาที int delayTime = 15000; ชื่อเหตุการณ์สตริง = "Actual_Temperature";
/////////////////////////////////////////////////
// รหัสแสดงผลคริสตัลเหลว ///////////// ///////////////////////////// ///////////////// // เริ่มต้นการแสดงผลด้วยหมุดข้อมูล LiquidCrystal lcd (D5, D4, D3, D2, D1, D0);
// ตั้งค่าขอบเขตสำหรับค่าดัชนีความร้อน
ข้อควรระวัง = 27; int eCD = 33; อันตรายภายใน = 40; int สุดขีด = 52;
// ส่งกลับข้อความสำหรับค่าดัชนีความร้อนเฉพาะ
ข้อความสตริง (int hI) { ถ้า (hI < ข้อควรระวัง) { ส่งคืน "ไม่เตือน"; } if(hI < eCD) { return "ข้อควรระวัง!"; } if(hI < อันตราย) { ส่งคืน "ข้อควรระวังอย่างยิ่ง!"; } if(hI < extreme) { return "อันตราย!!"; } ส่งคืน "อันตรายมาก!!"; }
// ข้อความบนบรรทัดที่สองของจอแสดงผล
ข้อความสตริง2 = "จริง T:";
//////////////////////////////////////////////////////
// รหัสเซ็นเซอร์ระยะทาง ////////////////////////////////////////// ////////////////////////////////////// ค่าดิบต่ำสุดและสูงสุดที่เซ็นเซอร์ส่งคืน int minD = 2105; int maxD = 2754;
// ค่าดิบจริงที่เซ็นเซอร์ส่งกลับทุกๆ 5 มม.
int สิบ = 2754; int tenP = 2691; int สิบเอ็ด = 2551; int elevenP = 2499; int สิบสอง = 2377; int สิบสองP = 2276; int สิบสาม = 2206; int สิบสามP = 2198; int สิบสี่ = 2105;
// ส่งกลับระยะทางเป็นซม. ที่เป็นของค่าดิบทุกๆ 5 มม.
float getDis (หมายเลข int) { สวิตช์ (หมายเลข) { กรณี 2754: ส่งคืน 10; กรณีที่ 2691: ส่งคืน 10.5; กรณี 2551: ส่งคืน 11; กรณี 2499: ส่งคืน 11.5; กรณี 2377: ส่งคืน 12; กรณี 2276: ส่งคืน 12.5; กรณี 2206: ส่งคืน 13; กรณี 2198: ส่งคืน 13.5; กรณี 2105: ส่งคืน 14; } }
// คำนวณระยะทางจริงเป็นซม. ที่เซ็นเซอร์วัดระยะทางจับ
float คำนวณดิส (เริ่มต้น int, หยุดลอย, การวัด int) { ระยะทางลอย = getDis (เริ่มต้น); float step = (หยุด - เริ่ม)/10; for(int i = 0; i <5; i++) { if(measurement = (start-step)){ ระยะทางกลับ; } start = เริ่ม - ขั้นตอน; ระยะทาง = ระยะทาง + 0.1; } }
// ตรวจสอบขอบเขตขนาดใหญ่ที่เซ็นเซอร์ระยะอยู่ระหว่าง
ระยะลอย (การวัด int) {// หากเซ็นเซอร์ระยะทางไม่อยู่ระหว่าง 10 ถึง 14 ซม. // เราไม่ทราบระยะทางจริงและส่งกลับ 10 หาก (การวัด maxD) { คืนค่า 10.0; } if (การวัด <= สิบสามP) { ส่งคืนการคำนวณดิส (สิบสามP, สิบสี่, การวัด); } if (การวัด <= สิบสาม) { return CalculDis (สิบสาม, สิบสามP, การวัด); } if (การวัด <= สิบสองP) { ส่งคืนการคำนวณดิส (สิบสองP, สิบสาม, การวัด); } if (การวัด <= สิบสอง) { return CalculDis (สิบสอง, สิบสองP, การวัด); } if (การวัด <= elevenP) { ส่งคืนการคำนวณดิส (elevenP, สิบสอง, การวัด); } ถ้า (การวัด <= สิบเอ็ด) { ส่งคืนการคำนวณดิส (สิบเอ็ด, สิบเอ็ดP, การวัด); } if (การวัด <= tenP) { ส่งคืนการคำนวณดิส (tenP, สิบเอ็ด, การวัด); } if (การวัด <= สิบ) { ส่งคืนการคำนวณดิส (สิบ, tenP, การวัด); } // รหัสไม่ควรมาที่นี่ กลับ -2; }
///////////////////////////////////////////////////////////////////////////////////////
// รหัสเซ็นเซอร์อุณหภูมิ ////////////////////////////////////////// /////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// /// แรงดันไฟฟ้าสูงสุดในหน่วย mV ที่ใช้สำหรับเซ็นเซอร์อุณหภูมิ โฟลต maxV = 3300.0;
// แรงดันฐานและอุณหภูมิที่เซ็นเซอร์อุณหภูมิส่งกลับ
// แรงดันไฟเป็น mV int ฐานV = 750; ฐาน intT = 25;
// คำนวณอุณหภูมิจากค่าที่วัดได้ที่ขาอนาล็อก
float คำนวณอุณหภูมิ (การวัด int) { แรงดันลอย = ((maxV/4096) * การวัด); float diff = baseV - แรงดันไฟ; float temp = baseT - (diff/10); กลับอุณหภูมิ; }
///////////////////////////////////////////////////
// การคำนวณความชื้น //////////////////////////////////////////// ////////////////////////////// // ตัวแปรสำหรับการคำนวณความชื้น // มาจากเซ็นเซอร์ความชื้นจริง ลอย h15 = 10.0; ลอย h30 = 10.5; ทุ่น h60 = 11.5; ลอย h75 = 12.0; ลอย h90 = 12.5; ลอยขั้นตอน H = 0.167;
// ส่งกลับค่าความชื้นสัมพัทธ์สำหรับช่วงระยะทางที่กำหนด
int คำนวณฮัม (float dis, float lowH, float highH, int start) { float diff = dis - lowH; float i1 = แตกต่าง/stepH; int i = รอบ (i1); เอาต์พุต int = (เริ่ม + (5*i)); ผลตอบแทนการส่งออก; }
// คืนค่าความชื้นสัมพัทธ์
ความชื้น int (float dis) { if (dis <= h30) { return คำนวณHum (dis, h15, h30, 15); } if (dis <= h60) { ส่งคืน CalculHum (dis, h30, h60, 30); } if (dis <= h75) { ส่งคืน CalculHum (dis, h60, h75, 60); } if (dis <= h90) { return คำนวณฮัม (dis, h75, h90, 75); } ส่งคืน 100; }
///////////////////////////////////////////////////
// สูตรดัชนีความร้อน ////////////////////////////////////////// ////////////////////////////////// // ค่าคงที่ที่ใช้ในสูตรดัชนีความร้อนลอย c1 = -8.78469475556; ลอย c2 = 1.61139411; ลอย c3 = 2.33854883889; ลอย c4 = -0.14611605; ลอย c5 = -0.012308094; ลอย c6 = -0.0164248277778; ลอย c7 = 0.002211732; ลอย c8 = 0.00072546; ลอย c9 = -0.000003582;
// สูตรดัชนีความร้อนที่ใช้อุณหภูมิและความชื้นสัมพัทธ์
float heatIndex(float t, int h) { return c1 + (c2*t) + (c3*h) + (c4*t*h) + (c5*t*t) + (c6*h*h) + (c7*t*t*h) + (c8*t*h*h) + (c9*t*t*h*h); }
///////////////////////////////////////////////////////////////////////////////
// ฟังก์ชั่น/ตัวแปรอื่นๆ ////////////////////////////////////////// ////// //////////////////////////////////////////////////////////////// /////////////////////////////////// // ผลตอบแทนที่เป็นตัวแทนสตริงของลอยโค้งมนลงไปหนึ่งทศนิยม สตริง rOne (จำนวนลอย) { ค่า int = รอบ (จำนวน * 10); เอาต์พุตสตริง = (สตริง) ค่า; ปลายถ่าน = เอาต์พุต[strlen(เอาต์พุต)-1]; int ซ้าย = ค่า/10; สตริงเริ่มต้น = (สตริง) ซ้าย; กลับเริ่มต้น + "." + จบ; }
//////////////////////////////////////////////////////////////////////////////
/ รหัสทั้งหมดที่นี่ควรรันครั้งเดียวบนโฟตอนก่อนที่ฟังก์ชันการวนซ้ำจะเริ่มต้น
การตั้งค่าเป็นโมฆะ () {// ตั้งค่าจำนวนคอลัมน์และแถวของ LCD: lcd.begin (16, 2); }
// โค้ดทั้งหมดที่นี่กำลังวนซ้ำและควรประกอบด้วยการรับข้อมูล ปรับแต่ง และเผยแพร่ออนไลน์
void loop() { // รับอุณหภูมิและความชื้น float temp = คำนวณอุณหภูมิ (analogRead (tempSensor)); float dis = ระยะทาง (analogRead (disSensor)); int hum = ความชื้น (dis); สตริงชื้น = (สตริง) ฮัม; // คำนวณดัชนีความร้อน float hI = ดัชนีความร้อน (อุณหภูมิ, ฮัม); // ตั้งค่าสตริงเอาต์พุตและพิมพ์ข้อความทั้งหมดบนจอ LCD เอาต์พุตสตริง = rOne(hI); lcd.setCursor(0, 0); lcd.print(ข้อความ(รอบ(hI))); lcd.setCursor(0, 1); lcd.print (ข้อความ2 + เอาต์พุต + "C"); เอาต์พุต = เอาต์พุต + " " + ชื้น; // เผยแพร่ค่าดัชนีความร้อนทางออนไลน์และรอก่อนที่จะวนซ้ำอีกครั้ง Particle.publish(ชื่อเหตุการณ์, เอาต์พุต); ล่าช้า (delayTime); }
ขั้นตอนที่ 8: Verbind De Photon
เบโนดิกเฮเดน:
- โฟตอนและเขียงหั่นขนม
- เซ็นเซอร์อุณหภูมิ
- ขาตั้ง 220 โอห์ม
- อัฟสแตนเซนเซอร์
- LCD-scherm และโพเทนชิโอมิเตอร์ 10k Ohm (ตัวเลือก)
- Genoeg breadboard draadjes, 9+
- จัมเปอร์ draadjes ชาย/หญิง 12 (ตัวเลือก)
Verbindt de 3.3V van de photon กับ de + rails aan dezelfde kant en verbindt de ground aan de - rails.
Verbindt de 5V แวนเดอโฟตอน aan de andere kant aan de + rails aan die kant.
หยุดอุณหภูมิเซ็นเซอร์ ergens พบกับ genoeg ruimte eromheen ในเขียงหั่นขนม het
Verbindt de analoge เอาต์พุต van de temperatuursensor กับ A0 van de photon en de ground กับ ground rails
Zet de weerstand สำหรับอินพุต van de sensor en verbindt de weerstand พร้อมราง 3.3V
เซ็นเซอร์ตรวจจับการป้อนข้อมูลด้วยช่องสัญญาณขาเข้าในรางขนาด 3.3V ที่ราง, รางฝังรางบนพื้นรางและเอาต์พุตแบบอะนาล็อกใน A1 แบบโฟตอนและตัวหยุด
เพิ่มเติม LCD-scherm wilt aansluiten werkt dat als volgt:
1. Verbindt de potentiometer aan het breadboard พบ 5V บนพื้น
2. คำที่ใช้ทั่วไป จัมเปอร์ draadjes aan het LCD-scherm waarbij pin 1 het dichtsbij de rand van het scherm is.
Pin 1, 5 en 16 van de LCD ใกล้กราวด์ พิน 2 en 15 กับ 5V.
Verbindt de analoge output van de potentiometer, de middelste pin, พบพิน 3 van de LCD
3. Verbindt de volgende โฟตอนพินและหมุด LCD พร้อมจัมเปอร์ draadjes
พิน D5 กับ พิน 4
พิน D4 กับ พิน 6
ปักหมุด D3 กับ หมุด 11
พิน D2 กับ พิน 12
พิน D1 กับ พิน 13
พิน D0 กับ พิน 14
Als de photon nu aanstaat en er aan de potentiometer gedraaid wordt moeten er op het LCD-scherm blokjes verschijnen.
ขั้นตอนที่ 9: Plaats De Photon En Het LCD-Scherm ใน De Opstelling
เบโนดิกเฮเดน:- Powerbank (ตัวเลือก)
Nu de photon klaar voor gebruik is kan deze op het plankje in de bak geplaatst worden en het LCD-scherm กัน tegen het gat geplakt worden. Nu is het een goed moment om de photon de laten op een powerbank กับ natuurlijk niet verplicht.
ขั้นตอนที่ 10: Kalibreren (ตัวเลือก)
เบโนดิกเฮเดน:
- เซ็นเซอร์ Luchtvochtigheids
- เครื่องวัดอุณหภูมิ
- โรลมาต
- รหัสเอาต์พุตสำหรับ rauwe waarden van de sensoren die gekalibreerd moeten worden
ซอฟต์แวร์ niet goed blijkt te werken met de sensoren kan er voor gekozen worden om de sensoren zelf de kalibreren.
เครื่องวัดอุณหภูม
จาก luchtvochtigheid zal eerst de afstandssensor gekalibreerd moeten worden op afstand met behulp van een rolmaat en daarna zal het pas mogelijk zijn om de luchtvochtigheid goed te meten gel ken te te meten
ในโค้ด zitten ความคิดเห็น ตาย aangeven waar dit soort kalibratie variabelen staan
ขั้นตอนที่ 11: De Warmte Index Meter คือ Klaar Voor Gebruik
เพลเซียร์!
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
เครื่องวัดดัชนี UV โดยใช้ ML8511 ULTRAVIOLET Sensor Arduino: 6 ขั้นตอน
UV Index Meter โดยใช้ ML8511 ULTRAVIOLET Sensor Arduino: ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีการวัดดัชนี Sun UV Index โดยใช้ ML8511 ULTRAVIOLET Sensor ดูวิดีโอ! https://www.youtube.com/watch?v=i32L4nxU7_M
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)