สารบัญ:
- ขั้นตอนที่ 1: รายการชิ้นส่วน
- ขั้นตอนที่ 2: การเดินสายไฟและการตั้งค่า
- ขั้นตอนที่ 3: Instant Wireless Messenger, ปุ่มสลับ, ปุ่มชั่วขณะ และฟังก์ชันที่มีประโยชน์บางอย่าง
- ขั้นตอนที่ 4: การตั้งค่าขั้นสูง การเปลี่ยนการตั้งค่า HC-12 ด้วยคำสั่ง AT
- ขั้นตอนที่ 5: เสาอากาศสปริงหรือเสาอากาศ SMA
- ขั้นตอนที่ 6: หมายเหตุสุดท้าย:
วีดีโอ: ระยะไกล 1.8 กม. Arduino กับ Arduino การสื่อสารไร้สายด้วย HC-12: 6 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
ในคำแนะนำนี้ คุณจะได้เรียนรู้วิธีสื่อสารระหว่าง Arduinos ในระยะไกลได้ถึง 1.8 กม. ในที่โล่ง
HC-12 เป็นโมดูลการสื่อสารพอร์ตอนุกรมไร้สายที่มีประโยชน์มาก ทรงพลังอย่างยิ่ง และใช้งานง่าย
ขั้นแรกคุณจะได้เรียนรู้วิธีการสร้าง Instant Messenger แบบไร้สายโดยใช้ความพยายามน้อยที่สุด
จากนั้นเราจะดำเนินการต่อไปเพื่อให้ไฟ LED สว่างขึ้นด้วยปุ่มกด จากนั้นคุณจะได้เรียนรู้ฟังก์ชันสตริงที่เป็นประโยชน์บางประการและการดำเนินการสำหรับการสื่อสารแบบอนุกรม
ส่วนสุดท้ายของคำแนะนำไม่จำเป็น แต่คุณจะได้เรียนรู้วิธีการใช้โมดูล HC-12 อย่างมืออาชีพ
ในส่วนนี้ คุณจะได้เรียนรู้วิธีเข้าสู่โหมดการตั้งค่าโมดูลเพื่อเปลี่ยนอัตราบอด ระยะการส่ง และอื่นๆ
และสุดท้ายคุณจะได้เรียนรู้วิธีการเชื่อมต่อเสาอากาศ SMA ภายนอก
ทำตามคำแนะนำที่เหลือเพื่อค้นหาว่าการเป็นมืออาชีพด้านการสื่อสารไร้สายแบบอนุกรมนั้นง่ายเพียงใด
ขั้นตอนที่ 1: รายการชิ้นส่วน
- 2 x Arduino (ได้โคลน Arduino ของฉันในราคา 3 ดอลลาร์ที่นี่)
- 2 x HC-12 โมดูล (รับของฉันที่นี่)
- สายไฟ
- เขียงหั่นขนม
- ตัวต้านทาน 10 k
- ปุ่มกด
- ไฟล์แบบฝึกหัดที่นี่
ขั้นตอนที่ 2: การเดินสายไฟและการตั้งค่า
อันดับแรก เราต้องประสานเสาอากาศสปริงกับชิป HC-12 ทั้งคู่
ฉันยังบัดกรีหมุดบนโมดูล HC-12 เพื่อให้ใช้งานง่ายบนเขียงหั่นขนม
เราจะใช้ Arduino 2 ตัวกับโมดูล HC-12 ที่เชื่อมต่อกับแต่ละโมดูลดังที่คุณเห็นในภาพ
สำหรับ Arduinos ทั้งสองเราเชื่อมต่อพิน 2 กับ TX และพิน 3 กับ RX กราวด์ถึงกราวด์และ VCC ถึง 5v
ใน Arduino เราจะเพิ่มปุ่มกดดังที่คุณเห็นในภาพ
ในการทำงานกับ 2 Arduinos บนคอมพิวเตอร์ 1 เครื่อง เราต้องเปิด Arduino IDE 2 อินสแตนซ์ ซึ่งหมายความว่าเราต้องเปิดซอฟต์แวร์ Arduino 2 ครั้ง สิ่งนี้ไม่เหมือนกับ “ไฟล์ → ใหม่”
บันทึกรายการด้วยปุ่มกดที่เชื่อมต่อเป็น “ผู้ส่ง HC-12” และอีกรายการเป็น “ผู้รับ HC-12”
ตรวจสอบให้แน่ใจว่าได้เลือกพอร์ตที่ถูกต้องสำหรับ Arduinos แต่ละตัว
ขั้นตอนที่ 3: Instant Wireless Messenger, ปุ่มสลับ, ปุ่มชั่วขณะ และฟังก์ชันที่มีประโยชน์บางอย่าง
Messenger ไร้สาย
เราจะเริ่มต้นด้วยการสร้างผู้ส่งสารไร้สายทันที
คัดลอกเนื้อหาจากไฟล์ “HC-12 messenger send/receive.txt” ในไฟล์ ZIP และวางลงในอินสแตนซ์ Arduino แต่ละอัน รหัสเหมือนกันสำหรับ Arduinos ทั้งสอง
หลังจากอัปโหลดโค้ดแล้ว ให้เปิดมอนิเตอร์ซีเรียลสำหรับทั้งสองอินสแตนซ์
ตอนนี้เริ่มพิมพ์ในจอภาพอนุกรมทั้งสองเพื่อเริ่มการแชท
แม้แต่ Arduinos ของคุณก็ยังเชื่อมต่อกับคอมพิวเตอร์เครื่องเดียวกัน การสื่อสารก็ไร้สาย
ปุ่มสลับ
ปุ่มสลับมักใช้ในอุปกรณ์อิเล็กทรอนิกส์ หลักการนั้นง่ายมาก คุณกดปุ่มหนึ่งครั้งเพื่อเปิด LED และกดปุ่มเดิมอีกครั้งเพื่อปิด LED
คัดลอกและวางเนื้อหาของ "HC-12 Toggle Button Send.txt" ไปยังอินสแตนซ์ "HC-12 sender" และ "HC-12 Toggle Button Receive.txt" ไปยังอินสแตนซ์ "HC-12 receiver" และอัปโหลด.
เมื่อคุณกดปุ่ม คุณจะเห็นไฟ LED สว่างขึ้น เมื่อคุณกดปุ่มอีกครั้ง ไฟ LED จะดับลง
ตัวตรวจสอบความถูกต้องสองสามตัวเช่นรหัสเวลาและปุ่มถูกใช้เพื่อให้แน่ใจว่าตัวอย่างนี้ใช้งานได้สมบูรณ์แบบ
ปุ่มชั่วขณะ
ปุ่มชั่วขณะนั้นค่อนข้างตรงไปตรงมา ขณะกดปุ่ม ไฟ LED จะสว่างขึ้น เมื่อปล่อยปุ่ม ไฟ LED จะดับลง
คัดลอกและวางเนื้อหาของ "HC-12 Momentary Button Send.txt" ไปยังอินสแตนซ์ "HC-12 sender" และ "HC-12 Momentary Button Receive.txt" ไปยังอินสแตนซ์ "HC-12 receiver" และอัปโหลด.
ฟังก์ชันและตัวดำเนินการที่มีประโยชน์บางอย่าง
มีฟังก์ชันและโอเปอเรเตอร์ที่มีประโยชน์สองสามอย่างซึ่งมีประโยชน์เมื่อคุณต้องการแปลงหรือแยกสตริงและแปลงเป็นทศนิยมเป็นต้น
ดูไฟล์ “HC-12 Useful Functions and Operators Send.txt” และ “HC-12 Useful Functions and Operators Receive.txt”
ร่างการส่งจะส่งสตริง “test123” เมื่อกดปุ่ม
ร่างการรับจะอ่านสตริง แยกและแปลงเป็นจำนวนเต็ม
ขั้นตอนที่ 4: การตั้งค่าขั้นสูง การเปลี่ยนการตั้งค่า HC-12 ด้วยคำสั่ง AT
คุณสามารถข้ามส่วนนี้ได้โดยง่าย เนื่องจากจะครอบคลุมการตั้งค่าชิปขั้นสูงบางอย่าง อย่างไรก็ตาม ฉันจะครอบคลุมพื้นฐานต่างๆ เพื่อให้คุณสามารถเปลี่ยนอัตราบอด กำลังส่ง ช่องสัญญาณ และโหมดการทำงานของโมดูลได้
คู่มือฉบับสมบูรณ์สามารถพบได้ในไฟล์ ZIP ภายใต้ชื่อ HC-12 User Manual.pdf
เชื่อมต่อ HC-12 ตามที่แสดงในภาพและเชื่อมต่อ Arduino กับคอมพิวเตอร์ของคุณ
คัดลอกและวางเนื้อหาของไฟล์ชื่อ “HC-12 AT Commander.txt” จากไฟล์ ZIP และอัปโหลดไปยัง Arduino ของคุณ
เปิดจอภาพอนุกรมและพิมพ์ "AT" หากโมดูลส่งคืน "ตกลง" โหมดคำสั่งจะทำงาน
การเปลี่ยนอัตราบอด
พิมพ์ “AT+Bxxxx”
อัตราบอดสามารถตั้งค่าเป็น 1200bps, 2400bps, 4800bps, 9600bps, 19, 200bps, 38, 400bps, 57, 600bps หรือ 115, 200bps ค่าเริ่มต้น
มูลค่า 9600bps.
ตัวอย่าง: พิมพ์ “AT+B4800” โมดูลส่งคืน “OK+B4800”
การเปลี่ยนช่องทางการสื่อสาร
พิมพ์ “AT+Cxxx”
ค่าสามารถเป็นตัวเลขตั้งแต่ 001 ถึง 127
ทุกตัวเลขเป็นขั้นตอน 400KHz ความถี่ในการทำงานของช่อง 100 คือ 473.0MHz
ตัวอย่าง: พิมพ์ “AT+C021” โมดูลส่งคืน “OK+C021”
โมดูลถูกตั้งค่าเป็นความถี่ในการทำงาน 441.4MHx
โปรดทราบว่าทั้งโมดูลส่งและรับต้องมีความถี่เท่ากันในการสื่อสาร
การเปลี่ยนโหมดการทำงานของโมดูล
ซึ่งสามารถเป็น FU1, FU2, FU4 หรือ FU4 (FU4 ที่อัตราบอด 1200 ตั้งค่าชิปให้ส่งข้อมูลได้สูงถึง 1800 เมตรในที่โล่ง) ดูเอกสารประกอบสำหรับคำอธิบายแบบเต็ม
ตัวอย่าง: พิมพ์ “AT+FU4” โมดูลส่งคืน “OK+FU4”
รับพารามิเตอร์ทั้งหมดจากโมดูล
พิมพ์ “AT+RX”
โมดูลควรส่งคืนสิ่งนี้:
“โอเค+FU3
ตกลง+B9600
ตกลง+C001
ตกลง+RP:+20dBm”.
การตั้งค่าเพิ่มเติมสามารถพบได้ใน “HC-12 User Manual.pdf” ในไฟล์ ZIP
ขั้นตอนที่ 5: เสาอากาศสปริงหรือเสาอากาศ SMA
โมดูล HC-12 มาพร้อมกับเสาอากาศแบบสปริงเป็นมาตรฐาน อย่างไรก็ตาม คุณสามารถเชื่อมต่อเสาอากาศ SMA กับบอร์ดได้
มีหนังสือทั้งเล่มที่เขียนเกี่ยวกับเสาอากาศและวิธีการทำงาน ฉันไม่ต้องการที่จะลงลึกในเรื่องนี้
สิ่งเดียวที่ต้องจำในตอนนี้คือวงจรอิเล็กทรอนิกส์สามารถรบกวนเสาอากาศได้ ดังนั้น HC-12 จึงมีซ็อกเก็ต IPEX RF เพื่อให้คุณสามารถแยกเสาอากาศออกจากบอร์ดได้ ซึ่งจะช่วยในการรับและส่งสัญญาณได้ดีขึ้น
สิ่งที่คุณต้องการคือสายต่อขยาย IPEX เป็น SMA และเสาอากาศ SMA
ฉันได้รับส่วนขยายของฉันที่นี่และเสาอากาศที่นี่ (ตรวจสอบชายและหญิง)
ตรวจสอบให้แน่ใจว่าเมื่อคุณสั่งให้การเชื่อมต่อชายและหญิงตรงกัน
คุณสามารถดันสายไฟที่ขั้วต่อ IPEX และบัดกรีได้ อีกด้านหนึ่งของสายไฟ คุณสามารถขันสกรูเข้ากับเสาอากาศ SMA ได้
ขั้นตอนที่ 6: หมายเหตุสุดท้าย:
ในคำแนะนำนี้ คุณได้เรียนรู้วิธีใช้ HC-12 สำหรับการสื่อสารทางไกลระหว่าง Arduinos คุณได้เรียนรู้วิธีสร้างโปรแกรมส่งข้อความโต้ตอบแบบทันที ปุ่มสลับ ปุ่มชั่วขณะ วิธีใช้ตัวดำเนินการสตริงและฟังก์ชันต่างๆ วิธีเปลี่ยนการตั้งค่า HC-12 และวิธีใช้เสาอากาศแบบอื่น
การสร้างคำสั่งนี้ใช้เวลาประมาณ 100 ชั่วโมงในการวิจัย การแก้ไข การทดสอบ การเขียน และอื่นๆ
หากคำแนะนำนี้มีประโยชน์สำหรับคุณ โปรดคลิกปุ่มรายการโปรดและสมัครรับข้อมูล
เจอกันใหม่ตอนหน้าคับ
คำแนะนำอื่น ๆ ที่คุณอาจชอบ:
Arduino 2 เหรียญ ATMEGA328 เป็นแบบสแตนด์อโลน ง่ายราคาถูกและเล็กมาก คู่มือที่สมบูรณ์
วิธีแก้ไขโคลน Arduino จีนที่ไม่ดี
Facebook:
บริจาคเพื่อช่วยฉันทำงานนี้ต่อไป:
แนะนำ:
เครื่องจุดพลุ Bluetooth ระยะไกล: 6 ขั้นตอน (พร้อมรูปภาพ)
รีโมท Bluetooth Firework Igniter: จุดพลุมากกว่าหนึ่งจุดพร้อมกันจะดีไหม หรือแม้แต่มีระยะห่างที่ปลอดภัยเพื่อไปยังวัตถุระเบิดที่อันตรายกว่า ในโครงการนี้ ฉันจะแสดงวิธีสร้างวงจรที่สามารถทำได้ด้วยความช่วยเหลือของฟังก์ชัน Bluetooth
Node-RED พร้อมเซ็นเซอร์ตรวจจับการสั่นสะเทือนและอุณหภูมิ IoT ระยะไกล: 34 ขั้นตอน
Node-RED พร้อมเซ็นเซอร์ตรวจจับการสั่นสะเทือนและอุณหภูมิระยะไกล IoT: ขอแนะนำเซ็นเซอร์ความชื้นอุณหภูมิแบบไร้สายระยะไกลของ NCD ที่มีระยะสูงสุด 28 ไมล์โดยใช้สถาปัตยกรรมเครือข่ายตาข่ายไร้สาย การรวมเซ็นเซอร์ความชื้นอุณหภูมิ Honeywell HIH9130 ส่งอุณหภูมิที่มีความแม่นยำสูงและ
เซ็นเซอร์ระยะใกล้ IR ระยะไกล: 3 ขั้นตอน
Long Range IR Proximity Sensor: เซ็นเซอร์อินฟราเรดเป็นโมดูลที่ดีที่สุดสำหรับการตรวจจับวัตถุ แต่ปัญหาคือใช้งานได้ในระยะที่สั้นมาก ในบทความนี้ เราจะมาแชร์วิธีที่คุณสามารถเพิ่มช่วงและปัจจัยที่ส่งผลต่อช่วง
Wifi PPM ระยะไกล / MSP: 5 ขั้นตอน
Wifi PPM ระยะไกล / MSP: เมื่อไม่นานมานี้ ฉันโพสต์ตัวควบคุม Wifi PPM ของฉัน มันทำงานได้ดีทีเดียว แค่ช่วงสั้นไปหน่อย ฉันพบวิธีแก้ไขปัญหานี้ ESP8266 รองรับโหมดที่เรียกว่า ESPNOW โหมดนี้มีระดับที่ต่ำกว่ามาก มันไม่หลุดการเชื่อมต่อดังนั้น
เครื่องกรองสัญญาณ Wifi (WokFi) ระยะไกล: 3 ขั้นตอน (พร้อมรูปภาพ)
เครื่องกรองสัญญาณ Wifi (WokFi) ทางไกล: ในคำแนะนำนี้ ฉันสร้าง Thumbdrive WiFi ทั่วไปลงในตัวขยายสัญญาณ wifi ที่หนักหน่วง! 'ตัวกรองการปรุงอาหารเอเชีย (เกี๊ยว) แบบพาราโบลาเป็นตัวเลือกที่สมบูรณ์แบบสำหรับโครงการนี้ ฉันสามารถรับการเข้าถึงได้อีก 20 รายการ จุดในเมืองและเชื่อมต่อกับเครือข่าย