Агуулгын хүснэгт:

Projeto IoT - Dea Fumaça системийн детектор: 5 алхам
Projeto IoT - Dea Fumaça системийн детектор: 5 алхам

Видео: Projeto IoT - Dea Fumaça системийн детектор: 5 алхам

Видео: Projeto IoT - Dea Fumaça системийн детектор: 5 алхам
Видео: Взлом квантового кода: физик раскрывает реальность 2024, Долдугаар сарын
Anonim
Projeto IoT - Dea Fumaça системийн детектор
Projeto IoT - Dea Fumaça системийн детектор

Танилцуулга

FoMa системийн детектор нь IoT командын үндсэн дээр суурилсан бөгөөд энэ нь Android -ийн дохиоллын хамгаалалтын дохио юм. Микроконтроллерыг ашиглахын тулд та WiFi сүлжээг ашиглах боломжтой бөгөөд энэ нь мэдрэгчийг ашиглах боломжтой болно. Telegram -ээр дамжуулан танд мэдэгдэл илгээх замаар системд нэвтрэх боломжтой болно.

Десенволведор

  • Бруно Гонсалвес Перейра
  • Жоао Паулу Тадеу Боргес Пайва
  • Juliana Guimarães Soares Buére
  • Виллан Александр Кондор Асенжо

Алхам 1: Materiais Utilizados

Materiais Utilizados
Materiais Utilizados
Materiais Utilizados
Materiais Utilizados
Materiais Utilizados
Materiais Utilizados
Materiais Utilizados
Materiais Utilizados

Төсөл боловсруулахад шаардлагатай материалууд:

  • Módulo WiFi ESP8266 NodeMcu ESP-12: ESP8266 чипийг хослуулан ашиглах (WiFi холболт), USB интерфэйсийн интерфейс нь 3.3V. IDE do Arduino програмыг cabo micro-usb-ээр дамжуулан ашиглах боломжтой.
  • Sensor de Gás MQ-135 para gazs Tóxicos: O Sensor de Gás MQ-135 é um módulo capaz de detectar vários tipos deos di gaz tóxicos como amônia, dióxido de carbono, benzeno, óxido nítrico, e também fumaça ou.
  • Led vermelho
  • Лед Верде
  • 2 эсэргүүцэл 200Ω
  • Protoboard e jumpers програм хангамжийн шалгалт

Алхам 2: ThingSpeak -ийг тохируулна уу

ThingSpeak хийх тохиргоог хийнэ үү
ThingSpeak хийх тохиргоог хийнэ үү
ThingSpeak хийх тохиргоог хийнэ үү
ThingSpeak хийх тохиргоог хийнэ үү
ThingSpeak хийх тохиргоог хийнэ үү
ThingSpeak хийх тохиргоог хийнэ үү

O ThingSpeak нь платформын хувьд IoT -ийг ашиглах боломжтой бөгөөд энэ нь HTTP болон MQTT протоколыг ашиглан интернет ашиглах боломжтой болно. ThingSpeak -ийг зөвшөөрч, анализ хийх боломжтой.

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах уу? Хичээлүүд нь стандарт, академик, оюутан, гэр гэсэн ангиллаар хийгддэг.

ThingSpeak -ийн сувгийг тохируулах

ThingSpeak байхгүй бол суваг хэрэгтэй болно. Тодорхойлолт хийх боломжтой болно. Cada суваг нь 8 кампусыг багтаасан болно. Төгсгөлийн суваг, ThingSpeak нь анализ хийхээс өөр аргагүй болно.

Төсөл, IoTProject-SmokeDetector e 3 кампусын хамгийн том суваг:

  • Талбар 1: Concentração de gás
  • Талбар 2: Сэрүүлэг
  • Талбар 3: Comando desligar

"Хувийн үзэл бодол" гэсэн ойлголтыг нүдээр харах боломжтой. Neste projeto, foram criados:

  • CO2 -ийн хурдацтай хөгжүүлэлтийн нэг хэсэг.
  • 1 signalador de led para indicação de alarme
  • Тэмцээний хурдыг хэмнэхийн тулд 1 програмыг ашиглана уу

ThingSpeak байхгүй байна

ThingSpeak суваг нь сувгийн тодорхойлолт (сувгийн ID) -ийг тодорхойлоход чухал үүрэг гүйцэтгэдэг. "API Түлхүүрүүд" -ийг ашиглахын тулд (API түлхүүр бичих) болон API түлхүүрийг унших) суваг байхгүй болно. Дахин хэлэхэд, API хүсэлтийн дагуу (HTTP хүсэлтийг хүлээн авах) ашиглана уу.

Сувгийн сувгийг тодорхойлохдоо микроконтроллер хийх шаардлагагүй болно. Андройд програмыг ашиглахын тулд API -г ашиглахыг хүсэж байна.

Алхам 3: Aplicativo - MIT програм зохион бүтээгч

Aplicativo - MIT програм зохион бүтээгч
Aplicativo - MIT програм зохион бүтээгч
Aplicativo - MIT програм зохион бүтээгч
Aplicativo - MIT програм зохион бүтээгч
Aplicativo - MIT програм зохион бүтээгч
Aplicativo - MIT програм зохион бүтээгч
Aplicativo - MIT програм зохион бүтээгч
Aplicativo - MIT програм зохион бүтээгч

MIT App Inventor -ийг ашиглахын тулд та системээ хянах боломжтой болно. O MIT Апп зохион бүтээгч нь Массачусетсийн Технологийн Институт (MIT) дээр үндэслэн интернэт холболт хийх боломжтой болсон. Андройд болон iOS -д зориулсан програмыг ашиглах боломжтой болно.

IITProject_SmokeDetector програмын зохион бүтээгч, MIT App Inventor-ийг ашиглах боломжгүй юм.

Загвар зохион бүтээгч нь телевизийн програмууд, бүрэлдэхүүн хэсгүүдийн шаардлагатай бүрэлдэхүүн хэсгүүд (боть, шошго, дүрс гэх мэт) -ийг хажуугийн цэсгүй (палитр) ашиглах боломжтой. Цөмийн үндсэн бүрэлдэхүүн хэсгүүдийг тохируулах, тохируулах, тохируулах, тохируулах, цэсийн хажуугийн цэс (Properties) дээр ямар ч тохиргоог хийх боломжгүй болно.

Нэмэлт блокуудыг ашиглах нь програм хангамжийн програм юм. Хяналтын хөтөлбөрийг боловсруулж, хөнгөвчлөх боломжтой болно.

Тодорхойлолт хийх

Duas variáveis locais são inicializadas: alarmData e sensorData.

Нэгдүгээр цаг (тодорхой Clock1), эсвэл "API түлхүүрүүд" гэсэн утсан дээр ThingSpeak хаягийг ашигла. Мэдээлэл дамжуулагчийн хувьд CO2 -ийн агууламжийг мэдрэгчтэй харилцах боломжтой. Туршилт хийх үед:

  1. Энэ нь түгшүүр төрүүлэхгүй байх (alarmData = 1), эсвэл "Атенса! Энэ бол маш сайн!" e o botão de desligar alarme (Button1) é habilitado.
  2. Аюулгүй байдлын дохио (alarmData = 0), эсвэл "Хэрэглэгчид ямар ч асуудалгүй болно!" e o botão de desligar alarme (Button1) é desabilitado.

Дараах товчлуурыг дарахад (Button1) дарна уу, програмыг хааж болохгүй Field3: comando desligar criado no ThingSpeak; Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах Орчуулах "ThingSpeak através" at URL хаягийг ашиглана уу.

Алхам 4: Montagem Do Protótipo

Montagem Do Protótipo
Montagem Do Protótipo

Охидын хувьд ямар ч протокол байхгүй.

Мэдрэгч MQ135

  • Pino AO: conectado ao pino AD0 to módulo ESP8266
  • Pino GND: conectado ao GND to módulo ESP8266
  • Pino Vcc: ESP8266 -ийн VIN эсвэл conectado ao pino

LED гэрэл

  • Эсэргүүцлийн эсэргүүцэл 200Ω үгүй pino D5 do módulo ESP8266
  • Conectar o anodo do LED (positivo - maior perna) эсвэл эсэргүүцлийн эсэргүүцэл
  • Контекар эсвэл LED диод (сөрөг - menor perna) ямар ч GND хийхгүй ESP8266

LED вермель

  • Контекарс нь 200Ω no pino D7 to módulo ESP8266 юм.
  • Цахилгаан дамжуулагч LED (позитив - maior perna), эсэргүүцэл эсэргүүцэгч
  • LED гэрэл (сөрөг - menor perna) ямар ч GND хийдэггүй ESP8266

Алхам 5: Microcontrolador хийх програм

ESP8266 програмыг ашиглан микроконтроллер ашиглан IDE эсвэл Arduino програмыг ашиглах боломжтой (татаж авах боломжтой).

Охидын текстийг бүрэн гүйцэд ашиглах боломжгүй, ямар ч эцсийн заавар байхгүй (Iot_project.ino). O código tem duas funções principais: setup e loop.

Fluxo тохиргоо хийх:

  • Портын олон ангит киног хий
  • Inicializa os гаралт (pinos dos leds)
  • WiFi холболтыг дахин ашиглах
  • ThingSpeak програмыг албан ёсны болгох

Fluxo do гогцоо:

  • Мэдрэгч MQ135
  • CO2 хэт ягаан туяаны хязгаарлалт (хамгийн тохиромжтой: CO2 <= 700 ppm)

    • Liga o alarme (LED vermelho), desliga o LED de status (verde) e -envia notificação pelo Telegram se valor estiver acima do limite.
    • Хяналтын дохио (LED вермель) e liga o LED de status (verde) se o valor estiver abaixo do limite.
  • ThingSpeak -ийг "comando desligar alarme" дээр дарна уу

    Командо = 1, дохиолол (LED вермель), лига эсвэл LED статус (хувилбар)

  • Envia dados нь мэдрэгч хийж, ThingSpeak a cada 20 -ийн сегментийг түгшээж болно.

Abayxo será descrita a programação de cada um dos dos prinsipais módulos com эсвэл hörmət codigo para teste.

WiFi -г дахин ашиглах боломжтой

Нэмэлт удирдах зөвлөлийн менежерийн URL хаягийг https://arduino.esp8266.com/stable/package_esp8266com_index.json хаягаар оруулаад IDE-г Arduino-г ашиглана уу.

Хэрэгслүүд-> Самбарууд-> Самбаруудын менежерүүд ESP8266-ийг сонгоно уу.

Тодорхойлохын тулд 2 төрлийн сонголтыг хийх шаардлагатай:

  • WIFI_SSID: Wi -Fi сүлжээг дахин тохируулах боломжтой
  • WIFI_PASSWORD: та дагах боломжтой

Wifi -г ашиглахын тулд WiFi, хуулбарыг хуулбарлах, хуулбарлах, ESP8266 -ийг байршуулах боломжгүй.

#include /************************ ABAIXO -Г ТОДОРХОЙЛОН ӨӨРЧЛӨХ ******************* *******/ WIFI_SSID "YOUR WIFI SSID" -ээ тодорхойлно уу // Nome da rede wifi #WIFI_PASSWORD "YOUR WIFI PASSWORD" -ыг тодорхойлно уу // Senha da rede wifi WiFiClient клиент; // ConnectToWiFi (хүчин төгөлдөр бус) wifi -ийн хүчингүй байдал {// Tenta conectar ao wifi Serial.println ("Conectando à rede WiFi"); WiFi.begin (WIFI_SSID, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {саатал (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi conectado com sucesso!"); Serial.println ("IP хаяг:"); Serial.println (WiFi.localIP ()); } // Setup da placa void setup () {Serial.begin (115200); саатал (50); // ConnectToWiFi (эсвэл wifi холболт); }

Lendo dados нь MQ135 мэдрэгчтэй

MQ135 мэдрэгч, MQ135.biblioteca, MQ135.h, adidion-a la IDE do Arduino através цэс Skecth-> Номын сан оруулах->. ZIP номын сан нэмэх.

Depois, хуулбарлах эсвэл хуулбарлах нь miodulo ESP8266-ийг cabo micro-usb-т оруулах боломжгүй. CO2 -ийн агууламжийг тодорхойлохдоо цуврал дэлгэц байхгүй болно.

#"MQ135.h" оруулах #SMOKE_SENSOR A0 -ийг тодорхойлох // IO do sensor de fumaça float sensorValue; // Setup da placa void setup () {Serial.begin (115200); саатал (50); } // Loop үндсэн void loop () {// Faz leitura do sensor MQ135 gasSensor = MQ135 (SMOKE_SENSOR); sensorValue = gasSensor.getPPM (); Serial.print ("Concentracao de CO2 (ppm):"); Serial.println (sensorValue); }

ThingSpeak хийдэг Escrevendo e lendo dados

Primeiro, Biblioteca do ThingSpeak no Arduino IDE. Хэрэгсэл-> Самбар-> Удирдах зөвлөлийн менежер ThingSpeak-ийг сонгоно уу.

ThingSpeak-ийг үнэгүй татаж авахын тулд та 20-р сарын эхээр, эсвэл ямар ч цаг хугацаа өнгөрөхөд ямар ч үнэ төлбөргүй ашиглах боломжтой болно.

Тайлбарыг буцааж англи (Америкийн Нэгдсэн Улс) руу орчуулах уу?

  • myChannelNumber: ThingSpeak -ийн суваг байхгүй
  • myWriteAPIKey: ThingSpeak сувгийг ажиллуулна уу
  • myReadAPIKey: ThingSpeak сувгийг ашиглах

ThingSpeak програмыг хуулбарлах, хуулбарлах, хуулбарлах, хуулбарлах, шинэчлэх гэх мэт хувилбаруудыг өөр хэлбэрээр оруулна уу ESP8266.

#include #include /************************ ABAIXO -Г ТОДОРХОЙЛЖ ӨӨРЧЛӨХ ***************** *********/ WIFI_SSID "YOUR WIFI SSID" -ээ тодорхойлох // Nome da rede wifi #WIFI_PASSWORD "YOUR WIFI PASSOLORD" // Senha da rede wifi #THINSPEAK_WRITE_INTERVAL 20000 -ийг тодорхойлох // Интервалууд болон интернэт орчуулгууд dados ao ThingSpeak /************************ VARIÁVEIS ABAIXO AS ALTERE ****************** ********/ гарын үсэг зураагүй урт myChannelNumber = 0000000; // ThingSpeak const char * myWriteAPIKey = "бичих api түлхүүр"; // Chave de escrita do channel do ThingSpeak const char * myReadAPIKey = "таны уншсан api түлхүүр"; // Chave de leitura do channel do ThingSpeak unsigned long lastTime; гарын үсэг зураагүй урт currentTime; WiFiClient үйлчлүүлэгч; // Холбоо барих wifi void ConnectToWiFi (хүчин төгөлдөр бус) {// api.telegram.org configTime (0, 0, "pool.ntp.org") -ийн үндсэн гэрчилгээг тохируулах; clientSecure.setTrustAnchors (& сертификат); // Tenta conectar ao wifi Serial.println ("Conectando à rede WiFi"); WiFi.begin (WIFI_SSID, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {саатал (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi conectado com sucesso!"); Serial.println (WiFi.localIP ()); } // Setup da placa void setup () {Serial.begin (115200); саатал (50); // ConnectToWiFi (эсвэл wifi холболт); // Inicializa ThingSpeak lastTime = 0; ThingSpeak.begin (үйлчлүүлэгч); } // Loop үндсэн void loop () {currentTime = millis (); // seta o tempo atual // ThingSpeak int value = ThingSpeak.readIntField (myChannelNumber, 1, myReadAPIKey); Serial.println ("Dado no campo 1 do ThingSpeak:"); Serial.println (утга); // Баталгаажсан байх үед ThingSpeak if ((currentTime - lastTime> THINGSPEAK_WRITE_INTERVAL)) {ThingSpeak.setField (1, 100); ThingSpeak.writeFields (myChannelNumber, myWriteAPIKey); lastTime = currentTime; } саатал (20000); }

Enviando мэдэгдэл pelegram дээр

Primeiro, adicione a Biblioteca do Telegram no Arduino IDE. Хэрэгсэл-> Самбар-> Удирдах зөвлөлийн менежер UniversalTelegramBot-ийг сонгоно уу.

Тэмдэглэл, мэдээлэл нь Ботын нэр юм. Primeiro, botbotfather e clique nele худалдаж аваарай. Нэр томъёо нь юу ч биш гэдгийг анхаарна уу. Дижитал /newbot e siga as instruções para criar seu bot. Нэмэлт нэр, нэр томъёог ашиглана уу. Энэ нь criado com sucesso -д зориулагдсан бөгөөд таны хүлээн авалт хийх ёстой. ESP8266 -ийн хамгийн чухал мэдэгдлүүдийг тохируулахын тулд тэдгээрийг ашиглах боломжтой болно.

Тэмдэглэл, телеграм, IDBot гэх мэт. Энэ нь хөрвүүлэлт хийх боломжтой бөгөөд энэ нь бусад тоонууд юм. Хариултыг хүлээн зөвшөөрөх нь ID -г ашиглах боломжтой болно. Хадгалах эсвэл таниулах, хамгийн сайн тохиргоог хийх.

Телеграм (BOT_TOKEN e CHAT_ID) болон eSP8266 -ийг хуулбарлахын тулд WIFI болон бусад комуниксацуудыг өөр хэлбэрээр ашиглах боломжтой болно.

#оруулах #оруулах #оруулах /********************* ALTERAR DEFINIÇÕES ABAIXO ******************* *******/ WIFI_SSID "YOUR WIFI SSID" -ээ тодорхойлох // Nome da rede wifi #WIFI_PASSWORD "YOUR WIFI PASSWORD" -ыг тодорхойлох // Senha da rede wifi #define BOT_TOKEN "CHANGEYOURTOKEN" // Token do bot do telegram # CHAT_ID "CHANGEYOURCHATID" -г тодорхойлох // ID to chat do telegram X509List cert (TELEGRAM_CERTIFICATE_ROOT); WiFiClientSecure clientSecure; UniversalTelegramBot bot (BOT_TOKEN, clientSecure); // Envia notificação ao эсвэл Telegram хүчингүй SendTelegramNotification (String message) {bot.sendMessage (CHAT_ID, зурвас, ""); Serial.println (зурвас); } // FunTão que faz a conexão wifi void ConnectToWiFi (void) {// api.telegram.org configTime (0, 0, "pool.ntp.org") -ийн үндсэн гэрчилгээг тохируулах; clientSecure.setTrustAnchors (& сертификат); // Tenta conectar ao wifi Serial.println ("Conectando à rede WiFi"); WiFi.begin (WIFI_SSID, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {саатал (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi conectado com sucesso!"); Serial.println ("IP хаяг:"); Serial.println (WiFi.localIP ()); } // Setup da placa void setup () {Serial.begin (115200); саатал (50); // ConnectToWiFi (эсвэл wifi холболт); // Testa notificação pelo telegram SendTelegramNotification ("Testando envio de notificação."); }

Зөвлөмж болгож буй: