Агуулгын хүснэгт:
- Алхам 1: Техник хангамж ба програм хангамжийн тодорхойлолт
- Алхам 2: XCTU ашиглан утасгүй мэдрэгч ба зигмо хүлээн авагчийг тохируулах
- Алхам 3: Labview хэрэгслийг ашиглан утасгүй температур ба чичиргээний утгыг шинжлэх
- Алхам 4: Captive Portal ашиглан DHCP/статик IP тохиргоог тохируулах
- Алхам 5: Captive Portal ашиглан WiFi тохиргоог хадгалах
- Алхам 6: Мэдрэгчийн уншилтыг UbiDots дээр нийтлэх
- Алхам 7: Өгөгдлийг дүрслэн харуулах
Видео: Урт хугацааны утасгүй температур ба чичиргээ мэдрэгчийг эхлүүлэх нь: 7 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:00
Заримдаа чичиргээ нь олон програмын ноцтой асуудлын шалтгаан болдог. Машины босоо ам, холхивчоос эхлээд хатуу дискний гүйцэтгэл хүртэлх чичиргээ нь машиныг гэмтээх, эрт солих, гүйцэтгэл муутай болгож, нарийвчлалд ихээхэн цохилт өгдөг. Машины доторх чичиргээг хянах, цаг тухайд нь дүн шинжилгээ хийх нь машины эд анги эрт гэмтэх, элэгдэх асуудлыг шийдэх боломжтой.
Энэхүү зааварчилгаанд бид IoT урт хугацааны утасгүй чичиргээ, температур мэдрэгч дээр ажиллах болно. Эдгээр нь өргөн хэрэглэгддэг олон төрлийн үйлдвэрлэлийн зэрэглэлийн мэдрэгч юм.
- Металл боловсруулах
- Цахилгаан үүсгэвэр
- Уул уурхай
- Хоол хүнс, ундаа
Тиймээс энэхүү зааварчилгаанд бид дараахь зүйлийг даван туулах болно.
- XCTU болон Labview UI ашиглан утасгүй мэдрэгчийг тохируулах.
- Чичиргээний утгыг мэдрэгчээс авах.
- Xbee төхөөрөмж болон xbee протоколын ажиллагааг ойлгох.
- Олзлогдсон портал ашиглан WiFi -ийн итгэмжлэл, IP тохиргоог тохируулах
Алхам 1: Техник хангамж ба програм хангамжийн тодорхойлолт
Тоног төхөөрөмжийн тодорхойлолт
- Утасгүй чичиргээ ба температур мэдрэгч
- Зигмо хүлээн авагч
- ESP32 BLE/ WiFi төхөөрөмж
Програм хангамжийн тодорхойлолт
- Arduino IDE
- LabView хэрэгсэл
Алхам 2: XCTU ашиглан утасгүй мэдрэгч ба зигмо хүлээн авагчийг тохируулах
IoT төхөөрөмж бүр төхөөрөмжийг үүлэн дээр байрлуулах, өөр өөр төхөөрөмжүүдийн хооронд утасгүй интерфэйсийг тохируулахын тулд харилцаа холбооны протокол хэрэгтэй.
Энд утасгүй мэдрэгч ба зигмо хүлээн авагч нь бага хүч чадал, урт хугацааны XBee шийдлийг ашигладаг. XBee нь 902 -оос 928 МГц -ийн ISM зурвасын үйл ажиллагааг тодорхойлдог ZigBee протоколыг ашигладаг.
Xbee -ийг XCTU програм хангамж ашиглан тохируулж болно
- Xbee төхөөрөмжийг хайж олох эсвэл зүүн дээд дүрс дээр дарж шинэ Xbee төхөөрөмж нэмнэ үү.
- Төхөөрөмжийг зүүн талын самбар дээр жагсаах болно.
- Тохиргоог харахын тулд төхөөрөмж дээр хоёр товшино уу.
- Одоо баруун дээд буланд байгаа консолын дүрс дээр дарна уу
- Консолын гаралт дээр гарч буй утгыг харж болно
- Энд бид 54 байтын урттай хүрээг авч байна
- Эдгээр байтуудыг цаашид бодит утгыг олж авахын тулд удирдах болно. Бодит температур ба чичиргээний утгыг олж авах журмыг дараагийн алхамуудад дурдсан болно.
Алхам 3: Labview хэрэгслийг ашиглан утасгүй температур ба чичиргээний утгыг шинжлэх
Мэдрэгч нь хоёр горимд ажилладаг
- Тохиргооны горим: Pan ID, саатал, дахин оролдлогын тоо гэх мэтийг тохируулна уу.
- Ажиллуулах горим: Бид төхөөрөмжийг Run горимд ажиллуулж байна. Эдгээр утгыг шинжлэхийн тулд бид Labview хэрэгслийг ашиглаж байна
Энэхүү Labview UI нь утгыг сайхан графикаар харуулдаг. Энэ нь одоогийн болон өмнөх үнэ цэнийг харуулдаг. Та энэ линкээр орж Labview UI татаж авах боломжтой.
Ажиллах горим руу очихын тулд буух хуудасны цэснээс Run дүрс дээр дарна уу.
Алхам 4: Captive Portal ашиглан DHCP/статик IP тохиргоог тохируулах
Бид олзлогдсон портал ашиглан WiFi -ийн итгэмжлэлийг хадгалж, IP тохиргоогоор гүйлгэж байна. Олзлогдсон портал дээрх дэлгэрэнгүй танилцуулгыг авахын тулд та дараахь зааварчилгааг үзэх боломжтой.
Олзлогдсон портал нь Статик ба DHCP тохиргоонуудын хооронд сонголт хийх боломжийг бидэнд олгодог. Статик IP, дэд сүлжээний маск, гарц, утасгүй мэдрэгчийн гарц зэрэг итгэмжлэлийг оруулна уу.
Алхам 5: Captive Portal ашиглан WiFi тохиргоог хадгалах
Wi -Fi сүлжээ болон RSSI -ийг харуулсан жагсаалт бүхий вэб хуудсыг зохион байгуулж байна. WiFi сүлжээ, нууц үгээ сонгоод илгээхийг оруулна уу. Итгэмжлэлийг EEPROM -д, IP тохиргоог SPIFFS -д хадгалах болно. Энэ талаар дэлгэрэнгүйг энэхүү зааварчилгаанаас олж болно.
Алхам 6: Мэдрэгчийн уншилтыг UbiDots дээр нийтлэх
Энд бид температур, чийгшлийн мэдээллийг авахын тулд ESP 32 гарц хүлээн авагчтай утасгүй температур ба чичиргээ мэдрэгчийг ашиглаж байна. Бид өгөгдлийг MQTT протокол ашиглан UbiDots руу илгээж байна. MQTT нь хүсэлт, хариултаас илүү нийтлэх, захиалах механизмыг дагаж мөрддөг. Энэ нь HTTP -ээс хурдан бөгөөд найдвартай. Энэ нь дараах байдлаар ажилладаг.
Утасгүй мэдрэгчийн өгөгдлийг унших
Бид утасгүй температур ба чичиргээ мэдрэгчээс 29 байтын хүрээг авч байна. Энэ хүрээг бодит температур, чичиргээний өгөгдлийг авахын тулд удирддаг
if (Serial2.available ()) {data [0] = Serial2.read (); саатал (k); if (өгөгдөл [0] == 0x7E) {Serial.println ("Got Packet"); while (! Serial2.available ()); for (i = 1; i <55; i ++) {data = Serial2.read (); саатал (1); } if (өгөгдөл [15] == 0x7F) /////// дахин хүлээн авсан өгөгдөл зөв эсэхийг шалгахын тулд {if (өгөгдөл [22] == 0x08) //////// мэдрэгчийн төрлийг шалгаарай. зөв {rms_x = ((uint16_t) (((өгөгдөл [24]) << 16) + ((өгөгдөл [25]) << 8) + (өгөгдөл [26]))/100); rms_y = ((uint16_t) (((өгөгдөл [27]) << 16) + ((өгөгдөл [28]) << 8) + (өгөгдөл [29]))/100); rms_z = ((uint16_t) (((өгөгдөл [30]) << 16) + ((өгөгдөл [31]) << 8) + (өгөгдөл [32]))/100); max_x = ((uint16_t) (((өгөгдөл [33]) << 16) + ((өгөгдөл [34]) << 8) + (өгөгдөл [35]))/100); max_y = ((uint16_t) (((өгөгдөл [36]) << 16) + ((өгөгдөл [37]) << 8) + (өгөгдөл [38]))/100); max_z = ((uint16_t) (((өгөгдөл [39]) << 16) + ((өгөгдөл [40]) << 8) + (өгөгдөл [41]))/100);
min_x = ((uint16_t) (((өгөгдөл [42]) << 16) + ((өгөгдөл [43]) << 8) + (өгөгдөл [44]))/100); min_y = ((uint16_t) (((өгөгдөл [45]) << 16) + ((өгөгдөл [46]) << 8) + (өгөгдөл [47]))/100); min_z = ((uint16_t) (((өгөгдөл [48]) << 16) + ((өгөгдөл [49]) << 8) + (өгөгдөл [50]))/100);
cTemp = (((((өгөгдөл [51]) * 256) + өгөгдөл [52])); хөвөх зай = ((өгөгдөл [18] * 256) + өгөгдөл [19]); хөвөх хүчдэл = 0.00322 * зай; Serial.print ("Мэдрэгчийн дугаар"); Serial.println (өгөгдөл [16]); Serial.print ("Мэдрэгчийн төрөл"); Serial.println (өгөгдөл [22]); Serial.print ("Firmware хувилбар"); Serial.println (өгөгдөл [17]); Serial.print ("Цельсийн температур:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("X тэнхлэг дэх RMS чичиргээ:"); Цуваа.хэвлэх (rms_x); Serial.println ("мг"); Serial.print ("Y тэнхлэг дэх RMS чичиргээ:"); Цуваа.хэвлэх (rms_y); Serial.println ("мг"); Serial.print ("Z тэнхлэг дэх RMS чичиргээ:"); Цуваа.хэвлэх (rms_z); Serial.println ("мг");
Serial.print ("X тэнхлэг дэх хамгийн бага чичиргээ:");
Цуваа.хэвлэх (мин_х); Serial.println ("мг"); Serial.print ("Y тэнхлэг дэх хамгийн бага чичиргээ:"); Цуваа.хэвлэх (мин_y); Serial.println ("мг"); Serial.print ("Z тэнхлэг дэх хамгийн бага чичиргээ:"); Цуваа.хэвлэх (min_z); Serial.println ("мг");
Serial.print ("ADC утга:");
Serial.println (зай); Serial.print ("Зайны хүчдэл:"); Цуваа.хэвлэх (хүчдэл); Serial.println ("\ n"); if (хүчдэл <1) {Serial.println ("Зайг солих цаг"); }}} else {for (i = 0; i <54; i ++) {Serial.print (өгөгдөл ); Serial.print (","); саатал (1); }}}}
UbiDots MQTT API руу холбогдож байна
MQTT процессын толгой файлыг оруулна уу
#"PubSubClient.h" -ийг оруулна уу
үйлчлүүлэгчийн нэр, брокерийн хаяг, жетоны ID гэх мэт MQTT -ийн бусад хувьсагчдыг тодорхойлох (Бид токен ID -г EEPROM -с авч байна)
#define MQTT_CLIENT_NAME "ClientVBShightime123" char mqttBroker = "things.ubidots.com"; ачааны ачаалал [100]; char сэдэв [150]; // токен ID String tokenId хадгалах хувьсагч үүсгэх;
Мэдрэгчийн янз бүрийн өгөгдлийг хадгалах хувьсагч үүсгэх ба сэдвийг хадгалах char хувьсагч үүсгэх
#define VARIABLE_LABEL_TEMPF "tempF" // Хувьсагчийн шошгыг тодорхойлох #тодорхойлох VARIABLE_LABEL_TEMPC "tempC" // Хувьсагчийн шошгыг үнэлэх
char сэдэв1 [100];
char сэдэв2 [100]; char сэдэв3 [100];
өгөгдлийг дурдсан MQTT сэдвээр нийтлэх, ачаалал нь {"tempc": {утга: "tempData"}} шиг харагдах болно
sprintf (topic1, "%s", ""); sprintf (topic1, "%s%s", "/v1.6/devices/", DEVICE_LABEL); sprintf (ачаалал, "%s", "");
// Ачааллын sprintf -ийг цэвэрлэнэ (ачаалал, "{"%s / ":", VARIABLE_LABEL_TEMPC);
// sprintf утгыг нэмнэ (ачаалал, "%s {" утга / ":%s}", ачаалал, str_cTemp);
// sprintf утгыг нэмнэ (ачаалал, "%s}", ачаалал);
// толь бичгийн хаалт Serial.println (ачаалал) хаагддаг;
Serial.println (client.publish (сэдэв1, ачаалал)? "Хэвлэгдсэн": "хэвлэгдээгүй");
// Бусад сэдвээр мөн адил хий
client.publish () нь өгөгдлийг UbiDots дээр нийтэлдэг
Алхам 7: Өгөгдлийг дүрслэн харуулах
- Ubidots руу ороод данс руугаа нэвтэрнэ үү.
- Дээд талд жагсаасан Өгөгдлийн таб дээрээс Хяналтын самбар руу очно уу.
- Шинэ виджет нэмэхийн тулд "+" дүрс дээр дарна уу.
- Жагсаалтаас виджет сонгоод хувьсагч болон төхөөрөмж нэмнэ үү.
- Мэдрэгчийн өгөгдлийг янз бүрийн виджет ашиглан хяналтын самбар дээр дүрслэх боломжтой.
Ерөнхий код
HTML болон ESP32 -ийн Over кодыг энэ GitHub репозитороос олж болно.
- ncd ESP32 таслах самбар.
- ncd Утасгүй температур ба чийгшлийн мэдрэгч.
- pubsubclient
- UbiDots
Зөвлөмж болгож буй:
IoT- Ubidots- ESP32+урт хугацааны утасгүй чичиргээ ба температурын мэдрэгч: 7 алхам
IoT- Ubidots- ESP32+урт хугацааны утасгүй чичиргээ ба температурын мэдрэгч: Чичиргээ бол моторт төхөөрөмж дээрх машин, эд ангиудын нааш цааш хөдөлдөг хөдөлгөөн юм. Аж үйлдвэрийн систем дэх чичиргээ нь хүндрэл бэрхшээлийн шинж тэмдэг, сэдэл байж болох юмуу өдөр тутмын ажилтай холбоотой байж болно. Жишээлбэл, Оскар
Esp32-Ubidots-Утасгүй урт хугацааны температур ба чийгшил: 6 алхам
Esp32-Ubidots-Утасгүй урт хугацааны температур ба чийгшил: Энэхүү гарын авлагад бид Температур ба чийгшлийн мэдрэгч ашиглан янз бүрийн температур, чийгшлийн өгөгдлийг хэмжих болно. Та мөн энэ өгөгдлийг Ubidots руу хэрхэн илгээх талаар сурах болно. Тиймээс та үүнийг хаанаас ч хамаагүй өөр өөр програмд дүн шинжилгээ хийх боломжтой болно
IoT урт хугацааны чичиргээ ба температур мэдрэгч бүхий зангилаа-улаан: 34 алхам
IoT урт долгионы чичиргээ ба температур мэдрэгч бүхий зангилаа-улаан: Утасгүй торон сүлжээний архитектурыг ашиглан 28 миль хүртэлх зайтай NCD-ийн урт хугацааны утасгүй температурын чийгшлийн мэдрэгчийг танилцуулж байна. Honeywell HIH9130 температурын чийгшлийн мэдрэгчийг багтаасан нь өндөр нарийвчлалтай температурыг дамжуулдаг
IoT-ThingSpeak-ESP32-урт хугацааны утасгүй чичиргээ ба температур: 6 алхам
IoT-ThingSpeak-ESP32-Утасгүй утасгүй чичиргээ ба температур: Энэхүү төсөлд бид NCD чичиргээ ба температур мэдрэгч Esp32, ThingSpeak ашиглан чичиргээ ба температурыг хэмжих болно. - моторт төхөөрөмж дэх машин, эд ангиудын тухай. I доторх чичиргээ
Батерейны урт хугацааны туршид температур мэдрэгчийг хэрхэн яаж хакердах вэ: 4 алхам
Батерейны урт хугацааны туршид температур мэдрэгчийг хэрхэн яаж хакердах вэ: Inkbird IBS-TH1 бол температур, чийгшлийг хэдэн цаг, хэдэн өдрийн турш бүртгэх гайхалтай жижиг төхөөрөмж юм. Үүнийг секунд тутамд 10 минут тутамд бүртгэх боломжтой бөгөөд Bluetooth LE -ийн өгөгдлийг андроид эсвэл iOS ухаалаг гар утсанд мэдээлдэг. Апп