Satura rādītājs:

Mājas brīdinājums: Arduino + Messaging Messaging lielā displejā: 14 soļi (ar attēliem)
Mājas brīdinājums: Arduino + Messaging Messaging lielā displejā: 14 soļi (ar attēliem)

Video: Mājas brīdinājums: Arduino + Messaging Messaging lielā displejā: 14 soļi (ar attēliem)

Video: Mājas brīdinājums: Arduino + Messaging Messaging lielā displejā: 14 soļi (ar attēliem)
Video: 35 Scary Ghost videoklipi: 2023. gada lielizmēra kompilācija [V1] 2024, Novembris
Anonim
Mājas brīdinājums: Arduino + Messaging ziņojumapmaiņa lielā displejā
Mājas brīdinājums: Arduino + Messaging ziņojumapmaiņa lielā displejā
Mājas brīdinājums: Arduino + Messaging ziņojumapmaiņa lielā displejā
Mājas brīdinājums: Arduino + Messaging ziņojumapmaiņa lielā displejā
Mājas brīdinājums: Arduino + Messaging ziņojumapmaiņa lielā displejā
Mājas brīdinājums: Arduino + Messaging ziņojumapmaiņa lielā displejā

Mobilo tālruņu laikmetā jūs varētu gaidīt, ka cilvēki reaģēs uz jūsu zvanu visu diennakti.

Vai nē. Kad mana sieva atgriežas mājās, tālrunis paliek apglabāts viņas rokas somā, vai arī tā akumulators ir izlādējies. Mums nav zemes līnijas. Zvanīšana vai īsziņu sūtīšana, lai lietainā naktī lūgtu pacēlāju mājās no dzelzceļa stacijas, vai zvanot, lai pajautātu, vai manas atslēgas joprojām atrodas uz mana galda, ir burtiski vēlmju domāšana.

Man šī problēma ir pietiekami bieži, lai attaisnotu risinājumu. Nedaudz papļāpājot ar Arduino un Freetronics Dot Matrix Display (DMD), man radās ļoti kaitinošs (manai sievai) sīkrīks, bet man - pārsteidzoša sakaru ierīce un informācijas centrs. Man tas patīk, un tā ir tikai pirmā versija!

Mājas brīdinājums sastāv no šādām daļām:

  • Freetronics punktu matricas displejs, kas sastāv no 16x32 gaismas diodēm. Tie ir dažādās krāsās, bet es izmantoju sarkanu, lai uzsvērtu, ka šis sīkrīks ir paredzēts “kritiskiem” paziņojumiem.
  • Arduino Uno ar Ethernet vairogu.
  • Reāllaika pulksteņa pārtraukums, piemēram, šis vai šis.
  • Pjezo skaņas signāls
  • DHT22 temperatūras un mitruma sensors.

Mājas brīdinājumu kontrolē, izmantojot tīmekļa lapu, kas tiek mitināta Heroku-mākoņa lietojumprogrammu saimniekdatorā. Tīmekļa lapa ir kodēta rubīnā, izmantojot Sinatra tīmekļa lietotņu ietvaru un Redis atslēgu vērtību veikalu.

Apskatiet mājas lapu (šajā solī parādiet pirmajā pievienotajā attēlā), kur veidlapa gaida jaunu ziņojumu no lietotāja.

Pirmajā laukā tiek pieņemts ciparu aparatūras kods. Tas ir kods, kas ļauj atlasīt mērķauditoriju pēc konkrētas Home Alert sistēmas, jo katrai var piešķirt unikālu kodu. Vai arī jums var būt vairāki mājas brīdinājumi, kuriem ir viens un tas pats kods, lai viens un tas pats ziņojums tiktu parādīts vairākās vietās.

Ziņojums, kuru vēlaties parādīt, pāriet uz otro lauku. Jebkurš tur ievadītais teksts tiks parādīts DMD.

Ja vēlaties radīt troksni, pārbaudiet Jā! atzīmējiet izvēles rūtiņu, un skaņas signāls noteikti piesaistīs ikviena tuvumā esoša cilvēka uzmanību.

Šajā rakstā es jums parādīšu, kā izveidot savu Home Alert sistēmu, gan Arduino aparatūru un programmatūru, gan tīmekļa lietojumprogrammu Sinatra mini.

Sāksim!

1. darbība: aparatūra

Aparatūra
Aparatūra
Aparatūra
Aparatūra
Aparatūra
Aparatūra

Sīkrīka centrālais punkts ir DMD. Es varētu iet ar nelielu LCD ekrānu, bet šī projekta galvenā ideja bija radīt kaut ko tādu, ko var redzēt un dzirdēt no attāluma. Vizuālajai daļai man vajadzēja kaut ko lielu un spilgtu, un šis Freetronics displejs ir tieši tas, kas man vajadzīgs. Katrā panelī ir 16x32 gaismas diodes, un jūs varat salīmēt vairākus no tiem, lai izveidotu daudz lielākus displejus. Tas ir kaut kas, ko es vēlētos darīt tuvākajā nākotnē.

DMD ir viegli lietojama Arduino bibliotēka. tas sazinās ar Arduino, izmantojot ātrgaitas SPI. Es varēju iegūt bibliotēku no Freetronics Github lapas, pēc tam aktivizēt demonstrācijas skici un panākt, lai tā darbotos dažu minūšu laikā pēc kastes atvēršanas. Es biju pārsteigts, redzot tik spilgtu displeju, izmantojot tikai Arduino jaudu. Ja vēlaties uz laiku apžilbināt savus skatītājus, šim DMD varat pievienot īpašu barošanas avotu. Ja tas nepievērsīs viņu uzmanību, nekas nenotiks!

Fiziski šī displeja izmēri ir 320 mm (platums), 160 mm (augstums) un 14 mm (dziļums).

Aizmugurējā panelī ir savienotāji ārējai barošanai, 5 V ar vismaz 4 ampēru jaudu, Arduino savienotājs ar apzīmējumu HUB1 un savienotājs papildu displeju ķēdes savienošanai pretējā pusē. Saskaņā ar dokumentāciju jūs varat sasaistīt ķēdi līdz četriem DMD.

DMD kontrolē Arduino Uno. Freetronics nodrošina ļoti ērtu “DMDCON” savienotāju, kas vienkārši noklikšķina tieši uz pareizā SPI un datu tapām.

Izņemot DMD, es izmantoju Arduino Uno, Ethernet vairogu, reālā laika pulksteņa atslēgšanu, skaņas signālu un DHT22. Visiem šiem komponentiem esmu izveidojis lekcijas, kurās aprakstīts to darbība manā Udemy kursā. (Nekaunīga pašreklāma: reģistrējieties manā e-pasta sarakstā arduinosbs.com un saņemiet kuponu, kas nodrošina atlaidi visām 55 lekcijām).

Reālā laika pulkstenis, izlaušanās, kas balstīts uz DS18072 pulksteņa IC, ir I2C ierīce, tāpēc tas ir savienots ar Uno analogo 1. un 2. tapu, kas īsteno I2C kopni.

Signāls ir savienots ar 3. ciparu tapu, no kurienes es to kontrolēju, izmantojot signāla () funkciju.

DHT22 sensors ir pievienots digitālajai tapai 2. Esiet piesardzīgs, pieslēdzot 10KΩ pievilkšanas rezistoru starp 5V līniju un datu līniju.

2. solis: Arduino skice

Skice nav liela rindu skaita ziņā, bet gandrīz izsmeļ Uno pieejamo zibatmiņu, pateicoties visām iekļautajām bibliotēkām. Atmiņas optimizēšanai ir daudz vietas, bet, tā kā esmu prototipēšanas stadijā, tas ir projekts citai dienai. Šis kods ir pieejams vietnē Github.

Šeit ir skice ar iegultiem komentāriem (skatīt PDF pielikumu).

Šīs skices galvenais pienākums ir padarīt Arduino par tīmekļa pakalpojuma patērētāju. Tīmekļa pakalpojums ir vienkārša vietne ar diviem galapunktiem, no kuriem viens ir paredzēts lietotājam, lai piekļūtu, izmantojot tīmekļa pārlūkprogrammu, un iesniedz teksta virkni, kuru vēlas parādīt DMD, un vēl viena, kur Arduino piekļūs, lai izgūt šo teksta virkni.

Lūdzu, lejupielādējiet un izlasiet pievienoto PDF failu, tajā ir iegulti komentāri, kas apraksta tā darbību.

3. solis: Sinatra uz skatuves

Sinatra uzkāpj uz skatuves!
Sinatra uzkāpj uz skatuves!

Ir daudz veidu, kā izveidot tīmekļa vietnes un tīmekļa pakalpojumus. No programmēšanas valodām ar tīmekli atbalstošām bibliotēkām līdz pilnvērtīgām ietvarām var būt mulsinoši un grūti izvēlēties vienu šim darbam.

Esmu izmantojis un spēlējis ar diezgan daudzām tīmekļa lietojumprogrammu tehnoloģijām, un uzskatu, ka Sinatra ir ideāli piemērots tīmekļa pakalpojumu un mazu vietņu veidošanai. Jo īpaši, kad es izveidoju tīmekļa pakalpojumu, lai atbalstītu Arduino sīkrīku, Sinatra ir patiešām laba izvēle.

Kas ir Sinatra un kāpēc tā ir tik laba izvēle? Priecājos, ka jautājāt!

Sinatra ir valoda straujai tīmekļa lietojumprogrammu attīstībai. Tā pamatā ir Ruby - ļoti populāra un izteiksmīga vispārēja lietojuma skriptu valoda. Jūs varat dzirdēt, ka Sinatra tiek dēvēta par “DSL”, domēnam raksturīgu valodu. Domēns šeit ir Web. Sinatrai izveidotie atslēgvārdi (vārdi) un sintakse ir tādi, kas ļauj cilvēkiem viegli un ātri izveidot tīmekļa lietojumprogrammas.

Laikā, kad tā dēvētās “viedokļu” sistēmas tīmekļa lietotņu izstrādei, piemēram, Ruby on Rails un Django, ir ļoti populāras, Sinatra uztver spektra pretējo galu. Kamēr Ruby on Rails un Django pieprasa programmētājam ievērot noteiktu konvenciju un veidu, kā rīkoties (kas savukārt nozīmē stāvu un ilgu mācīšanās līkni), Sinatra šādas prasības neizvirza.

Sinatra konceptuāli ir daudz vienkāršāka nekā pasaules sliedes un Djangos. Jūs varat sākt darboties, izmantojot tīmekļa lietojumprogrammu, kas dažu minūšu laikā var mijiedarboties ar jūsu Arduino.

Es parādīšu ar piemēru. Lūk, kā izskatās Sinatra minimālā tīmekļa lietotne (pagaidām izlasiet tālāk minēto, faktiski nedariet to savā datorā, jo jums, iespējams, vēl nav izveidoti priekšnoteikumi):

Vienā failā sauksim to par my_app.rb, pievienojiet šo tekstu:

pieprasīt 'sinatra'get'/'do "Hello, world!" beigas

Komandrindā palaidiet lietotni šādi:

rubīns my_app.rb

Jūsu lietotne tiks palaista, un konsolē redzēsit šādu tekstu:

peter@ubuntu-dev: ~/arduino/sinatra_demo $ ruby my_app.rb Puma 2.8.1 sākas…* Minimālie pavedieni: 0, maksimālie pavedieni: 16* Vide: attīstība* Klausīšanās tcp: // localhost: 4567 == Sinatra/1.4.4 ir uz skatuves 4567 izstrādei ar rezerves kopiju no Puma

Lietotne tagad ir gatava saņemt klientu pieprasījumus. Atveriet pārlūkprogrammu, norādiet to uz vietni https:// localhost: 4567, un to jūs redzēsit (skat. Pievienoto ekrānuzņēmumu).

Tas ir četras vienkāršas koda rindas vienā failā. Turpretī Rails būtu prasījis vairāk nekā simts failu, kas ģenerēti vienkārši, lai izpildītu ietvara prasības. Nepārprotiet, es mīlu Rails, bet vai tiešām?…

Tātad Sinatra ir vienkārša un ātri darbināma. Es pieņemu, ka jūs neko nezināt par Rubīnu, Sinatru un lietojumprogrammu izvietošanu mākonī, tāpēc nākamajā sadaļā es jūs pakāpeniski no nulles līdz jūsu Arduino tīmekļa pakalpojuma izvietošanai mākonī.

4. solis: iestatiet savu izstrādes mašīnu

Sinatra pamatā ir programmēšanas valoda Ruby. Tātad, pirms Sinatra instalēšanas jums jāinstalē Ruby.

Jums būs jāinstalē arī atslēgu vērtību veikala serveris ar nosaukumu Redis. Padomājiet par Redis kā datu bāzi, kurā tiek glabāti dati pret atslēgu. Jūs izmantojat atslēgu, lai izgūtu datus, un tā ir optimizēta ātrumam, nevis elastībai datu struktūrās, kurām paredzēta tradicionālā relāciju datu bāze. Home Alert saglabā savus ziņojumus Redis.

5. solis: Ruby operētājsistēmā Mac vai Linux

Ja izmantojat Mac vai Linux datoru, iesakām izmantot RVM, lai instalētu un pārvaldītu Ruby instalāciju (RVM: Ruby Version Manager). Norādījumi par Ruby instalēšanu ar RVM ir šajā lapā vai vienkārši nokopējiet un ielīmējiet šo komandu savā apvalkā:

curl -sSL https://get.rvm.io | bash -s stabils --beržīgs

Sēdiet, atpūtieties, atpūtieties un gaidiet, līdz tiks pabeigta RVM un Ruby lejupielāde, apkopošana un instalēšana.

6. darbība. Rubīns operētājsistēmā Windows

Ja izmantojat operētājsistēmu Windows, iesaku ievērot šo rokasgrāmatu vietnē Ruby Installer for Windows un izmantot iestatīšanas lietojumprogrammu.

7. darbība: pārbaudiet un iestatiet savu rubīnu

Rakstīšanas laikā jaunākais stabilais Ruby laidiens ir 2.1.1.p76. Jūs varat pārbaudīt versiju, kas tika instalēta kopā ar RVM, ierakstot šo:

rvm informācija

Parādīsies daudz informācijas par RVM un Ruby. Manā gadījumā šī ir rubīna sadaļa:

ruby: interpreter: "ruby" version: "2.1.1p76" date: "2014-02-24" platform: "x86_64-linux" patchlevel: "2014-02-24 revision 45161" full_version: "ruby 2.1.1p76 (2014) -02-24 45161 pārskatīšana) [x86_64-linux]"

Es iesaku izmantot arī Ruby 2.1.1, tādēļ, ja redzat kaut ko vecāku par to, jauniniet šādi:

rvm instalēšana 2.1.1

Tas instalēs Ruby 2.1.1. RVM projekta vietnē ir daudz informācijas par RVM un to, kā pārvaldīt Ruby instalāciju.

8. darbība: instalējiet Sinatra (visas platformas)

Rubīnā kods tiek koplietots kā paketes, ko sauc par “dārgakmeņiem”. Sinatra kodu var instalēt jūsu datorā kā dārgakmeni:

dārgakmens instalēt sinatra

Šajā rindā tiks ielādēts viss kods un dokumentācija, un tā tiks instalēta jūsu datorā.

9. darbība: atkārtojiet operētājsistēmā Mac vai Linux

Redis iestatīšana Mac vai Linux ir vienkārša. Process ir izskaidrots Redis tīmekļa vietnē. Atveriet čaulas termināli un ierakstiet šīs 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 $ marka

Palaidiet Redis, ierakstot:

$ src/redis-server

… Un jūs esat pabeidzis!

10. darbība: atkārtojiet operētājsistēmā Windows

Redis operētājsistēmā Windows ir ieteicama tikai izstrādei, un jums tas būs jāapkopo, izmantojot bezmaksas Visual Studio Express izstrādes vidi. Lai to palaistu, tas prasa mazliet laika, taču tas darbojas labi un ir pūļu vērts. Izpildiet norādījumus projekta Github lapā. Tur jūs atradīsit arī saiti uz Visual Studio Express lapu.

11. darbība: izveidojiet tīmekļa pakalpojuma lietojumprogrammu

Izveidojiet tīmekļa pakalpojuma lietojumprogrammu
Izveidojiet tīmekļa pakalpojuma lietojumprogrammu

Izveidosim lietojumprogrammu un palaidīsim to savā izstrādes mašīnā. Mēs pielāgosim Arduino skici, lai izveidotu savienojumu ar šo lietojumprogrammas gadījumu, kamēr to pārbaudām. Kad būsim pārliecināti, ka viss darbojas labi, mēs izvietosimies mākonī un atjaunināsim skici, lai izmantotu mākoņa instanci.

Šeit ir Rubīna kods, viss vienā failā ar nosaukumu "web.rb" (šis kods ir pieejams vietnē Github).

Svarīgi: lejupielādējiet un izlasiet pievienoto PDF failu, tas satur detalizētus iegultus komentārus (lūdzu, dariet to, pirms turpināt!).

Tagad varat izmēģināt savu Home Alert sistēmu. Savā skicē mainiet WEBSITE un WEBPAGE konstantes, lai norādītu uz savu izstrādes mašīnu un portu savam attīstības Sinatra serverim. Manā gadījumā man ir izstrādes mašīna ar IP 172.16.115.136, un Sinatra izstrādes serveris klausās portu 5000, tāpēc mani skices iestatījumi ir šādi:

#define HW_ID "123" #define WEBSITE “172.16.115.136:5000”#define WEBPAGE“/get_message/"

Šī IP adrese ir pieejama tikai ierīcēm manā mājas tīklā.

Iestatījums HW_ID apzīmē “aparatūras ID”, tas ir, ID, uz kuru Arduino, kas kontrolē DMD, identificēsies Sinatra lietojumprogrammā. Tas ir ļoti vienkāršs autentifikācijas veids. Tīmekļa lietojumprogramma nodos ziņojumu Arduino, lūdzot to, pamatojoties uz norādīto HW_ID. Jums var būt vairākas ierīces ar vienu un to pašu HW_ID; tādā gadījumā visas ierīces parādīs vienu un to pašu ziņojumu. Ja vēlaties “privātumu”, izvēlieties ID ar daudzām nejaušām rakstzīmēm, kuras citi nevarēs uzminēt. Uzmanieties arī, nekāda saziņa nav šifrēta.

Tagad dodieties uz priekšu un startējiet lietotni Sinatra, ierakstiet šo (pieņemot, ka atrodaties Sinatra projekta mapē):

rubīns web.rb

… Un jūs redzēsit kaut ko līdzīgu (dažas detaļas var atšķirties, ja vien tas negadās, jums viss ir kārtībā):

10:42:18 web.1 | sākās ar pid 4911910: 42: 18 web.1 | Puma 2.8.1 sākot… 10: 42: 18 web.1 | * Minimālie pavedieni: 0, maksimālie pavedieni: 1610: 42: 18 web.1 | * Vide: izstrāde10: 42: 18 web.1 | * Klausīšanās tcp: //0.0.0.0: 5000

Norādiet savu tīmekļa pārlūkprogrammu uz vietu, kurā serveris klausās, un jūs to redzēsit (skatiet otro pielikumu).

Augšupielādējiet savu skici Arduino, pārliecinieties, vai tā ir savienota ar vietējo tīklu. Ja viss iet labi, Arduino reizi minūtē aptaujās jūsu tīmekļa pakalpojumu. Dodiet tai parādāmu ziņojumu: HW koda laukā ierakstiet to pašu ID, ko skicē iestatījāt konstantei HW_ID. Laukā “Jūsu ziņojums” ierakstiet jebko un atzīmējiet “Buzz?” izvēles rūtiņu.

Iesniedziet, pagaidiet minūti un redziet, kā jūsu ziņojums parādās DMD!

12. darbība: izvietojiet mākonī, izmantojot Heroku

Tagad, kad mājas brīdinājums tiek izstrādāts, sāksim to strādāt mākonī. Tīmekļa lietojumprogrammu izvietošanai ir pieejamas neskaitāmas iespējas. Pamatojoties uz Home Alert darbības jomu un sarežģītību, es nolēmu, ka sava virtuālā privātā servera iestatīšana nav pūļu vērta. Tā vietā labāk ir izmantot tādu pakalpojumu kā lietojumprogrammu mitinātājs Heroku. Manā mērogā Heroku bezmaksas līmenis ir vairāk nekā pietiekams. Pat attiecībā uz komponentu Redis es varēju izvēlēties bezmaksas plānu no viena no daudziem Redis pakalpojumu sniedzējiem, kas sadarbojas ar Heroku.

Tomēr ir jāpieliek nelielas pūles, kas ir saistītas ar to, ka mana lietojumprogramma tiek nedaudz mainīta, lai tā atbilstu Heroku specifikācijām. Sīkāka informācija ir šeit, taču būtībā jums būs jāpievieno šie faili jūsu Sinatra projektam (visus turpmākos failus var lejupielādēt no mana Github konta):

* config.ru: tas norāda Heroku, kurš fails satur lietojumprogrammu. Šeit ir saturs:

pieprasīt './web'run Sinatra:: Lietojumprogramma

Pirmā rinda norāda uz web.rb, bet otrā rinda vada jūsu lietojumprogrammu.

* Gemfile: tajā ir dārgakmeņi (rubīna koda paketes), kas nepieciešami lietojumprogrammai. Heroku meklēs šo failu, lai noskaidrotu, kāds cits kods ir jāinstalē, lai jūsu lietojumprogramma darbotos. Vēl viens veids, kā apskatīt Gemfile, ir jūsu projekta atkarību saraksts. Ja kāda no šīm atkarībām nav pieejama, jūsu lietojumprogramma nedarbosies. Lūk, kas ir šīs lietotnes Gemfile iekšpusē:

avots "https://rubygems.org" ruby "2.1.1" gem 'sinatra'gem' puma'gem 'redis'

Pirmkārt, tas nosaka visa Gem koda avota krātuvi kā rubygems.org. Tālāk ir nepieciešams, lai lietojumprogrammas palaišanai tiktu izmantota Ruby versija 2.1.1. Tad tajā ir uzskaitīti nepieciešamie dārgakmeņi: Sinatra, Puma (lielisks Ruby tīmekļa lietojumprogrammu serveris) un Redis.

* Procfile: tas stāsta Heroku, kā palaist serveri. Šeit ir tikai viena rinda:

tīmeklis: rackup -s puma -p $ PORT

Šajā rindiņā teikts, ka “tīmeklis” ir vienīgais nepieciešamais pakalpojums (fona apstrādei var būt citi, piemēram, “strādnieks”), un, lai sāktu pakalpojumu, Heroku jāizmanto komanda, kas nāk aiz “:”.

Jūs varat simulēt, ko Heroku darīs, ievērojot šo secību savā izstrādes mašīnā (tikai ievadiet testu pirms bultiņas; tas, kas seko bultiņai, ir tikai komandas apraksts):

$> gem install bundler -> instalē Bundler, kas zina, kā rīkoties ar Gemfile. $> saišķa instalēšana -> Bundler apstrādā Gemfile un instalē atkarības. $> rackup config.ru -> Rackup ir rīks, kas var apstrādāt failu config.ru. Tas parasti tiek piegādāts kopā ar jaunāko Ruby versiju, ja tā netiek instalēta šādi: dārgakmeņu instalācijas statīvs.

Pēdējais solis faktiski palaiž jūsu lietojumprogrammu. Jums vajadzētu redzēt tieši tādu pašu izvadi kā tad, kad to sākāt ar ruby web.rb iepriekš. Tā darbojas tā pati lietojumprogramma, tikai ar atšķirību, ka otrā metode ir tā, kā Heroku to sāk.

Mēs esam gandrīz gatavi izvietot šo lietojumprogrammu jūsu Heroku kontā. Ja vēl neesat to ieguvis, turpiniet un izveidojiet to tūlīt. Pēc tam izpildiet īsā darba sākšanas rokasgrāmatu, lai iestatītu savu kontu un vietējo izstrādes mašīnu, jo īpaši Heroku rīku jostu.

Heroku rīkjosla instalē Heroku komandrindas klientu Git (atvērtā pirmkoda pārvaldības sistēma) un Foreman (Ruby rīks, kas palīdz pārvaldīt uz Procfile balstītas lietojumprogrammas).

Kad esat pabeidzis Heroku rīkjoslas instalēšanu, ievērojot Heroku tīmekļa vietnē sniegtos norādījumus, veiciet tālāk norādītās darbības, lai sāktu lietotnes izvietošanu (viss ir ierakstīts komandrindā lietotnes direktorijā):

$> heroku pieteikšanās -> Piesakieties Heroku, izmantojot komandrindu $> git init -> Inicializējiet Git krātuvi savai lietojumprogrammai $> git add. -> (ievērojiet punktu!) Pievienojiet visus failus pašreizējā direktorijā Git repozitorijā $> git saistīt -m “init” -> Ievietojiet šos failus krātuvē ar jaunu ziņojumu $> heroku create -> Izveidot jaunu lietotne Heroku. Heroku piešķirs jūsu lietotnei nejaušu nosaukumu, piemēram, “blazing-galaxy-997”. Pierakstiet nosaukumu un URL, lai vēlāk varētu tam piekļūt, izmantojot tīmekļa pārlūkprogrammu. Šis URL izskatīsies šādi: “https://blazing-galaxy-997.herokuapp.com/”. Jums arī būs jākopē jaunās lietojumprogrammas saimniekdatora nosaukums (daļa “blazing-galaxy-997.herokuapp.com”) Arduino skices WEBSITE konstantē. Dariet to tagad, lai vēlāk neaizmirstu. $> heroku papildinājumi: pievienot rediscloud -> pievieno jūsu lietojumprogrammai Rediscloud Redis pakalpojuma bezmaksas līmeni. Konfigurācijas iestatījumi tiek automātiski izveidoti un pieejami jūsu lietojumprogrammai. $> git push heroku master -> Izvietojiet savu kodu Heroku. Tas automātiski pārsūtīs kodu, iestatīs visas atkarības no Heroku un sāks lietotni. Procesa beigās jūs redzēsit kaut ko līdzīgu: “https://blazing-galaxy-997.herokuapp.com izvietots Heroku”, kas nozīmē, ka jūsu lietojumprogramma tagad ir pieejama publiskajā mākonī! Apsveicam!

Uz priekšu, pagrieziet to!

13. solis: salieciet to visu kopā

Kad jūsu tīmekļa lietojumprogramma ir izvietota, augšupielādējiet atjaunināto skici Arduino (atcerieties, ka esat atjauninājis WEBSITE konstanti, lai norādītu uz tīmekļa lietojumprogrammas ražošanas gadījumu).

Izmantojiet savu pārlūkprogrammu, lai piekļūtu Heroku lietotnei. Tāpat kā ievadā, pirmajā tekstlodziņā ierakstiet aparatūras ID, otrajā - ziņojumu un atzīmējiet izvēles rūtiņu, lai aktivizētu skaņas signālu.

Jūsu ziņojums parādīsies DMD aptuveni pēc minūtes, ja viss būs kārtībā!

14. solis: potenciāls

Ar mājas brīdināšanas sistēmu var paveikt vēl daudz vairāk …

Ja jums ir Heroku aizmugure, varat pievienot daudz loģikas, kas var pievienot pārsteidzošu funkcionalitāti. Piemēram, jūs varat pievienot lietojumprogrammai iespēju pārvaldīt atkārtotus paziņojumus, apstiprinājumus vai kontrolēt papildu paziņojumu aparatūru, piemēram, zibspuldzes uc Jūs varētu pievienot vairākus DMD, lai parādītu vai nu dažādus ziņojumus katrā, vai vienu ziņojumu kopā lielākā displejā. Es tikai saskrāpēju virsmu tam, kas šeit ir iespējams!

Izbaudi!

Ieteicams: