Բովանդակություն:
- Պարագաներ
- Քայլ 1: Գործի տպում (ըստ ցանկության)
- Քայլ 2: Լարերի տեղադրում
- Քայլ 3: Ստեղծեք ծրագիր Things Network- ում
- Քայլ 4. Arduino- ի միացում իրերի ցանցին
- Քայլ 5. Իրերի ցանցի տվյալների մեկնաբանություն
- Քայլ 6: Միացրեք ձեր ծրագիրը AWS- ին
- Քայլ 7: Լամբդայի ստեղծում
- Քայլ 8: Ստեղծեք API վերջնակետ
- Քայլ 9. Միացրեք ձեր բույսը սոցիալական բույսերի ցանցին
- Քայլ 10: Հենվեք մեջքին և թեքեք ինքներդ մեջքին
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Մեր գրասենյակում կա մի կակտուս, որը չարժանացավ իր արժանի ուշադրությանը: Քանի որ ես աշխատում էի ՏՏ ընկերությունում և ցանկանում էի փորձարկել LoRa- ն, առանց սերվերների լուծումները և AWS- ը, ես մեր կակտուսին անվանեցի Սթիվ և կապեցի ամպի հետ: Այժմ դուք կարող եք վերահսկել Սթիվին աշխարհի գրեթե ցանկացած վայրից ՝ օգտագործելով այն կայքը, որը ես պատրաստել եմ նրա համար ՝ Սթիվի վեբ ինտերֆեյսը:
Պարագաներ
1 կակտուս / ձեր սիրած բույսը
1 Arduino MKR WAN 1300 (Arduino խանութ)
1 868 մՀց/914 մՀց (կախված է ձեր գտնվելու վայրից) ալեհավաք (Amazon)
1 LoRa Gateway, երբ մեկի միջակայքում չէ (Amazon)
2 AA մարտկոց
1 TMP102 սենսոր (Amazon)
1 հողի խոնավության տվիչ (Amazon)
Հաղորդիչ մալուխներ (Amazon)
զոդման երկաթ
Մարտկոցի կրիչ (Amazon)
գործը
ըստ ցանկության. 3D տպիչ (եթե կարող եք օգտագործել 3D տպիչ, ապա ձեզ հարկավոր չէ մարտկոցի պահոց կամ պատյան)
Քայլ 1: Գործի տպում (ըստ ցանկության)
Ներբեռնեք այս zip ֆայլը, բացեք այն և տպեք ֆայլերը: Ֆայլերը նշված են նյութի անհրաժեշտ քանակությամբ:
Ազատորեն ավելացրեք ինչ -որ բան կափարիչին, ինչպես ես արեցի:
Ես դրանք տպել եմ ՝ օգտագործելով 0,2 մմ բարձրության շերտ և 15% լցոնում:
Արկղերը կարելի է ամրացնել ՝ օգտագործելով m3 պտուտակներ:
Երբ տուփը տպագրվում է, կարող եք մի փոքր մետաղալար օգտագործել մարտկոցի բռնակի վրա անհրաժեշտ միացումներ կատարելու համար: Որպես հղում կարող եք օգտագործել տրամադրված նկարը:
Քայլ 2: Լարերի տեղադրում
- Արդուինոն միացնելուց առաջ համոզվեք, որ ալեհավաքը միացված է, առանց ալեհավաքի արդուինոյի սնուցումը կարող է վնաս պատճառել:
- Միացրեք ամեն ինչ `համաձայն էլեկտրագծերի սխեմայի:
- Եթե դուք կպցնում եք այս լարերը, համոզվեք, որ սենսորների կամ արդուինոյի վրա որևէ կապում չեք կամրջում:
Քայլ 3: Ստեղծեք ծրագիր Things Network- ում
- Գնացեք https://www.thethingsnetwork.org/ և եթե դեռ հաշիվ չունեք, ստեղծեք այն:
- Հաշիվ ունենալուց և մուտք գործելուց հետո կարող եք գնալ մխիթարել (վերևի աջ անկյունում, կտտացրեք ձեր օգտվողի անունին, այնուհետև վահանակին):
- Սեղմեք դիմումների վրա:
- Էջը բեռնելուց հետո դուք պետք է կարողանաք սեղմել «ավելացնել ծրագիր»:
- Լրացրեք ձևը և ներքևում ընտրեք ճիշտ շրջանը: Կտտացրեք «ավելացնել ծրագիր»:
- Շնորհավորում ենք, դուք հենց նոր ծրագիր ստեղծեցիք իրերի ցանցում: = Դ
Քայլ 4. Arduino- ի միացում իրերի ցանցին
Արդուինոն ծրագրավորելու համար խորհուրդ եմ տալիս օգտագործել առցանց arduino ide- ը, ինչը շատ դյուրին է դարձնում անհրաժեշտ գրադարանում բեռնումը:
- Բացեք ձեր ծրագիրը իրերի ցանցում:
- Պետք է լինի դաշտ, որը կոչվում է սարքեր, կտտացրեք գրանցել սարքը:
- դուք կտեսնեք մի դաշտ, որը կոչվում է Device Id: սա այն անունն է, որը ցանկանում եք տալ ձեր սենսորին: Պետք է լինի մեկ այլ պիտակ ՝ Device EUI, սա եզակի բանալին է, որն օգտագործում է ձեր arduino- ն ինքնությունը հաստատելու համար:
- Այս բանալին ստանալու համար մենք պետք է arduino- ն թռցնենք կոնկրետ ուրվագծով: Էսքիզը կարելի է գտնել այստեղ: Այս ուրվագիծը պետք է գործարկվի, իսկ սերիական մոնիտորի վրայով պետք է ուղարկվի eui: Պատճենեք eui- ն սերիական մոնիտորից դեպի Device EUI դաշտ իրերի ցանցում:
- Կտտացրեք գրանցվել:
- Այժմ մենք գրանցեցինք մեր arduino- ն ամպին: Itամանակն է սկսել հաղորդագրություններ ուղարկել:
- Դուք պետք է վերահղված լինեիք սարքի ակնարկ կոչվող էջին: Այստեղ կարող եք տեսնել ձեր սարքի eui- ն, ծրագրի eui- ն և ծրագրի բանալին:
- Շարունակելու համար մենք պետք է վերջնական ուրվագիծը հասցնենք arduino- ի: Էսքիզը կարելի է գտնել այստեղ:
- Երբ բացեք այս հղումը, կտեսնեք, որ կան բազմաթիվ ներդիրներ: Բացեք գաղտնիքների ներդիրը: Կան 2 բանալիներ, որոնք անհրաժեշտ են բաների ցանցից գաղտնիքների ֆայլը հաղթահարելու համար:
- Այս ստեղները լրացնելուց հետո կարող եք լուսավորել arduino- ն: Այն կսկսի ամեն ժամ մեկ անգամ տվյալներ ուղարկել իրերի ցանց:
-
Եթե ամեն ինչ ճիշտ է ընթանում, դուք պետք է կարողանաք տեսնել հաղորդագրությունների ներթափանցումը իրերի ցանցում ՝ իրերի arduino- ն (տախտակի միակ կոճակը) վերականգնելուց հետո:
- Եթե այնտեղ որևէ տվյալ չկա, դա կարող է նշանակել, որ դուք ճիշտ LoRa դարպասի տիրույթում չեք: Կարող եք ստուգել քարտեզը ՝ առկա բոլոր դարպասներով ՝ https://thethingsnetwork.org կայքում: Մեկ ալիքով LoRa դարպասները չեն աշխատի առաջարկվող arduino- ի հետ:
- Եթե դուք դարպասի տիրույթում չեք, ապա կարող եք միացնել ձեր սեփական դարպասը իրերի ցանցին: Այս դարպասները սովորաբար ունեն բավականին լավ ձեռնարկներ, թե ինչպես միացնել դրանք: Նայեք մատակարարման ցանկին `առաջարկվող դարպասի համար:
Քայլ 5. Իրերի ցանցի տվյալների մեկնաբանություն
- Իրերի ցանցի հաղորդագրություններից օգտագործելի տվյալներ ստանալու համար մեզ անհրաժեշտ է վերծանել անցանց հոսքը:
- Իրերի ցանցում անցեք ձեր դիմումին:
- Պետք է լինի «Բեռի ձևաչափեր» պիտակով ներդիր, կտտացրեք այս ներդիրին:
- Մեկը մյուսի կողքին կա 4 կոճակ ՝ «ապակոդավորիչ», «փոխարկիչ», «վավերացուցիչ», «կոդավորիչ»:
- Կտտացրեք ապակոդավորիչի վրա:
- Տեղադրեք հետևյալ կոդը այնտեղ:
ֆունկցիա Վերծանող (բայթ, նավահանգիստ) {// Վերծանեք վերին կապի հաղորդագրությունը բուֆերային // (զանգված) բայթերից դեպի դաշտերի օբյեկտ: var stringToDecode = bin2String (բայթ); var res = stringToDecode.split (""); var temp = res [1]; var խոնավ = res [3]; var bat = res [5]; var վերծանված = {"ջերմաստիճան". ջերմաստիճան, "խոնավություն" `խոնավ," մարտկոց "` չղջիկ}; վերադարձը վերծանված; } գործառույթը bin2String (զանգված) {var result = ""; համար (var i = 0; i <array.length; ++ i) {result+= (String.fromCharCode (array ))); } վերադարձի արդյունքը;}
- Կտտացրեք պահպանել:
- Երբ դուք վերականգնում եք arduino- ն և դիտում ձեր տվյալների ներդիրը, դուք պետք է տեսնեք գեղեցիկ ձևաչափված json օբյեկտ, որը հեշտությամբ կարող եք կարդալ:
Քայլ 6: Միացրեք ձեր ծրագիրը AWS- ին
Մենք պատրաստվում ենք օգտագործել AWS- ը ՝ իրերի ցանցից տվյալները պահելու և օգտագործելու համար: Բոլոր ռեսուրսները, որոնք մենք պատրաստվում ենք օգտագործել, ծածկված են AWS- ի անվճար մակարդակով:
- Գնացեք AWS
- Մուտք գործեք կամ ստեղծեք հաշիվ:
- Իրերի ցանցի ձեր դիմումը AWS- ին միացնելու համար խորհուրդ եմ տալիս հետևել այս ձեռնարկին ՝
- Այս ձեռնարկը ավարտելուց հետո նավարկեք aws վահանակով դեպի IoT-Core հատված:
- Ձախ menubar- ում կա «Կառավարել» պիտակը, կտտացրեք սա:
- Այժմ դուք պետք է տեսնեք մի քարտ, որի մեջ կա ձեր սենսորի անունը:
- Կրկին ձախ դաշտում կտտացրեք «Գործել»
- Եթե կա խանութ պիտակով քարտ, ապա լավ կլինի:
- Եթե ոչ, կտտացրեք «Ստեղծել»:
- Լրացրեք «Խանութ» անունը:
- Եթե ցանկանում եք, կարող եք ավելացնել նկարագրություն:
- Որպես հարցման հայտարարություն լրացրեք հետևյալ ծածկագիրը ՝ SELECT dev_id, metadata.time, payload_fields.temperature, payload_fields.moisture, payload_fields.battery FROM 'cactus_network/devices/+/up':
- «Մեկ կամ մի քանի գործողություն սահմանել» բաժնում կտտացրեք գործողություն ավելացնել:
- Ընտրեք «Պառակտել հաղորդագրությունը DynamoDb աղյուսակի (DynamoDBv2) բազմաթիվ սյուների մեջ»:
- Կտտացրեք կազմաձևել գործողությունը
- Կտտացրեք ստեղծել նոր ռեսուրս:
- Կտտացրեք Ստեղծեք աղյուսակ և տվեք ձեր սեղանին անուն:
- Հիմնական բանալու տակ լրացրեք «dev_id»:
- Կտտացրեք ավելացնել տեսակավորման բանալին
- Լրացրեք «ժամանակը»:
- Կտտացրեք ստեղծել:
- Եթե ամեն ինչ լավ է ընթանում, դուք պետք է վերադառնաք կազմաձևման գործողությունների էջ:
- Մի փոքր մոխրագույն տարածք կա ՝ «Ընտրեք կամ ստեղծեք դեր ՝ այս գործողությունը կատարելու համար AWS IoT մուտք գործելու համար»:
- Կտտացրեք Ստեղծել դեր և տվեք այս դերին անուն:
- Կտտացրեք ստեղծել դեր:
- Կտտացրեք գործողություն ավելացնել:
- Կտտացրեք ստեղծել կանոն.
- Այժմ դուք պետք է ունենաք կանոն, որը ավտոմատ կերպով պահում է DynamoDb- ի իրերի ցանցից ստացվող բոլոր հաղորդագրությունները:
- Կարող եք ստուգել, թե արդյոք դա աշխատում է ՝ վերականգնելով arduino- ն և անցեք ձեր ստեղծած DynamoDb աղյուսակին:
- Հաղորդագրության հետ պետք է լինի ձայնագրություն:
Քայլ 7: Լամբդայի ստեղծում
DynamoDB- ի տվյալները կարդալու համար մենք պատրաստվում ենք գրել AWS lambda:
- Wառայությունների ներքո գտնվող AWS կառավարման վահանակում կա «Լամբդա» պիտակով հղում, կտտացրեք այս մեկի վրա:
- Կտտացրեք ստեղծել գործառույթը:
- Ընտրեք անուն:
- Գործողության ժամանակը սահմանեք Python 3.7 -ի վրա:
- Կտտացրեք ստեղծել գործառույթը:
- Տեղադրեք այս կոդը ինտեգրված IDE- ում:
ներմուծել json
ներմուծել boto3 ներմուծման ժամանակը տվյալ ամսաթվից ներմուծման ամսաթիվ, timedelta boto3.dynamodb.conditions import Key, Attr def lambda_handler (event, context): return retreive_data () def retreive_data (): # Ստացեք ծառայության ռեսուրսը: dynamodb = boto3.resource ('dynamodb') աղյուսակ = dynamodb. Աղյուսակ ('ԱՅՍ ՍԵABԱՆԻ ԱՆՎԱՆՈՄ') այժմ = datetime.now () երեկ = այժմ - timedelta (ժամ = 24) fe = Key ('ժամանակ'): միջև (երեկ. isoformat (), այժմ. isoformat ()) սնվում = Բանալին («ժամանակը»): lt (երեկ. isoformat ()) պատասխան = table.scan (FilterExpression = fe) recordsToDelete = table.scan (FilterExpression = fed) for f in recordsToDelete ['Items']: #print (f) table.delete_item (Key = {'dev_id': f ['dev_id'], 'time': f ['time']}}) data = response ['Items '] վերադարձնել տվյալները
- Փոխեք սեղանի անունը ձեր ընտրածի վրա:
- Ոլորեք ներքև դեպի կատարման դերը:
- Կտտացրեք aws քաղաքականության ձևանմուշներից ստեղծել նոր դեր:
- Ընտրեք անուն:
- Քաղաքականության ձևանմուշների ներքո ընտրեք «Փորձարկման գոտու թույլտվությունները» և «Միկրոծառայության պարզ թույլտվություններ»:
- Կտտացրեք պահպանել:
- Սեղմեք թեստը:
- Կարող է բացվել պատուհան, պարզապես ընտրեք անուն և պահեք:
- Կրկին սեղմեք թեստը:
- Վերևում պետք է լինի կանաչ պաստառ, որն ասում է «Կատարման արդյունքը. Հաջողվեց»:
- Երբ սեղմում եք այս դրոշի վրա, դուք պետք է տեսնեք այս ֆունկցիայի ելքը, սա պետք է լինի ցուցակի ցուցակ:
- Խնդրում ենք նկատի ունենալ, որ այս սցենարը ջնջում է 24 ժամից ավելի հին բոլոր տվյալները:
- Այն դեպքում, երբ ձեր դրոշը կանաչ չէ, այլ կարմիր, դուք ինչ -որ բան բաց եք թողել, և սեղմելով այս պաստառի վրա, դուք կստանաք ամբողջական սխալ: Այս դեպքում Google- ը ձեր լավագույն ընկերն է:
Քայլ 8: Ստեղծեք API վերջնակետ
- Underառայությունների ներքո գտնվող AWS կառավարման վահանակում կա «api-gateway» պիտակով հղում, կտտացրեք այս մեկի վրա:
- Կտտացրեք ստեղծել API:
- Համոզվեք, որ երկուսն էլ ընտրված են «REST» և «New API»:
- Ընտրեք անուն ձեր api- ի համար:
- Կտտացրեք ստեղծել API:
- Այժմ էկրանին պետք է լինի գործողություններ պիտակավորված կոճակ, կտտացրեք այն:
- Այնուհետև կտտացրեք Ստեղծեք ռեսուրս:
- Որպես ռեսուրսի անուն, դուք պետք է նշեք մի պարզ բան, ինչպիսին է «գործարանը» կամ «գործարանի տվյալները»:
- Կտտացրեք Ստեղծեք ռեսուրս:
- Ձախ կողմում այժմ պետք է լինի այն անունը, որը դուք պարզապես մուտքագրել եք: սեղմեք այս անվան վրա:
- Այժմ կրկին կտտացրեք գործողությունները և այժմ կտտացրեք ավելացնել մեթոդը:
- Ընտրեք GET:
- Կտտացրեք չեկի նշանը:
- Պետք է լինի Lambda Function պիտակով տեքստային տուփ:
- Այստեղ մուտքագրեք այն անունը, որը ձեզ տվել եք lambda գործառույթը:
- Կտտացրեք պահպանել:
- Կարող է լինել թռուցիկ, որը նախազգուշացնում է ձեզ, որ ստեղծում է լրացուցիչ թույլտվություններ:
- Ընդունեք այս թռուցիկը:
- Այժմ գործողությունների ներքո կտտացրեք միացնել կոճակները:
- Կտտացրեք «միացնել CORS- ը և փոխարինել գոյություն ունեցող CORS վերնագրերը»:
- Կտտացրեք «այո,…»:
- Կրկին սեղմեք գործողությունների վրա և կտտացրեք Տեղակայել API- ն:
- Տեղակայման փուլում ընտրեք [Նոր փուլ]:
- Ընտրեք անուն:
- Կտտացրեք տեղակայել:
- Դուք այժմ հրապարակել եք ձեր api առցանց աշխարհին:
- Էկրանի վրա, որտեղ դուք այժմ ժամանել եք, կտտացրեք «GET» և ձեր ստեղծած ռեսուրսի վրա:
- Վերևում պետք է լինի հղում `« կանչել URL »պիտակով:
- Պատճենեք այս հղումը:
- Տեղադրեք այն դիտարկիչում և սեղմեք enter:
- Դուք պետք է տեսնեք տվյալները, որոնք գտնվում են տվյալների բազայում:
Քայլ 9. Միացրեք ձեր բույսը սոցիալական բույսերի ցանցին
- Գնացեք
- Կտտացրեք «Մուտք»:
- Կտտացրեք ստեղծել հաշիվ:
- Լրացրեք ձևը `ձեր հաշիվը ստեղծելու համար:
- Խնդրում ենք նկատի ունենալ, որ օգտվողի անունը նույնպես պետք է լինի ձեր էլ.
- Կտտացրեք ստեղծել հաշիվ:
- Շարունակելու համար գուցե ստիպված լինեք հաստատել ձեր էլ.
- Համոզվեք, որ մուտք եք գործել:
- Ga վերադառնալ գլխավոր էջ (կտտացրեք պատկերակին ՝ վերին ձախ անկյունում):
- Կտտացրեք կարգավորումների կոճակին:
- Լրացրեք ձևը, դուք պետք է լրացնեք յուրաքանչյուր դաշտ:
- API- ի հղումը այն հղումն է, որը դուք պահել եք API- ի վերջնակետը ստեղծելուց հետո:
- Երբ ամեն ինչ լրացված է, կտտացրեք պահպանել գործարանը: համակարգը այժմ կստուգի ձեր մուտքագրած api հղումը, և եթե դա ճիշտ է, այն կպահի ձեր գործարանը ցանցում:
- Վերադառնալ գլխավոր էջ:
- Այժմ կարող եք սեղմել բոլոր բույսերի վրա, պետք է կարողանաք տեսնել գրանցված բոլոր բույսերը: ձեր գործարանը նույնպես պետք է այնտեղ լինի: կտտացրեք քարտի վրա և ձեզ կտանեն ձեր գործարանի ակնարկ էջ, այն նաև կցուցադրի խորհուրդներ ՝ հիմնված կարգավորումներում ձեր կողմից սահմանված արժեքների վրա:
Քայլ 10: Հենվեք մեջքին և թեքեք ինքներդ մեջքին
Դուք նոր գործարան եք միացրել ինտերնետին: Բավականին տպավորիչ է, այնպես չէ՞:
Խորհուրդ ենք տալիս:
Միացրեք ձեր Magicbit- ը Thingsboard- ին `3 քայլ
Միացրեք ձեր Magicbit- ը Thingsboard- ին. Այս նախագծում մենք պատրաստվում ենք տվյալներ ուղարկել magicbit- ի հետ կապված սենսորներից, որոնք կարող ենք տեսողականորեն ցուցադրել տախտակի վրա
Միացրեք և վերափոխեք ձեր միացված լուծումները Hologram Nova- ի և Ubidots- ի հետ. 9 քայլ
Միացրեք և վերափոխեք ձեր կապված լուծումները Hologram Nova- ի և Ubidots- ի հետ. Օգտագործեք ձեր Hologram Nova- ն `ենթակառուցվածքը վերազինելու համար: Տեղադրեք Hologram Nova- ն Raspberry Pi- ի միջոցով ՝ Ubidots- ին (ջերմաստիճանի) տվյալներ ուղարկելու համար: Հետևյալ ուղեցույցում Ubidots- ը ցույց կտա, թե ինչպես կարելի է հոլոգրամ Nova- ն տեղադրել Raspberry Pi- ի միջոցով և ցուցադրել մի
Սկսելով I2C տվիչների ինտերֆեյսի հետ ?? - Միացրեք ձեր MMA8451- ը ESP32- ների միջոցով. 8 քայլ
Սկսելով I2C տվիչների ինտերֆեյսի հետ ?? - Միացրեք ձեր MMA8451- ը ESP32- երի միջոցով. Այս ձեռնարկում դուք կսովորեք այն մասին, թե ինչպես սկսել, միացնել և ձեռք բերել վերահսկիչով աշխատող I2C սարքը (արագացուցիչ) (Arduino, ESP32, ESP8266, ESP12 NodeMCU)
IoT- ի հիմունքներ. Ձեր IoT- ն ամպին միացնելը `Mongoose OS- ի միջոցով. 5 քայլ
IoT- ի հիմունքներ. Ձեր IoT- ն ամպին միացնելով Mongoose OS- ով. Եթե դուք մարդ եք, ով զբաղվում է մանրուքներով և էլեկտրոնիկայով, ավելի հաճախ, քան ոչ, դուք կհանդիպեք Իրերի ինտերնետ տերմինին, որը սովորաբար կրճատվում է որպես IoT, և որ այն վերաբերում է մի շարք սարքերի, որոնք կարող են միանալ ինտերնետին: Լինելով այդպիսի մարդ
Աճեցրեք ձեր սեփական գույնը փոխող LED գործարանը: 9 քայլ
Աճեցեք ձեր սեփական գույնը փոխող LED գործարանը