Բովանդակություն:

Պահել և գծագրել EC/pH/ORP տվյալները TICK Stack- ով և NoCAN հարթակով ՝ 8 քայլ
Պահել և գծագրել EC/pH/ORP տվյալները TICK Stack- ով և NoCAN հարթակով ՝ 8 քայլ

Video: Պահել և գծագրել EC/pH/ORP տվյալները TICK Stack- ով և NoCAN հարթակով ՝ 8 քայլ

Video: Պահել և գծագրել EC/pH/ORP տվյալները TICK Stack- ով և NoCAN հարթակով ՝ 8 քայլ
Video: Թուրքիա փրկարարներ ուղարկելու որոշումը զուտ մարդասիրական մոտիվացիա ուներ. Փաշինյան 2024, Դեկտեմբեր
Anonim
Պահպանեք և գծագրեք EC/pH/ORP տվյալները TICK Stack- ով և NoCAN հարթակով
Պահպանեք և գծագրեք EC/pH/ORP տվյալները TICK Stack- ով և NoCAN հարթակով

Սա կանդրադառնա, թե ինչպես օգտագործել Omzlo- ի և uFire սենսորների NoCAN հարթակը `EC, pH և ORP չափելու համար: Ինչպես ասում է նրանց կայքը, երբեմն ավելի հեշտ է պարզապես ինչ -որ մալուխ անցկացնել ձեր սենսորային հանգույցներին: CAN- ն ունի մեկ մալուխի հաղորդակցության և հզորության առավելություն, այնպես որ ազդանշանն ու մարտկոցը խնդիրներ չունեն: Հանգույցների որոնվածը կարող է ավելի պարզ լինել. օրինակ, քնի ռեժիմների կամ WiFi- ի կարգավորումների հետ կապված խնդիրներ չկան: NoCAN հարթակը նաև ունի մի քանի հիանալի հատկություններ, ինչպիսիք են CAN ավտոբուսի հանգույցների ծրագրավորումը:

NoCAN հարթակը օգտագործում է Raspberry Pi- ն, ուստի այն ամենը, ինչ կարող է անել, հասանելի կլինի: Մենք պատրաստվում ենք օգտվել դրանից ՝ տեղադրելով TICK կույտը: Դա թույլ կտա մեզ օգտագործել InfluxDB- ը ՝ չափումներ պահելու համար: Դա ժամանակի վրա հիմնված տվյալների բազա է, որը նախատեսված է նման բանի համար: Այն նաև գալիս է Chronograf- ի հետ `պատրաստելու վահանակներ և ցուցադրելու այս բոլոր տվյալները, որոնք մենք պատրաստվում ենք վերցնել: T- ն և K- ն նշանակում են Telegraf և Kapacitor: Telegraf- ը գտնվում է ձեր ուղարկած տվյալների և Influx տվյալների բազայի միջև: Kapacitor- ը իրադարձությունների շարժիչն է: Երբ ինչ -որ բան տեղի է ունենում, այն կարող է ձեզ ծանուցում ուղարկել տարբեր մեթոդների միջոցով: Եվ միայն այն պատճառով, որ այն ինձ ավելի է դուր գալիս, քան Chronograf- ը, ես Grafana- ն կտեղադրեմ վահանակների համար:

Քայլ 1: Պատրաստել ազնվամորի Պի պատրաստ լինելը

Գնացեք Rasbian Ներբեռնման էջ և ներբեռնեք պատկերը աշխատասեղանի և առաջարկվող ծրագրաշարի հետ, այնուհետև տեղադրեք այն SD քարտի վրա:

Ձեր SD քարտի վրա պատկերի հայտնվելուց հետո դուք պետք է ունենաք երկու հատոր ՝ արմատ և բեռնախցիկ: Բեռնման մեջ բացեք տերմինալ և մուտքագրեք.

շոշափել ssh

Դա հնարավորություն կտա SSH- ին:

Այնուհետեւ մուտքագրեք.

nano wpa_supplicant.conf

Եվ պատճենեք/տեղադրեք հետևյալը ՝ ձեր շրջանի և WiFi կարգավորումների համար փոփոխելուց հետո.

երկիր = ԱՄՆ

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "NETWORK-NAME" psk = "NETWORK-PASSWORD"}

Երկրի կոդերը գալիս են այստեղից:

Միացնել SPI- ն ՝

արձագանք "dtparam = spi = on" >> config.txt

Տեղադրեք SD քարտը ձեր Raspberry Pi- ում, մի փոքր սպասեք և մուտքագրեք.

ssh [email protected]

Դուք պետք է հայտնվեք մուտքի հուշման մեջ: Գաղտնաբառը ազնվամորու է:

Քայլ 2: NoCAN- ի կարգավորում

Omzlo- ն տրամադրում է տեղադրման մանրամասն ուղեցույց: Բայց ես որոշեցի հեշտացնել ինքս ինձ համար և մի փոքր սովորել Bash սցենարի մասին: Այսպիսով, գործարկեք ձեր Raspberry Pi- ն և դրա մեջ տեղադրեք SSH կամ սերիական տերմինալ:

Ես սովորեցի, որ լավ Bash սցենար ստեղծելու համար զարգացման նույնքան ժամանակ կարող է ծախսվել, որքան այն, ինչ փորձում եք իրականում տեղադրել: Գոյություն ունեն 1000 եղանակ ՝ ինչ -որ բան անելու համար, որոնցից ոմանք ավելի պարզ են ընկալել կամ իրականացնել, քան մյուսները: Ի վերջո, ես իրականում շատ բան չեմ արել: Եթե կատարում եք.

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

Ձեր Raspberry Pi տերմինալում այն կներբեռնի և կիրականացնի սցենարը:

Հետո ՝

  1. Ներբեռնում է Omzlo NoCAN դևոնը և տեղադրում այն/usr/bin- ում ՝ հեշտ մուտք գործելու համար, կազմում է ~/.nocand թղթապանակը և գրում է շատ հիմնական կազմաձևման ֆայլ ՝ «գաղտնաբառ» նշած գաղտնաբառով: Դուք հավանաբար պետք է այն փոխեք այլ բանի, այն գտնվում է ~/.nocand/config- ում:
  2. Ներբեռնում է Omzlo NoCAN հաճախորդը և պատճենում այն /usr /bin- ում և ստեղծում հիմնական կազմաձևման ֆայլ `նույն գաղտնաբառով: Այն գտնվում է ~/.nocanc.conf հասցեում:
  3. Ստեղծում է Systemd ծառայություն, որը պահպանում է NoCAN դեյմոնի աշխատանքը:
  4. Գրում է պիթոնի ֆայլ ~/.nocand, nocan_ufire.py հասցեով: Այն կխոսի NoCAN հանգույցի որոնվածի հետ և կկատարի EC, pH և ORP չափումներ, կվերլուծի արդյունքները և կավելացնի դրանք InfluxDB տվյալների բազայում:
  5. Ավելացնում է InfluxData- ի ռեպոը apt- ին և տեղադրում է TICK բուրգը: Եվ քանի որ ես այն նախընտրում եմ Chronograf- ից, այն տեղադրում է նաև Grafana- ն:
  6. Ստեղծում է դատարկ Influx տվյալների բազա

Որոշ ձեռքբերումներ, որոնց կարող եք հանդիպել.

  • Հնարավոր է, որ ձեր տեղակայումը կարգավորված չէ, այնպես որ գործարկեք dpkg- ի վերակազմակերպման տեղերը
  • Grafana- ի տեղադրումը կարող է կախվել, այնպես որ պարզապես նորից փորձեք:
  • Ներհոսքի դեմոնը կարող է ժամանակին չսկսվել, որպեսզի սցենարը ավելացնի տվյալների բազան, տեսակը

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

  • Այս սցենարը գործում է միայն որպես կանխադրված pi օգտվող: Անհրաժեշտության դեպքում ձեզ անհրաժեշտ է փոխել pi- ն ձեր օգտվողի անունով, եթե այլ օգտվողի տակ եք:

Վերջին բանը `cron աշխատանք ավելացնելն է: Ես չկարողացա գտնել այս տարբերակը գրելու շատ լավ միջոց, այնպես որ ձեռքով խմբագրելու համար մուտքագրեք 'crontab -e' և ավելացրեք ' * * * * * python /home/pi/.nocand/nocan_ufire.py':

Այս ամենն անելուց հետո կարող եք ստուգել, որ ամեն ինչ կարգավորված է և աշխատում է այնպես, ինչպես պետք է: Գրաֆանան ապրում է https:// [Raspberry Pi's Address] ՝ 3000/հասցեում: Դուք պետք է տեսնեք մուտքի էջ, admin/admin- ը կանխադրված է:

Ronամանակագրությունը կարելի է գտնել https:// [Raspberry Pi's Address]: 8888/

Քայլ 3: UFire ապարատը միասին դնելը

UFire ապարատային սարքավորումների միավորում
UFire ապարատային սարքավորումների միավորում

Նախքան սարքավորումները հավաքելը, պետք է անդրադառնալ մի բանի. UFire ISE տախտակը կարող է օգտագործվել ինչպես pH- ի, այնպես էլ ORP- ի չափման համար: Սարքավորումը նույնն է, բայց ծրագրակազմը ՝ այլ: Քանի որ ապարատային սարքավորումները նույնն են, դա նշանակում է, որ I2C հասցեն, լռելյայն, նույնն է: Եվ սենսորները շփվում են I2C- ի միջոցով, այնպես որ մեկը պետք է փոխվի: Այս նախագծի համար մենք պատրաստվում ենք ընտրել ISE տախտակներից մեկը և այն օգտագործել ORP- ի չափման համար: Հետևելով այստեղ կատարված քայլերին ՝ հասցեն փոխեք 0x3e- ի:

Այժմ, երբ հասցեն փոխվել է, սարքավորումները համատեղելը հեշտ է: Այս կարգավորումը հիմնված է ավելի վաղ կատարված աշխատանքի վրա, որը հիմնականում կատարում էր նույն բանը, բայց տվյալների փոխանցման համար ավելի շուտ օգտագործում էր BLE, քան CAN: Այդ մասին կարող եք կարդալ Arduino Project Hub- ում: Բոլոր սենսորային սարքերն օգտագործում են Qwiic միացման համակարգը, այնպես որ պարզապես միացրեք ամեն ինչ շղթայի մեջ: Սենսորներից մեկը CANZERO հանգույցին միացնելու համար ձեզ հարկավոր կլինի մեկ Qwiic to Male մետաղալար: Հաղորդալարերը հետևողական են և գունավորված: Սևը միացրեք հանգույցի GND- ին, կարմիրը ՝ +3.3V կամ +5V կապին, կապույտը ՝ SDA կապին, որը D11 է, և դեղինը ՝ SCL կապին ՝ D12- ում:

Այս նախագծի համար ակնկալում է, որ ջերմաստիճանի մասին տեղեկատվությունը կգա EC սենսորից, ուստի համոզվեք, որ ջերմաստիճանի տվիչ կցեք EC տախտակին: Այնուամենայնիվ, բոլոր տախտակները ունեն ջերմաստիճանը չափելու ունակություն: Մի մոռացեք համապատասխան սենսորներին կցել EC, pH և ORP զոնդերը: Նրանք հեշտությամբ կցվում են BNC միակցիչներով: Եթե դուք ունեք պարիսպ, ապա այս ամենը ներսում դնելը լավ գաղափար կլինի, հատկապես հաշվի առնելով, որ ջուրը ներգրավվելու է:

Քայլ 4: NoCAN սարքաշարը

NoCAN սարքավորում
NoCAN սարքավորում

NoCAN սարքավորումների հավաքումը նույնպես հեշտ է: Կցեք PiMaster- ը Raspberry Pi- ին և գտեք դրա համար համապատասխան սնուցման աղբյուր:

Հետևեք Օմզլոյի հրահանգներին ՝ ձեր նախագծի համար մալուխներ պատրաստելու վերաբերյալ:

Տեղադրեք ձեր հանգույցը և տեղ գտեք PiMaster- ի համար:

Քայլ 5. Programրագրեք CANZERO հանգույցը

Programրագրեք CANZERO հանգույցը
Programրագրեք CANZERO հանգույցը

Այս կարգաբերման հիանալի բաներից մեկն այն է, որ դուք կարող եք մուտք գործել հանգույցներ նույնիսկ տեղադրվելուց հետո: Նրանք ծրագրավորված են CAN մետաղալարով, այնպես որ կարող եք դրանք նորից ծրագրավորել ցանկացած պահի, երբ ցանկանում եք:

Դրա համար ձեզ հարկավոր կլինի տեղադրված Arduino IDE, ձեր ցանցում PiMaster և CAN ավտոբուսին միացված ձեր հանգույցը: Ձեզ նույնպես պետք է ձեր զարգացման համակարգչում տեղադրված nocanc անունով ծրագիր: Այդ ամենը նկարագրված է Օմզլոյի տեղադրման էջում:

Այցելեք GitHub և պատճենեք կոդը Arduino IDE նոր ուրվագծի մեջ: Փոխեք տախտակը Omzlo CANZERO- ի և ընտրեք «Պորտ» ընտրացանկի հանգույցը: Այնուհետև պարզապես կտտացրեք բեռնել, ինչպես սովորաբար: Եթե ամեն ինչ ընթանում էր ըստ պլանի, դուք պետք է ունենաք ծրագրավորված հանգույց, որը պատրաստ է որոշ չափումներ կատարել:

Քայլ 6: Ինչպե՞ս է այս ամենը կապվում միասին:

Ինչպե՞ս է այս ամենը կապվում միասին
Ինչպե՞ս է այս ամենը կապվում միասին

Այժմ, երբ ամբողջ ծրագրակազմը և սարքաշարը տեղադրված են, եկեք մի պահ խոսենք այն մասին, թե ինչպես է այդ ամենը իրականում աշխատելու: Եվ ցուցադրեք իմ GIMP հմտությունները…

Արդյունքում:

  1. CANZERO հանգույցը միացված է PiMaster- ին և տեղակայված է ինչ -որ տեղ
  2. Ամեն րոպե PiMaster- ում աշխատում է Cron- ի աշխատանքը: Այն կկատարի պիթոնի սցենար:
  3. Պիթոնի սցենարը հրաման կուղարկի հանգույցին ՝ ասելով, որ նա պետք է կատարի չափում կամ այլ գործողություն:
  4. Հանգույցը կկատարի այն, ինչ հրամանն էր և արդյունք կվերադարձնի JSON ձևաչափով:
  5. Պիթոնի սցենարը կստանա այդ արդյունքը, կվերլուծի այն և դրանով կթարմացնի InfluxDB- ը:

Վերջին քայլը դիտելն է, թե ինչպես են տվյալները հավաքվում որոշ գեղեցիկ արտաքին գծապատկերներում:

Քայլ 7: ronամանակագրիչի կամ Գրաֆանայի կարգավորում

Chronograf- ի կամ Grafana- ի կարգավորում
Chronograf- ի կամ Grafana- ի կարգավորում

Վերջին բանը, որ պետք է անել, Chronograf- ում կամ Grafana- ում որոշ գծապատկերներ տեղադրելն է:

Դուք պետք է կարգավորեք տվյալների աղբյուրը: InfluxDB- ի կանխադրված պայմանները լավ են: Դրա հասցեն է 'https:// localhost: 8086' և չկա օգտվողի անուն կամ գաղտնաբառ:

Երկուսն էլ նման են նրանով, որ դրանք կազմակերպված են կառավարման վահանակների մեջ, որոնց ներսում կա ցանկացած քանակի գծապատկեր: Երկուսն էլ ունեն Explore տարածք, որը թույլ է տալիս տեսնել չափումները և ինտերակտիվ ստեղծել գծապատկերներ: Հիշեք, որ տվյալների բազայի անունը «nocan» է և կազմակերպված է մեկ արժեքով մի քանի չափումների մեջ:

Ինչպես նշեցի, ես նախընտրում եմ Grafana- ն, քանի որ այն ավելի կարգավորելի է, քան Chronograf- ը: Այն նաև շարժական է, որտեղ Chronograf- ը չկա: Գծապատկերները հեշտությամբ տեղադրվում և տարածվում են

Քայլ 8: Որոշ բարելավումներ

  • Դուք կարող եք սահմանել ձեր Raspberry Pi- ի տանտիրոջ անունը `ձեր ցանցում ավելի հեշտ մուտք գործելու համար: Դուք կարող եք դա անել raspi-config- ում: Ես իմը փոխեցի nocan- ի, այնպես որ կարողացա գնալ nocan.local ՝ դրան մուտք գործելու համար (չի աշխատում Android- ում):
  • Ձեր Raspberry Pi- ին ձեր ցանցից դուրս մուտք գործելու համար կարող եք տեղադրել այնպիսի ծրագիր, ինչպիսին է ngrok- ը:
  • Օգտագործեք Kapacitor- ի տրամադրած մեթոդներից մեկը `ծանուցումներ տրամադրելու համար:
  • Ավելացրեք ավելի շատ տվիչներ, իհարկե:

Խորհուրդ ենք տալիս: