Talaan ng mga Nilalaman:

Ikonekta ang Iyong Halaman sa Cloud: 10 Hakbang
Ikonekta ang Iyong Halaman sa Cloud: 10 Hakbang

Video: Ikonekta ang Iyong Halaman sa Cloud: 10 Hakbang

Video: Ikonekta ang Iyong Halaman sa Cloud: 10 Hakbang
Video: ITO ANG DAHILAN KUNG BAKIT HINDI NAGHAHALO ANG TUBIG NG PACIFIC AT ATLANTIC OCEAN? | Bagong Kaalaman 2024, Nobyembre
Anonim
Ikonekta ang Iyong Halaman sa Cloud
Ikonekta ang Iyong Halaman sa Cloud
Ikonekta ang Iyong Halaman sa Cloud
Ikonekta ang Iyong Halaman sa Cloud
Ikonekta ang Iyong Halaman sa Cloud
Ikonekta ang Iyong Halaman sa Cloud

Sa aming tanggapan mayroong isang cactus na hindi nakuha ang pansin na nararapat dito. Dahil nagtatrabaho ako sa isang kumpanya ng IT at nais na mag-eksperimento sa LoRa, mga serverless solution at AWS, pinangalanan ko ang aming cactus na Steeve at ikinonekta siya sa cloud. Maaari mo na ngayong subaybayan ang Steeve mula sa kahit saan man sa mundo gamit ang webpage na ginawa ko para sa kanya: interface ng web ni Steeve.

Mga gamit

1 cactus / iyong paboritong halaman

1 Arduino MKR WAN 1300 (Arduino store)

1 868mHz / 914mHz (nakasalalay sa iyong lokasyon) antena (Amazon)

1 LoRa Gateway kapag wala sa saklaw ng isa (Amazon)

2 baterya ng AA

1 sensor ng TMP102 (Amazon)

1 sensor ng kahalumigmigan sa lupa (Amazon)

Mga conductable cable (Amazon)

panghinang

May hawak ng baterya (Amazon)

kaso

opsyonal: 3D printer (kung maaari kang gumamit ng isang 3d printer pagkatapos ay hindi mo kailangan ng isang may hawak ng baterya o isang kaso)

Hakbang 1: Pagpi-print ng Kaso (Opsyonal)

Pagpi-print ng Kaso (Opsyonal)
Pagpi-print ng Kaso (Opsyonal)
Pagpi-print ng Kaso (Opsyonal)
Pagpi-print ng Kaso (Opsyonal)

I-download ang zip file na ito, i-unzip ito at i-print ang mga file. Ang mga file ay minarkahan ng dami ng kailangan ng item.

Huwag mag-atubiling magdagdag ng isang bagay sa takip tulad ng ginawa ko.

Nai-print ko ang mga ito gamit ang isang layer taas na 0.2mm at 15% infill.

Ang mga boxhook ay maaaring ikabit gamit ang m3 screws.

Kapag naka-print ang kahon maaari kang gumamit ng ilang kawad upang gawin ang mga kinakailangang koneksyon sa may hawak ng baterya. Maaari mong gamitin ang ibinigay na larawan bilang sanggunian.

Hakbang 2: Mga kable

Kable
Kable
  • Bago paandar ang arduino tiyaking nakakonekta ang antena, ang pag-power up ng arduino nang wala ang antena ay maaaring maging sanhi ng pinsala.
  • Ikonekta ang lahat ayon sa ibinigay na diagram ng mga kable.
  • Kung hinihinang mo ang mga wires na ito, tiyaking hindi ka nakakabit ng anumang mga pin sa mga sensor o sa arduino!

Hakbang 3: Lumikha ng isang App sa Things Network

  • Pumunta sa https://www.thethingsnetwork.org/ at kung wala ka pang account, gumawa ng isa.
  • Kapag mayroon kang isang account at naka-log in maaari kang pumunta sa console (kanang sulok sa itaas, i-click ang iyong username at pagkatapos ay sa console).
  • Mag-click sa mga application.
  • Kapag naglo-load ang pahina dapat na mag-click sa "magdagdag ng application".
  • Punan ang form at piliin ang tamang rehiyon sa ibaba. Mag-click sa "magdagdag ng application".
  • Binabati kita, lumikha ka lamang ng isang application sa mga bagay na network. = D

Hakbang 4: Pagkonekta sa Arduino sa Things Network

Upang maprograma ang arduino pinapayuhan ko kayo na gamitin ang online arduino ide, ginagawang napakadali ng paglo-load sa kinakailangang silid-aklatan.

  • Buksan ang iyong application sa network ng mga bagay.
  • Dapat mayroong isang patlang na pinamagatang mga aparato, mag-click sa rehistro ng aparato.
  • makikita mo ang isang patlang na tinatawag na Device Id. ito ang pangalang nais mong ibigay sa iyong sensor. Dapat mayroong isa pang may label na Device EUI, ito ang natatanging susi na ginagamit ng iyong arduino upang patunayan ang sarili.
  • Upang makuha ang key na ito kailangan naming i-flash ang arduino gamit ang isang tukoy na sketch. Ang sketch ay matatagpuan sa labas. Ang sketch na ito ay dapat tumakbo at sa serial monitor ay dapat ipadala ang eui. Kopyahin ang eui mula sa serial monitor sa patlang ng EUI ng Device sa network ng mga bagay.
  • Mag-click sa magparehistro.
  • Ngayon ay nairehistro na namin ang aming arduino sa cloud. Panahon na upang magsimulang magpadala ng mga mensahe.
  • Dapat ay nai-redirect ka sa isang pahina na tinatawag na pangkalahatang-ideya ng aparato. Makikita mo rito ang iyong aparato eui, app eui at app key.
  • Upang magpatuloy kailangan naming i-flash ang huling sketch sa arduino. Ang sketch ay matatagpuan dito.
  • Kapag binuksan mo ang link na ito makikita mo maraming mga tab. Buksan ang tab ng mga lihim. Mayroong 2 mga susi na kailangan mo upang makaya mula sa mga bagay sa network sa mga lihim na file.
  • Kapag napunan ang mga key na ito maaari mong i-flash ang arduino. Magsisimula itong magpadala ng data sa network ng mga bagay minsan bawat oras.
  • Kung naging tama ang lahat dapat mong makita ang mga mensahe na pumapasok sa tab na Data sa mga bagay na network sa pag-reset ng arduino (ang tanging pindutan sa pisara).

    • Kung walang data na lilitaw sa kung saan man, maaaring nangangahulugan ito na wala ka sa saklaw ng isang tamang LoRa gateway. Maaari mong suriin ang isang mapa kasama ang lahat ng mga magagamit na mga gateway sa https://thethingsnetwork.org. Ang solong gateway ng LoRa channel ay hindi gagana sa inirekumendang arduino.
    • Kung hindi ka nasa saklaw ng isang gateway maaari mong i-pares ang iyong sariling gateway sa network ng mga bagay. Ang mga gateway na ito ay karaniwang may magagandang mga tutorial sa kung paano ikonekta ang mga ito. Hanapin sa listahan ng supply para sa inirekumendang gateway.

Hakbang 5: Pagbibigay-kahulugan sa Data sa Network ng Mga bagay

  • Upang makakuha ng magagamit na data mula sa mga mensahe sa network ng mga bagay na kailangan namin upang ma-decode ang bytestream.
  • Sa mga bagay na network pumunta sa iyong application.
  • Dapat mayroong isang tab na may label na "Mga format sa pag-load", i-click ang tab na ito.
  • Mayroong 4 na mga pindutan sa tabi ng bawat isa: "decoder", "converter", "validator", "encoder".
  • Mag-click sa decoder.
  • Idikit doon ang sumusunod na code.

function Decoder (bytes, port) {// Pag-decode ng isang uplink na mensahe mula sa isang buffer // (array) ng bytes sa isang object ng mga patlang. var stringToDecode = bin2String (bytes); var res = stringToDecode.split (""); var temp = res [1]; var moist = res [3]; var bat = res [5]; var decoded = {"temperatura": temp, "kahalumigmigan": basa-basa, "baterya": bat}; bumalik na na-decode; } function bin2String (array) {var resulta = ""; para sa (var i = 0; i <array.length; ++ i) {resulta + = (String.fromCharCode (array )); } resulta ng pagbabalik;}

  • I-click ang i-save.
  • Kapag na-reset mo ang arduino at tiningnan ang iyong tab ng data, dapat mong makita ang isang maayos na na-format na json object na madali mong nababasa.

Hakbang 6: Pagkonekta sa Iyong App sa AWS

Gagamitin namin ang AWS upang maiimbak at magamit ang data mula sa network ng mga bagay. Ang lahat ng mga mapagkukunang gagamitin namin ay sakop sa ilalim ng libreng baitang ng AWS.

  • Pumunta sa AWS
  • Mag-login o Lumikha ng Account.
  • Upang ikonekta ang iyong application sa mga bagay na network sa AWS Inirerekumenda ko ang pagsunod sa tutorial na ito:
  • Kapag nakumpleto mo na ang tutorial na ito, mag-navigate sa aws console sa segment na IoT-Core.
  • Sa kaliwang menubar mayroong isang label na "Pamahalaan", i-click ito.
  • Dapat mo na ngayong makita ang isang card na may pangalan ng iyong sensor dito.
  • Muli sa kaliwang menubar i-click ang "Act"
  • Kung mayroong isang card na may label na Store, mabuting pumunta ka.
  • Kung hindi, mag-click sa "Lumikha".
  • Punan ang pangalang "Tindahan".
  • Maaari kang magdagdag ng isang paglalarawan kung nais mo.
  • Bilang isang pahayag sa query punan ang sumusunod na code: SELECT dev_id, metadata.time, payload_fields.temperature, payload_fields.moisture, payload_fields.battery MULA sa 'cactus_network / device / + / up'.
  • Sa ilalim ng "Magtakda ng isa o higit pang mga pagkilos" i-click ang magdagdag ng pagkilos.
  • Piliin ang "Hatiin ang mensahe sa maraming mga haligi ng isang talahanayan ng DynamoDb (DynamoDBv2)".
  • I-click ang i-configure ang pagkilos
  • I-click ang lumikha ng bagong mapagkukunan.
  • I-click ang lumikha ng talahanayan at bigyan ang iyong talahanayan ng isang pangalan.
  • Sa ilalim ng pangunahing key punan ang "dev_id".
  • I-click ang idagdag ang sort key
  • Punan ang "oras".
  • I-click ang lumikha.
  • Kung naging maayos ang lahat, dapat kang bumalik sa pahina ng pagkilos na i-configure.
  • Mayroong isang medyo greyed out na lugar sa ilalim ng "Pumili o lumikha ng isang papel upang bigyan ang AWS IoT ng access upang maisagawa ang aksyon na ito."
  • I-click ang lumikha ng Tungkulin at bigyan ng pangalan ang papel na ito.
  • I-click ang gumawa ng tungkulin.
  • I-click ang magdagdag ng pagkilos.
  • I-click ang gumawa ng panuntunan.
  • Dapat mayroon ka na ngayong isang patakaran na awtomatikong iniimbak ang lahat ng mga papasok na mensahe mula sa mga bagay na network sa DynamoDb.
  • Maaari mong suriin kung gumagana ito sa pamamagitan ng pag-reset ng arduino at tingnan ang talahanayan na DynamoDb na iyong nilikha.
  • Dapat mayroong isang talaan kasama ang mensahe.

Hakbang 7: Lumilikha ng isang Lambda

Upang mabasa ang data mula sa DynamoDB magsusulat kami ng isang AWS lambda.

  • Sa AWS management console sa ilalim ng mga serbisyo mayroong isang link na may label na "Lambda", i-click ang isang ito.
  • I-click ang function na lumikha.
  • Pumili ng isang pangalan.
  • Itakda ang runtime sa python 3.7.
  • I-click ang function na lumikha.
  • I-paste ang code na ito sa pinagsamang IDE.

import json

i-import ang oras ng pag-import ng boto3 mula sa datime na pag-import ng datime, itinakda ang oras mula sa boto3.dynamodb.conditions key, Attr def lambda_handler (event, konteksto): return retreive_data () def retreive_data (): # Kunin ang mapagkukunan ng serbisyo. dynamodb = boto3.resource ('dynamodb') table = dynamodb. Table ('TABLE NAME DITO') ngayon = datime.now () kahapon = ngayon - timedelta (oras = 24) fe = Key ('oras'). sa pagitan ng (kahapon.isoformat (), now.isoformat ()) pinakain = Key ('oras'). lt (kahapon.isoformat ()) tugon = talahanayan.scan (FilterExpression = fe) talaanToDelete = talahanayan.scan (FilterExpression = pinakain) para sa f sa recordsToDelete ['Items']: #print (f) table.delete_item (Key = {'dev_id': f ['dev_id'], 'time': f ['time']}) data = response ['Items '] ibalik ang data

  • Palitan ang pangalan ng talahanayan sa iyong pipiliin.
  • Mag-scroll pababa sa tungkulin sa pagpapatupad.
  • Mag-click lumikha ng isang bagong papel mula sa mga template ng patakaran ng aws.
  • Pumili ng isang pangalan.
  • Sa ilalim ng mga template ng patakaran piliin ang "Subukan ang mga pahintulot sa harness" at "Mga simpleng pahintulot sa microservice".
  • I-click ang i-save.
  • I-click ang pagsubok.
  • Maaaring lumitaw ang isang popup, pumili lamang ng isang pangalan at i-save.
  • I-click muli ang pagsubok.
  • Sa tuktok dapat mayroong isang berdeng banner na nagsasabing "Resulta ng pagpapatupad: nagtagumpay".
  • Kapag na-click mo ang banner na ito dapat mong makita ang output ng pagpapaandar na ito, dapat itong isang listahan sa sensordata.
  • Mangyaring magkaroon ng kamalayan na ang script na ito ay tinatanggal ang lahat ng data na mas matanda sa 24 na oras.
  • Kung sakaling ang iyong banner ay hindi berde ngunit pula, may napalampas ka at ang pag-click sa banner na ito ay magbibigay sa iyo ng buong errormessage. Sa kasong ito ang google ay ang iyong matalik na kaibigan.

Hakbang 8: Lumilikha ng isang Endpoint ng API

  • Sa AWS management console sa ilalim ng mga serbisyo mayroong isang link na may label na "api-gateway", i-click ang isang ito.
  • I-click ang lumikha API.
  • Siguraduhin na ang "Pahinga" at "Bagong API" ay kapwa napili.
  • Pumili ng isang pangalan para sa iyong api.
  • I-click ang lumikha API.
  • Dapat mayroong isang pindutan na may label na mga aksyon sa screen ngayon, i-click ito.
  • Pagkatapos i-click ang lumikha Resource.
  • Bilang isang pangalan ng mapagkukunan dapat mong tke ng isang bagay na simple tulad ng "halaman" o "halaman-halaman".
  • I-click ang lumikha ng Resource.
  • Sa kaliwa dapat mayroon na ngayong pangalan na pinasok mo lang. i-click ang pangalang ito
  • Ngayon i-click muli ang mga pagkilos at ngayon i-click ang magdagdag ng paraan.
  • Piliin ang GET.
  • I-click ang marka ng tseke.
  • Dapat mayroong isang textbox na may label na Lambda Function.
  • Ipasok ang pangalang ibinigay sa iyo ng pagpapaandar ng lambda dito.
  • I-click ang i-save.
  • Maaaring may isang popup na nagbababala sa iyo na lumilikha ito ng mga karagdagang pahintulot.
  • Tanggapin ang popup na ito.
  • Sa ilalim ng mga pagkilos i-click ang paganahin ang mga cors.
  • I-click ang "paganahin ang CORS at palitan ang mayroon nang mga CORS header".
  • I-click ang "oo, …".
  • I-click muli ang mga pagkilos at i-click ang I-deploy ang API.
  • Sa ilalim ng yugto ng paglawak piliin ang [Bagong Yugto].
  • Pumili ng isang pangalan.
  • I-click ang pag-deploy.
  • Nai-publish mo na ngayon ang iyong api online sa mundo.
  • Sa screen kung saan ka nakarating ngayon i-click ang "GET" ater ang mapagkukunan na iyong nilikha.
  • Dapat mayroong isang link sa tuktok na may label na "invoke URL".
  • Kopyahin ang link na ito.
  • I-paste ito sa isang browser at pindutin ang enter.
  • Dapat mong makita ang data na nasa database.

Hakbang 9: Ikonekta ang Iyong Halaman sa Social Plant Network

  • Pumunta sa
  • I-click ang "Login".
  • I-click ang lumikha ng account.
  • Punan ang form upang likhain ang iyong account.
  • Mangyaring tandaan na ang pangalan ng gumagamit ay dapat ding maging iyong email.
  • I-click ang lumikha ng account.
  • Maaaring kailanganin mong i-verify ang iyong email bago ka magpatuloy.
  • Tiyaking naka-log in ka.
  • Bumalik sa home page (i-click ang logo sa kaliwang sulok sa itaas).
  • I-glick ang mga setting na setting.
  • Punan ang form, dapat mong punan ang bawat patlang.
  • Ang link sa api ay ang link na nai-save mo matapos mong likhain ang endpoint ng API.
  • Kapag napunan ang lahat mag-click ang pindutan ng i-save ang halaman. papatunayan na ngayon ng system ang link ng api na iyong ipinasok at kung ito ay tama ay mai-save ang iyong halaman sa network.
  • Bumalik sa homepage.
  • Maaari ka nang mag-click sa lahat ng mga halaman, dapat mong makita ang lahat ng mga nakarehistrong halaman. ang iyong halaman ay dapat naroroon din. i-click ang card at dadalhin ka sa isang pahina ng pangkalahatang-ideya ng iyong halaman, magpapakita rin ito ng payo batay sa mga halagang itinakda mo sa mga setting.

Hakbang 10: Sumandal at Patayin ang Iyong Sarili sa Likod

Ikinonekta mo lang ang isang halaman sa internet. Medyo kahanga-hanga, tama?

Inirerekumendang: