-
เซ็นเซอร์ Cooper v3.2 - Medialab_ LPWAN: เซ็นเซอร์ LORA อัลตราโซนิกเพื่อวัดระดับน้ำของ San Miguel
ขับเคลื่อนโดย
เพื่อเป็นเกียรติแก่มาร์ตินคูเปอร์, Princesa de Asturias Award 2009 และ Arlene Harris และวิสัยทัศน์ของพวกเขาเกี่ยวกับ IOP อินเทอร์เน็ตของผู้คนใน Medialab_ lpwan เราต้องการพัฒนาอุปกรณ์ IoT ที่สามารถปรับปรุงคุณภาพของโรงเรียนสอนวิชาวิศวกรรมโพลีเทคนิคของGijón เป็นผลให้ความคิดของเซ็นเซอร์คูเปอร์เข้ามาเป็นอุปกรณ์ LORA ซึ่งสามารถซิงโครไนซ์กับเครือข่ายสิ่งต่าง ๆ ที่อาจถูกทิ้งไว้ในระดับน้ำของลำธารของซานมิเกลโดยไม่จำเป็นต้องมีความต้องการ

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



ใน repo นี้คุณจะพบไฟล์และคำแนะนำการสอนทั้งหมดที่จำเป็นเพื่อทำความเข้าใจอย่างเต็มที่และแม้กระทั่งใช้อิสระในการสร้างสรรค์เพื่อปรับปรุงโครงการนี้ โฟลเดอร์และไฟล์ได้รับชื่ออธิบายตนเองเพื่อให้การนำทางมากขึ้น Intuituve
คุณสมบัติหลัก↩
พัฒนาขึ้นโดยใช้ Lilygo Lora32 OLED v2.1_1.6 (บอร์ดอิง ESP32 พร้อมความสามารถในตัว LORA ในตัวที่รองรับการชาร์จพลังงานแสงอาทิตย์และการจัดการแบตเตอรี่)

การเปลี่ยนแปลงที่เกิดขึ้นสำหรับ JSN-SR04T (เซ็นเซอร์ระยะทางอัลตราโซนิก)

คำเตือน
เซ็นเซอร์นี้มีความไวต่อการรบกวนทางกายภาพอย่างมาก อย่าลืมจัดเรียงอย่างสมบูรณ์แบบตั้งฉากกับพื้นผิวที่ลำแสงอัลตราโซนิกกระเด้งและคิดว่ามีการมองเห็นโดยตรงกับมัน
การใช้อัตราการส่งข้อมูลแบบไดนามิก: ส่งช่วงเวลาเปลี่ยนแปลงค่าแบบไดนามิกระหว่าง 20 และ 40 นาทีขึ้นอยู่กับการเบี่ยงเบนทั่วไปจากระยะทาง 5 ล่าสุดที่ส่งไปยังเครือข่ายสิ่งต่าง ๆ (โดย OTAA; ไฟล์ payload_formatter.json เป็นคำแนะนำเกี่ยวกับวิธีการถอดรหัสไบต์ที่ส่ง)

PCB ที่กำหนดเอง

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



ตัวอย่างแอสเซมบลี:

คำเตือน
แนะนำให้ใช้เส้นใยการพิมพ์สี Petg 3D ที่ชัดเจนเพื่อความอยู่รอดของรังสีของดวงอาทิตย์และการเสียรูปพลาสติก โอริงยังเป็นตัวเลือกที่ดีในการแก้ไขและทำให้เซ็นเซอร์มีเสถียรภาพภายในระฆัง จำเป็นต้องใช้สกรู M3 สี่ตัวเพื่อแก้ไขแอสเซมบลี
รายการต่อไปนี้ทำให้งานทั้งหมดที่เกี่ยวข้องในกระบวนการวิจัยของโครงการนี้และหากพวกเขาเสร็จสมบูรณ์อย่างเคร่งครัด:
- Some pins are conflictive due to poor manufacturer documentation, so testing is still being
- carried out ความเข้าใจอย่างเต็มที่เกี่ยวกับโหมดการทำงานของเซ็นเซอร์และโหมดทางเลือก
การใช้รหัสเซ็นเซอร์
การใช้งานรหัส LORA
การใช้รหัสพลังงานต่ำ
ส่วนประกอบฮาร์ดแวร์พลังงานต่ำ
- A transistor is being tried to be implemented so the sensor can be powered-on from the
- board's 5V pin and powered-off when going to deep slee, but it is getting tricky 
แผนผังไฟฟ้ากับทรานซิสเตอร์
- As low power hardware has not been fully implemented, PCB has to wait การสร้างแบบจำลอง 3 มิติ
แอพการสร้างภาพข้อมูลข้อมูล
รายการส่วนประกอบ↩
| ส่วนประกอบ | แบบอย่าง |
|---|---|
| โมดูล dev | Lilygo Lora32 OLED v2.1_1.6 |
| เซ็นเซอร์ระยะไกล | JSN-SR04T |
| n-channel mosfet | IRF540N |
| ตัวต้านทาน | 2k2 |
| แบตเตอรี่ | พ.ศ. 2403 |
| แผงโซลาร์เซลล์ | SYP-S0606 |
| PCB | กำหนดเอง (รวมไฟล์) |
| ที่อยู่อาศัย | กำหนดเอง (รวมไฟล์) |
รายการเชื่อมต่อ↩
| JSN-SR04T | ทรานซิสเตอร์ | ตัวต้านทาน | 18650 Shield | SYP-S0606 | ลิลี่โก |
|---|---|---|---|---|---|
trigger | - | - | - | - | 13 |
echo | - | - | - | - | 12 |
5v | S | - | - | - | - |
GND | - | indifferent | - | - | GND |
| - | G | indifferent | - | - | 15 |
| - | D | - | - | - | 5V |
| - | - | - | USB-In | USB-Out | - |
| - | - | - | USB-Out | - | USB-In |
ร่างมันดูวิธีต่อไปนี้:

คำเตือน
โมเดลบอร์ดที่ใช้ในร่างด้านบนคือ TTGO T3 V1.3 แต่หมายเลขพินสอดคล้องกับที่อยู่ใน V2.1_1.6
ผังงาน (ง่าย!) ↩
กราฟ TD;
A [เปิด] -> | 1 | B (ตื่นขึ้นมาถ้านอนหลับสนิท)
B -> | 2 | C (รับการวัดระยะทางและแบตเตอรี่)
C -> | 3 | D (ส่งไบต์ไปยัง TTN)
D -> | 4 | E (อัตราการส่งข้อมูลเวลา)
E -> | 5 | F (ไปนอนหลับสนิท)
f -> | 6 | ข
ในส่วนนี้คำอธิบายสั้น ๆ เกี่ยวกับวิธีการกระจายรหัสระหว่างไฟล์ใน medialablpwan/lorawaterlevelmonitoring/main/ ซึ่งรหัสพร้อมใช้งานและพร้อมที่จะแฟลชหรือแก้ไข
main.ino /*
Definition of global functions
Variables to be stored in the RTC memory
'setup()' and 'loop()' functions
*/sensor.ino /*
Functions and variables needed to make a sensor work
*/ddc.ino /*
Functions and variables for the implementation of the dynamic data transfer rate
*/sleep.ino /*
Functions to activate ESP32's deep sleep mode
*/ttn.ino /*
Functions from LMIC library
*/configuration.h /*
Sensor macros and boolean toggles
*/credentials.h /*
OTAA keys for TTN synchronization
*/lmic_project_config.h /*
LoRa frequency band and radio chip selector
*/การวิเคราะห์เชิงลึกมากขึ้นในรหัสเองเป็นความคิดเห็นอธิบายว่าแต่ละฟังก์ชั่นทำอะไร
เคล็ดลับ
ไฟล์ที่สำคัญที่สุดในการแก้ไขคือ sensor.ino ซึ่งสามารถใช้เซ็นเซอร์ใด ๆ และ configuration.h
คำเตือน
อาจจำเป็นต้องใช้รหัสเพิ่มเติมหากใช้ I2C I/O ฟังก์ชั่นที่จะทำให้พวกเขาทำงานอยู่ในโครงการดั้งเดิมใน TTGO-PAXCOUNTER-LoRa32-V2.1-TTN/main/main.ino
Lilygo Board Library (วางลิงค์บนแท็บ Preferences และเลือก TTGO LoRa32 OLED เป็น Board ใน Arduino IDE): https://github.com/xinyuan-lilygo/lilygo-lora-series/blob/master/boards/t3_s3_v1_x.json
LMIC (คัดลอกเนื้อหาของไฟล์โครงการ main/lmic_project_config.h ไปยังไฟล์ไลบรารี arduino-lmic/project_config/lmic_project_config.h และไม่เขียนความถี่ที่เหมาะสมสำหรับภูมิภาคของคุณ
Quickmedianlib (เพื่อให้ได้ค่าระยะทางที่เป็นของแข็งมากขึ้น): https://github.com/luisllamasbinaburo/arduino-quickmedian
ESP Sleep (เพื่อลดการใช้แบตเตอรี่): https://github.com/pycom/pycom-esp-idf/blob/master/components/esp32/include/esp_sleep.h
บันทึก
ห้องสมุดอื่น ๆ เช่น SPI Library สามารถดาวน์โหลดได้ง่ายจาก Arduino IDE
การทดลองการปรับใช้↩
หน่วยแรกได้รับการปรับใช้ใกล้กับ Polytechnic School of Engineering of Gijón:



http://4f566df1fed52c6e7fd5f661f64ae3eb.balena-devices.com:8080/d/vjhqnczgz/sensores-jsn-sr04t-arroyo-de-san-migueluuel?from=now--24H&Orgid
ใบอนุญาต↩
โครงการนี้ได้รับใบอนุญาตภายใต้ใบอนุญาต GPL-3.0 มีรหัสจาก rwanrooy/ttgo-paxcounter-lora32-v2.1-ttn
ติดต่อ↩
สำคัญ
เราจะตอบข้อสงสัยและอ่านคำแนะนำ:
ข้อมูลเพิ่มเติมเกี่ยวกับกิจกรรมของเรา:
ผู้เขียน: Daniel Rodríguez Moya, ÓscarGijón, Ramón Rubio และ Medialab_ Lpwan Workgroup
คำแนะนำเกี่ยวกับวิธีการปรับใช้แผง Grafana นั้นได้รับใน repo medialablpwan/documentacion