Sadržaj:
- Korak 1: Pripremite Raspberry Pi
- Korak 2: Postavljanje NoCAN -a
- Korak 3: Sastavljanje UFire hardvera zajedno
- Korak 4: NoCAN hardver
- Korak 5: Programirajte CANZERO čvor
- Korak 6: Kako se sve ovo povezuje?
- Korak 7: Postavljanje Chronografa ili Grafane
- Korak 8: Neka poboljšanja
Video: Pohranite i grafirajte EC/pH/ORP podatke s TICK Stack -om i NoCAN platformom: 8 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Ovo će objasniti kako koristiti senzore Omzlo i uFire NoCAN Platform 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 sjajne značajke poput programiranja čvorova preko CAN sabirnice.
NoCAN platforma koristi Raspberry Pi pa će sve što se može učiniti biti dostupno. Iskoristit ćemo to instaliranjem TICK stoga. To će nam omogućiti korištenje InfluxDB za pohranu 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
Prijeđite na stranicu Rasbian Download i preuzmite sliku s radne površine i preporučenog softvera, a zatim je umetnite na SD karticu.
Nakon što je slika na 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 = "NETWORK-NAME" psk = "MREŽA-LOZINKA"}
Kodovi 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:
Trebali biste biti na promptu za prijavu. Lozinka je malina.
Korak 2: Postavljanje NoCAN -a
Omzlo nudi temeljit vodič za instalaciju. No, odlučio sam si olakšati i naučiti nešto o skripti za Bash. Zato pokrenite svoj Raspberry Pi i u njega unesite 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 jednostavniji za shvatiti ili izvršiti od drugih. Na kraju, zapravo nisam učinio 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:
- Preuzima demon Omzlo NoCAN i instalira ga u/usr/bin radi lakšeg pristupa, stvara mapu ~/.nocand i zapisuje vrlo osnovnu konfiguracijsku datoteku s lozinkom postavljenom na 'lozinku'. Vjerojatno biste ga trebali promijeniti u nešto drugo, nalazi se na adresi ~/.nocand/config.
- Preuzima Omzlo NoCAN klijent i kopira ga u /usr /bin te stvara osnovnu konfiguracijsku datoteku s istom postavljenom lozinkom. Nalazi se na ~/.nocanc.conf.
- Postavlja uslugu Systemd koja održava demon NoCAN u radu.
- Zapisuje python datoteku u ~/.nocand, nocan_ufire.py. Razgovarat će s firmverom čvora NoCAN i uzeti mjerenja EC, pH i ORP, raščlaniti rezultate i dodati ih u bazu podataka InfluxDB.
- Dodaje repo InfluxData u apt i instalira hrpu TICK -a. A budući da mi je draži od Chronografa, instalira i Grafanu.
- Stvara praznu bazu podataka Influx
Neki problemi na koje možete naići:
- Možda se vaš jezik ne može postaviti, pa pokrenite dpkg-reconfigure locales
- Grafana instalacija bi mogla visjeti, pa pokušajte ponovno.
-
Demon za priliv možda se neće pokrenuti na vrijeme da bi skripta dodala bazu podataka, upišite
curl -i -XPOST https:// localhost: 8086/query --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 jako 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 izvodi li se 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: 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 i 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 upotrijebiti je za mjerenje ORP -a. Slijedite 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 sustav Qwiic connect pa samo sve spojite u lanac, postoji samo jedan način da umetnete Qwiic u žice Qwiic. Trebat će vam jedna žica Qwiic -Male za povezivanje jednog od senzora na čvor CANZERO. Žice su dosljedne 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 očekuje se da će informacije o temperaturi doći od EC senzora, stoga svakako priključite osjetnik temperature 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
Sastavljanje NoCAN hardvera također je jednostavno. Priključite PiMaster na Raspberry Pi i pronađite odgovarajuće napajanje za njega.
Slijedite Omzlove upute o izradi kabela za vaš projekt.
Postavite svoj čvor i pronađite mjesto za PiMaster.
Korak 5: 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 ponovno 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đer će vam trebati program nazvan nocanc instaliran na vašem razvojnom računalu. 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 upload kao i obično. Ako je sve išlo prema planu, trebali biste imati programirani čvor spreman za neka mjerenja.
Korak 6: 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 …
U sažetku:
- Čvor CANZERO povezan je s PiMasterom i negdje raspoređen
- Svake minute na PiMasteru se izvodi Cron posao. Izvršit će python skriptu.
- Python skripta će poslati naredbu čvoru koja će mu reći da izvrši mjerenje ili neku drugu radnju.
- Čvor će izvršiti ono što je naredba i vratiti rezultat u JSON formatu.
- Python skripta primit će taj rezultat, raščlaniti ga i ažurirati InfluxDB s njim.
Posljednji korak je promatranje prikupljanja podataka u nekim ljestvicama lijepog izgleda.
Korak 7: 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 u sebi imaju bilo koji broj grafikona. Obje imaju područje Istraživanje 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đer 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 svoje Raspberry Pi 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.
- Za slanje obavijesti upotrijebite jednu od metoda koju Kapacitor pruža.
- Naravno, dodajte još senzora.
Preporučeni:
Kako poslati podatke s M5Stack StickC -a u Delphi: 6 koraka
Kako poslati podatke s M5Stack StickC -a u Delphi: U ovom videu ćemo naučiti kako slati vrijednosti sa StickC ploče u Delphi VCL aplikaciju koristeći Visuino. Pogledajte video
Kako čitati DHT podatke na LCD -u pomoću Raspberry Pi: 6 koraka
Kako čitati DHT podatke na LCD -u pomoću Raspberry Pi: Temperatura i relativna vlažnost zraka važni su vremenski podaci u okruženjima. To mogu biti podaci koje mini meteorološka stanica pruža. Očitavanje vaše temperature i relativne vlažnosti s Raspberry Pi može se postići pomoću različitih varijanti
Napravite lijepe crteže od živih Arduino podataka (i spremite podatke u Excel): 3 koraka
Napravite lijepe crteže od živih Arduino podataka (i spremite podatke u Excel): Svi se volimo igrati s našom P … loto funkcijom u Arduino IDE -u. Međutim, iako može biti korisno za osnovne aplikacije, podaci se brišu kao više dodaju se bodovi i to očima nije osobito ugodno. Arduino IDE ploter ne
LightMeUp! kontrola LED traka s unakrsnom platformom u stvarnom vremenu: 5 koraka (sa slikama)
LightMeUp! kontrola LED traka s unakrsnom platformom u stvarnom vremenu: LightMeUp! je sustav koji sam izumio za kontrolu RGB LED trake u stvarnom vremenu, uz održavanje niske cijene i visokih performansi. Poslužitelj je napisan na Node.js i stoga se može unakrsno oblikovati. U mom primjeru koristim Raspberry Pi 3B za dugotrajnu upotrebu
IoT sustav za nadzor postrojenja (s IBM IoT platformom): 11 koraka (sa slikama)
IoT sustav za nadziranje biljaka (s IBM IoT platformom): pregled Sustav za nadzor postrojenja (PMS) je aplikacija izrađena s pojedincima koji su u radničkoj klasi sa zelenim palcem na umu. Danas su zaposleni pojedinci zaposleniji nego ikad prije; napredovati u karijeri i upravljati svojim financijama