Obsah:
- Krok 1: Príprava Raspberry Pi
- Krok 2: Nastavenie NoCAN
- Krok 3: Spojenie hardvéru UFire dohromady
- Krok 4: Hardvér NoCAN
- Krok 5: Naprogramujte uzol CANZERO
- Krok 6: Ako to všetko súvisí?
- Krok 7: Nastavenie Chronografu alebo Grafany
- Krok 8: Niektoré vylepšenia
Video: Ukladajte a zaznamenávajte údaje EC/pH/ORP pomocou zásobníka TICK a platformy NoCAN: 8 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
To sa bude zaoberať tým, ako používať senzory NoCAN Platform by Omzlo a uFire na meranie EC, pH a ORP. Ako hovorí ich webová stránka, niekedy je jednoduchšie spustiť nejaký kábel do svojich uzlov senzora. CAN má výhodu komunikácie a napájania v jednom kábli, takže so signálom a batériou nie je problém. Firmvér uzlov môže byť jednoduchší; nemusíte sa trápiť napríklad s režimom spánku alebo nastavením WiFi. Platforma NoCAN má tiež niekoľko skvelých funkcií, ako je programovanie uzlov cez zbernicu CAN.
Platforma NoCAN používa Raspberry Pi, takže bude k dispozícii všetko, čo dokáže. Využijeme to inštaláciou zásobníka TICK. To nám umožní používať InfluxDB na ukladanie meraní. Je to databáza založená na timeseries účelovo vytvorená na tento druh vecí. Dodáva sa tiež s programom Chronograf, ktorý vytvára dashboardy a zobrazuje všetky tieto údaje, ktoré budeme používať. T a K znamená Telegraf a Kapacitor. Telegraf sa nachádza medzi údajmi, ktoré odosielate, a databázou Influx. Kapacitor je motor udalostí. Keď sa niečo stane, môže vám to odoslať upozornenie rôznymi spôsobmi. A práve preto, že sa mi to páči viac ako Chronograf, nainštalujem Grafanu pre palubné dosky.
Krok 1: Príprava Raspberry Pi
Prejdite na stránku sťahovania Rasbian, stiahnite si obrázok pomocou počítača a odporúčaného softvéru a potom ho presuňte na kartu SD.
Potom, čo je obrázok na vašej SD karte, mali by ste mať dva zväzky, root a boot. Otvorte terminál pri štarte a zadajte:
dotkni sa ssh
To umožní SSH.
Potom napíšte:
nano wpa_supplicant.conf
Akonáhle ho upravíte pre svoje vlastné nastavenia kraja a WiFi, skopírujte/prilepte nasledujúce položky:
krajina = USA
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 sieť = {ssid = "NETWORK-NAME" psk = "SIEŤ-HESLO"}
Odtiaľ pochádzajú kódy krajín.
Povoliť SPI:
echo "dtparam = spi = on" >> config.txt
Vložte kartu SD do svojho Raspberry Pi, chvíľu počkajte a zadajte:
Mali by ste byť vo výzve na prihlásenie. Heslo je malinové.
Krok 2: Nastavenie NoCAN
Omzlo poskytuje podrobného sprievodcu inštaláciou. Ale rozhodol som sa, že si to uľahčím a naučím sa niečo o Bash skriptovaní. Naštartujte teda svoj Raspberry Pi a zapojte do neho SSH alebo sériový terminál.
Dozvedel som sa, že do vytvorenia dobrého Bash skriptu môže ísť toľko času, koľko sa ho pokúšate skutočne nainštalovať. Existuje 1000 spôsobov, ako niečo urobiť, niektoré jednoduchšie uchopiť alebo vykonať ako ostatné. Nakoniec som toho vlastne veľa neurobil. Ak vykonáte:
wget https://ufire.co/nocan.sh && chmod +x nocan.sh && sudo./nocan.sh
V termináli vášho Raspberry Pi stiahne a spustí skript.
Potom to:
- Stiahne démona Omzlo NoCAN a nainštaluje ho do/usr/bin pre ľahký prístup, vytvorí priečinok ~/.nocand a napíše veľmi jednoduchý konfiguračný súbor s heslom nastaveným na 'heslo'. Pravdepodobne by ste to mali zmeniť na niečo iné, je to na ~/.nocand/config.
- Stiahne klienta Omzlo NoCAN a skopíruje ho do súboru /usr /bin a vytvorí základný konfiguračný súbor s rovnakým heslom. Je na ~/.nocanc.conf.
- Nastaví službu Systemd, ktorá ponechá démona NoCAN v prevádzke.
- Zapíše súbor pythonu do ~/.nocand, nocan_ufire.py. Bude hovoriť s firmvérom uzla NoCAN a vykonať merania EC, pH a ORP, analyzovať výsledky a pridať ich do databázy InfluxDB.
- Pridá repo služby InfluxData na vhodné miesto a nainštaluje zásobník TICK. A keďže ju mám radšej ako Chronograf, inštaluje aj Grafanu.
- Vytvorí prázdnu databázu Influx
Môžete naraziť na niektoré Gotchas:
- Vaše miestne nastavenie nemusí byť nastavené, preto spustite príkaz dpkg-reconfigure locales
- Inštalácia Grafany môže prestať fungovať, takže to skúste znova.
-
Prílevový démon sa nemusí spustiť včas, aby skript pridal databázu, zadajte
curl -i -XPOST https:// localhost: 8086/query --data -urlencode "q = VYTVORIŤ DATABÁZU nocan"
- Tento skript funguje iba ako predvolený používateľ pí. Ak ste pod iným používateľom, budete musieť podľa potreby zmeniť pi na svoje používateľské meno.
Posledná vec je pridať úlohu cron. Nenašiel som veľmi dobrý spôsob, ako skriptovať tento, takže zadajte príkaz „crontab -e“na manuálnu úpravu a pridajte „ * * * * * python /home/pi/.nocand/nocan_ufire.py“.
Keď je všetko hotové, môžete si overiť, či je všetko nastavené a funguje tak, ako by malo. Grafana žije na adrese https:// [Adresa Raspberry Pi]: 3000/. Mali by ste vidieť prihlasovaciu stránku, predvolený je admin/admin.
Chronograf nájdete na https:// [adresa Raspberry Pi]: 8888/
Krok 3: Spojenie hardvéru UFire dohromady
Pred zostavením hardvéru je potrebné vyriešiť jednu vec. Dosku uFire ISE je možné použiť na meranie pH aj ORP. Hardvér je rovnaký, ale softvér je iný. Pretože hardvér je rovnaký, znamená to, že adresa I2C je v predvolenom nastavení rovnaká. A senzory komunikujú cez I2C, takže jeden bude potrebné zmeniť. Pre tento projekt vyberieme jednu z dosiek ISE a použijeme ju na meranie ORP. Podľa týchto krokov zmeňte adresu na 0x3e.
Teraz, keď je adresa zmenená, je zostavenie hardvéru jednoduché. Toto nastavenie je založené na predchádzajúcej práci, ktorá v zásade robí to isté, ale na prenos údajov používa skôr BLE ako CAN. Môžete si o tom prečítať v Arduino Project Hub. Všetky senzorové zariadenia používajú systém Qwiic connect, takže stačí spojiť všetko dohromady v reťazci. Existuje iba jeden spôsob zapojenia káblov Qwiic do Qwiic. Na pripojenie jedného zo senzorov k uzlu CANZERO budete potrebovať jeden vodič Qwiic - Male. Vodiče sú konzistentné a farebne označené. Pripojte čiernu k uzlu GND, červenú ku kolíku +3,3 V alebo +5 V, modrú ku kolíku SDA, ktorý je D11, a žltý k kolíku SCL na D12.
Pri tomto projekte bude očakávať, že informácie o teplote budú pochádzať zo senzora EC, takže na dosku EC pripevnite teplotný senzor. Všetky dosky však majú schopnosť merať teplotu. Nezabudnite pripojiť sondy EC, pH a ORP k príslušným senzorom. Ľahko sa pripevňujú pomocou konektorov BNC. Ak máte kryt, vloženie tohto všetkého dovnútra by bolo dobré, najmä vzhľadom na to, že ide o vodu.
Krok 4: Hardvér NoCAN
Zostavenie hardvéru NoCAN je tiež jednoduché. Pripojte PiMaster k Raspberry Pi a nájdite preň vhodné napájanie.
Pri výrobe káblov pre váš projekt postupujte podľa pokynov spoločnosti Omzlo.
Nasadte svoj uzol a nájdite miesto pre PiMaster.
Krok 5: Naprogramujte uzol CANZERO
Jednou z veľkých vecí na tomto nastavení je, že k uzlom máte prístup aj po ich nasadení. Sú naprogramované cez vodič CAN, takže ich môžete preprogramovať kedykoľvek chcete.
Na to budete potrebovať nainštalované IDE Arduino, PiMaster vo vašej sieti a váš uzol pripojený k zbernici CAN. Budete tiež potrebovať program s názvom nocanc nainštalovaný vo vašom vývojovom počítači. Všetko je popísané na stránke inštalácie Omzlo.
Navštívte GitHub a skopírujte kód do nového náčrtu Arduino IDE. Zmeňte dosku na Omzlo CANZERO a vyberte uzol v ponuke „Port“. Potom stačí kliknúť na tlačidlo nahrať ako obvykle. Ak všetko išlo podľa plánu, mali by ste mať naprogramovaný uzol, ktorý urobí niekoľko meraní.
Krok 6: Ako to všetko súvisí?
Teraz, keď je všetok softvér a hardvér nastavený, chvíľu sa porozprávajme o tom, ako to všetko bude v skutočnosti fungovať. A ukážte svoje schopnosti v GIMP…
V súhrne:
- Uzol CANZERO je pripojený k PiMaster a niekde je nasadený
- Každú minútu sa na zariadení PiMaster spustí úloha Cron. Spustí skript python.
- Skript python pošle uzlu príkaz, ktorý mu povie, aby vykonal meranie alebo inú akciu.
- Uzol vykoná príkaz a vráti výsledok vo formáte JSON.
- Skript python prijme tento výsledok, analyzuje ho a aktualizuje s ním súbor InfluxDB.
Posledným krokom je sledovať zhromažďovanie údajov v pekne vyzerajúcich grafoch.
Krok 7: Nastavenie Chronografu alebo Grafany
Posledná vec, ktorú musíte urobiť, je nastaviť niektoré grafy v programe Chronograf alebo Grafana.
Budete musieť nastaviť zdroj údajov. Predvolené nastavenia pre InfluxDB sú v poriadku. Adresa je „https:// localhost: 8086“a neexistuje žiadne používateľské meno ani heslo.
Oba sú podobné v tom, že sú usporiadané do informačných panelov, ktoré obsahujú ľubovoľný počet grafov. Oba majú oblasť Preskúmať, ktorá vám umožňuje vidieť merania a interaktívne vytvárať grafy. Nezabudnite, že názov databázy je „nocan“a je usporiadaný do niekoľkých meraní s jednou hodnotou.
Ako som už spomenul, mám radšej Grafanu, pretože je konfigurovateľnejšia ako Chronograf. Je tiež vhodný pre mobilné zariadenia, kde Chronograf nie je. Grafy sa dajú ľahko vkladať a zdieľať
Krok 8: Niektoré vylepšenia
- Môžete nastaviť názov hostiteľa svojho Raspberry Pi, aby k nemu bol prístup vo vašej sieti jednoduchší. Môžete to urobiť v raspi-config. Zmenil som ten svoj na nocan, takže som mohol prejsť na nocan.local, aby som k nemu získal prístup (nefunguje na systéme Android).
- Môžete si nainštalovať program ako ngrok a získať prístup k svojmu Raspberry Pi mimo svojej siete.
- Na poskytnutie upozornení použite jednu z metód, ktoré Kapacitor ponúka.
- Pridajte ďalšie senzory, samozrejme.
Odporúča:
Monitorovanie teploty a vlhkosti DHT pomocou platformy ESP8266 a platformy IoT AskSensors: 8 krokov
Monitorovanie teploty a vlhkosti DHT pomocou platformy ESP8266 a platformy AskSensors IoT: V predchádzajúcom návode som predstavil krok za krokom sprievodcu, ako začať s platformou ESP8266 nodeMCU a platformou AskSensors IoT. V tomto návode pripájam snímač DHT11 do uzla MCU. DHT11 je bežne používaná teplota a vlhkosť
Zaznamenávajte vysokorýchlostné EKG alebo iné údaje nepretržite viac ako mesiac: 6 krokov
Zaznamenávajte vysokorýchlostné EKG alebo iné údaje nepretržite viac ako mesiac: Tento projekt bol vyvinutý na podporu tímu univerzitného lekárskeho výskumu, ktorý potreboval nositeľné zariadenie, ktoré by dokázalo zaznamenať 2 x signály EKG pri 1 000 vzorkách/s (celkovo 2 000 vzoriek/s) nepretržite 30 dní, aby sa zistili arytmie. Projekt predstavuje
Automaticky ukladajte snímky obrazovky v systéme Windows pomocou skriptu Python: 4 kroky
Automaticky ukladať snímky obrazovky v systéme Windows pomocou skriptu Python: Na uloženie snímky obrazovky (obrazovky pre tlač) zvyčajne v oknách najskôr potrebujeme urobiť snímku obrazovky a potom otvoriť farbu, vložiť ju a nakoniec uložiť. Teraz vás naučím, ako vytvoriť program python na jeho automatizáciu. Tento program vytvorí priečinok
Monitorujte a zaznamenávajte teplotu pomocou Bluetooth LE a RaspberryPi: 9 krokov (s obrázkami)
Monitorujte a zaznamenávajte teplotu pomocou Bluetooth LE a RaspberryPi: Tento návod je o tom, ako zostaviť viacuzlový systém monitorovania teploty s chybou senzora Bluetooth LE od spoločností Blue Radios (BLEHome) a RaspberryPi 3B Vďaka vývoju štandardu Bluetooth LE existuje hneď k dispozícii
LED BLESKOVÉ SVETLO VYROBENÉ ZO ZÁSOBNÍKA-8 krokov
LED BLESKOVÉ SVETLO VYROBENÉ ZO ZÁSOBNÍKA: NAUČTE SA, AKO BUDOVAŤ Menej ako 5 minút LED SVETLOMET S POUŽITÍM ZÁSOBNÍKA