สารบัญ:

เครื่องบันทึกอุณหภูมิและความชื้นอินเทอร์เน็ตพร้อมจอแสดงผลโดยใช้ ESP8266: 3 ขั้นตอน
เครื่องบันทึกอุณหภูมิและความชื้นอินเทอร์เน็ตพร้อมจอแสดงผลโดยใช้ ESP8266: 3 ขั้นตอน

วีดีโอ: เครื่องบันทึกอุณหภูมิและความชื้นอินเทอร์เน็ตพร้อมจอแสดงผลโดยใช้ ESP8266: 3 ขั้นตอน

วีดีโอ: เครื่องบันทึกอุณหภูมิและความชื้นอินเทอร์เน็ตพร้อมจอแสดงผลโดยใช้ ESP8266: 3 ขั้นตอน
วีดีโอ: NodeMCU ESP8266 ส่งค่าอุณหภูมิและความชื้นไปเก็บใน Google Sheets อัตโนมัติ 2024, พฤศจิกายน
Anonim
เครื่องบันทึกอุณหภูมิและความชื้นอินเทอร์เน็ตพร้อมจอแสดงผลโดยใช้ ESP8266
เครื่องบันทึกอุณหภูมิและความชื้นอินเทอร์เน็ตพร้อมจอแสดงผลโดยใช้ ESP8266

ฉันต้องการแบ่งปันโครงการเล็ก ๆ ที่ฉันคิดว่าคุณจะชอบ เป็นเครื่องบันทึกอุณหภูมิและความชื้นอินเทอร์เน็ตขนาดเล็กที่เปิดใช้งานอินเทอร์เน็ตพร้อมจอแสดงผล บันทึกนี้จะบันทึกไปที่ emoncms.org และเลือกว่าจะอยู่ใน Raspberry PI หรือเซิร์ฟเวอร์ emoncms ของคุณเอง มันมี LOLIN (เดิมชื่อ WEMOS) D1 Mini ซึ่งรวมเอาแกน ESP8266 เซ็นเซอร์อุณหภูมิและความชื้นเป็นเซ็นเซอร์ LOLIN DHT 3.0 I2C ซอฟต์แวร์คือ Arduino และโอเพ่นซอร์สตามธรรมชาติ ตอนนี้ฉันสร้างมาแล้ว 7 ชิ้น และเพื่อนของฉันต้องการเพิ่มอีก 3 ชิ้น

ฉันใส่ไว้ในกล่องพลาสติก "Systema" ขนาด 200 มล. มีจำหน่ายในออสเตรเลียในราคาประมาณ $2 ต้นทุนรวมของส่วนประกอบ รวมถึงสายไมโคร USB คือ < $AU30 ดังนั้นคุณน่าจะสร้างได้ในสหรัฐอเมริกาในราคาประมาณ 20 ดอลลาร์

รายการส่วนประกอบทั้งหมดคือ

  1. LOLIN DI Mini V3.1.0
  2. LOLIN DHT Shield 3.0 อุณหภูมิและความชื้น
  3. TFT 1.4 Shield V1.0.0 สำหรับ WeMos D1
  4. TFT I2C Connector Shield V1.1.0 สำหรับ LOLIN (WEMOS) D1 mini
  5. สายเคเบิล TFT 10P 200 มม. 20 ซม. สำหรับ WEMOS SH1.0 10P สายเคเบิลสองหัว
  6. สายเคเบิล I2C 100 มม. 10 ซม. สำหรับ LOLIN (WEMOS) SH1.0 4P สายเคเบิลสองหัว
  7. กล่องพลาสติก - SYSTEMA 200ml - ในออสเตรเลีย Coles/Woolies/KMart
  8. สายไฟ USB Micro to USB-A

ส่วนประกอบที่ใช้งานทั้งหมดสามารถซื้อได้ที่ร้าน LOLIN ใน AliExpress

เครื่องมือและฮาร์ดแวร์เบ็ดเตล็ด

  1. หัวแร้ง. คุณจะต้องประสานส่วนหัวบนโล่
  2. สลักเกลียวหัวหมวก 1.5 มม. ยาวประมาณ 1 ซม. และตัวขับให้เหมาะสม
  3. ดอกสว่านหรือรีมเมอร์ 1.5 มม. สำหรับรูสลัก
  4. ตะไบกลม หรือ เดรเมล สำหรับตัดช่องเสียบสายเคเบิล

ขั้นตอนที่ 1: การประกอบ

การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ

การประกอบตรงไปตรงมา มีตัวป้องกัน 2 ตัวที่จะกองซ้อนกัน แต่ฉันชอบที่จะมีแผงป้องกัน D1 เป็นบอร์ดด้านบนเนื่องจากเส้นทางออกสำหรับสาย USB นั้นตรงกว่าและจัดระเบียบได้ง่ายขึ้นเมื่อคุณเปิดฝา

D1 มาพร้อมกับส่วนหัว 3 ชุด

  1. ซ็อกเก็ตและหมุดยาว
  2. ซ็อกเก็ตและหมุดสั้น
  3. ขาสั้นเท่านั้น

ใช้ชุดซ็อกเก็ตยาว/ขายาวสำหรับ DI ตรวจสอบให้แน่ใจว่าคุณกำลังบัดกรีด้วยการวางแนวที่ถูกต้อง นี่คือจิ๊กขนาดเล็กที่ฉันใช้เพื่อให้หมุดอยู่ในแนวตรงสำหรับการบัดกรี

ใช้เขียงหั่นขนมวางส่วนหัว Short Pin สองแถวในแถว B & I ให้ปักหมุดลงอีกต่อไป พวกเขาจะล้างออกด้วยพื้นผิว จากนั้นจัดตำแหน่งซ็อกเก็ตสองแถวและพินแบบสั้นในแถว A & J นอกส่วนหัวของพินแบบสั้น

จากนั้นคุณสามารถวางส่วนหัวของพินแบบยาวบนพินแบบสั้นในบอร์ด จากนั้นจัดตำแหน่ง D1 ให้พร้อมสำหรับการบัดกรี หมายเหตุ: ณ จุดนี้ D1 กลับหัวกลับหาง ช่องเสียบ USB และเสาอากาศอยู่ใต้บอร์ด ประสานหมุดเข้ากับบอร์ด พยายามอย่าใช้บัดกรีมากเกินไป เพราะส่วนเกินจะไส้ใต้ D1 และอาจเคลื่อนลงไปที่ส่วนเต้ารับของบอร์ด คุณอาจถามว่าทำไมฉันถึงไม่ใช้แค่ส่วนหัวพินแบบสั้นใน D1? ฉันมีแผนอื่นๆ รวมถึงนาฬิกาเรียลไทม์และการ์ด SD สำหรับเวลาที่เข้าถึง WiFi ไม่ได้ ดังนั้นฉันจึงจัดเตรียมเกราะป้องกันอื่นๆ หากจำเป็น

ขั้นตอนต่อไปคือการประสานบอร์ดเชื่อมต่อ ถอดซ็อกเก็ตและส่วนหัวของพินออกจากแถว A & J แล้วสอดไว้บนหมุด D1 ที่บัดกรีแล้ว ตอนนี้คุณสามารถเลื่อนแผ่นป้องกันขั้วต่อบนหมุดเหล่านี้ได้ อย่าดันซ็อกเก็ตลงจนสุด เพียงวางมันไว้ด้านบน เหตุผล? หากคุณใช้บัดกรีมากเกินไป มันจะ "ไส้ตะเกียง" และตัวเชื่อมต่อของคุณจะถูกบัดกรีอย่างถาวรกับ D1

ตรวจสอบให้แน่ใจว่าตัวเชื่อมต่ออยู่ในตำแหน่งที่ถูกต้อง ตัวป้องกันตัวเชื่อมต่อควร "คว่ำ" ณ จุดนี้ pinouts ถูกทำเครื่องหมายไว้ในแต่ละกระดาน ตรวจสอบให้แน่ใจว่าตรงกัน เช่น Tx Pin บน D1 อยู่ด้านล่าง Tx pin บนบอร์ด Connector ฯลฯ ตรวจสอบอีกครั้งและประสานบอร์ดตัวเชื่อมต่อเข้ากับส่วนหัว

บัดกรีเสร็จเรียบร้อยแล้ว นำบอร์ดออกจากจิ๊กหากคุณใช้งานอยู่ คลิปเข้าด้วยกันตรวจสอบการวางแนวอีกครั้ง ต่างจากบอร์ด Arduino Uno ที่บอร์ดหนึ่งตัวสามารถวางได้ 180 องศา ณ จุดนี้ คุณสามารถเชื่อมต่อสายเคเบิล I2C จากบอร์ดตัวเชื่อมต่อกับ DHT และสายเคเบิล TFT 10 พินกับ TFT หมุดภายในมีขนาดค่อนข้างเล็ก ดังนั้นโปรดตรวจสอบการวางแนวก่อนใส่

ต่อสายไมโคร USB เข้ากับ D1 และไฟแบ็คไลท์ของ TFT จะสว่างขึ้น ตอนนี้คุณพร้อมที่จะโหลดร่าง Arduino แล้ว

ขั้นตอนที่ 2: การโหลดเฟิร์มแวร์

โหลด Arduino IDE ล่าสุด ฉันมี 1.8.5 วิ่งในขณะที่สร้างโครงการนี้

จำเป็นต้องกำหนดค่า IDE เพื่อรวบรวมภาพร่างสำหรับ WEMOS (ESP8266) ในการดำเนินการนี้ คุณต้องเริ่ม IDE และไปที่ File / Preferences จากนั้นคลิกไอคอนทางด้านขวาของ "Additional Boards Managers URLS" ตัวแก้ไขจะปรากฏขึ้น วางสิ่งต่อไปนี้

arduino.esp8266.com/stable/package_esp8266c…

ลงในเอดิเตอร์แล้วคลิก ตกลง จากนั้นคลิก ตกลง เพื่อปิดเอดิเตอร์การกำหนดลักษณะ จากนั้นคุณต้องปิด IDE แล้วเปิดใหม่อีกครั้ง จากนั้น Arduino IDE จะเชื่อมต่อและดาวน์โหลด "ชุดเครื่องมือ" และไลบรารีที่จำเป็นเพื่อสร้างและรวบรวมภาพร่างสำหรับ ESP8266 ซึ่ง D1 นั้นใช้

คุณจะต้องใช้ไลบรารี AdaFruit สำหรับหน้าจอ TFT สามารถหาได้จาก

github.com/adafruit/Adafruit-ST7735-Library

& github.com/adafruit/Adafruit-GFX-Library

คลายซิปและบันทึกไว้ในโฟลเดอร์ไลบรารีของคุณในโฟลเดอร์โครงการ Arduino หมายเหตุ: การดาวน์โหลด Github มักจะผนวก "-master" ต่อท้ายโฟลเดอร์ ดังนั้นคุณอาจต้องเปลี่ยนชื่อ

คุณต้องใช้ไลบรารี LOLIN/WEMOS DHT 3.0 จาก

github.com/wemos/WEMOS_DHT12_Arduino_Library

ดาวน์โหลดไฟล์ IoTTemp_basic.ino และวางไว้ในโฟลเดอร์โครงการ Arduino ชื่อ "IOTTemp_basic"

เปิดภาพร่างใน IDE และไปที่ Tools / Board และเลือก "Boards Manager" ใน "กรองการค้นหาของคุณ" เพียงแค่ใส่ "D1" และคุณควรเห็น "esp8266 โดยชุมชน ESP8266" กด "ข้อมูลเพิ่มเติม" และคุณควรจะสามารถเลือกเวอร์ชันล่าสุดและ "ติดตั้ง" ได้ จากนั้น IDE จะเริ่มดาวน์โหลดชุดเครื่องมือและไลบรารีที่เกี่ยวข้อง

เมื่อดำเนินการเสร็จสิ้น ให้เสียบ IotTemp เข้ากับคอมพิวเตอร์ และหลังจากตรวจพบ ให้เลือกพอร์ตที่ติดตั้งอุปกรณ์ใน "เครื่องมือ/พอร์ต" ตอนนี้คุณพร้อมที่จะคอมไพล์และโหลดแล้ว

ที่ด้านบนของภาพร่าง คุณต้องกำหนดค่าตัวแปรบางตัวเพื่อให้เหมาะกับสภาพแวดล้อมในพื้นที่ของคุณ

const ถ่าน* ssid = ""; // WiFi SSID ในพื้นที่ของคุณ

const ถ่าน* รหัสผ่าน = ""; // รหัสผ่านสำหรับโหนดในเครื่อง

const char* host = "emoncms.org"; // URL พื้นฐานสำหรับการบันทึก EMONCMS หมายเหตุไม่มี "https://"

const char* APIKEY = "<รหัส API ของคุณ"; // เขียนคีย์ API จาก emonCMS

const char* nodeName = "ครัว"; // ชื่ออธิบายสำหรับโหนดของคุณ

กดไอคอน "ติ๊ก" เพื่อตรวจสอบรหัส และหากไม่มีข้อผิดพลาดที่สำคัญ คุณควรอัปโหลดรหัสไปยัง D1 ได้ เมื่อดำเนินการเสร็จสิ้น ใช้เวลาหนึ่งหรือสองนาที ตอนนี้คุณควรเห็น TFT สว่างขึ้นด้วยค่า "TMP" และ "R/H" (ความชื้นสัมพัทธ์)

เนื่องจากเรายังไม่ได้กำหนดค่าบัญชี EMONCMS ฯลฯ คุณจะเห็น "การเชื่อมต่อล้มเหลว" พร้อมชื่อโฮสต์ของคุณ

ร่างนี้ยังมีจอภาพแบบอนุกรมพื้นฐานอีกด้วย เชื่อมต่อโดยใช้จอภาพอนุกรม Arduino, Putty หรือโปรแกรมการสื่อสารแบบอนุกรมอื่น ๆ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่เกิดขึ้นภายใน IoT Temp

ฉันแก้ไขโค้ดเพื่อให้คุณสามารถหาโค้ดล่าสุดของฉันได้ที่

github.com/wt29/IoTTemp_basic

ขั้นตอนที่ 3: การประกอบขั้นสุดท้าย

การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย

ตอนนี้คุณพร้อมที่จะประกอบให้เสร็จสมบูรณ์แล้ว ซึ่งเกี่ยวข้องกับการติดตั้งส่วนประกอบต่างๆ ลงในกล่อง

เริ่มต้นด้วยการติดตั้ง TFT ที่ด้านในของฝา ถอด D1 ออกจากแหล่งจ่ายไฟ แล้วถอด TFT ออกจากบอร์ดขั้วต่อ เสนอ TFT ขึ้นไปที่ฝาปิดโดยพยายามจัดตำแหน่ง TFT ให้ใกล้กับขอบด้านบนของฝาปิดมากที่สุด สิ่งนี้จะช่วยให้คุณมีระยะห่างที่ดีขึ้นสำหรับบอร์ด D1/Connector ฉันใช้รีมเมอร์ที่คมเพื่อดันรอยเล็กๆ ในพลาสติก ถอด TFT แล้วรีมรูเล็กๆ รูยึดสำหรับ TFT ค่อนข้างเล็กที่ 1.5 มม. ฉันมีคอลเล็กชั่นน๊อตหัวหมวกที่พอดี แต่ไม่มีน็อตให้พอดี ฉันดันหัวหมวกจากด้านหน้า ขันให้แน่นและพลาสติก จากนั้นฉันก็ใช้กาวร้อนอุณหภูมิต่ำเพื่อยึด TFT เข้ากับสลักเกลียว

ติดตั้งเซ็นเซอร์ DHT ที่ด้านนอกของฝา หากต้องการแยกเซ็นเซอร์ออกจากแผงป้องกัน (ไม่ได้ใช้ตัวยึด "ตัวป้องกัน") ให้พลิก DHT กลับหัวและให้คะแนนคอคอด (ส่วนบาง) ด้วยมีดสำหรับงานอดิเรก เซ็นเซอร์จะหลุดออกจากเกราะ

เกือบขั้นตอนสุดท้ายคือการตัดช่องบรรเทาที่ขอบด้านล่างของฝาและฐานเพื่อรองรับสาย USB และการเชื่อมต่อกับ DHT ฉันใช้ Dremel แต่มันสามารถไปได้นิดหน่อยดังนั้นใช้เวลาของคุณ กล่อง SystemA มีซีลซิลิโคนที่ฝาปิดซึ่งคุณไม่จำเป็นต้องตัด

ประกอบเครื่องในกล่อง การแตะกาวร้อนอุณหภูมิต่ำใต้แผงคอนเนคเตอร์ช่วยระบุตำแหน่งในกล่อง เรียกใช้สาย USB และ DHT ออกจากช่องเสียบแล้วทากาวร้อนทับบนสายเคเบิลทั้งสอง

ยึด DHT เข้ากับด้านนอกของกล่องด้วยสลักเกลียวสั้น 1.5 มม. ใช้กาวร้อนเล็กน้อยภายใต้นั้นถ้าคุณต้องการ - ฉันไม่รำคาญ

เชื่อมต่อ IOT Temp ของคุณกับกำลังไฟ 5V และชื่นชมผลงานของคุณ

แนะนำ: