สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: ตั้งค่า
- ขั้นตอนที่ 2: การเพิ่มรหัสสำหรับเซ็นเซอร์ดิน
- ขั้นตอนที่ 3: Neopixel Library
- ขั้นตอนที่ 4: การตั้งค่าโค้ด Neopixel
- ขั้นตอนที่ 5: โมฆะการตั้งค่า
- ขั้นตอนที่ 6: Void Loop
- ขั้นตอนที่ 7: ตรวจสอบ
วีดีโอ: ดินชุ่มชื้นด้วยโหนด: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
ในคู่มือนี้ ฉันจะแสดงให้คุณเห็นถึงวิธีการสร้างเซ็นเซอร์วัดดินแบบทำเองสำหรับระบบสุขภาพสวน ฉันจะแสดงสิ่งที่คุณต้องการ ให้ตัวอย่างโค้ด และวิธีใช้งานโค้ด
ในตอนท้ายของคำแนะนำ คุณจะทราบวิธีการเปลี่ยนสีของแถบนำเมื่อดินเปียก เปียกเล็กน้อย หรือแห้ง
ในคู่มือนี้ฉันจะใช้:
- Arduino เวอร์ชัน 1.8.9
- ห้องสมุด Adafruit_NeoPixel.h
เสบียง
คุณจะต้อง:
- NodeMCU 1.0 (โมดูล ESP-12E)
- สายเคเบิลตัวเมียถึงตัวเมีย 1 เส้น
- แถบ LED
- (ไม่บังคับ) เซ็นเซอร์ดิน Homade (ดูวิดีโอด้านบนจนถึง 00:36)
ขั้นตอนที่ 1: ตั้งค่า
- ใช้โหนดและเซ็นเซอร์ดินของคุณ
- เชื่อมต่อเซ็นเซอร์ดินกับ A0.(ภาพที่ 1) (หรือจะใช้สายเคเบิลตัวเมียแบบรางและเชื่อมต่อกับ A0 (ภาพที่ 3)
นำแถบ LED ของคุณและใส่ GND ใน G, 5V บน 3V และสายกลางใน D5 (ภาพที่ 2)
ตอนนี้มันจะดูเหมือนรูปสุดท้าย
ขั้นตอนที่ 2: การเพิ่มรหัสสำหรับเซ็นเซอร์ดิน
- สร้างโครงการใหม่ใน arduino IDE
- ที่ผ่านมาในรหัสต่อไปนี้:
/* อินพุตอะนาล็อก, เอาต์พุตอะนาล็อก, เอาต์พุตอนุกรม
อ่านพินอินพุตแบบอะนาล็อก จับคู่ผลลัพธ์กับช่วงตั้งแต่ 0 ถึง 255 และใช้ผลลัพธ์เพื่อตั้งค่าการปรับความกว้างพัลส์ (PWM) ของพินเอาต์พุต ยังพิมพ์ผลลัพธ์ไปยัง Serial Monitor
วงจร: - โพเทนชิออมิเตอร์เชื่อมต่อกับพินอะนาล็อก 0 พินกลางของโพเทนชิออมิเตอร์ไปที่พินอะนาล็อก หมุดด้านข้างของโพเทนชิออมิเตอร์ไปที่ +5V และกราวด์ - LED เชื่อมต่อจากพินดิจิตอล 9 ถึงกราวด์
สร้างขึ้น 29 ธ.ค. 2551 แก้ไขเมื่อ 9 เม.ย. 2555 โดย Tom Igoe
รหัสตัวอย่างนี้เป็นสาธารณสมบัติ
www.arduino.cc/en/Tutorial/AnalogInOutSeri… *
/ ค่าคงที่เหล่านี้จะไม่เปลี่ยนแปลง ใช้เพื่อตั้งชื่อพินที่ใช้: const int analogInPin = A0; // พินอินพุตแบบอะนาล็อกที่ต่อโพเทนชิออมิเตอร์กับ const int analogOutPin = D5; // พินเอาต์พุตแบบอะนาล็อกที่ต่อ LED ไว้
int sensorValue = 0; // ค่าที่อ่านจากหม้อ
การตั้งค่าเป็นโมฆะ () {// เริ่มต้นการสื่อสารแบบอนุกรมที่ 9600 bps: Serial.begin (9600); }
วงเป็นโมฆะ () {// อ่านค่าแอนะล็อก: sensorValue = analogRead (analogInPin);
// พิมพ์ผลลัพธ์ไปยัง Serial Monitor: Serial.print("sensor = "); Serial.print(เซ็นเซอร์ค่า); Serial.print("\n"); // Serial.println(outputValue);
// รอ 1 มิลลิวินาทีก่อนวนรอบถัดไปสำหรับตัวแปลงแอนะล็อกเป็นดิจิทัล // ตัวแปลงจะชำระหลังจากการอ่านครั้งล่าสุด: ล่าช้า (1000); }
ตอนนี้คุณสามารถตรวจสอบว่าเซ็นเซอร์ของคุณมีค่าหรือไม่
แตะปลายสกรูหรือสายเคเบิลแล้วคุณจะเห็นบางอย่างเช่นภาพที่ 1
หากไม่ได้ผล ให้ตรวจสอบสายเคเบิลของคุณ เชื่อมต่อถูกต้องหรือไม่?
ขั้นตอนที่ 3: Neopixel Library
-
ดาวน์โหลดไลบรารี adafruit_neopixel (หากยังไม่ได้ดำเนินการ)
- ไปที่เครื่องมือ>จัดการไลบรารี
- ค้นหา adafruit neopixel photo 1
- ติดตั้งเวอร์ชัน 1.2.5
ขั้นตอนที่ 4: การตั้งค่าโค้ด Neopixel
-
เพิ่มสิ่งต่อไปนี้ที่ด้านบนของโครงการของคุณ
- #รวม
- #รวม
- #รวม "Adafruit_NeoPixel.h"
- ด้านล่างนั้น:
ถ่าน ssid = "SSID"; // SSID เครือข่ายของคุณ (ชื่อ)
รหัสผ่านถ่าน = "รหัสผ่าน"; // รหัสผ่านเครือข่ายของคุณ
และด้านล่างนั้น
#define PIXEL_PIN D5#define PIXEL_COUNT 30 // เปลี่ยนเป็น maney led's บนแถบของคุณ
#define PIXEL_TYPE NEO_GRB + NEO_KHZ800
Adafruit_NeoPixel พิกเซล = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);
ขั้นตอนที่ 5: โมฆะการตั้งค่า
ใส่รหัสต่อไปนี้ในการตั้งค่าโมฆะ ()
พิกเซล.begin(); // เริ่มต้นวัตถุแถบ NeoPixel (จำเป็น)pixels.show(); // ปิดพิกเซลทั้งหมดโดยเร็วที่สุด
พิกเซล.setBrightness(50); //ต้องอยู่ระหว่าง 0 ถึง 255 หากคุณต้องการให้แถบไฟ LED สว่างขึ้น คุณสามารถเพิ่มจำนวนได้
ขั้นตอนที่ 6: Void Loop
ใน void loop() และต่ำกว่า delay(1000); ป้อนรหัสต่อไปนี้
ถ้า (sensorValue == 0 || sensorValue <= 200) {
สำหรับ(int i=0; i
พิกเซล.setPixelColor(i, 255, 0, 0);
พิกเซล.show();
}
} else if (sensorValue > 200 || sensorValue <= 500) {
สำหรับ (int i=0; i
พิกเซล.setPixelColor(i, 0, 255, 0);
พิกเซล.show();
}
} else if (sensorValue > 500) {
สำหรับ(int i=0; i
พิกเซล.setPixelColor(i, 0, 0, 255);
พิกเซล.show();
}
}
}
ขั้นตอนที่ 7: ตรวจสอบ
ยินดีด้วย! คุณเพิ่งสร้างระบบที่สามารถระบุได้ว่าดินเปียกหรือแห้ง
ตอนนี้เมื่อคุณใส่เซ็นเซอร์ในดินเปียก ไฟ LED จะเปลี่ยนเป็นสีเขียว และเมื่ออยู่ในดินแห้ง มันจะเปลี่ยนเป็นสีแดง เช่นเดียวกับภาพด้านบน
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน 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++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง