Sisukord:

RPi IoT nutivalgus Firebase'i abil: 4 sammu (koos piltidega)
RPi IoT nutivalgus Firebase'i abil: 4 sammu (koos piltidega)

Video: RPi IoT nutivalgus Firebase'i abil: 4 sammu (koos piltidega)

Video: RPi IoT nutivalgus Firebase'i abil: 4 sammu (koos piltidega)
Video: Raspberry Pi IoT Server Tutorial: InfluxDB, MQTT, Grafana, Node-RED & Docker 2024, Juuli
Anonim
RPi IoT nutivalgus Firebase'i abil
RPi IoT nutivalgus Firebase'i abil
RPi IoT nutivalgus Firebase'i abil
RPi IoT nutivalgus Firebase'i abil
RPi IoT nutivalgus Firebase'i abil
RPi IoT nutivalgus Firebase'i abil
RPi IoT nutivalgus Firebase'i abil
RPi IoT nutivalgus Firebase'i abil

See juhend näitab teile, kuidas teha ja seadistada rakendus Raspberry Pi juhtimiseks Firebase'i (veebipõhine andmebaas) kaudu. Ja siis 3D -printimine, korpuse jaoks Pi Zero W, Powerboost 1000C, aku ja Blinkt !.

Et kõige hõlpsamini jälgida, soovitan teil olla tuttav Xcode'i ja Raspberry Pi -ga.

Ja kui teile meeldib see, mida näete, jälgige mind Instagramis ja Twitteris (@Anders644PI), et olla kursis sellega, mida ma teen.

Sa vajad:

  • Raspberry Pi Zero W adapterite ja GPIO-päistega

    (või tavaline Pi Zero koos WiFi -dongliga)

  • A PowerBoost 1000 C.
  • Liitiumioonaku - 3.7v 2000mAh
  • A Blinkt! (või mis tahes pHAT/müts, see: ei kasuta füüsilist tihvti 5 ja mütsid peaksid olema tasased põhjas.)
  • 8 GB või suurem Micro SD -kaart, millel on Raspbian Stretch (töölauaga)
  • Klaviatuur ja hiir (kuid saate ka ssh -ühenduse luua, kui nüüd seda teete)
  • Ühendus monitori või teleriga (või ssh!)
  • Vanakruvid
  • Väikesed juhtmed
  • Väike lüliti ja väike nupp
  • 3D -printer ja üks pool mis tahes värvi PLA -hõõgniiti ning üks pool läbipaistvat PLA -d (või võite selle printimiseks kasutada 3D -teenust, näiteks 3D -jaoturid)

Samm: Firebase ja Xcode

Firebase ja Xcode
Firebase ja Xcode
Firebase ja Xcode
Firebase ja Xcode
Firebase ja Xcode
Firebase ja Xcode

Esmalt seadistame rakendusega Firebase'i, et saaksime rakendusest Pi -ga suhelda.

Kui jääte segadusse, saate seda videot vaadata.

1. Avage Xcode ja tehke uus Xcode projekt. Valige ühe vaate rakendus ja nimetage see RPiAppControliks ning veenduge, et keel oleks kiire. Vajutage nuppu Edasi ja salvestage see.

2. Kopeerige oma kimbu identifikaator, sest meil on seda hiljem vaja.

3. Logige Firebase'is sisse oma Google'i kontoga ja klõpsake nuppu Mine konsooli.

4. Looge uus projekt ja nimetage see RPiAppControliks.

5. Klõpsake oma IOS -i rakendusse Lisa Firebase. Kleepige oma kimbu identifikaator ja vajutage Registreeri rakendus.

6. Laadige alla GoogleService-Info.plist ja lohistage see oma Xcode'i projekti.

7. Tulles tagasi Firebase'i, vajutage Jätka. Seejärel avage terminaliaken ja navigeerige oma Xcode projekti asukohta.

8. Käivitage see käsk:

pod init

9. Avage Podfile ja all use_frameworks!, lisage see rida:

pod 'Firebase/Core'

10. Tagasi terminalitüüpi: pod install ja sulgege Xcode.

11. Navigeerige Finderis oma Xcode projekti ja avage äsja loodud.xcworkspacefile.

12. Siit minge saidile AppDelegate.swift ja lisage UIKiti importimise alla see rida:

Firebase'i importimine

Ja rakenduse funktsioonis lisage see rida:

FIRApp.configure ().

13. Tagasi Firebase'is klõpsake nuppu Jätka ja seejärel Lõpeta.

14. Minge andmebaasi, seejärel reeglid ja määrake ".read" ja ".write" väärtuseks true. Vajutage Avalda.

15. Tagasi Xcode'i juurde, avage Podfile ja lisage esimese seatud rea alla see:

pod 'Firebase/andmebaas'

16. Tagasi terminalis käivitage pod install uuesti.

Samm: Xcode'i viimistlemine

Xcode'i viimistlemine
Xcode'i viimistlemine
Xcode'i viimistlemine
Xcode'i viimistlemine
Xcode'i viimistlemine
Xcode'i viimistlemine

Nüüd lõpetame koodi ja paigutuse Xcode'is.

See kasutab Xcode 9 ja Swift 4

ViewController'i kood1. Lisage ViewControlleri ülaossa ja importimise UIKiti alla see:

Firebase'i importimine

importida FirebaseDatabase

2. Kopeerige ViewControlleri põhjas ja funktsiooni didReceivedMemoryWarning all need funktsioonid iga nupu jaoks:

func num1 (olek: string) {

let ref = FIRDatabase.database (). reference () let post: [String: Any] = ["state": olek] ref.laps ("num1"). setValue (post)}Ärge unustage muuta (numbrit

3. Sisestage funktsiooni viewDidLoad funktsiooni super.viewDidLoad () alla see rida iga nupu jaoks (mitme nupu puhul muutke lihtsalt (number). Vaata pilti…):

number1 (olek: "OFF")

Main.storyboard ja nuppude paigutus

1. Avage Main.storyboard ja sisestage mõned nupud. Saate neid paigutada nii nagu mina või kohandada vastavalt soovile.

2. Ühendage nupud ViewControlleriga. Iga nupp tuleb ühendada kaks korda: üks toiminguna ja UIBnupp nimega num (number) nupp ja teine vaikimisi väljund ja nimetage see numbriks (number). Vaata pilti…

3. Seejärel kleepige kõigi nuppude jaoks see rida igale funktsioonile:

if self.num1Color.backgroundColor == UIColor.lightGray {// Määrab taustavärvi helehalliks

num1 (olek: "ON") // Saadab olekule "ON" Firebase self.num1Color.backgroundColor = UIColor (punane: 0,96, roheline: 0,41, sinine: 0,26, alfa: 1,0) // Määrab taustavärvi punakas} else {num1 (olek: "VÄLJAS") // Saadab olekule "VÄLJA" Firebase'ile self.num1Color.backgroundColor = UIColor.lightGray // Määrab taustavärvi helehalliks}

Nüüd peaks teil olema võimalik seda rakendust käivitades testida ja nuppe vajutades peaksite Firebase'i reaalajas andmebaasis nägema selle muutuvat olekut.

Viimistlus (valikuline)

1. Laadige alla allolevad pildid ja sisestage LaunchScreen-image-j.webp

2. Avage Assets.xcassets ja seejärel AppIcon. Siin asetage vastav AppIconi suurus.

Samm: Raspberry Pi seadistamine

Vaarika Pi seadistamine
Vaarika Pi seadistamine

Nüüd peame Pi seadistama Firebase'iga, et rakendus saaks suhelda, Firebase'i Pi -le visata.

Ma ei kirjutanud koodi, kuid algse koodi leiate siit.

1. Käivitage terminalis tavalised värskendused:

sudo apt-get update && sudo apt-get dist-upgrade

2. Seejärel impordime pürebaasi (Firebase):

sudo pip install pyrebase

sudo pip3 install pyrebase sudo pip3 install-upgrade google-auth-oauthlib

3. Laadige nüüd alla Blinkti raamatukogu:

curl https://get.pimoroni.com/blinkt | lööma

4. Kloonige minu GitHubi hoidla:

git kloon https://github.com/Anders644PI/RPiAppControl.gitcd RPiAppControl

5. Muutke AppRPiControl_Template.py:

nano RPiAppControl_Template.py

6. Täitke oma Firebase ApiKey ja projectId. Nende leidmiseks minge oma Firebase'i projekti, klõpsake käsul Lisa veel üks rakendus ja seejärel lisa oma veebirakendusse Firebase.

7. Kohandage funktsioone ja salvestage muudatused, vajutades ctrl-o (enter) ja sulgege klahvikombinatsiooniga ctrl-x.

8. Nüüd käivitage see koos:

sudo python3 RPiAppControl_Template.py

9. Kui kasutate Blinkti, võite proovida näidet, kui olete oma Firebase ApiKey ja projectId täitnud:

cd näited

nano RPiAppControl_blinkt_demo.py

Nüüd käivitage see:

sudo python3 RPiAppControl_blinkt_demo.pyPidage meeles, et pärast skripti käivitamist kulub ettevalmistamiseks umbes minut (vähemalt Pi Zero puhul). Ja skript tuleb käivitada python 3 -s

10. BONUS: Kui soovite, et skript käivitatakse alglaadimisel, saate siit teada, kuidas seda teha.

Väljalülitus/toitenupp

Toitenupu paigaldamine on valikuline, kuid ma soovitan seda. Selle seadistamiseks järgige seda videot.

Pidage meeles, et see kasutab Pi -l füüsilist tihvti 5, nii et mõned mütsid ei tööta.

4. samm: ümbris

Soovitan: