Sadržaj:

Pohranite i grafirajte EC/pH/ORP podatke sa TICK Stack -om i NoCAN platformom: 8 koraka
Pohranite i grafirajte EC/pH/ORP podatke sa TICK Stack -om i NoCAN platformom: 8 koraka

Video: Pohranite i grafirajte EC/pH/ORP podatke sa TICK Stack -om i NoCAN platformom: 8 koraka

Video: Pohranite i grafirajte EC/pH/ORP podatke sa TICK Stack -om i NoCAN platformom: 8 koraka
Video: Похороните меня за плинтусом в hd 2024, Decembar
Anonim
Pohranite i grafirajte EC/pH/ORP podatke pomoću TICK Stack -a i NoCAN platforme
Pohranite i grafirajte EC/pH/ORP podatke pomoću TICK Stack -a i NoCAN platforme

Ovo će objasniti kako koristiti NoCAN platformu Omzlo i uFire senzora za mjerenje EC, pH i ORP. Kako kaže njihova web stranica, ponekad je lakše samo provesti neki kabel do čvorova senzora. CAN ima prednost komunikacije i napajanja u jednom kabelu pa signal i baterija nisu problem. Firmver čvorova može biti jednostavniji; ne mučite se s načinima spavanja ili postavljanjem WiFi mreže, na primjer. NoCAN platforma također ima neke odlične značajke poput programiranja čvorova preko CAN sabirnice.

NoCAN platforma koristi Raspberry Pi, pa će sve što možete učiniti biti dostupno. Iskoristit ćemo to instaliranjem TICK stoga. To će nam omogućiti da koristimo InfluxDB za spremanje mjerenja. To je baza podataka zasnovana na vremenskoj seriji, namijenjena za takve stvari. Također dolazi s Chronografom za izradu nadzornih ploča i prikaz svih ovih podataka koje ćemo uzeti. T i K označavaju Telegraf i Kapacitor. Telegraf se nalazi između podataka koje šaljete i baze podataka Influx. Kapacitor je motor događaja. Kad se nešto dogodi, može vam poslati obavijest na različite načine. I samo zato što mi se više sviđa od Chronografa, instalirat ću Grafanu za nadzorne ploče.

Korak 1: Pripremite Raspberry Pi

Idite na stranicu Rasbian Download i preuzmite sliku sa radne površine i preporučenog softvera, a zatim je umetnite na SD karticu.

Nakon što je slika na vašoj SD kartici, trebali biste imati dva volumena, root i boot. Otvorite terminal pri pokretanju i upišite:

dodirni ssh

To će omogućiti SSH.

Zatim upišite:

nano wpa_supplicant.conf

I kopirajte/zalijepite sljedeće nakon što ste ga izmijenili za svoju županiju i WiFi postavke:

zemlja = SAD

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "IME MREŽE" psk = "MREŽA-LOZINKA"}

Pozivi zemalja dolaze odavde.

Omogući SPI:

echo "dtparam = spi = on" >> config.txt

Stavite SD karticu u svoj Raspberry Pi, pričekajte malo i upišite:

ssh [email protected]

Trebali biste biti na promptu za prijavu. Lozinka je malina.

Korak 2: Postavljanje NoCAN -a

Omzlo nudi detaljan vodič za instalaciju. Ali odlučio sam si olakšati i naučiti nešto o Bash skriptiranju. Zato pokrenite svoj Raspberry Pi i uključite SSH ili serijski terminal.

Naučio sam da isto toliko vremena za razvoj može ući u stvaranje dobre Bash skripte koliko god da pokušavate instalirati. Postoji 1000 načina da se nešto učini, neki su jednostavniji za shvatiti ili izvršiti od drugih. Na kraju, zapravo nisam uradio mnogo. Ako izvršite:

wget https://ufire.co/nocan.sh && chmod +x nocan.sh && sudo./nocan.sh

U terminalu vašeg Raspberry Pi -ja će preuzeti i izvršiti skriptu.

Zatim to:

  1. Preuzima Omzlo NoCAN demon i instalira ga u/usr/bin radi lakšeg pristupa, pravi mapu ~/.nocand i piše vrlo osnovnu konfiguracijsku datoteku s lozinkom postavljenom na 'password'. Vjerojatno biste ga trebali promijeniti na nešto drugo, nalazi se na adresi ~/.nocand/config.
  2. Preuzima Omzlo NoCAN klijent i kopira ga u /usr /bin te stvara osnovnu konfiguracijsku datoteku s istom postavljenom lozinkom. Nalazi se na adresi ~/.nocanc.conf.
  3. Postavlja Systemd uslugu koja održava NoCAN demon da radi.
  4. Zapisuje python datoteku u ~/.nocand, nocan_ufire.py. On će razgovarati sa firmverom NoCAN čvora i uzeti EC, pH i ORP mjerenja, analizirati rezultate i dodati ih u bazu podataka InfluxDB.
  5. Dodaje Repo InfluxData u apt i instalira TICK hrpu. A pošto mi je draži od Chronografa, instalira i Grafanu.
  6. Kreira praznu bazu podataka Influx

Neke poteškoće na koje možete naići:

  • Možda se vaša lokacija ne može postaviti, pa pokrenite dpkg-reconfigure locales
  • Grafana instalacija bi mogla visjeti, pa pokušajte ponovo.
  • Demon za priliv se možda neće pokrenuti na vrijeme da bi skripta dodala bazu podataka, tip

    curl -i -XPOST https:// localhost: 8086/upit --data -urlencode "q = CREATE DATABASE nocan"

  • Ova skripta radi samo kao zadani korisnik pi. Ako ste pod drugim korisnikom, morat ćete promijeniti pi na svoje korisničko ime.

Zadnja stvar je dodati cron posao. Nisam mogao pronaći vrlo dobar način za skriptiranje ovog teksta, pa upišite 'crontab -e' za ručno uređivanje i dodajte ' * * * * * python /home/pi/.nocand/nocan_ufire.py'.

Nakon što sve to učinite, možete provjeriti je li sve postavljeno i radi kako treba. Grafana živi na https:// [adresa maline Pi]: 3000/. Trebali biste vidjeti stranicu za prijavu, zadani je admin/admin.

Chronograf se može pronaći na https:// [adresa maline Pi]: 8888/

Korak 3: Spajanje UFire hardvera zajedno

Sastavljanje UFire hardvera zajedno
Sastavljanje UFire hardvera zajedno

Prije nego što možemo sastaviti hardver, moramo se pozabaviti jednom stvari. UFire ISE ploča može se koristiti za mjerenje pH i ORP. Hardver je isti, ali softver je drugačiji. Budući da je hardver isti, to znači da je I2C adresa, prema zadanim postavkama, ista. Senzori komuniciraju putem I2C pa će ih trebati promijeniti. Za ovaj projekt odabrat ćemo jednu od ISE ploča i koristiti je za mjerenje ORP -a. Slijedeći ovdje navedene korake, promijenite adresu u 0x3e.

Sada kada se adresa promijenila, sastavljanje hardvera je jednostavno. Ovo postavljanje temelji se na ranijim radovima koji rade u osnovi istu stvar, ali koriste BLE umjesto CAN za prijenos podataka. O tome možete čitati na Arduino Project Hubu. Svi senzorski uređaji koriste sistem Qwiic connect, pa samo sve spojite u lanac, postoji samo jedan način da umetnete Qwiic u Qwiic žice. Trebat će vam jedna žica Qwiic -Male za povezivanje jednog od senzora na čvor CANZERO. Žice su konzistentne i označene su bojom. Spojite crno na GND čvora, crveno na +3.3V ili +5V pin, plavo na SDA pin koji je D11, a žuto na SCL pin na D12.

Za ovaj projekt se očekuje da će informacije o temperaturi doći od EC senzora, stoga svakako priključite temperaturni senzor na EC ploču. Sve ploče imaju mogućnost mjerenja temperature. Ne zaboravite spojiti EC, pH i ORP sonde na odgovarajuće senzore. Lako se pričvršćuju pomoću BNC konektora. Ako imate kućište, bilo bi dobro staviti sve ovo unutra, pogotovo ako uzmete u obzir vodu.

Korak 4: NoCAN hardver

NoCAN hardver
NoCAN hardver

Sastavljanje NoCAN hardvera je takođe jednostavno. Priključite PiMaster na Raspberry Pi i pronađite odgovarajuće napajanje za njega.

Slijedite Omzlova uputstva o izradi kabela za vaš projekt.

Postavite svoj čvor i pronađite mjesto za PiMaster.

Korak 5: Programirajte CANZERO čvor

Programirajte CANZERO čvor
Programirajte CANZERO čvor

Jedna od sjajnih stvari u vezi s ovim postavljanjem je da možete pristupiti čvorovima čak i nakon što su postavljeni. Oni su programirani preko CAN žice, pa ih možete ponovo programirati kad god želite.

Za to će vam trebati instaliran Arduino IDE, PiMaster na vašoj mreži i vaš čvor spojen na CAN sabirnicu. Takođe će vam trebati program nazvan nocanc instaliran na vašem razvojnom računaru. Sve je to opisano na Omzlovoj stranici za instalaciju.

Posjetite GitHub i kopirajte kôd u novu Arduino IDE skicu. Promijenite ploču na Omzlo CANZERO i odaberite čvor u izborniku 'Port'. Zatim samo kliknite na upload kao i obično. Ako je sve teklo po planu, trebali biste imati programirani čvor spreman za neka mjerenja.

Korak 6: Kako se sve ovo povezuje?

Kako se sve ovo povezuje?
Kako se sve ovo povezuje?

Sada kada je sav softver i hardver postavljen, odvojimo trenutak da porazgovaramo o tome kako će sve to zapravo funkcionirati. I pokazati moje GIMP vještine …

Ukratko:

  1. CANZERO čvor je povezan s PiMasterom i negdje je postavljen
  2. Svake minute na PiMasteru se izvodi Cron posao. Izvršiće python skriptu.
  3. Python skripta će poslati naredbu čvoru koja će mu reći da izvrši mjerenje ili neku drugu radnju.
  4. Čvor će izvršiti naredbu i vratiti rezultat u JSON formatu.
  5. Python skripta će primiti taj rezultat, raščlaniti ga i ažurirati InfluxDB s njim.

Posljednji korak je promatranje prikupljanja podataka na nekim ljestvicama lijepog izgleda.

Korak 7: Postavljanje Chronografa ili Grafane

Postavljanje Chronografa ili Grafane
Postavljanje Chronografa ili Grafane

Zadnje što trebate učiniti je postaviti neke karte na Chronografu ili Grafani.

Morat ćete postaviti izvor podataka. Zadane postavke za InfluxDB su u redu. Adresa za to je 'https:// localhost: 8086' i nema korisničkog imena ili lozinke.

Obje su slične po tome što su organizirane u nadzorne ploče koje imaju bilo koji broj grafikona. Oboje imaju područje istraživanja koje vam omogućuje da vidite mjerenja i interaktivno kreirate karte. Upamtite da je ime baze podataka 'nocan' i organizirano u nekoliko mjerenja s jednom vrijednošću.

Kao što sam spomenuo, više volim Grafanu jer se može više konfigurirati od Chronografa. Takođe je prilagođen mobilnim uređajima, gdje Chronograf nije. Karte se lako ugrađuju i dijele

Korak 8: Neka poboljšanja

  • Možete postaviti naziv hosta vašeg Raspberry Pi -a za lakši pristup na vašoj mreži. To možete učiniti u raspi-config. Promijenio sam svoj u nocan, pa sam mogao otići na nocan.local da mu pristupim (ne radi na Androidu).
  • Možete instalirati program poput ngrok za pristup vašem Raspberry Pi -u izvan vaše mreže.
  • Upotrijebite jednu od metoda koju Kapacitor pruža za slanje obavijesti.
  • Dodajte još senzora, naravno.

Preporučuje se: