Turinys:
- 1 žingsnis: Aparatūra
- 2 žingsnis: „Arduino“eskizas
- 3 žingsnis: Sinatra užima sceną
- 4 žingsnis: nustatykite savo kūrimo mašiną
- 5 veiksmas: „Ruby“sistemoje „Mac“arba „Linux“
- 6 veiksmas: „Ruby“sistemoje „Windows“
- 7 veiksmas: patikrinkite ir nustatykite „Ruby“
- 8 veiksmas: įdiekite „Sinatra“(visas platformas)
- 9 veiksmas: iš naujo paleiskite „Mac“arba „Linux“
- 10 veiksmas: iš naujo paleiskite „Windows“
- 11 veiksmas: sukurkite žiniatinklio paslaugos programą
- 12 veiksmas: įdiekite į debesį naudodami „Heroku“
- 13 žingsnis: surinkite viską kartu
- 14 žingsnis: potencialas
Video: Namų įspėjimas: „Arduino +“pranešimai iš debesies dideliame ekrane: 14 žingsnių (su paveikslėliais)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:48
Mobiliųjų telefonų amžiuje galite tikėtis, kad žmonės reaguos į jūsų skambutį visą parą.
Arba ne. Kai mano žmona grįžta namo, telefonas lieka palaidotas rankinėje arba jo baterija išsikrovusi. Mes neturime fiksuoto ryšio. Skambinti ar rašyti SMS žinutes, kad lietingą naktį paprašytumėte lifto namo iš geležinkelio stoties, arba skambinti ir paklausti, ar mano raktai vis dar yra ant mano stalo, pažodžiui yra noras.
Turiu šią problemą pakankamai dažnai, kad pateisinčiau sprendimą. Šiek tiek pasimėgavus „Arduino“ir „Freetronics Dot Matrix Display“(DMD), atsirado labai erzinanti (mano žmonai) programėlė, bet man nuostabus ryšio įrenginys ir informacijos centras. Man tai patinka, ir tai tik 1 versija!
„Home Alert“sudarytas iš šių dalių:
- „Freetronics Dot Matrix“ekranas, kurį sudaro 16x32 šviesos diodai. Jie būna įvairių spalvų, bet aš naudoju raudoną, norėdamas pabrėžti, kad ši programėlė skirta „kritiniams“pranešimams.
- „Arduino Uno“su „Ethernet“skydu.
- Tikro laiko laikrodžio išjungimas, toks ar šis.
- Pjezo garsinis signalas
- DHT22 temperatūros ir drėgmės jutiklis.
„Home Alert“valdomas per tinklalapį, kuris priglobtas „Heroku“, debesų pagrindu veikiančios programos priegloboje. Tinklalapis koduojamas „Ruby“, naudojant „Sinatra“žiniatinklio programų sistemą ir „Redis“raktų vertės parduotuvę.
Pažvelkite į pagrindinį puslapį (šiame žingsnyje parodykite pirmame pridėtame paveikslėlyje), kur forma laukia naujo vartotojo pranešimo.
Pirmajame lauke priimamas skaitmeninis aparatūros kodas. Tai kodas, leidžiantis taikyti pagal konkrečią namų įspėjimo sistemą, nes kiekvienai gali būti suteiktas unikalus kodas. Arba galite turėti kelis namų įspėjimus, bendrinančius tą patį kodą, kad tas pats pranešimas būtų rodomas keliose vietose.
Pranešimas, kurį norite rodyti, pereina į antrą lauką. Bet koks ten įvestas tekstas bus rodomas DMD.
Jei norite kelti triukšmą, patikrinkite Taip! žymimasis laukelis, o garsinis signalas tikrai sulauks visų netoliese esančių žmonių dėmesio.
Šiame straipsnyje aš jums parodysiu, kaip sukurti savo namų įspėjimo sistemą, tiek „Arduino“aparatinę ir programinę įrangą, tiek „Sinatra mini“žiniatinklio programą.
Pradėkime!
1 žingsnis: Aparatūra
DMD yra pagrindinis įtaiso taškas. Galėjau eiti su mažu LCD ekranu, tačiau pagrindinė šio projekto idėja buvo sukurti tai, ką būtų galima pamatyti ir išgirsti iš tolo. Vizualinei daliai man reikėjo kažko didelio ir ryškaus, o šis „Freetronics“ekranas yra būtent tai, ko man reikėjo. Kiekviename skydelyje yra 16x32 šviesos diodų masyvas, ir galite sujungti kelis iš jų, kad sukurtumėte daug didesnius ekranus. Tai kažkas, ką norėčiau padaryti artimiausiu metu.
DMD yra lengvai naudojama „Arduino“biblioteka. jis bendrauja su „Arduino“per didelės spartos SPI. Man pavyko gauti biblioteką iš „Freetronics Github“puslapio, tada suaktyvinti demonstracinį eskizą ir pradėti jį veikti per kelias minutes nuo dėžutės atidarymo. Nustebau pamačiusi tokį ryškų ekraną, kuriame naudojama tik „Arduino“energija. Jei norite laikinai apakinti savo žiūrovus, prie šio DMD galite prijungti specialų maitinimo šaltinį. Jei tai neatkreips jų dėmesio, nieko nebus!
Fiziškai šis ekranas yra 320 mm (platus), 160 mm (aukštis) ir 14 mm (gylis).
Galiniame skydelyje yra išorinio maitinimo jungtys, 5 V, kurių galia ne mažesnė kaip 4 amperai, „Arduino“jungtis, pažymėta HUB1, ir jungtis, skirta priešingai prijungti papildomus ekranus. Remiantis dokumentais, galite susieti grandinę iki keturių DMD.
DMD valdo „Arduino Uno“. „Freetronics“siūlo labai patogią „DMDCON“jungtį, kuri tiesiog užsifiksuoja tiesiai ant tinkamo SPI ir duomenų kaiščių.
Išskyrus DMD, aš naudoju „Arduino Uno“, „Ethernet Shield“, realaus laiko laikrodžio išjungimą, garso signalą ir DHT22. Visiems šiems komponentams sukūriau paskaitas, apibūdinančias jų veikimą savo „Udemy“kursuose. (Begėdiška savireklama: prisiregistruokite prie mano el. Pašto sąrašo adresu arduinosbs.com ir gaukite kuponą, suteikiantį nuolaidą visoms 55 paskaitoms).
Realaus laiko laikrodis, išsiveržimas, pagrįstas DS18072 laikrodžio IC, yra I2C įrenginys, todėl jis prijungtas prie „Uno“analoginių 1 ir 2 kaiščių, kuriuose įdiegta I2C magistralė.
Garsinis signalas yra prijungtas prie 3 skaitmeninio kaiščio, iš kurio aš jį valdau naudodamas tono () funkciją.
DHT22 jutiklis prijungtas prie 2 skaitmeninio kaiščio. Būkite atsargūs ir prijunkite 10KΩ ištraukiamąjį rezistorių tarp 5V linijos ir duomenų linijos.
2 žingsnis: „Arduino“eskizas
Eskizas nėra didelis eilučių skaičiaus požiūriu, tačiau beveik išnaudoja „Uno“turimą „flash“atmintį dėl visų įtrauktų bibliotekų. Yra daug vietos atminties optimizavimui, bet kadangi esu prototipų kūrimo stadijoje, tai yra kitos dienos projektas. Šį kodą galima rasti „Github“.
Čia yra eskizas su įterptais komentarais (žr. PDF priedą).
Pagrindinė šio eskizo atsakomybė yra padaryti „Arduino“žiniatinklio paslaugos vartotoju. Žiniatinklio paslauga yra paprasta svetainė, turinti du galinius taškus: vieną, skirtą žmogui pasiekti per interneto naršyklę ir pateikti teksto eilutę, kurią jie nori rodyti DMD, o kitą-prieigą prie „Arduino“. gauti tą teksto eilutę.
Atsisiųskite ir perskaitykite pridėtą PDF failą, jame yra įterptų komentarų, apibūdinančių jo veikimą.
3 žingsnis: Sinatra užima sceną
Yra daug būdų, kaip sukurti svetaines ir interneto paslaugas. Nuo programavimo kalbų su žiniatinklį palaikančiomis bibliotekomis iki visapusiškų sistemų, gali būti painu ir sunku pasirinkti vieną šiam darbui.
Aš naudojau ir žaidžiau su daugybe žiniatinklio programų technologijų ir pastebėjau, kad „Sinatra“idealiai tinka kurti interneto paslaugas ir mažas svetaines. Visų pirma, kai kuriu žiniatinklio paslaugą, skirtą palaikyti „Arduino“programėlę, „Sinatra“yra tikrai geras pasirinkimas.
Kas yra „Sinatra“ir kodėl tai toks geras pasirinkimas? Džiaugiuosi, kad paklausėte!
Sinatra yra kalba, skirta sparčiai plėtoti žiniatinklio programas. Jis sukurtas ant „Ruby“- labai populiarios ir išraiškingos bendrosios paskirties scenarijų kalbos. Galite išgirsti, kad „Sinatra“vadinama „DSL“, konkrečiai sričiai skirta kalba. Domenas čia yra žiniatinklis. „Sinatra“sukurti raktiniai žodžiai (žodžiai) ir sintaksė leidžia žmonėms lengvai ir greitai kurti žiniatinklio programas.
Tuo metu, kai vadinamosios „pagrįstos“žiniatinklio programų kūrimo sistemos, tokios kaip „Ruby on Rails“ir „Django“, yra labai populiarios, „Sinatra“fiksuoja priešingą spektro galą. Nors „Ruby on Rails“ir „Django“reikalauja, kad programuotojas laikytųsi tam tikros konvencijos ir būdų, kaip elgtis (o tai savo ruožtu reiškia stačią ir ilgą mokymosi kreivę), „Sinatra“tokių reikalavimų nekelia.
„Sinatra“konceptualiai yra daug paprastesnė nei pasaulio bėgiai ir „Djangos“. Galite pradėti veikti naudodami žiniatinklio programą, kuri per kelias minutes gali sąveikauti su jūsų „Arduino“.
Parodysiu pavyzdžiu. Štai kaip atrodo minimali žiniatinklio programa „Sinatra“(kol kas tiesiog perskaitykite tai, to iš tikrųjų nedarykite savo kompiuteryje, nes tikriausiai dar neturite tam reikalingų sąlygų):
Viename faile, pavadinkime jį my_app.rb, pridėk šį tekstą:
reikalauti 'sinatra'get'/'do "Hello, world!" end
Komandinėje eilutėje paleiskite programą taip:
rubinas my_app.rb
Jūsų programa bus paleista, o konsolėje pamatysite šį tekstą:
peter@ubuntu-dev: ~/arduino/sinatra_demo $ ruby my_app.rb Puma 2.8.1 pradedant…* Minimalios temos: 0, maksimalios temos: 16* Aplinka: kūrimas* Klausymas naudojant tcp: // localhost: 4567 == Sinatra/1.4.4 užėmė 4567 kūrimo etapą, sukurdamas atsarginę kopiją iš „Puma“
Programa dabar paruošta priimti klientų užklausas. Atidarykite naršyklę, nukreipkite ją į https:// localhost: 4567, ir tai pamatysite (žr. Pridėtą ekrano kopiją).
Tai keturios paprastos kodo eilutės viename faile. Priešingai, „Rails“būtų reikėję daugiau nei šimto failų, sugeneruotų tiesiog tam, kad atitiktų sistemos reikalavimus. Nesupraskite manęs neteisingai, aš myliu „Rails“, bet ar tikrai?…
Taigi, „Sinatra“yra paprasta ir greita. Aš darysiu prielaidą, kad jūs nieko nežinote apie „Ruby“, „Sinatra“ir programų diegimą „Cloud“, todėl kitame skyriuje žingsnis po žingsnio nukreipsite jus nuo nulio iki jūsų „Arduino“žiniatinklio paslaugos diegimo debesyje.
4 žingsnis: nustatykite savo kūrimo mašiną
„Sinatra“yra pagrįsta „Ruby“programavimo kalba. Taigi, prieš diegdami „Sinatra“, turite įdiegti „Ruby“.
Taip pat turėsite įdiegti raktų vertės parduotuvės serverį „Redis“. Pagalvokite apie „Redis“kaip apie duomenų bazę, kurioje saugomi duomenys prieš raktą. Norėdami gauti duomenis, naudojate raktą ir jis yra optimizuotas greičiui, o ne duomenų struktūrų lankstumui, kuriam sukurta tradicinė santykių duomenų bazė. „Home Alert“savo žinutes saugo „Redis“.
5 veiksmas: „Ruby“sistemoje „Mac“arba „Linux“
Jei naudojate „Mac“arba „Linux“kompiuterį, rekomenduoju naudoti „RVM“, kad įdiegtumėte ir tvarkytumėte „Ruby“diegimą (RVM: „Ruby Version Manager“). Šiame puslapyje pateikiamos instrukcijos, kaip įdiegti „Ruby“su RVM, arba tiesiog nukopijuokite ir įklijuokite šią komandą į savo apvalkalą:
curl -sSL https://get.rvm.io | bash -s stabilus -trintis
Atsisėskite, atsipalaiduokite ir palaukite, kol bus baigtas RVM ir „Ruby“atsisiuntimas, kompiliavimas ir diegimas.
6 veiksmas: „Ruby“sistemoje „Windows“
Jei naudojate „Windows“, rekomenduoju vadovautis šiuo vadovu „Ruby Installer for Windows“svetainėje ir naudoti sąrankos programą.
7 veiksmas: patikrinkite ir nustatykite „Ruby“
Rašymo metu paskutinis stabilus „Ruby“leidimas yra 2.1.1.p76. Galite patikrinti versiją, kuri buvo įdiegta naudojant RVM, įvesdami tai:
rvm informacija
Bus rodoma daug informacijos apie RVM ir Ruby. Mano atveju tai rubino skyrius:
ruby: interpreter: "ruby" versija: "2.1.1p76" data: "2014-02-24" platforma: "x86_64-linux" patchlevel: "2014-02-24 revision 45161" full_version: "ruby 2.1.1p76 (2014 m. -02-24 peržiūra 45161) [x86_64-linux]"
Aš taip pat rekomenduoju naudoti „Ruby 2.1.1“, taigi, jei matote ką nors senesnio, atnaujinkite taip:
rvm įdiegimas 2.1.1
Tai įdiegs „Ruby 2.1.1“. RVM projekto svetainėje yra daug informacijos apie RVM ir kaip valdyti „Ruby“diegimą.
8 veiksmas: įdiekite „Sinatra“(visas platformas)
„Ruby“kodas dalijamasi kaip paketai, vadinami „brangakmeniais“. „Sinatra“kodą galima įdiegti jūsų kompiuteryje kaip perlą:
perlas įdiegti sinatra
Ši eilutė atsiųs visą kodą ir dokumentus ir įdiegs juos jūsų kompiuteryje.
9 veiksmas: iš naujo paleiskite „Mac“arba „Linux“
„Redis“nustatyti „Mac“ar „Linux“yra paprasta. Procesas aprašytas „Redis“svetainėje. Atidarykite apvalkalo terminalą ir įveskite šias komandas:
$ wget https://download.redis.io/releases/redis-2.8.7.tar…$ tar xzf redis-2.8.7.tar.gz $ cd redis-2.8.7 $ make
Paleiskite „Redis“įvesdami:
$ src/redis-server
… ir padarei!
10 veiksmas: iš naujo paleiskite „Windows“
„Redis“sistemoje „Windows“rekomenduojama naudoti tik kuriant, ir turėsite ją sukompiliuoti naudodami nemokamą „Visual Studio Express“kūrimo aplinką. Norint jį paleisti, reikia šiek tiek laiko, tačiau jis veikia gerai ir yra vertas pastangų. Vykdykite projekto „Github“puslapyje pateiktas instrukcijas. Čia taip pat rasite nuorodą į „Visual Studio Express“puslapį.
11 veiksmas: sukurkite žiniatinklio paslaugos programą
Sukurkime programą ir paleiskite ją savo kūrimo mašinoje. Mes bandysime koreguoti „Arduino“eskizą, kad prisijungtume prie šios programos egzemplioriaus. Kai būsime patenkinti, kad viskas veikia gerai, įdiegsime į debesį ir atnaujinsime eskizą, kad galėtume naudoti debesies egzempliorių.
Čia yra Ruby kodas, viskas viename faile, pavadintame „web.rb“(šį kodą galima rasti „Github“).
Svarbu: atsisiųskite ir perskaitykite pridėtą PDF failą, kuriame yra išsamių įterptų komentarų (prieš tęsdami tai darykite!).
Dabar galite išbandyti savo namų įspėjimo sistemą. Savo eskize pakeiskite WEBSITE ir WEBPAGE konstantas, kad jos nurodytų jūsų kūrimo mašiną ir jūsų „Sinatra“serverio prievado numerį. Mano atveju turiu kūrimo mašiną IP 172.16.115.136, o kūrimo „Sinatra“serveris klauso 5000 prievado, todėl mano eskizo nustatymai yra šie:
#define HW_ID "123" #define WEBSITE "172.16.115.136:5000”#define WEBPAGE"/get_message/"
Šis IP adresas pasiekiamas tik mano namų tinklo įrenginiams.
Nustatymas „HW_ID“reiškia „aparatūros ID“, tai yra ID, kuriuo „Arduino“, valdantis DMD, identifikuoja save „Sinatra“programai. Tai labai paprasta autentifikavimo rūšis. Žiniatinklio programa perduos pranešimą „Arduino“, prašydama jo pagal pateiktą HW_ID. Galite turėti kelis įrenginius su tuo pačiu HW_ID, tokiu atveju visi įrenginiai rodys tą patį pranešimą. Jei norite „privatumo“, pasirinkite ID su daugybe atsitiktinių simbolių, kurių kiti žmonės negalės atspėti. Taip pat saugokitės, jokia komunikacija nėra užšifruota.
Dabar paleiskite „Sinatra“programą, įveskite tai (darant prielaidą, kad esate „Sinatra“projekto aplanke):
rubino tinklas.rb
… Ir pamatysite kažką panašaus (kai kurios detalės gali skirtis, jei tai nepavyks, viskas gerai):
10:42:18 žiniatinklis.1 | prasidėjo pid 4911910: 42: 18 web.1 | Puma 2.8.1 pradedant… 10: 42: 18 žiniatinklis.1 | * Minimalios temos: 0, maksimalios temos: 1610: 42: 18 žiniatinklis.1 | * Aplinka: kūrimas10: 42: 18 žiniatinklis.1 | * Klausymas naudojant tcp: //0.0.0.0: 5000
Nukreipkite savo žiniatinklio naršyklę į vietą, kurios serveris klausosi, ir tai pamatysite (žr. Antrą priedą).
Įkelkite eskizą į „Arduino“ir įsitikinkite, kad jis prijungtas prie vietinio tinklo. Jei viskas gerai, „Arduino“kas minutę apklaus jūsų žiniatinklio paslaugą. Pateikite jam rodomą pranešimą: HW kodo lauke įveskite tą patį ID, kurį nustatėte eskizui HW_ID konstantai. Lauke „Jūsų pranešimas“įveskite bet ką ir patikrinkite „Buzz?“žymimasis langelis.
Pateikite, palaukite minutę ir pamatysite, kaip jūsų pranešimas rodomas DMD!
12 veiksmas: įdiekite į debesį naudodami „Heroku“
Dabar, kai namų įspėjimas yra kuriamas, pradėkime jį naudoti „Cloud“. Interneto programų diegimui yra daugybė galimybių. Remdamasis „Home Alert“apimtimi ir sudėtingumu, nusprendžiau, kad sukurti savo virtualų privatų serverį neverta. Vietoj to geriau kreiptis į tokią paslaugą kaip „Heroku“, programų priegloba. Mano mastu, Heroku nemokama pakopa yra daugiau nei pakankamai. Net „Redis“komponentui galėjau pasirinkti nemokamą planą iš vieno iš daugelio „Redis“teikėjų, dirbančių su „Heroku“.
Vis dėlto reikia įdėti šiek tiek pastangų, nes mano programa turi būti šiek tiek pakeista, kad ji atitiktų „Heroku“specifikacijas. Išsami informacija yra čia, tačiau iš esmės turėsite pridėti šiuos failus prie savo „Sinatra“projekto (visus tolesnius failus galite atsisiųsti iš mano „Github“paskyros):
* config.ru: jis nurodo Heroku, kuriame faile yra programa. Štai turinys:
reikalauti './web'run Sinatra:: Taikymas
Pirmoji eilutė nurodo web.rb, o antroji eilutė iš tikrųjų vykdo jūsų programą.
* Gemfile: jame yra brangakmenių (rubino kodo paketų), kurių reikalauja programa. „Heroku“ieškos šio failo viduje ir išsiaiškins, kokį kitą kodą reikia įdiegti, kad jūsų programa veiktų. Kitas būdas pažvelgti į „Gemfile“yra tai, kad yra jūsų projekto priklausomybių sąrašas. Jei kuri nors iš šių priklausomybių nepasiekiama, jūsų programa neveiks. Štai kas yra šios programos „Gemfile“:
šaltinis "https://rubygems.org" ruby "2.1.1" perlas 'sinatra'gem' puma'gem 'redis'
Pirma, jis nustato viso „Gem“kodo šaltinio saugyklą kaip rubygems.org. Be to, programai paleisti reikalinga „Ruby“versija 2.1.1. Tada jame išvardijami reikalingi brangakmeniai: „Sinatra“, „Puma“(puikus „Ruby“žiniatinklio programų serveris) ir „Redis“.
* Procfile: jame Heroku nurodoma, kaip paleisti serverį. Čia yra tik viena eilutė:
svetainė: rackup -s puma -p $ PORT
Šioje eilutėje sakoma, kad „žiniatinklis“yra vienintelė reikalinga paslauga (galite naudoti kitas, pvz., „Darbuotojas“, kad apdorotumėte foną), ir kad norėdami pradėti paslaugą, „Heroku“turi naudoti komandą, esančią po „:“.
Galite imituoti, ką veiks Herokas, vadovaudamiesi šia seka savo kūrimo mašinoje (tik įveskite testą prieš rodyklę; tai, kas yra po rodyklės, yra tik komandos aprašymas):
$> gem install bundler -> įdiegia „Bundler“, kuri žino, kaip tvarkyti „Gemfile“. $> paketo diegimas -> Bundler apdoroja „Gemfile“ir įdiegia priklausomybes. $> rackup config.ru -> „Rackup“yra įrankis, galintis apdoroti failą config.ru. Paprastai jis pateikiamas kartu su vėlesne „Ruby“versija, jei ji neįdiegiama taip: „gem install rack“.
Paskutiniame žingsnyje iš tikrųjų paleidžiama jūsų programa. Turėtumėte matyti tą pačią išvestį, kurią anksčiau pradėjote naudodami ruby web.rb. Veikia ta pati programa, tik tuo skirtumu, kad antrasis metodas yra tai, kaip Heroku ją paleidžia.
Mes beveik pasiruošę įdiegti šią programą į jūsų „Heroku“paskyrą. Jei dar neturite, eikite į priekį ir sukurkite jį dabar. Tada vadovaukitės trumpo pradžios vadovu, kad nustatytumėte paskyrą ir vietinę kūrimo mašiną, ypač „Heroku“įrankių juostą.
„Heroku Toolbelt“įdiegia „Heroku“komandinės eilutės klientą „Git“(atvirojo kodo valdymo sistema) ir „Foreman“(„Ruby“įrankis, padedantis valdyti „Procfile“programas).
Baigę diegti „Heroku Toolbelt“vadovaudamiesi „Heroku“svetainėje pateiktomis instrukcijomis, atlikite šiuos veiksmus, kad jūsų programa būtų įdiegta (viskas įvesta komandų eilutėje, programos kataloge):
$> heroku prisijungimas -> Prisijunkite prie „Heroku“naudodami komandinę eilutę $> git init -> Inicijuokite savo programos „Git“saugyklą $> git add. -> (atkreipkite dėmesį į tašką!) Įtraukite visus dabartinio katalogo failus į „Git“saugyklą $> git įsipareigokite -m „init“-> Įtraukite šiuos failus į saugyklą su nauju pranešimu $> heroku create -> Create a new „Heroku“programa. „Heroku“suteiks jūsų programai atsitiktinį pavadinimą, panašų į „blazing-galaxy-997“. Užsirašykite pavadinimą ir URL, kad vėliau galėtumėte jį pasiekti naudodami žiniatinklio naršyklę. Šis URL atrodys taip: „https://blazing-galaxy-997.herokuapp.com/“. Taip pat turėsite nukopijuoti naujos programos pagrindinio kompiuterio pavadinimą („blazing-galaxy-997.herokuapp.com“) į „Arduino“eskizo WEBSITE konstantą. Padarykite tai dabar, kad vėliau nepamirštumėte. $> heroku priedai: pridėti rediscloud -> prideda nemokamą „Rediscloud Redis“paslaugos pakopą prie jūsų programos. Konfigūracijos nustatymai automatiškai sukuriami ir pasiekiami jūsų programai. $> git push heroku master -> Įdėkite savo kodą į Heroku. Tai automatiškai perkels kodą, nustatys visas priklausomybes nuo „Heroku“ir paleis programą. Proceso pabaigoje pamatysite kažką panašaus: „https://blazing-galaxy-997.herokuapp.com dislokuotas„ Heroku ““, o tai reiškia, kad jūsų programa dabar veikia viešajame debesyje! Sveikinu!
Pirmyn, suktis!
13 žingsnis: surinkite viską kartu
Įdiegę žiniatinklio programą, įkelkite atnaujintą eskizą į „Arduino“(atminkite, kad atnaujinote WEBSITE konstantą, kad nurodytumėte savo žiniatinklio programos gamybos egzempliorių).
Naudokite naršyklę, kad pasiektumėte savo programą „Heroku“. Kaip ir įžangoje, pirmame teksto laukelyje įveskite aparatūros ID, antrame - pranešimą ir pažymėkite žymimąjį laukelį, kad suaktyvintumėte signalą.
Jūsų pranešimas bus rodomas DMD maždaug po minutės, jei viskas bus gerai!
14 žingsnis: potencialas
Naudodamiesi namų įspėjimo sistema galite nuveikti daug daugiau …
Turėdami „Heroku“galinę dalį, galite pridėti daug logikos, kuri gali pridėti nuostabių funkcijų. Pvz., Galite pridėti galimybę programai valdyti pakartotinius pranešimus, patvirtinimus arba valdyti papildomą pranešimų aparatūrą, pvz., Žibintus ir tt. Galite išplėsti ją į namų automatikos teritoriją ir valdyti žibintus bei duris. Galite pridėti kelis DMD, kad kiekviename pranešime būtų rodomi skirtingi pranešimai arba vienas pranešimas bendrame didesniame ekrane. Aš tik kasau paviršių, kas čia įmanoma!
Mėgautis!
Rekomenduojamas:
LED pranešimai su „Arduino“: 10 žingsnių
LED pranešimai naudojant „Arduino“: Šiame projekte slinkties pranešimui rašyti naudosite 8x8 LED matricą. Šis projektas yra paprasta kito „CarterW16“instrukcijos versija, naudojant tik vieną LED matricą. Peržiūrėkite tą projektą, kad sužinotumėte, kaip susieti daugiau. Norėdami pradėti y
Pranešimai apie skalbimo mašiną: 3 žingsniai
Pranešimai apie skalbimo mašiną: turiu „nebylią“pigią skalbimo mašiną už maždaug 150 svarų sterlingų. Dydis buvo didžiausias apribojimas, todėl nesmerkite manęs per griežtai. Bukiausias dalykas mano namuose yra aš. Baltų apatinių skalbimas raudonais megztiniais yra viena iš mano nuodėmių. Kitas neatmenamas
„Micro: Bit Puppet“„Teksto pranešimai“!: 5 žingsniai (su paveikslėliais)
„Micro: Bit Puppet“„Teksto pranešimai“!: Beveik visas belaidis ryšys vyksta naudojant radijo bangas*, įskaitant telefono skambučius, tekstinius pranešimus ir „WiFi“. Naudodamas integruotus radijo siųstuvus ir imtuvus, „Micro: Bit“mikrovaldiklis leidžia labai lengvai kurti įvairius projektus
Pranešimai apie įvykius realiuoju laiku naudojant „NodeMCU“(„Arduino“), „Google Firebase“ir „Laravel“: 4 veiksmai (su paveikslėliais)
Pranešimai apie įvykius realiuoju laiku naudojant „NodeMCU“(„Arduino“), „Google Firebase“ir „Laravel“: ar kada nors norėjote gauti pranešimą, kai jūsų svetainėje atliekamas veiksmas, tačiau el. Paštas netinkamas? Ar norite išgirsti garsą ar skambėjimą kiekvieną kartą, kai parduodate? Arba dėl neatidėliotinos situacijos reikia nedelsiant atkreipti jūsų dėmesį
Pranešimai apie skalbimo mašiną naudojant MESH: 4 žingsniai (su paveikslėliais)
Pranešimai apie skalbimo mašiną naudojant MESH: Oi! Aš pamiršau apie skalbimo mašinoje esančius drabužius … Ar visada pamiršite pasiimti drabužius po skalbimo? Šis receptas atnaujins jūsų skalbimo mašiną, kad gautumėte pranešimus per „Gmail“arba IFTTT, kai jūsų drabužiai bus paruošti nuotraukoms