Spisu treści:

AirCitizen - Monitorowanie jakości powietrza: 11 kroków (ze zdjęciami)
AirCitizen - Monitorowanie jakości powietrza: 11 kroków (ze zdjęciami)

Wideo: AirCitizen - Monitorowanie jakości powietrza: 11 kroków (ze zdjęciami)

Wideo: AirCitizen - Monitorowanie jakości powietrza: 11 kroków (ze zdjęciami)
Wideo: #6 Zrób to sam: Nettigo Air Monitor (KIT 0.3.2) - montaż, wskazówki, recenzja. 2024, Listopad
Anonim
AirCitizen - Monitorowanie jakości powietrza
AirCitizen - Monitorowanie jakości powietrza

Cześć wszystkim

Dziś nauczymy Cię jak odtworzyć nasz projekt: AirCitizen przez Zespół AirCitizenPolytech!

--

Pochodzący z „OpenAir / Jakie jest Twoje powietrze?” Projekty, projekt AirCitizen ma na celu umożliwienie obywatelom aktywnej oceny jakości ich najbliższego otoczenia, a w szczególności powietrza, którym oddychają, oferując im:

Budować

Realizujemy w "Fablabs" (cyfrowe laboratoria produkcyjne) przenośne stacje pomiarów środowiskowych integrujące różne tanie czujniki (np. temperatury, wilgotności, ciśnienia, gazów NOx, ozonu czy cząstek PM10 i PM2,5).

Mierzyć

Wykonywanie pomiarów in situ w celu podkreślenia czasoprzestrzennej zmienności zmiennych środowiskowych: z jednej strony podczas kampanii wędrownych przy wsparciu geografów-klimatologów, az drugiej strony w różnych miejscach prezentujących różnorodne konteksty środowiskowe.

Udział

Przyczynić się do poszerzenia wiedzy poprzez udostępnianie tych pomiarów w środowiskowej bazie danych, a tym samym umożliwić mapowanie zanieczyszczenia powietrza online.

--

Koncepcja polega na stworzeniu autonomicznej stacji, która może zbierać dane o środowisku i przesyłać je za pomocą sieci SigFox do pulpitu nawigacyjnego.

Z jednej strony pokażemy, jak zaprojektować sprzęt, az drugiej strony, jak wykonać część oprogramowania.

Krok 1: Sprzęt

Sprzęt komputerowy
Sprzęt komputerowy
Sprzęt komputerowy
Sprzęt komputerowy

Oto komponenty, które postanowiliśmy wykorzystać do zaprojektowania stacji:

- STM32 NUCLEO-F303K8 -> Więcej informacji

- HPMA115S0-XXX (Czujnik cząstek PM2.5 i PM10) -> Więcej informacji

- SHT11 lub SHT10 lub STH15 lub DHT11 (temperatura i wilgotność względna) -> Więcej informacji

- MICS2714 (czujnik NO2, czujnik dwutlenku azotu) -> Więcej informacji

- Panel słoneczny x2 (2W) -> Więcej informacji

- Akumulator LiPo 3, 7 V 1050 mAh -> Więcej informacji

- Regulator LiPo Rider Pro (106990008) -> Więcej informacji

- BreakOut SigFox BRKWS01 + 1 licencja -> Więcej informacji

- 7 rezystorów (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)

- 1 kondensator (100nF)

- 1 tranzystor (2N222).

! ! ! Musisz usunąć SB16 i SB18 na płytce jąder stm32, aby zapobiec zakłóceniom między HPMA i SHT11 !

Zasadniczo tak musisz połączyć komponenty:

  1. Spawaj równolegle panele słoneczne.
  2. Podłącz je do LiPo Rider Pro i podłącz również baterię do LiPo Rider Pro.
  3. Podobnie jak na powyższym zdjęciu, podłącz wszystkie elementy do STM32. Podłącz tylko jeden czujnik temperatury i wilgotności, a nie 2 ! Nie zapomnij o rezystorach, kondensatorze i tranzystorze.
  4. Na koniec podłącz STM32 do LiPo Rider Pro za pomocą kabla USB.

Następny krok to alternatywa dla tego przewodowego.

Krok 2: Sprzęt - PCB

Sprzęt - PCB
Sprzęt - PCB

Zdecydowaliśmy się użyć Autodesk Eagle do zaprojektowania płytki drukowanej (PCB).

Możesz wybrać podłączenie DHT lub SHT, zdecydowaliśmy się zaprojektować dwa odciski palców dla tych 2 czujników, aby w razie potrzeby zmienić czujnik.

W załączniku możesz pobrać pliki koncepcyjne orła, dzięki czemu możesz je łatwo wykonać samodzielnie.

Do zasilania urządzenia używamy pinu 5V stm32. W tej konfiguracji zasilany jest tylko rdzeń stm32.

W ten sposób możemy użyć trybu głębokiego uśpienia MCU, zapewniającego niski prąd uśpienia. W stanie czuwania cały prąd uśpienia spada poniżej XXµA.

Krok 3: Protokół LPWAN: komunikacja Sigfox

Protokół LPWAN: komunikacja Sigfox
Protokół LPWAN: komunikacja Sigfox

Sigfox to protokół LPWAN stworzony przez francuską firmę telekomunikacyjną SIGFOX

Umożliwia zdalnym urządzeniom łączenie się za pomocą technologii ultra-wąskiego pasma (UNB). Większość z nich wymaga jedynie niewielkiej przepustowości do przesyłania niewielkich ilości danych. Sieci są w stanie obsłużyć tylko około 12 bajtów na wiadomość i jednocześnie nie więcej niż 140 wiadomości na urządzenie dziennie.

W przypadku wielu zastosowań IOT tradycyjne systemy telefonii komórkowej są zbyt skomplikowane, aby umożliwić działanie przy bardzo niskim poborze mocy i zbyt kosztowne, aby były możliwe do wykonania dla wielu małych, tanich węzłów… Sieć i technologia SIGFOX są ukierunkowane na tanie maszyny do maszyn obszary zastosowań, w których wymagane jest pokrycie szerokiego obszaru.

W przypadku AirCitizen format wykrytych danych jest prosty, a ilość danych poprawna do wykorzystania Sigfox do tłumaczenia danych wykrytych z czujników na naszą platformę IOT - ThingSpeak.

W kolejnych krokach przedstawimy korzystanie z Sigfoxa.

Krok 4: Konfiguracja oprogramowania

Konfiguracja oprogramowania
Konfiguracja oprogramowania
Konfiguracja oprogramowania
Konfiguracja oprogramowania

Po realizacji naszego układu przejdźmy do rozwoju naszego mikrokontrolera STM32 F303K8.

Dla większej prostoty możesz wybrać programowanie w Arduino.

Krok 1: Jeśli nie zainstalowałeś jeszcze Arduino IDE, pobierz i zainstaluj go z tego linku. Upewnij się, że wybrałeś właściwy system operacyjny.

Link: Pobierz Arduino

Krok 2: Po zainstalowaniu Arduino IDE otwórz i pobierz wymagane pakiety dla płyty STM32. Można to zrobić wybierając Plik -> Preferencje.

Krok 3: Kliknięcie Preferencji otworzy pokazane poniżej okno dialogowe. W dodatkowym polu tekstowym adresu URL aplikacji Boards Manager wklej poniższy link:

github.com/stm32duino/BoardManagerFiles/ra…

i naciśnij OK.

Krok 4: Teraz przejdź do Narzędzia -> Tablice -> Zarządca tablic. Spowoduje to otwarcie okna dialogowego Menedżera tablic, wyszukanie „STM32 Cores” i zainstalowanie wyświetlonego pakietu (pakiet STMicrolectronics).

Krok 5: Po zakończeniu pakietu instalacja jest zakończona. Przejdź do Narzędzia i przewiń w dół, aby znaleźć „serie Nucleo-32”. Następnie upewnij się, że wariant to „Nucleo F303K8” i zmień metodę przesyłania na „STLink”.

Krok 6: Teraz podłącz płytkę do komputera i sprawdź, do którego portu COM jest podłączona płytka za pomocą menedżera urządzeń. Następnie wybierz ten sam numer portu w Narzędzia->Port.

Jesteś teraz gotowy do programowania STM32 F303K8 za pomocą Arduino!

Krok 5: Zaprogramuj STM32

Po zakończeniu konfiguracji musisz zaprogramować swój mikrokontroler do zbierania i wysyłania danych.

Krok 1: Sprawdź wpływ I/O i zmierz znacznik czasu w części kodu „Definiuj”.

Krok 2: Prześlij powyższy kod do stm32, otwórz monitor szeregowy i zresetuj urządzenie. Na ekranie powinna pojawić się komenda "AT", jeśli nie, sprawdź deklarację I/O.

Możesz mieć wyobrażenie o prawdziwości swoich danych, zapoznając się z załączonymi francuskimi normami prawnymi.

Przejdźmy do konfiguracji deski rozdzielczej.

Krok 6: ThingSpeak - 1

ThingSpeak - 1
ThingSpeak - 1
ThingSpeak - 1
ThingSpeak - 1

Przed skonfigurowaniem sposobu przekierowania danych z naszej stacji na platformę ThingSpeak musisz założyć konto ThingSpeak.

Zarejestruj się: Strona internetowa ThingSpeak

Krok 1: Teraz kliknij „Nowy kanał”. To otworzy formularz. Wprowadź nazwę i opis (w razie potrzeby).

Utwórz 5 pól:

  • Pole 1: pm2, 5
  • Pole 2: pm10
  • Pole 3: temperatura
  • Pole 4: wilgotność
  • Pole 5: NO2

Te tytuły nie będą tytułami naszych list przebojów.

Jeśli potrzebujesz przykładu, zobacz zdjęcie powyżej.

Nie musisz wypełniać więcej pól, ale może być interesujące, jeśli wpiszesz lokalizację.

Przewiń w dół i „Zapisz kanał”.

Krok 2: Kanał stacji AirCitizen.

Teraz możesz zobaczyć stronę z 5 wykresami. Klikając symbol ołówka, możesz zmienić właściwości wykresu.

Rezultatem jest drugi obrazek powyżej.

Na tym etapie te wykresy są prywatne. Będziesz mógł je upublicznić po otrzymaniu danych.

Krok 3: Po skonfigurowaniu twoich wykresów. Przejdź do zakładki „Klucze API”. Spójrz na część żądania API, a dokładniej na pierwsze pole „Zaktualizuj kanał kanału”. Zwróć uwagę na KLUCZ API.

Będziesz miał coś takiego:

POBIERZ

Możesz teraz przejść do następnego rozdziału.

Krok 7: Komunikacja między modułem Sigfox a platformą ThingSpeak

Komunikacja między modułem Sigfox a platformą ThingSpeak
Komunikacja między modułem Sigfox a platformą ThingSpeak
Komunikacja między modułem Sigfox a platformą ThingSpeak
Komunikacja między modułem Sigfox a platformą ThingSpeak

Dla Twojej informacji, pamiętaj, że każda karta modułu Sigfox ma unikalny numer zapisany na karcie oraz numer PAC.

Aby otrzymać dane na ThingSpeak, powinieneś je przekierować.

Dane trafiają ze stacji do backendu Sigfox i zostaną przekierowane na serwer ThingSpeak.

Zobacz pierwszy obrazek powyżej dla wyjaśnień.

Krok 1: Nie wyjaśnimy, jak zarejestrować się na Sigfoxie z powodu wielu samouczków w Internecie.

Przejdź na backend Sigfox.

Kliknij „Typ urządzenia”, a następnie kliknij linię swojego zestawu i wybierz „Edytuj”.

Teraz przejdź do sekcji „Oddzwonienia” i kliknij „Nowy”, „Niestandardowe oddzwonienie”.

Krok 2:

Powinieneś być na stronie konfiguracji:

Typ: DANE i UPLINK

Kanał: URL

Wyślij duplikat: brak

Niestandardowa konfiguracja ładunku: ustaw źródło danych i zdecyduj o formie danych. Powinieneś napisać tak:

Nazwa Zmiennej::Typ:LiczbaBitów

W tym przypadku mamy 5 wartości o nazwach pm25, pm10, temperatura, wilgotność i NO2.

pm25::int:16 pm10::int:16 temperatura::int:8 wilgotność::uint:8 NO2::uint:8

Wzorzec adresu URL: to jest składnia. Użyj wcześniej znalezionego klucza API i wstaw go po „api_key ="

api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXX&field1={customData#pm25}&field2={customData#pm10}&field3={customData#temperature}&field4={customData#wilgotność}&field5={customData#NO2}

Użyj metody HTTP: GET

Wyślij SNI: WŁ

Nagłówki: Brak

Kliknij teraz na „Ok”.

Twoje wywołanie zwrotne do ThingSpeak API zostało skonfigurowane! (Reprezentacja na drugim obrazku powyżej).

Krok 8: ThingSpeak - 2

ThingSpeak - 2
ThingSpeak - 2

Teraz możesz być bardziej wybredny w modyfikowaniu minimalnych i maksymalnych wartości osi.

W razie potrzeby kliknij logo ołówka w prawym górnym rogu wykresu.

Typowe wartości:

PM 2, 5 i PM 10 = ug/m^3

Temperatura = °C

Wilgotność = %

Dwutlenek azotu = ppm

Powinieneś mieć coś takiego jak dwa powyższe zdjęcia.

Możesz także dodać inne widżety, takie jak „Wyświetlacz liczbowy” lub „Wskaźnik”.

Aby ustawić swój kanał jako publiczny, przejdź na kartę „Udostępnianie” i wybierz „Udostępnij widok kanału wszystkim”.

Krok 9: Bonus - ThingTweet i Reaguj

Bonus - ThingTweet i React
Bonus - ThingTweet i React
Bonus - ThingTweet i React
Bonus - ThingTweet i React
Bonus - ThingTweet i React
Bonus - ThingTweet i React

Opcjonalnie: tweetuj, jeśli warunek jest spełniony !

Krok 1: Utwórz konto na Twitterze lub użyj swojego osobistego konta na Twitterze.

Zarejestruj się - Twitter

Krok 2: W Thingspeak przejdź do „Aplikacje”, a następnie kliknij „ThingTweet”.

Połącz swoje konto na Twitterze, klikając „Połącz konto na Twitterze”.

Krok 3: Teraz wróć do „Aplikacje”, a następnie kliknij „Reaguj”.

Utwórz nowy React, klikając „New React”.

Przez przykład:

Nazwa reakcji: Temperatura powyżej 15°C

Typ warunku: Numeryczny

Częstotliwość testu: w przypadku wprowadzania danych

Warunek, jeśli kanał:

Pole: 3 (temperatura)

Znak: jest większy niż

Wartość: 15

Akcja: RzeczTweet

Następnie tweetnij: Och! Temperatura jest wyższa niż 15 °C

za pomocą konta na Twitterze:

Opcje: Uruchom akcję za każdym razem, gdy warunek zostanie spełniony

Następnie kliknij „Zapisz reakcję”.

Twoja będzie teraz tweetować, jeśli warunek jest spełniony, a wiele innych warunków można skonfigurować, na przykład w zależności od poziomu PM10.

Krok 10: Teraz Twoja kolej

Wreszcie masz teraz wszystkie elementy do odtworzenia własnej stacji AirCitizen!

Wideo: Możesz obejrzeć film, w którym prezentujemy naszą pracę.

Nasza platforma ThingSpeak: stacja AirCitizenPolytech

--

Dziękuję za uwagę !

Zespół AirCitizen Polytech

Krok 11: Odniesienia i bibliografia

https://www.sigfox.com/en

Zalecana: