ระบบถ่ายทอดข้อมูลฟาร์ม
ในความทรงจำที่รักของเกย์ฮอลแมนผู้หญิงที่ไม่ธรรมดา
ระบบรีเลย์ข้อมูลฟาร์มเป็นวิธีที่ง่ายในการสื่อสารกับอุปกรณ์ IoT ระยะไกลโดยไม่ต้องพึ่งพาโครงสร้างพื้นฐาน WiFi หรือ Lorawan มันสร้างชุดของจุดเชื่อมต่อที่มีกำลังต่ำและราคาไม่แพงและตัวทำซ้ำเพื่อให้ความคุ้มครอง ESP-Now และ LORA สำหรับอุปกรณ์ระยะไกล FDR สามารถใช้ในการขนส่งการอ่านเซ็นเซอร์และข้อความควบคุมในสถานการณ์ที่มันยุ่งยากเกินไปที่จะให้ความคุ้มครอง WiFi/Lorawan เต็มรูปแบบ ในขณะที่ระบบได้รับการออกแบบโดยคำนึงถึงการทำฟาร์ม FDRs อาจเป็นประโยชน์ในห้องเรียนบ้านหรือการวิจัย
อุปกรณ์แบ่งออกเป็นสองประเภท: เกตเวย์ และ โหนด เกตเวย์ประกอบด้วยโครงสร้างพื้นฐานของเครือข่ายย้ายข้อมูลไปตามเส้นทางที่กำกับไว้ล่วงหน้าและให้ความคุ้มครองอุปกรณ์ทั้งหมด โหนดอนุญาตให้ผู้ใช้แลกเปลี่ยนข้อมูลด้วยเกตเวย์ เกตเวย์แต่ละอันจะถูกระบุด้วยที่อยู่ HEX ทางกายภาพ 8 บิต (MAC) ในขณะที่โหนดใช้จำนวนเต็ม 16 บิตเพื่อระบุ datapoints เมื่อพวกเขาเคลื่อนที่ผ่านระบบ
จำเป็นต้องใช้ห้องสมุด:
รวมอยู่ด้วย:
ในการติดตั้ง FDRS:
ดาวน์โหลดหรือโคลนที่เก็บนี้และคัดลอกลงในโฟลเดอร์ arduino 'Libraries' ของคุณ
หลังจากติดตั้งแล้วให้แก้ไขไฟล์ 'SRC/FDRS_Globals.h' ด้วยข้อมูลรับรอง WiFi ของคุณและพารามิเตอร์ส่วนกลางอื่น ๆ ของคุณ
ภาพร่างแรกที่คุณต้องลองคือตัวอย่าง 1_uart_gateway.ino อุปกรณ์นี้จะฟังแพ็คเก็ต ESP-Now ที่เข้ามาจากนั้นกำหนดเส้นทางไปยังพอร์ตอนุกรม (และในทางกลับกัน) ถัดไปแฟลชตัวอย่าง ESPNOW_SENSOR.INO เพื่อดูวิธีการส่งข้อมูลไปยังเกตเวย์
หากต้องการใช้ MQTT: เชื่อมต่อเกตเวย์ที่สองกับครั้งแรกผ่านพิน RX และ TX (ข้าม) และแฟลชด้วยตัวอย่าง 0_MQTT_GATEWAY.INO หากการกำหนดค่า WIFI และ MQTT ของคุณถูกต้องข้อมูลจะถูกเผยแพร่ไปยังหัวข้อ 'FDRS/DATA'
หากต้องการขยายช่วงของคุณลองใช้ 2_espnow_repeater.ino หรือ 3_lora_repeater.ino เพียงเปลี่ยน GTWY_MAC ของเซ็นเซอร์ของคุณเป็นที่อยู่ของ repeater ใหม่ของคุณ
เอกสารโหนด
โหนดสามารถอธิบายได้ว่าเป็น เซ็นเซอร์ตัวควบคุมหรือทั้งสองอย่าง :
เอกสารเกตเวย์
เกตเวย์เป็นอุปกรณ์ไมโครคอนโทรลเลอร์แบบแยกส่วนและกำหนดค่าได้ซึ่งสามารถทำงานได้หลากหลายฟังก์ชั่นที่มีประโยชน์รวมถึงการรวบรวมการกระจายและการถ่ายทอดข้อมูลไร้สาย พวกเขาให้อินเทอร์เฟซที่ยืดหยุ่นและเหนียวแน่นระหว่างโปรโตคอลแบบมีสายและไร้สายต่างๆ ตามกฎทั่วไปเกตเวย์ที่ใช้ MQTT จะมีที่อยู่ 0x00 และเกตเวย์ ESP-Now และ Lora เริ่มต้นที่ 0x01
ในการใช้งานที่พบบ่อยที่สุดเกตเวย์ FDRS จะถูกปรับใช้เป็นจุดเชื่อมต่อสำหรับโหนดผู้ใช้ ESP-Now และ LORA ระยะไกล หากได้รับแพ็คเก็ตจากที่อยู่ ESP-Now หรือ LORA ที่ไม่รู้จักเกตเวย์จะถือว่าเป็นการอ่านเซ็นเซอร์และส่งผ่านไปยังปลายน้ำไปยังส่วนหน้า เกตเวย์จะออกอากาศแพ็กเก็ตที่มา จาก ส่วนหน้าไปยังโหนดคอนโทรลเลอร์ใด ๆ ที่ลงทะเบียน/ฟัง
เกตเวย์ยังสามารถกำหนดค่าเป็นตัวทำซ้ำได้อย่างง่าย ผ่านข้อมูลจากเพื่อนบ้านหนึ่งโดยตรงไปยังเพื่อนบ้านอื่นหรือในทางกลับกัน สิ่งนี้สามารถสร้างหนอนข้อมูลที่จะมีแพ็กเก็ตอัพสตรีมหรือปลายน้ำ Infinitum คุณสามารถกำหนดค่าเกตเวย์ของคุณเพื่อแชร์ข้อมูลที่มุ่งหน้าต้นน้ำกับเพื่อนที่เชื่อมต่อดังนั้นจึงให้ข้อมูลใด ๆ ที่ถูกส่งจากส่วนหน้า
หากคุณกำลังมองหาโซลูชันที่เรียบง่ายดึงดูดและปิดล้อมสำหรับเกตเวย์ MQTT/UART ของคุณฉันขอแนะนำทั้งสิ่ง ที่ Espgateway และ Thingpulse Espgateway Ethernet :
Espgateway มีโมดูล ESP32 Wrover-IB สองโมดูลบนบอร์ดเดียวที่มีเสาอากาศภายนอก พวกเขาเชื่อมโยงเข้าด้วยกันด้วยหมุด 14 และ 15 เพื่อให้สามารถสื่อสารแบบอนุกรมระหว่างพวกเขาได้ นี่คือการตั้งค่าที่สมบูรณ์แบบสำหรับลิงก์ระหว่าง ESP-Now และ WiFi
Espgateway Ethernet มีหนึ่งโมดูล ESP32 Wrover-IB พร้อมเสาอากาศพร้อมกับตัวเชื่อมต่อ RJ45 Ethernet นี่คือฮาร์ดแวร์ที่ใช้ในตัวอย่างเกตเวย์อีเธอร์เน็ต
ส่วนหน้าเป็นที่ที่ข้อมูลทั้งหมดถูกป้อนหรือใช้โดยแอปพลิเคชันอื่น นี่อาจเป็นอะไรก็ได้จากไมโครคอนโทรลเลอร์ที่สื่อสารผ่าน UART และการแสดงข้อมูลบนหน้าจอไปยังแพลตฟอร์มเซิร์ฟเวอร์/ฐานข้อมูลการบันทึกข้อมูลผ่าน MQTT
วิธีที่แนะนำของฉันในการเข้าถึงข้อมูลของคุณคือการใช้คอมพิวเตอร์เซิร์ฟเวอร์หรือราสเบอร์รี่ PI ที่เชื่อมโยงกับอุปกรณ์เกตเวย์ FDRS ผ่าน MQTT หรือ UART Node-Red เป็นแพลตฟอร์มโปรดของฉันสำหรับการเข้าถึง/จัดการข้อมูลในส่วนหน้าและ InfluxDB+Grafana เป็นทีมในฝันสำหรับการจัดเก็บและการสร้างภาพ
เป้าหมายที่จะเกิดขึ้นสำหรับ FDRs ได้แก่ :
... มากสำหรับการตรวจสอบโครงการของฉัน! ฉันขอขอบคุณทุกคนที่เอื้อมมือออกไปด้วยการช่วยเหลือและความช่วยเหลือโดยเฉพาะอย่างยิ่งผู้ที่มีจุดเด่นในส่วน "ผู้สนับสนุน" หากคุณมีคำถามความคิดเห็นปัญหาหรือข้อเสนอแนะโปรดอย่าลังเลที่จะติดต่อฉันที่ [email protected] หรือเปิดการสนทนาที่นี่ใน GitHub
ขอบคุณมากไปที่ Andreas Spiess ข้อมูลเชิงลึกและความคิดของเขานำโครงการนี้จากหินแช่แข็งไปจนถึง "เพชร" ที่คุณเห็นในวันนี้
ขอบคุณ Lilygo ที่ส่งโมดูล Lora32 ใหม่ให้ฉันเมื่อฉันได้รับความเสียหาย โครงการนี้ส่วนใหญ่ถูกสร้างขึ้นโดยใช้อุปกรณ์ TTGO และฉันขอแนะนำผลิตภัณฑ์ของพวกเขา!
เป็นเกียรติอย่างยิ่งที่ได้ให้ความสำคัญกับ Hackaday และ Hackster.io!
ฉันเริ่มโครงการนี้ด้วยคำแนะนำจาก แบบฝึกหัดแบบสุ่ม หากคุณเป็นผู้เริ่มต้นและพยายามเรียนรู้เพิ่มเติมเกี่ยวกับไมโครคอนโทรลเลอร์ฉันขอแนะนำให้เริ่มต้นที่นั่น

