สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
เกี่ยวกับโครงการนี้:
ทดสอบความสามารถของเครือข่าย NB IoT และการส่งข้อมูลดิบ UDP โดยใช้ xyz-mIoT โดย itbrainpower.net shield ที่ติดตั้งโมเด็ม Quectel BC95G
เวลาที่ต้องการ: 10-15 นาที
ความยาก: ระดับกลาง
Remarque: จำเป็นต้องมีทักษะการบัดกรี
เกี่ยวกับ NB IoT: NarrowBand-Internet of Things (NB-IoT) เป็นมาตรฐานเทคโนโลยีวิทยุเครือข่ายบริเวณกว้างพลังงานต่ำ (LPWAN) ที่พัฒนาขึ้นเพื่อเปิดใช้งานอุปกรณ์และบริการที่หลากหลายเพื่อเชื่อมต่อโดยใช้คลื่นความถี่โทรคมนาคมแบบเซลลูลาร์ เทคโนโลยี NB IoT ให้การครอบคลุมที่ดีขึ้นทั้งในร่มและกลางแจ้ง รองรับอุปกรณ์ปริมาณงานต่ำจำนวนมาก ความไวในการหน่วงต่ำ ต้นทุนอุปกรณ์ต่ำมาก การใช้พลังงานของอุปกรณ์ต่ำ และสถาปัตยกรรมเครือข่ายที่ปรับให้เหมาะสม
ขั้นตอนที่ 1: ส่วนประกอบและอุปกรณ์เสริมที่จำเป็น
เห็นได้ชัดว่า xyz-mIoT shield ที่ติดตั้งโมเด็ม Quectel BC95G - PN: XYZMIOT209#BC95G-UFL-xxxxxxx - เป็นส่วนประกอบหลักที่จำเป็น
xyz-mIoT โดย itbrainpower.net shield เป็นบอร์ด IoT ตัวแรกและกะทัดรัดที่สุดที่รวมความเก่งกาจของไมโครคอนโทรลเลอร์ ARM0 (Microchip/Atmel ATSAMD21G ในการออกแบบที่เข้ากันได้กับ Arduino Zero) การใช้งานที่สะดวกสบายของชุดเซ็นเซอร์แบบฝังพร้อมการเชื่อมต่อ ให้บริการโดยโมเด็ม LTE CAT M1 หรือ NB-IoT ระยะไกลและพลังงานต่ำหรือโมเด็ม 3G / GSM รุ่นเก่า
ตัวป้องกัน xyz-mIoT อาจมีเซ็นเซอร์ในตัวมากถึง 5 ตัว เช่น: THS (เซ็นเซอร์อุณหภูมิและความชื้น) - HDC2010, tVOC & eCO2 (เซ็นเซอร์คุณภาพอากาศ - สารประกอบอินทรีย์ระเหยง่ายทั้งหมด CO2 - เทียบเท่า CO2) - CCS811, HALL (เซ็นเซอร์แม่เหล็ก) - DRV5032 หรือ IR (เซ็นเซอร์อินฟราเรด) KP-2012P3C, IR สำรอง (เซ็นเซอร์อินฟราเรด) - KP-2012P3C, TILT (เซ็นเซอร์ตรวจจับการสั่นสะเทือน) หรือ REED (เซ็นเซอร์แม่เหล็ก) - SW200D เซ็นเซอร์ที่กล่าวถึงข้างต้นจะติดตั้งอยู่บนบอร์ด xyz-mIoT และสามารถสั่งซื้อได้โดยใช้หมายเลขชิ้นส่วนที่แตกต่างกัน
เพื่อดำเนินการทดสอบการส่งข้อมูล NB IoT จำเป็นต้องมีรายการเพิ่มเติมต่อไปนี้:
- 1 x ตัวเก็บประจุ 1000-2200uF/6.3V ESR. ต่ำ
- เสาอากาศ GSM หนึ่งตัวพร้อมขั้วต่อ uFL (หรือหางเปีย uFL ถึง SMA F หนึ่งตัว และเสาอากาศ GSM หนึ่งตัวที่มี SMA)
- หนึ่งซิมการ์ด (รูปแบบนาโนซิม) ที่รองรับ NB-IoT (ในการทดสอบของเราเราใช้ซิมการ์ด Vodafone Romania)
xyz-mIoT โดย itbrainpower.net shield สามารถสั่งซื้อออนไลน์ได้ที่นี่ หรือจากตัวแทนจำหน่ายใกล้บ้านคุณ
ขั้นตอนที่ 2: การเตรียมฮาร์ดแวร์ - การบัดกรีและการเดินสาย
NS. บัดกรี
- เปิดใช้งาน 5V จาก USB เป็นแหล่งจ่ายไฟหลักสำหรับแผงป้องกัน xyz-mIoT ดังแสดงในรูปแรก [บัดกรีผ่านแผ่น SJP6 - เชื่อมต่อแผ่นทั้งสอง] ทางเลือกอื่น: ประสานแถวตัวเชื่อมต่อทั้งสอง วางบอร์ดลงในเขียงหั่นขนมเดียว และเชื่อมต่อระหว่าง Vusb และ Vraw โดยใช้สายเขียงหั่นขนมตัวผู้-ตัวผู้หนึ่งเส้น
- ประสานตัวเก็บประจุ ESR ต่ำ 1,000-2200 uF /6.3V กับ "แผ่นตัวเก็บประจุซุปเปอร์" โปรดจำไว้ว่าขั้วตัวเก็บประจุ [เชื่อมต่อ + ขั้วกับแผ่น Vpad+ และ - ขั้วกับแผ่น GND]!
ตรวจสอบการบัดกรีของคุณเป็นสองเท่า !!!
NS. สายไฟทั้งหมดเข้าด้วยกัน
ใส่นาโนซิมในช่องของเขา [ซิมต้องลบการตรวจสอบ PIN] เชื่อมต่อเสาอากาศ จากนั้นเชื่อมต่อสาย USB เข้ากับพอร์ต USB xyz-mIoT และคอมพิวเตอร์ของคุณ ดูรายละเอียดในภาพขวา
ตัวป้องกัน xyz-mIoT จะใช้พลังงานจาก USB
ขั้นตอนที่ 3: ดาวน์โหลดและติดตั้งคลาส Arduino การตั้งค่าซอฟต์แวร์
ซอฟต์แวร์ทั้งหมดที่อธิบายไว้ด้านล่างมีให้สำหรับผู้ใช้ที่ลงทะเบียนแล้ว ที่นี่
NS. ดาวน์โหลดและติดตั้ง " xyz-mIoT shields Arduino class " ไม่บังคับ (ไม่จำเป็นสำหรับการทดสอบนี้) คุณสามารถดาวน์โหลดการติดตั้ง " xyz-mIoT shields SENSORS support Arduino class " คำสั่งการติดตั้งสามารถพบได้ในหน้าดาวน์โหลด
NS. ดาวน์โหลดและติดตั้งคลาส " NB IOT [UDP mode] สำหรับ xyz-mIoT shield " เช่นเดียวกัน คำสั่งการติดตั้งสามารถพบได้ในหน้าดาวน์โหลด
ค. ติดตั้งและเรียกใช้ตัวฟัง "udp_echo.py" บนเซิร์ฟเวอร์ของคุณ จดบันทึกเพื่อใช้ในขั้นตอนต่อไป ได้แก่ listener IP address และ UDP PORT รหัสเดียวกันสามารถพบได้ในโฟลเดอร์ "_UDP_listener_example" ภายในคลาส " NB IOT [UDP mode] รองรับคลาส xyz-mIoT shield"
NS. เปิดใน Arduino ตัวอย่าง " xyz_mIoT_NBIoT_Class_example_UDP_echo " ซึ่งสามารถพบได้ในเมนู Arduino "ไฟล์/ตัวอย่าง/itbpNBIoTClass" รหัสนี้สามารถดูตัวอย่างได้ที่นี่
อี มาทำการตั้งค่าบางอย่างในไฟล์ h ภายใน "itbpNBIoTClass":
- ใน " itbpGPRSIPdefinition.h " ให้อัปเดตค่า APN โดยใช้ค่า APN ของผู้ให้บริการ NB IoT ของคุณ (ในการทดสอบคือ: "eggsn-test-3.connex.ro" สำหรับ Vodafone Romania)
- ใน " itbpGPRSIPdefinition.h " ให้อัปเดต NETWORKID ด้วยรหัสเครือข่ายที่เป็นตัวเลขสำหรับผู้ให้บริการ NB IoT ของคุณ ("22601" สำหรับ Vodafone Romania) - ใน " itbpGPRSIPdefinition.h " ให้อัปเดต LTE_BAND ด้วยรหัสแถบตัวเลขที่ใช้สำหรับบริการ NB IoT (20 - แบนด์ LTE B20 สำหรับ Vodafone โรมาเนีย), - ใน " itbpGPRSIPdefinition.h " ให้อัปเดต SERVER_ADDRESS และ SERVER_PORT ด้วยค่า UDP echo listener service (จากขั้นตอน c.)
- ใน " itbpGSMdefinition.h " ไปที่บรรทัด 60&61 แล้วเลือก _itbpModem_ xyzmIoT, - ใน " itbpGSMdefinition.h " ไปที่บรรทัด 64&65 และเลือก _Qmodule_ BC95G
ขั้นตอนที่ 4: Arduino - รวบรวม อัปโหลด และเรียกใช้ NB IoT Echo Test
เปิดโครงการ xyz_mIoT_NBIoT_Class_example_UDP_echo.ino ใน Arduino จากเมนู Arduino "ไฟล์/ตัวอย่าง/itbpNBIoTClass" สำคัญ: ใช้ arduino.cc v 1.8.5 หรือใหม่กว่า!
NS. เลือกบอร์ด Arduino - xyz-mIoT shield และพอร์ตการเขียนโปรแกรมตามที่แสดงในภาพ คำแนะนำ: ในการอัปโหลดโค้ด คุณต้องกดสองครั้ง (เร็ว) ที่ปุ่ม RESET ของ xyz-mIoT shield [บอร์ดจะเปลี่ยนเป็นโหมดการเขียนโปรแกรม]
NS. รวบรวมและอัปโหลดรหัส
เพื่อให้เห็นภาพผลลัพธ์ของการดีบัก ให้ใช้ Arduino Serial Monitor หรือเทอร์มินัลอื่นโดยเลือกพอร์ตดีบักด้วยการตั้งค่าต่อไปนี้: 57600bps, 8N, 1
ในรหัส เวลาการแลกเปลี่ยนข้อมูล NB IoT ถูกตั้งค่าเป็น 10 นาที ข้อมูลที่ส่ง/รับ (เพย์โหลดการส่ง) และการส่งสัญญาณสถานะ NB-IoT ต่างๆ [ENTER / LEAVE ACTIVE, IDLE และ PSM โหมด; นอกจากนี้ DATAGRAM RECEIVED event] จะแสดงในอินเทอร์เฟซการแก้ไขข้อบกพร่อง
เพลิดเพลิน!
สอนให้โดยไม่มีการรับประกันใด ๆ !!! ใช้ความเสี่ยงของคุณเอง!!!
เผยแพร่ครั้งแรกโดยฉันในโปรเจ็กต์ itbrainpower.net และวิธีการใช้งาน