Sadržaj:
- Korak 1: Firebase i Xcode
- Korak 2: Dovršavanje Xcode -a
- Korak 3: Postavljanje Raspberry Pi
- Korak 4: Ograđivanje
Video: RPi IoT Smart Light pomoću Firebase -a: 4 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Ovaj vodič vam pokazuje kako napraviti i postaviti aplikaciju za kontrolu Raspberry Pi putem Firebase -a (mrežne baze podataka). A zatim 3D ispis kućišta za Pi Zero W, Powerboost 1000C, bateriju i Blinkt !.
Da biste mogli najlakše pratiti, preporučujem da se upoznate s Xcode -om i Raspberry Pi -em.
A ako vam se sviđa ono što vidite, slijedite me na Instagramu i Twitteru (@Anders644PI) kako biste bili u toku sa onim što radim.
Trebat će vam:
- Raspberry Pi Zero W sa adapterima i GPIO zaglavljima
(ili obični Pi Zero sa WiFi ključem)
- PowerBoost 1000 C
- Litijum -jonska baterija - 3.7v 2000mAh
- A Blinkt! (ili bilo koji pHAT/HAT, koji: ne koristi pin 5 fizički, a HAT bi trebali biti ravni na dnu.)
- Micro SD kartica od 8 GB ili više, sa Raspbian Stretch (sa radnom površinom) na njoj
- Tastatura i miš (ali možete se povezati i preko ssh -a, ako sada znate kako)
- Veza sa monitorom ili televizorom (ili ssh!)
- Vijci za otpad
- Male žice
- Mali prekidač i malo dugme
- 3D štampač i jedna kalemarica bilo koje boje PLA niti, i jedna kalema prozirne PLA (ili možete koristiti 3D uslugu poput 3D Hub -a za štampanje umjesto vas)
Korak 1: Firebase i Xcode
Prvo ćemo postaviti Firebase s aplikacijom, tako da možemo komunicirati iz aplikacije na Pi.
Ako ste zbunjeni, možete pogledati ovaj video.
1. Otvorite Xcode i napravite novi Xcode projekt. Odaberite aplikaciju Single View i nazovite je RPiAppControl i provjerite je li jezik Swift. Pritisnite Dalje i spremite je.
2. Kopirajte svoj identifikator paketa jer će nam to trebati kasnije.
3. U Firebase se prijavite sa svojim Google računom i kliknite Idi na konzolu.
4. Kreirajte novi projekt i nazovite ga RPiAppControl.
5. Kliknite Dodaj Firebase u svoju IOS aplikaciju. Zalijepite svoj Bundle Identifier i pritisnite Register App.
6. Preuzmite GoogleService-Info.plist i povucite ga u svoj Xcode Project.
7. Vratite se u Firebase, pritisnite Nastavi. Zatim otvorite prozor terminala i idite do lokacije vašeg Xcode projekta.
8. Pokrenite ovu naredbu:
pod init
9. Otvorite Podfile i pod use_frameworks!, dodajte ovaj red:
pod 'Firebase/Core'
10. Vratite se na tip terminala: pod install, i zatvorite Xcode.
11. U Finderu idite na svoj Xcode projekt i otvorite novostvorenu.xcworkspacefile.
12. Ovdje idite na AppDelegate.swift, a pod import UIKit dodajte ovu liniju:
uvoz Firebase
I u application-function dodajte ovaj redak:
FIRApp.configure ().
13. Nazad u Firebase -u kliknite Nastavi, a zatim Završi.
14. Idite na Bazu podataka, zatim Pravila i postavite ".read" i ".write" na true. Pritisnite OBJAVI.
15. Vratite se na Xcode, otvorite Podfile i ispod prvog retka koji smo postavili dodajte ovo:
pod 'Firebase/Baza podataka'
16. Nazad u terminalu, ponovo pokrenite pod install.
Korak 2: Dovršavanje Xcode -a
Sada ćemo završiti kôd i izgled u Xcode -u.
Ovo koristi Xcode 9 i Swift 4
Kôd za ViewController1. Na vrhu ViewControllera, a ispod uvoznog UIKita, dodajte ovo:
uvoz Firebase
uvoz FirebaseDatabase
2. Na dnu ViewControllera, a ispod funkcije didReceiveMemoryWarning, kopirajte zalijepite ove funkcije za svako dugme:
func num1 (stanje: String) {
neka ref = FIRDatabase.database (). referenca () neka objavi: [String: Bilo koji] = ["stanje": stanje] ref.child ("num1"). setValue (post)}Ne zaboravite promijeniti (broj
3. U funkciji viewDidLoad, ispod super.viewDidLoad (), umetnite ovaj red za svako dugme (Za više dugmadi samo promijenite (broj). Pogledajte sliku …):
num1 (stanje: "OFF")
Izgled glavne ploče i dugmadi
1. Idite na Main.storyboard i unesite nekoliko dugmadi. Možete ih rasporediti kao ja ili ih prilagoditi kako želite.
2. Povežite dugmad sa ViewControllerom. Svako dugme potrebno je dvaput spojiti: jedno kao radnju i UIButto dugme koje se naziva dugme broj (broj), a drugo kao zadanu utičnicu i nazovite ga broj (broj) Boja. Pogledajte sliku…
3. Zatim za sve tipke zalijepite u ovaj redak svaku od funkcija:
if self.num1Color.backgroundColor == UIColor.lightGray {// Postavlja boju pozadine na lightGray
num1 (stanje: "ON") // Šalje stanje: "ON" firebase self.num1Color.backgroundColor = UIColor (crveno: 0,96, zeleno: 0,41, plavo: 0,26, alfa: 1,0) // Postavlja boju pozadine na reddish} else {num1 (state: "OFF") // Šalje stanje: "OFF" firebase self.num1Color.backgroundColor = UIColor.lightGray // Postavlja boju pozadine na lightGray}
Sada biste trebali moći to isprobati, pokretanjem aplikacije, a kada pritisnete tipke, trebali biste vidjeti kako se stanje mijenja, u bazi podataka u stvarnom vremenu u Firebaseu.
Završni detalji (opcionalno)
1. Preuzmite donje slike i umetnite LaunchScreen-image-j.webp
2. Idite na Assets.xcassets, a zatim AppIcon. Ovdje postavite odgovarajuću veličinu AppIcon -veličine.
Korak 3: Postavljanje Raspberry Pi
Sada moramo postaviti Pi sa Firebaseom, tako da aplikacija može komunicirati, bacati Firebase na Pi.
Nisam napisao kod, ali ovdje možete pronaći originalni kod.
1. Na terminalu pokrenite uobičajena ažuriranja:
sudo apt-get update && sudo apt-get dist-upgrade
2. Zatim ćemo uvesti pyrebase (Firebase):
sudo pip install pyrebase
sudo pip3 install pyrebase sudo pip3 install --upgrade google-auth-oauthlib
3. Sada preuzmite Blinkt biblioteku:
curl https://get.pimoroni.com/blinkt | bash
4. Kloniraj moje GitHub spremište:
git clone https://github.com/Anders644PI/RPiAppControl.gitcd RPiAppControl
5. Uredite AppRPiControl_Template.py:
nano RPiAppControl_Template.py
6. Popunite svoj Firebase ApiKey i projectId. Možete ih pronaći ako odete na svoj Firebase projekt, kliknete Dodaj još jednu aplikaciju, a zatim dodate Firebase u svoju web aplikaciju.
7. Prilagodite funkcije i spremite promjene pritiskom na ctrl-o (enter) i zatvorite pomoću ctrl-x.
8. Sada ga pokrenite sa:
sudo python3 RPiAppControl_Template.py
9. Zatim, ako koristite Blinkt, možete isprobati primjer kada ste popunili svoj Firebase ApiKey i projectId:
cd primjeri
nano RPiAppControl_blinkt_demo.py
Sada ga pokrenite:
sudo python3 RPiAppControl_blinkt_demo.pyImajte na umu da je nakon pokretanja skripte potrebno oko minute da se pripremi (barem na Pi Zero). Skripta mora biti pokrenuta u pythonu 3
10. BONUS: Ako želite da se skripta pokreće pri pokretanju, možete saznati kako, ovdje.
Dugme za isključivanje/uključivanje
Nije obavezno instalirati dugme za uključivanje, ali preporučujem ga. Pratite ovaj video za postavljanje.
Imajte na umu da ovo koristi fizički pin 5 na Pi, tako da neki HAT -ovi neće raditi.
Korak 4: Ograđivanje
Preporučuje se:
Sistem vizuelnog praćenja poljoprivrede zasnovan na LoRa Iot - Dizajniranje prednje aplikacije pomoću Firebase & Angular: 10 koraka
Sistem vizuelnog praćenja poljoprivrede zasnovan na LoRa Iot | Dizajniranje prednje aplikacije pomoću Firebase -a i Angular -a: U prethodnom poglavlju govorimo o tome kako senzori rade sa loRa modulom za popunjavanje firebase baze podataka u realnom vremenu, i videli smo dijagram na visokom nivou kako ceo naš projekat funkcioniše. U ovom poglavlju ćemo govoriti o tome kako možemo
Kućna automatizacija pomoću Google Firebase: 3 koraka
Kućna automatizacija pomoću Google Firebase: Uvod: Ovo je projekt kućne automatizacije koji koristi firebase i nodeMCU. Prvo zašto sam odabrao Firebase je to što se može lako održavati jer ima izvještaj o napretku, Crash Analytics itd., A potpuno je besplatan pa vam možemo
Kako napraviti Firebase sistem kućne automatizacije pomoću NodeMCU - u IOT platformi: 14 koraka
Kako napraviti Firebase sistem kućne automatizacije pomoću NodeMCU | u IOT platformi: CILJ OVOG PROJEKTAOvaj projekt ima za cilj razvoj sistema kućne automatizacije koji daje korisniku potpunu kontrolu nad svim uređajima na daljini kojima se može upravljati njegov dom pomoću IOT Android aplikacije. Postoji mnogo mrežnih poslužitelja i platformi trećih strana
Lista obaveza u stvarnom vremenu pomoću Google Firebase-a: 12 koraka
Lista obaveza u stvarnom vremenu koristeći Google Firebase: Zdravo! Svi svakodnevno koristimo liste zadataka, bilo online ili offline. Dok su vanmrežne liste sklone gubljenju, a virtuelne liste mogu biti pogrešno postavljene, slučajno izbrisane ili čak zaboravljene. Stoga smo odlučili napraviti jedan na Google Firebaseu
Upravljanje NodeMCU ESP8266 1.0 12E pomoću Google Firebase: 4 koraka
Upravljanje NodeMCU ESP8266 1.0 12E pomoću Google Firebase-a: U ovom tečaju ćemo stvarati Android aplikaciju, stvarati Firebase bazu podataka i kontrolirati NodeMCU ESP 8266 1.0 12E uz koordinaciju prethodno navedenih proizvoda