Satura rādītājs:
- 1. darbība: sagatavojiet Raspberry Pi
- 2. darbība. NoCAN iestatīšana
- 3. darbība. UFire aparatūras salikšana kopā
- 4. solis: NoCAN aparatūra
- 5. solis: ieprogrammējiet CANZERO mezglu
- 6. solis: kā tas viss sasaistās?
- 7. darbība: iestatiet hronogrāfu vai grafānu
- 8. solis: daži uzlabojumi
Video: EC/pH/ORP datu glabāšana un grafiku veidošana, izmantojot TICK steku un NoCAN platformu: 8 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:55
Šeit tiks apskatīts, kā izmantot Omzlo un uFire sensoru NoCAN platformu, lai izmērītu EK, pH un ORP. Kā saka viņu vietne, dažreiz ir vieglāk vienkārši novietot kabeli uz sensoru mezgliem. CAN priekšrocība ir komunikācija un jauda vienā kabeli, tāpēc signāls un akumulators nav problēmas. Mezglu programmaparatūra var būt vienkāršāka; nav jāraizējas, piemēram, ar miega režīmiem vai WiFi iestatīšanu. NoCAN platformai ir arī dažas lieliskas iespējas, piemēram, mezglu programmēšana, izmantojot CAN kopni.
NoCAN platformā tiek izmantots Raspberry Pi, tāpēc būs pieejams viss iespējamais. Mēs to izmantosim, uzstādot TICK steku. Tas ļaus mums izmantot InfluxDB, lai saglabātu mērījumus. Tā ir uz laikrakstiem balstīta datu bāze, kas īpaši paredzēta šāda veida lietām. Tam ir arī Chronograf, lai izveidotu informācijas paneļus un parādītu visus šos datus, kurus mēs ņemsim. T un K apzīmē Telegraf un Kapacitor. Telegraf atrodas starp jūsu sūtītajiem datiem un Influx datu bāzi. Kapacitor ir notikumu dzinējs. Kad kaut kas notiek, tas var jums nosūtīt paziņojumu, izmantojot dažādas metodes. Un tikai tāpēc, ka man tas patīk labāk nekā Chronograf, es instalēšu Grafana informācijas paneļiem.
1. darbība: sagatavojiet Raspberry Pi
Dodieties uz Rasbian lejupielādes lapu un lejupielādējiet attēlu ar darbvirsmu un ieteicamo programmatūru, pēc tam zibspuldzi uz SD kartes.
Kad attēls ir SD kartē, jums vajadzētu būt diviem sējumiem, saknei un sāknēšanai. Sāknē atveriet termināli un ierakstiet:
pieskaries ssh
Tas aktivizēs SSH.
Pēc tam ierakstiet:
nano wpa_supplicant.conf
Kopējiet/ielīmējiet šo informāciju pēc tam, kad esat to mainījis saviem apgabala un WiFi iestatījumiem:
valsts = ASV
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "NETWORK-NAME" psk = "NETWORK-PASSWORD"}
Valstu kodi nāk no šejienes.
Iespējot SPI:
atbalss "dtparam = spi = on" >> config.txt
Ievietojiet SD karti savā Raspberry Pi, nedaudz pagaidiet un ierakstiet:
Jums vajadzētu atrasties pieteikšanās uzvednē. Parole ir aveņu.
2. darbība. NoCAN iestatīšana
Omzlo piedāvā rūpīgu instalēšanas rokasgrāmatu. Bet es nolēmu atvieglot sevi un mazliet uzzināt par Bash skriptu rakstīšanu. Tāpēc sāciet savu Raspberry Pi un ievadiet tajā SSH vai seriālo termināli.
Es uzzināju, ka laba Bash skripta izveidei var veltīt tikpat daudz izstrādes laika, cik tas ir jūsu mēģinājums faktiski instalēt. Ir 1000 veidu, kā kaut ko paveikt, daži ir vieglāk uztverami vai izpildāmi nekā citi. Galu galā es faktiski neko daudz nedarīju. Ja izpildāt:
wget https://ufire.co/nocan.sh && chmod +x nocan.sh && sudo./nocan.sh
Jūsu Raspberry Pi terminālī tas lejupielādēs un izpildīs skriptu.
Tad tas:
- Lejupielādē Omzlo NoCAN dēmonu un instalē to mapē/usr/bin, lai ērti piekļūtu, izveido mapi ~/.nocand un uzraksta ļoti vienkāršu konfigurācijas failu, kura parole ir iestatīta uz “parole”. Droši vien jums tas jāmaina uz kaut ko citu, tas atrodas ~/.nocand/config.
- Lejupielādē Omzlo NoCAN klientu un nokopē to mapē /usr /bin un izveido pamata konfigurācijas failu ar tādu pašu iestatīto paroli. Tas atrodas vietnē ~/.nocanc.conf.
- Iestata pakalpojumu Systemd, kas uztur NoCAN dēmonu.
- Ieraksta python failu uz ~/.nocand, nocan_ufire.py. Tas runās ar NoCAN mezgla programmaparatūru un veiks EK, pH un ORP mērījumus, parsēs rezultātus un pievienos tos InfluxDB datu bāzei.
- Pievieno InfluxData repo apt un instalē TICK steku. Un tā kā es dodu priekšroku tam, nevis Chronograf, tas instalē arī Grafanu.
- Izveido tukšu Influx datu bāzi
Dažas lietas, ar kurām jūs varat saskarties:
- Iespējams, jūsu lokalizācija nav iestatīta, tāpēc palaidiet dpkg-reconfigure locales
- Grafana instalācija var pakārt, tāpēc vienkārši mēģiniet vēlreiz.
-
Pieplūduma dēmons var netikt palaists laikā, lai skripts pievienotu datu bāzi, ierakstiet
curl -i -XPOST https:// localhost: 8086/query --data -urlencode "q = CREATE DATABASE nocan"
- Šis skripts darbojas tikai kā noklusējuma pi lietotājs. Jums būs jāmaina pi uz savu lietotājvārdu, ja tas ir piemērots citam lietotājam.
Pēdējā lieta ir pievienot cron darbu. Es nevarēju atrast ļoti labu veidu, kā rakstīt šo, tāpēc ierakstiet 'crontab -e', lai rediģētu manuāli, un pievienojiet ' * * * * * python /home/pi/.nocand/nocan_ufire.py'.
Kad tas viss ir izdarīts, varat pārbaudīt, vai viss ir iestatīts un darbojas kā vajadzētu. Grafana dzīvo https:// [Raspberry Pi adrese]: 3000/. Jums vajadzētu redzēt pieteikšanās lapu, noklusējums ir admin/admin.
Hronogrāfu var atrast vietnē https:// [Raspberry Pi's Address]: 8888/
3. darbība. UFire aparatūras salikšana kopā
Pirms mēs varam salikt aparatūru, ir jārisina viena lieta. UFire ISE plāksni var izmantot gan pH, gan ORP mērīšanai. Aparatūra ir tāda pati, bet programmatūra ir atšķirīga. Tā kā aparatūra ir viena un tā pati, tas nozīmē, ka arī I2C adrese pēc noklusējuma ir tāda pati. Un sensori sazinās, izmantojot I2C, tāpēc viens būs jāmaina. Šim projektam mēs izvēlēsimies vienu no ISE dēļiem un izmantosim to, lai izmērītu ORP. Veicot šeit norādītās darbības, nomainiet adresi uz 0x3e.
Tagad, kad adrese ir mainīta, aparatūras salikšana ir vienkārša. Šī iestatīšana ir balstīta uz iepriekšējo darbu, kas pamatā veic to pašu, bet datu pārsūtīšanai izmanto BLE, nevis CAN. Par to varat lasīt Arduino projektu centrā. Visas sensoru ierīces izmanto Qwiic connect sistēmu, tāpēc vienkārši savienojiet visu kopā ķēdē, ir tikai viens veids, kā ievietot Qwiic un Qwiic vadus. Lai savienotu vienu no sensoriem ar CANZERO mezglu, jums būs nepieciešams viens Qwiic – Male vads. Vadi ir konsekventi un krāsoti. Pievienojiet mezgla GND melnu, sarkanu - pie +3.3V vai +5V tapas, zilu - SDA tapai, kas ir D11, un dzelteno - pie SCL tapas uz D12.
Šim projektam tā sagaidīs, ka temperatūras informācija tiks saņemta no EK sensora, tāpēc noteikti piestipriniet temperatūras sensoru pie EK plates. Tomēr visiem dēļiem ir iespēja izmērīt temperatūru. Neaizmirstiet piestiprināt EC, pH un ORP zondes atbilstošajiem sensoriem. Tos ir viegli piestiprināt ar BNC savienotājiem. Ja jums ir norobežojums, to visu ievietot iekšā būtu laba ideja, jo īpaši ņemot vērā, ka tiks iesaistīts ūdens.
4. solis: NoCAN aparatūra
NoCAN aparatūras montāža ir arī vienkārša. Pievienojiet PiMaster Raspberry Pi un atrodiet tam piemērotu barošanas avotu.
Izpildiet Omzlo norādījumus par kabeļu izgatavošanu savam projektam.
Izvietojiet savu mezglu un atrodiet vietu PiMaster.
5. solis: ieprogrammējiet CANZERO mezglu
Viena no lieliskajām šīs iestatīšanas lietām ir tā, ka jūs varat piekļūt mezgliem pat pēc to izvietošanas. Tie ir ieprogrammēti, izmantojot CAN vadu, lai jūs varētu tos pārprogrammēt jebkurā laikā.
Lai to izdarītu, jums būs jāinstalē Arduino IDE, tīklā esošais PiMaster un mezgls, kas savienots ar CAN kopni. Jums būs nepieciešama arī programma ar nosaukumu nocanc, kas instalēta jūsu izstrādes datorā. Tas viss ir aprakstīts Omzlo instalācijas lapā.
Apmeklējiet GitHub un nokopējiet kodu jaunā Arduino IDE skicē. Nomainiet dēli uz Omzlo CANZERO un izvēlnē “Port” atlasiet mezglu. Pēc tam vienkārši noklikšķiniet uz augšupielādēt kā parasti. Ja viss notika saskaņā ar plānu, jums vajadzētu būt ieprogrammētam mezglam, kas ir gatavs veikt dažus mērījumus.
6. solis: kā tas viss sasaistās?
Tagad, kad visa programmatūra un aparatūra ir iestatīta, veltīsim laiku, lai runātu par to, kā tas viss darbosies. Un parādiet manas GIMP prasmes…
Kopsavilkumā:
- CANZERO mezgls ir savienots ar PiMaster un kaut kur izvietots
- Katru minūti Cron darbs tiek palaists PiMaster. Tas izpildīs python skriptu.
- Python skripts nosūtīs mezglam komandu, norādot, lai tā veic mērījumus vai veic citas darbības.
- Mezgls izpildīs komandu un atgriezīs rezultātu JSON formātā.
- Python skripts saņems šo rezultātu, parsēs to un atjauninās ar to InfluxDB.
Pēdējais solis ir noskatīties, kā dati tiek apkopoti dažās jaukās diagrammās.
7. darbība: iestatiet hronogrāfu vai grafānu
Pēdējā lieta, kas jādara, ir izveidot dažas diagrammas Chronograf vai Grafana.
Jums būs jāiestata datu avots. InfluxDB noklusējuma iestatījumi ir labi. Tā adrese ir “https:// localhost: 8086”, un tajā nav lietotājvārda vai paroles.
Abi ir līdzīgi, jo tie ir sakārtoti informācijas paneļos, kuros ir jebkurš diagrammu skaits. Abiem ir izpētes apgabals, kas ļauj redzēt mērījumus un interaktīvi izveidot diagrammas. Atcerieties, ka datu bāzes nosaukums ir “nocan” un ir sakārtots vairākos mērījumos ar vienu vērtību.
Kā jau minēju, es dodu priekšroku Grafanai, jo tā ir vairāk konfigurējama nekā hronogrāfs. Tas ir piemērots arī mobilajām ierīcēm, kur Chronograf nav. Diagrammas ir viegli iegulstamas un kopīgojamas
8. solis: daži uzlabojumi
- Varat iestatīt sava Raspberry Pi saimniekdatora nosaukumu, lai tam vieglāk piekļūtu tīklā. To var izdarīt raspi-config. Es mainīju raktuvi uz nocan, tāpēc varēju doties uz nocan.local, lai tai piekļūtu (nedarbojas operētājsistēmā Android).
- Jūs varat instalēt tādu programmu kā ngrok, lai piekļūtu savam Raspberry Pi ārpus tīkla.
- Izmantojiet vienu no Kapacitor piedāvātajām metodēm, lai sniegtu paziņojumus.
- Protams, pievienojiet vairāk sensoru.
Ieteicams:
Kā izveidot mitruma un temperatūras reālā laika datu ierakstītāju, izmantojot Arduino UNO un SD karti - DHT11 datu reģistrētāja simulācija Proteus: 5 soļi
Kā izveidot mitruma un temperatūras reālā laika datu ierakstītāju, izmantojot Arduino UNO un SD karti | DHT11 datu reģistrētāja simulācija Proteus: Ievads: čau, tas ir Liono Maker, šeit ir YouTube saite. Mēs veidojam radošu projektu ar Arduino un strādājam pie iegultām sistēmām. Datu reģistrētājs: Datu reģistrētājs (arī datu reģistrētājs vai datu ierakstītājs) ir elektroniska ierīce, kas laika gaitā reģistrē datus
Datu sūtīšana uz AskSensors IoT platformu no tīmekļa pārlūkprogrammas: 6 soļi
Datu sūtīšana uz AskSensors IoT platformu no tīmekļa pārlūkprogrammas: nesen esmu ievietojis pamācību, kas parāda soli pa solim norādījumus ESP8266 mezgla MCU savienošanai ar AskSensors IoT platformu. Es saņēmu atsauksmes no cilvēkiem, kurus vairāk interesē AskSensors platforma, taču viņiem nav mezgla MCU. Šo es
Datu iegūšanas un datu vizualizācijas sistēma elektriskajam motociklam MotoStudent: 23 soļi
Datu iegūšanas un datu vizualizācijas sistēma MotoStudent elektriskajam sacīkšu velosipēdam: Datu iegūšanas sistēma ir aparatūras un programmatūras kopums, kas darbojas kopā, lai apkopotu datus no ārējiem sensoriem, pēc tam tos uzglabātu un apstrādātu, lai tos varētu vizualizēt grafiski un analizēt, ļaujot inženieriem izgatavot
3D printera datu veidošana no korpusa elektroniskajam modulim, izmantojot Blender .: 6 soļi
Blendera 3D printera datu izveidošana elektroniskā moduļa korpusam: tie jums ir nepieciešami (izmantots I piemērs). 3D printeris (TEVO Tarantula) 2D skeneris (CanoScan LiDE 200) 3D datu redaktors (blenderis) 2D datu redaktors (Paint Shop Pro) https://neo-sahara.com/wp/case_make_blender
Reģistrējiet datus un uzzīmējiet grafiku tiešsaistē, izmantojot NodeMCU, MySQL, PHP un Chartjs.org: 4 soļi
Reģistrējiet datus un uzzīmējiet diagrammu tiešsaistē, izmantojot NodeMCU, MySQL, PHP un Chartjs.org. Šajā pamācībā aprakstīts, kā mēs varam izmantot Node MCU plati, lai apkopotu datus no vairākiem sensoriem, nosūtot šos datus uz mitinātu PHP failu, kas pēc tam pievieno datus MySQL datu bāze. Pēc tam datus var skatīt tiešsaistē kā grafiku, izmantojot chart.js.A ba