สารบัญ:

ESP8266 ESP-01 สวิตช์สายไฟ LED: 6 ขั้นตอน
ESP8266 ESP-01 สวิตช์สายไฟ LED: 6 ขั้นตอน

วีดีโอ: ESP8266 ESP-01 สวิตช์สายไฟ LED: 6 ขั้นตอน

วีดีโอ: ESP8266 ESP-01 สวิตช์สายไฟ LED: 6 ขั้นตอน
วีดีโอ: Control Relay ESP-01 Module from Smartphone 2024, กรกฎาคม
Anonim
ESP8266 ESP-01 สวิตช์สายไฟ LED
ESP8266 ESP-01 สวิตช์สายไฟ LED

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

เนื่องจากฉันมีโมดูล ESP8266 ESP-01 อยู่รอบๆ ฉันจึงตัดสินใจประกอบและตั้งโปรแกรมต้นแบบอย่างรวดเร็ว

หลังจากการนำต้นแบบไปใช้อย่างประสบความสำเร็จด้วยลวด LED ขยะ ฉันตัดสินใจที่จะใช้การออกแบบ PCB ครั้งแรกของฉันและสั่งซื้อบอร์ดสองสามตัว

คำแนะนำนี้จะนำคุณไปสู่แผนผัง ต้นแบบแรก และ PCB และให้รหัสเพื่อตั้งโปรแกรมโมดูล ESP ด้วยการคลิกเพียงไม่กี่ครั้ง

TL; DR: นี่เป็นวิธีง่ายๆ ในการใช้สวิตช์ควบคุม Wi-Fi กับ ESP8266 ESP-01

เสบียง:

ฮาร์ดแวร์

  • โมดูล ESP8266 ESP-01
  • AMS-1117 ตัวควบคุม 3.3V
  • IRLB8721 MOSFET (PCB สุดท้าย) หรือทรานซิสเตอร์ 2N2222 (ต้นแบบเริ่มต้น)
  • แถบส่วนหัวชายและหญิง

ซอฟต์แวร์

Arduino IDE v1.6

สำหรับการเขียนโปรแกรม

OPEN SMART USB เป็นอะแดปเตอร์ ESP-01

สำหรับการทดสอบ

  • นำ
  • ตัวต้านทาน 220 โอห์ม
  • เขียงหั่นขนม
  • สายจัมเปอร์

สำหรับการประกอบ

  • หัวแร้ง
  • สายไฟ (ต้นแบบเท่านั้น ไม่ใช่สำหรับ PCB)
  • บอร์ด Perf (ต้นแบบเท่านั้น ไม่ใช่สำหรับ PCB)

ขั้นตอนที่ 1: แผนผัง

แผนผัง
แผนผัง

ด้านบนเป็นแผนผังที่สร้างด้วย EasyEDA แบ่งได้ดังนี้

เราใช้แรงดันไฟฟ้าขาเข้าจากสายไฟ USB ที่มี 5V และป้อนลงในพิน VIN ของโมดูล AMS1117 3.3V

หมุด VOUT ของโมดูล AMS1117 3.3V เชื่อมต่อกับพินสะสมของ IRLB8721 MOSFET และพิน VIN และ CH_PD ของโมดูล ESP8266 ESP-01 ต้องดึงพิน CH_PD HIGH สำหรับโมดูล ESP8266 ESP-01 เพื่อรันโค้ด

พิน D2 ของโมดูล ESP8266 ESP-01 เชื่อมต่อกับพิน GATE ของ IRLB8721 MOSFET สิ่งนี้ควบคุมว่ากระแสอาจไหลผ่านหรือไม่

พินอีซีแอลของ IRLB8721 MOSFET เชื่อมต่อกับสายไฟ LED

สุดท้าย หมุดกราวด์ทั้งหมดเชื่อมต่อเข้าด้วยกัน

หากคุณเลือกทรานซิสเตอร์ 2N2222 ให้แทนที่ IRLB8721 ที่เกิดขึ้นทั้งหมดด้วย 2N2222 ตามลำดับ และจำไว้ว่าขาทั้งสองมีความหมายต่างกัน

ขั้นตอนที่ 2: การเขียนโปรแกรม

ก่อนที่เราจะตั้งค่าต้นแบบบนเขียงหั่นขนม เราควรตั้งโปรแกรมโมดูล ESP8266 ESP-01 เพื่อให้เราสามารถทดสอบต้นแบบได้ในภายหลัง

รหัส

รหัสของฉันอิงตามบทช่วยสอนของ Random Nerd Tutorial อย่างมากสำหรับเซิร์ฟเวอร์ HTTP อย่างง่าย ฉันลบปุ่มที่สองออกแล้ว เนื่องจากเราต้องควบคุมพินเดียวเท่านั้น (D2) อย่างไรก็ตาม คุณสามารถใช้รหัสตามที่เป็นอยู่และแทนที่ข้อมูลรับรอง WiFi ของคุณได้

แฟลช ESP8266 ESP-01

หากคุณมีอะแดปเตอร์ OPEN-SMART USB เป็น ESP-01 คุณสามารถเสียบโมดูล ESP8266 ESP-01 เข้ากับมันและตั้งค่าสวิตช์เป็น PROG จากนั้นเสียบทุกอย่างเข้ากับพอร์ต USB ฟรีในคอมพิวเตอร์ของคุณและเปิด Arduino IDE

คัดลอกและวางโค้ดจาก Random Nerd Tutorials แทนที่ข้อมูลรับรอง WiFi ของคุณและอัปโหลดไปยังโมดูล ESP8266 ESP-01

จากนั้น นำโมดูล ESP8266 ESP-01 ออกจากอะแดปเตอร์ OPEN-SMART ตั้งค่าสวิตช์เป็น UART แล้วใส่กลับเข้าไปใหม่

ทดสอบรหัส

เปิด Serial Console ใน Arduino IDE และรอจนกว่าโมดูลจะเชื่อมต่อกับ WiFi

จากนั้นเปิดเบราว์เซอร์ของคุณและไปที่ที่อยู่ IP ที่แสดงใน Serial Console หมายเหตุ: คุณต้องอยู่ในเครือข่ายเดียวกันหรือที่เรียกว่า WiFi ไม่เช่นนั้นคุณจะไม่สามารถเข้าถึง ESP8266 ESP-01 ได้!

หากทุกอย่างทำงานได้ดี คุณจะเห็นเว็บไซต์ที่มีปุ่มสองปุ่ม เชื่อมต่อ LED ที่มีตัวต้านทาน 220 โอห์มกับพิน D2 บนโมดูล ESP8266 ESP-01 และไฟจะสว่างขึ้นและดับลงเมื่อคุณคลิกปุ่มที่ถูกต้องบนเว็บไซต์

หากคุณประสบปัญหาใด ๆ โปรดปฏิบัติตามบทแนะนำแบบเต็มและรายละเอียดที่ลิงก์ด้านบน

ขั้นตอนที่ 3: การสร้างต้นแบบ

การสร้างต้นแบบ
การสร้างต้นแบบ
การสร้างต้นแบบ
การสร้างต้นแบบ

ตั้งค่าเขียงหั่นขนมพร้อมส่วนประกอบและสายไฟที่จำเป็นทั้งหมดตามที่แสดงในแผนผังด้านบนและทดสอบด้วยโมดูล ESP8266 ESP-01 ที่ตั้งโปรแกรมไว้

หากทุกอย่างทำงานได้ดี คุณมีทางเลือกสองทาง

ตัวเลือก A: ประสานเข้ากับบอร์ดที่สมบูรณ์แบบ

ตัวเลือก B: สร้าง PCB

ฉันเลือกตัวเลือก A ก่อนแล้วจึงตัดสินใจทำให้มือสกปรกด้วยโปรเจ็กต์ PCB แรกของฉัน

ในภาพที่คุณเห็นต้นแบบที่บัดกรีด้วยตัวเองของฉัน และเช่นเคย การเชื่อมต่อนั้นยุ่งเหยิง และฉันใช้ท่อหดเพื่อป้องกันไม่ให้การเชื่อมต่อที่ทับซ้อนกันเกิดการลัดวงจร นอกจากนี้ ฉันยังใช้ทรานซิสเตอร์ 2N2222 แทน IRLB8721 MOSFET เพราะฉันมีพวกมันมากมายอยู่รอบๆ และฉันรู้ว่ามันไม่ควรจะคงอยู่ต่อไป

การบัดกรีใช้เวลาประมาณหนึ่งชั่วโมงและมันก็ไม่สนุกเลย หากคุณเป็นนักบัดกรีมืออาชีพ คุณอาจชอบกระบวนการนี้ แต่สำหรับฉัน ฉันต้องการอะไรที่ง่ายกว่านี้

ขั้นตอนที่ 4: PCB

PCB
PCB
PCB
PCB

ฉันกลัว PCB เพราะฉันคิดว่าฉันต้องออกแบบมันด้วยส่วนประกอบ SMD และฉันไม่สามารถหาโมดูลการพัฒนา ESP หรือ Arduino ที่สร้างไว้พร้อมเพื่อแทรกลงในแผนผังหรือเลย์เอาต์ PCB ได้

สำหรับโครงการนี้ ฉันตัดสินใจเพียงแต่พิจารณาว่าโมดูล ESP8266-01 และ AMS1117 3.3. V เป็นสิ่งที่ฉันต้องบัดกรีบนบอร์ดเพื่อใช้งาน: เป็นหมุดส่วนหัวของตัวเมีย

สิ่งนี้ทำให้ชีวิตของฉันง่ายขึ้นมากและเค้าโครง PCB ก็เสร็จในเวลาประมาณสองชั่วโมง คุณสามารถเห็นทั้งสองรุ่นในภาพ

เวอร์ชัน 1 มีข้อแม้เล็กน้อยบางประการ:

1. หมุดส่วนหัวแคบเกินไป ฉันไม่ได้คำนึงถึงว่าพวกเขาต้องห่างกัน 2.54 มม. และเพิ่งคว้าหมุดแรกจากไลบรารี2. ฉันทำให้ป้ายกำกับสำหรับ VIN ยุ่งเหยิง: มีการสลับป้ายกำกับ VCC และ GND โมดูล AMS1117 3.3V กว้างกว่าที่คิดและขยายไปถึงขอบ PCB

แน่นอน ฉันสังเกตเห็นคำเตือนเหล่านั้นหลังจากสั่งซื้อและทดสอบในชีวิตจริง ไม่ใช่ตัวแบ่งเกม แต่ฉันได้สร้างเวอร์ชันใหม่ซึ่งฉันได้ปรับปรุงจุดที่กล่าวมาข้างต้น นอกจากนี้ ฉันยังวางโมดูล ESP8266 ESP-01 ในลักษณะที่จะไม่ทับซ้อนกับโมดูล AMS1117 3.3V

คุณสามารถค้นหาโครงการ EasyEDA ได้ที่นี่:

ขั้นตอนที่ 5: ก้าวหน้า

เราจึงมี PCB ที่ประกอบง่าย อะไรต่อไป?

ปลอก

คงจะดีถ้ามีเคสพิมพ์ 3 มิติที่ซ่อนอุปกรณ์อิเล็กทรอนิกส์และทำให้โครงสร้างแข็งแกร่งขึ้น ตามหลักการแล้วมันควรมีแผ่นระบายความร้อนในตัวสำหรับ IRLB8721 (แม้ว่าในระหว่างการทดสอบของฉันด้วยลวด LED ยาว 10 ม. มันก็ไม่เคยอุ่นกว่าอุณหภูมิห้องเลย)

ตัวเชื่อมต่อ

นอกจากนี้ ฉันต้องการเพิ่มตัวเชื่อมต่อ USB สำหรับ VIN หรือที่เรียกว่าสาย USB และตัวเชื่อมต่อ JST สำหรับ VOUT หรือที่เรียกว่าสาย LED ขณะนี้ฉันใช้ส่วนหัวของตัวผู้บนกระดานและส่วนหัวของตัวเมียที่บัดกรีกับสาย LED และสาย USB (ตัด) เพื่อเชื่อมต่อ แต่นี่ไม่ใช่การเชื่อมต่อที่พิสูจน์ได้ในอนาคต และดูไม่เป็นมืออาชีพมากนัก

ร่วมกับกรณีนี้จะช่วยเพิ่มความสวยงามของงานสร้างและประสบการณ์การใช้งานโดยรวมได้อย่างมาก (ซึ่งเป็นสิ่งสำคัญหากคุณพยายามใช้บ้านอัจฉริยะในสภาพแวดล้อมที่ใช้ร่วมกันและไม่ใช่แค่ในห้องหรือห้องปฏิบัติการของคุณเอง)

การรวมระบบบ้านอัจฉริยะ

ปัจจุบัน ESP8266 ESP-01 ทุกตัวเป็น HTTP-Server ที่มีเว็บไซต์ที่ควบคุมสถานะ ฉันต้องการเริ่มก้าวแรกสู่ Smart Home และใช้ NodeRED และ MQTT เพื่อรวมเข้ากับระบบ Home Automation แบบรวมศูนย์ เพื่อให้ฉันสามารถควบคุมสวิตช์ทั้งหมดของฉันจาก UI เดียวได้

แน่นอน ฉันสามารถสร้างเว็บเซิร์ฟเวอร์ที่ส่งคำขอไปยังโมดูล ESP8266 ESP-01 ต่างๆ ได้ แต่นั่นไม่ใช่โซลูชันที่หรูหรา ได้มาตรฐาน หรือขยายได้

ขั้นตอนที่ 6: คำติชม

ถ้าคุณทำมาจนถึงตรงนี้ ขอบคุณมากสำหรับการอ่าน!

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

หากคุณชอบสิ่งที่คุณอ่านโปรดแสดงความคิดเห็นและอาจชอบบทความ มันจะมีความหมายมาก:)

แนะนำ: