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

AirCitizen - Օդի որակի մոնիտորինգ. 11 քայլ (նկարներով)
AirCitizen - Օդի որակի մոնիտորինգ. 11 քայլ (նկարներով)

Video: AirCitizen - Օդի որակի մոնիտորինգ. 11 քայլ (նկարներով)

Video: AirCitizen - Օդի որակի մոնիտորինգ. 11 քայլ (նկարներով)
Video: AirCitizen 2024, Նոյեմբեր
Anonim
AirCitizen - Օդի որակի մոնիտորինգ
AirCitizen - Օդի որակի մոնիտորինգ

Բարեւ բոլորին

Այսօր մենք ձեզ կսովորեցնենք, թե ինչպես վերարտադրել մեր նախագիծը ՝ AirCitizen bythe AirCitizenPolytech Team:

--

Գալիս է «OpenAir / Ո՞րն է ձեր եթերը»: Sրագրեր, AirCitizen նախագիծը նպատակ ունի հնարավորություն ընձեռել քաղաքացիներին ակտիվորեն գնահատել իրենց անմիջական միջավայրի որակը և, մասնավորապես, իրենց շնչած օդը `առաջարկելով նրանց հետևյալից.

Կառուցել

Իրականացրեք «Fablabs»-ում (թվային արտադրության լաբորատորիաներ) շրջակա միջավայրի չափումների շարժական կայաններ, որոնք միավորում են տարբեր էժան տվիչներ (օրինակ ՝ ջերմաստիճան, խոնավություն, ճնշում, NOx գազ, օզոն կամ PM10 և PM2.5 մասնիկներ):

Չափել

Կատարել տեղային չափումներ `շրջակա միջավայրի փոփոխականությունների ժամանակա-ժամանակային փոփոխականությունը ընդգծելու համար. Մի կողմից աշխարհագրական-կլիմատոլոգների աջակցությամբ շրջիկ արշավների ժամանակ, իսկ մյուս կողմից` տարբեր վայրերում, որոնք ներկայացնում են բազմազան բնապահպանական համատեքստ:

Տարածել

Նպաստել գիտելիքների կատարելագործմանը `այդ չափումները կիսելով բնապահպանական տվյալների բազայում և դրանով իսկ հնարավորություն տալով օդի աղտոտվածության առցանց քարտեզագրումը:

--

Հայեցակարգն այն է, որ ստեղծվի ինքնավար կայան, որը կարող է հավաքել շրջակա միջավայրի տվյալները և դրանք ուղարկել SigFox ցանցով ՝ վահանակի վրա:

Այսպիսով, մի կողմից, մենք ձեզ ցույց կտանք, թե ինչպես պետք է նախագծել ապարատը, իսկ մյուս կողմից `ինչպես կատարել ծրագրային մասը:

Քայլ 1: Սարքավորումներ

Սարքավորումներ
Սարքավորումներ
Սարքավորումներ
Սարքավորումներ

Ահա այն բաղադրիչները, որոնք մենք որոշեցինք օգտագործել կայանի նախագծման համար.

-STM32 NUCLEO -F303K8 -> Լրացուցիչ տեղեկությունների համար

-HPMA115S0 -XXX (Մասնիկների ցուցիչ PM2.5 & PM10) -> Լրացուցիչ տեղեկությունների համար

- SHT11 կամ SHT10 կամ STH15 կամ DHT11 (ջերմաստիճան և հարաբերական խոնավություն) -> Լրացուցիչ տեղեկությունների համար

- MICS2714 (NO2 ցուցիչ, ազոտի երկօքսիդի տվիչ) -> Լրացուցիչ տեղեկությունների համար

- Արևային վահանակ x2 (2W) -> Լրացուցիչ տեղեկությունների համար

- Մարտկոց LiPo 3, 7 V 1050 mAh -> Լրացուցիչ տեղեկությունների համար

- Կարգավորող LiPo Rider Pro (106990008) -> Լրացուցիչ տեղեկությունների համար

- BreakOut SigFox BRKWS01 + 1 լիցենզիա -> Լրացուցիչ տեղեկությունների համար

- 7 դիմադրություն (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)

- 1 կոնդենսատոր (100nF)

- 1 տրանզիստոր (2N222):

! ! ! HPMA- ի և SHT11- ի միջև միջամտությունները կանխելու համար դուք պետք է հեռացնեք SB16- ը և SB18- ը stm32 nucleo տախտակի վրա:

Հիմնականում այսպես պետք է միացնել բաղադրիչները.

  1. Եռակցել, զուգահեռաբար, արևային վահանակները:
  2. Միացրեք դրանք LiPo Rider Pro- ին և միացրեք մարտկոցը LiPo Rider Pro- ին:
  3. Ինչպես վերը նշված լուսանկարը, միացրեք բոլոր տարրերը STM32- ին: Միացրեք միայն մեկ ջերմաստիճանի և խոնավության տվիչ, ոչ թե 2: Մի մոռացեք ռեզիստորների, կոնդենսատորի և տրանզիստորի մասին:
  4. Ի վերջո, միացրեք STM32- ը LiPo Rider Pro- ին USB մալուխով:

Հաջորդ քայլը այլընտրանք է այս լարային:

Քայլ 2: Սարքաշար - PCB

Սարքավորումներ - PCB
Սարքավորումներ - PCB

Մենք որոշեցինք օգտագործել Autodesk Eagle- ը `տպագիր տպատախտակի (PCB) նախագծման համար:

Կարող եք ընտրել DHT կամ SHT միացումը, մենք ընտրեցինք այս 2 սենսորների համար նախագծել երկու մատնահետք `անհրաժեշտության դեպքում սենսորը փոխելու համար:

Հավելվածում կարող եք ներբեռնել Eagle հայեցակարգի ֆայլերը, որպեսզի կարողանաք այն հեշտությամբ պատրաստել ինքնուրույն:

Սարքը մատակարարելու համար մենք օգտագործում ենք stm32- ի 5V քորոցը: Այս կազմաձևում սնուցվում է միայն stm32 միջուկը:

Այսպիսով, մենք կարող ենք օգտագործել MCU- ի խոր քնի ռեժիմը `ապահովելով ցածր քնի հոսանք: Սպասման կարգավիճակում քնի ամբողջ հոսանքը ընկնում է XXµA- ից ցածր:

Քայլ 3. LPWAN արձանագրություն. Sigfox Communication

LPWAN արձանագրություն. Sigfox Communication
LPWAN արձանագրություն. Sigfox Communication

Sigfox- ը LPWAN արձանագրություն է, որը ստեղծվել է ֆրանսիական հեռահաղորդակցության ընկերության `SIGFOX- ի կողմից

Այն հնարավորություն է տալիս հեռավոր սարքերին միանալ ծայրահեղ նեղ գոտու (UNB) տեխնոլոգիայի միջոցով: Դրանցից շատերի համար կպահանջվի միայն ցածր թողունակություն `փոքր քանակությամբ տվյալների փոխանցման համար: Netանցերը կարող են մշակել միայն մոտավորապես 12 բայթ մեկ հաղորդագրության համար և միևնույն ժամանակ օրական 140 հաղորդագրությունից ոչ ավելի:

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

AirCitizen- ի համար հայտնաբերված տվյալների ձևաչափը պարզ է և տվյալների քանակը ճիշտ Sigfox- ի օգտագործման համար `տվիչներից հայտնաբերված տվյալները մեր IOT հարթակ` ThingSpeak թարգմանելու համար:

Մենք կներկայացնենք Sigfox- ի օգտագործումը հետևյալ քայլերում:

Քայլ 4: Softwareրագրակազմի կազմաձևում

Softwareրագրաշարի կազմաձևում
Softwareրագրաշարի կազմաձևում
Softwareրագրաշարի կազմաձևում
Softwareրագրաշարի կազմաձևում

Հետո գիտակցելով մեր սխեման, եկեք անցնենք մեր STM32 F303K8 միկրոկոնտրոլերի մշակմանը:

Ավելի պարզության համար կարող եք ընտրել ծրագրավորել Arduino- ում:

Քայլ 1. Եթե դեռ չեք տեղադրել Arduino IDE- ն, ներբեռնեք և տեղադրեք այն այս հղումից: Համոզվեք, որ ընտրել եք ձեր ճիշտ օպերացիոն համակարգը:

Հղում ՝ Ներբեռնեք Arduino- ն

Քայլ 2. Arduino IDE- ի տեղադրումից հետո բացեք և ներբեռնեք STM32 տախտակի համար անհրաժեշտ փաթեթները: Դա կարելի է անել ՝ ընտրելով Ֆայլ -> Նախապատվություններ:

Քայլ 3. Նախապատվությունների վրա սեղմելը կբացի ստորև ներկայացված երկխոսության տուփը: Տախտակների մենեջերի URL- ի լրացուցիչ տեքստային տուփում տեղադրեք ստորև բերված հղումը.

github.com/stm32duino/BoardManagerFiles/ra…

և սեղմեք OK:

Քայլ 4: Այժմ գնացեք Գործիք -> Տախտակներ -> Տախտակի կառավարիչ: Սա կբացի «Տախտակների կառավարիչ» երկխոսության տուփը, կփնտրի «STM32 միջուկներ» և կտեղադրի հայտնվող փաթեթը (STMicrolectronics փաթեթ):

Քայլ 5: Փաթեթից հետո տեղադրումն ավարտված է: Գնացեք Գործիքներ և ոլորեք ներքև ՝ գտնելու «Nucleo-32 շարքը»: Այնուհետև համոզվեք, որ տարբերակը «Nucleo F303K8» է և փոխեք բեռնման եղանակը «STLink» - ի:

Քայլ 6. Այժմ, միացրեք ձեր տախտակը համակարգչին և ստուգեք, թե որ COM պորտին է միացված տախտակը սարքի կառավարչի միջոցով: Այնուհետև ընտրեք նույն նավահանգստի համարը Գործիքներ-> Պորտ:

Այժմ դուք պատրաստ եք ծրագրավորել ձեր STM32 F303K8- ը Arduino- ով:

Քայլ 5. Programրագրեք ձեր STM32- ը

Կարգավորումն ավարտվելուց հետո դուք պետք է ծրագրավորեք ձեր միկրոհսկիչը `տվյալների հավաքման և ուղարկման համար:

Քայլ 1. Ստուգեք մուտքի/ելքի ազդեցությունը և չափում է ժամանակային նշանը ծածկագրի «Սահմանել» մասում:

Քայլ 2: Վերբեռնեք վերը նշված կոդը stm32- ում, բացեք սերիական մոնիտորը և վերագործարկեք սարքը: «AT» հրամանը պետք է հայտնվի էկրանին, եթե ոչ, ստուգեք մուտքի/ելքի հայտարարագիրը:

Դուք կարող եք պատկերացում կազմել ձեր տվյալների ճշմարտացիության մասին `խորհրդակցելով կցված ֆրանսիական օրենսդրության չափանիշների հետ:

Եկեք անցնենք վահանակի կազմաձևմանը:

Քայլ 6: ThingSpeak - 1

ThingSpeak - 1
ThingSpeak - 1
ThingSpeak - 1
ThingSpeak - 1

Նախքան կազմաձևելը, թե ինչպես կարելի է տվյալների կայանից վերահղում դեպի ThingSpeak հարթակ, դուք պետք է ստեղծեք ThingSpeak հաշիվ:

Գրանցվել ՝ ThingSpeak կայք

Քայլ 1: Այժմ կտտացրեք «Նոր ալիք»: Սա կբացի մի ձև: Մուտքագրեք անուն և նկարագրություն (անհրաժեշտության դեպքում):

Ստեղծեք 5 դաշտ.

  • Դաշտ 1: pm2, 5
  • Դաշտ 2: pm10
  • Դաշտ 3: ջերմաստիճան
  • Դաշտ 4 ՝ խոնավություն
  • Դաշտ 5 ՝ NO2

Այս վերնագրերը չեն լինելու մեր գծապատկերների վերնագրերը:

Եթե ձեզ օրինակ է պետք, տես վերևի լուսանկարը:

Անհրաժեշտ չէ ավելի շատ դաշտեր լրացնել, բայց դա կարող է հետաքրքիր լինել, եթե մուտքագրեք գտնվելու վայրը:

Ոլորեք ներքև և «Պահեք ալիքը»:

Քայլ 2: AirCitizen Station Channel:

Այժմ դուք կարող եք տեսնել 5 գծապատկեր ունեցող էջ: Մատիտի խորհրդանիշի վրա սեղմելով, կարող եք փոխել գրաֆիկի հատկությունները:

Արդյունքը վերը նշված երկրորդ պատկերն է:

Այս քայլին այդ գրաֆիկները մասնավոր են: Ստացված տվյալները ստանալուց հետո դրանք կկարողանաք հրապարակել:

Քայլ 3: Ձեր գրաֆիկների կազմաձևումից հետո: Գնացեք «API բանալիներ» ներդիրին: Նայեք API- ի հարցման հատվածին և ավելի ճշգրիտ առաջին դաշտին ՝ «Թարմացրեք ալիքի լրահոսը»: Նշեք API- ի բանալին:

Դուք կունենաք այսպիսի բան.

ՇՏԱՊԵՔ

Այժմ դուք կարող եք անցնել հաջորդ գլխին:

Քայլ 7. Հաղորդակցություն Sigfox մոդուլի և ThingSpeak պլատֆորմի միջև

Հաղորդակցություն Sigfox մոդուլի և ThingSpeak պլատֆորմի միջև
Հաղորդակցություն Sigfox մոդուլի և ThingSpeak պլատֆորմի միջև
Հաղորդակցություն Sigfox մոդուլի և ThingSpeak պլատֆորմի միջև
Հաղորդակցություն Sigfox մոդուլի և ThingSpeak պլատֆորմի միջև

Ձեր տեղեկությունների համար նշեք, որ յուրաքանչյուր Sigfox մոդուլային քարտ ունի քարտի վրա գրված եզակի համար և PAC համար:

ThingSpeak- ի տվյալները ստանալու համար դուք պետք է դրանք վերահղեք:

Տվյալները կայանից անցնում են դեպի Sigfox- ի հետնապահ և կուղղորդվեն դեպի ThingSpeak սերվեր:

Բացատրությունների համար տես վերևի առաջին նկարը:

Քայլ 1. Մենք չենք բացատրի, թե ինչպես գրանցվել Sigfox- ում ՝ ինտերնետում առկա բազմաթիվ ձեռնարկների պատճառով:

Գնացեք Sigfox Backend- ով:

Կտտացրեք «Սարքի տեսակը», այնուհետև կտտացրեք ձեր հանդերձանքի տողին և ընտրեք «Խմբագրել»:

Այժմ գնացեք «Հետադարձ կապ» բաժնում և կտտացրեք «Նոր», «Պատվերով հետադարձ»:

Քայլ 2:

Դուք պետք է լինեք կազմաձևման էջում.

Տեսակ ՝ ՏՎՅԱԼՆԵՐ և UPLINK

Ալիք ՝ URL

Կրկնօրինակ ուղարկեք ՝ ոչ մեկը

Պատվերով բեռնվածության կազմաձևում. Սահմանեք տվյալների աղբյուրը և որոշեք տվյալների ձևը: Դուք պետք է գրեք հետևյալ կերպ

VarName:: Տեսակը ՝ NumberOfBits

Այս դեպքում մենք ունենք 5 արժեք ՝ pm25, pm10, ջերմաստիճան, խոնավություն և NO2:

pm25:: int: 16 pm10:: int: 16 ջերմաստիճան:: int: 8 խոնավություն:: uint: 8 NO2:: uint: 8

Url օրինակը. Սա շարահյուսություն է: Օգտագործեք նախկինում գտնված API բանալին և տեղադրեք այն «api_key =» - ից հետո:

api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXX&field1={customData#pm25}&field2={customData#pm10}&field3={customData#temperature}&field4={customData#=umUM}

Օգտագործեք HTTP մեթոդը `GET

Ուղարկեք SNI ՝ ON

Վերնագրեր. Չկա

Այժմ կտտացրեք «Լավ»:

ThingSpeak API- ի ձեր հետադարձ կապն այժմ կազմաձևված է: (Ներկայացում վերը նշված երկրորդ նկարում):

Քայլ 8: ThingSpeak - 2

ThingSpeak - 2
ThingSpeak - 2

Այժմ դուք կարող եք ավելի ընտրովի լինել առանցքների նվազագույն և առավելագույն արժեքները փոփոխելու հարցում:

Անհրաժեշտության դեպքում կտտացրեք մատիտի պատկերանշանին գրաֆիկի վերևի աջ մասում:

Տիպիկ արժեքներ.

PM 2, 5 & PM 10 = ug/m^3

Temերմաստիճանը = ° C

Խոնավություն = %

Ազոտի երկօքսիդ = ppm

Դուք պետք է ունենաք վերը նշված երկու նկարների նման մի բան:

Կարող եք նաև ավելացնել այլ վիդջեթներ, ինչպիսիք են «Թվային ցուցադրում» կամ «Չափիչ»:

Վերջապես, ձեր ալիքը հանրային դարձնելու համար անցեք «Համօգտագործում» ներդիրին և ընտրեք «Կիսվել ալիքի դիտումը բոլորի հետ»:

Քայլ 9. Բոնուս - ThingTweet և React

Բոնուս - ThingTweet և արձագանքել
Բոնուս - ThingTweet և արձագանքել
Բոնուս - ThingTweet և արձագանքել
Բոնուս - ThingTweet և արձագանքել
Բոնուս - ThingTweet և արձագանքել
Բոնուս - ThingTweet և արձագանքել

Լրացուցիչ. Թվիթ, եթե պայմանը բավարարված է:

Քայլ 1: Ստեղծեք twitter հաշիվ կամ օգտագործեք ձեր անձնական twitter հաշիվը:

Գրանցվել - Twitter

Քայլ 2. Thingspeak- ում անցեք «Appրագրեր», այնուհետև կտտացրեք «ThingTweet» - ին:

Կապեք ձեր twitter հաշիվը `կտտացնելով« Link Twitter հաշվի »վրա:

Քայլ 3: Այժմ, վերադարձեք «sրագրեր», այնուհետև կտտացրեք «Արձագանք»:

Ստեղծեք նոր React ՝ կտտացնելով «Նոր React»:

Օրինակով ՝

Արձագանքման անվանումը ՝ 15 ° C- ից բարձր ջերմաստիճան

Վիճակի տեսակը ՝ թվային

Թեստի հաճախականությունը `տվյալների մուտքագրում

Վիճակը, եթե ալիքը

Դաշտ: 3 (ջերմաստիճան)

Նշան. Ավելի մեծ է, քան

Արժեքը `15

Գործողություն ՝ ThingTweet

Այնուհետև թվիթ տվեք. Theերմաստիճանը 15 ° C- ից բարձր է:

օգտագործելով Twitter հաշիվը

Ընտրանքներ. Գործարկել գործողությունը ամեն անգամ, երբ պայմանը բավարարված է

Այնուհետև կտտացրեք «Պահել ռեակցիան»:

Այժմ ձեր թվիթը թվիթ է, եթե պայմանը բավարարված է, և շատ այլ պայմաններ կարող են կազմաձևվել ՝ կախված PM10- ի մակարդակից:

Քայլ 10: Հիմա ձեր հերթն է:

Վերջապես, դուք այժմ ունեք բոլոր տարրերը ՝ ձեր սեփական AirCitizen Station- ը վերարտադրելու համար:

Տեսանյութ. Դուք կարող եք դիտել տեսանյութ, որտեղ մենք ներկայացնում ենք մեր աշխատանքը:

Մեր ThingSpeak հարթակը ՝ AirCitizenPolytech Station

--

Շնորհակալություն ուշադրության համար !

AirCitizen Polytech թիմը

Քայլ 11: Տեղեկանք և մատենագիտություն

https://www.sigfox.com/hy

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