Агуулгын хүснэгт:
- Алхам 1: Firebase ба Xcode
- Алхам 2: Xcode -г дуусгаж байна
- Алхам 3: Raspberry Pi -ийн тохиргоо
- Алхам 4: Хашаа
Видео: Firebase ашиглан RPi IoT ухаалаг гэрэл: 4 алхам (зурагтай)
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
Энэхүү гарын авлага нь Raspberry Pi -ийг Firebase (онлайн мэдээллийн сан) ашиглан удирдах програмыг хэрхэн хийх, тохируулахыг танд харуулав. Дараа нь Pi Zero W, Powerboost 1000C, батерей, Blinkt -ийн хэргийг 3D хэвлэх.
Үүнийг дагахын тулд Xcode болон Raspberry Pi -ийг сайн мэддэг байхыг зөвлөж байна.
Хэрэв танд харсан зүйл тань таалагдаж байвал миний хийсэн зүйлийг дагаж мөрдөхийн тулд намайг Instagram, Twitter (@Anders644PI) дээр дагаарай.
Танд хэрэгтэй болно:
-
Адаптер болон GPIO толгой бүхий Raspberry Pi Zero W
(эсвэл WiFi гогцоотой энгийн Pi Zero)
- PowerBoost 1000 C
- Литийн ион батерей - 3.7v 2000mAh
- Блинкт! (эсвэл ямар нэгэн pHAT/HAT, энэ нь: 5 -р биетийг ашигладаггүй бөгөөд HAT нь доод талд нь хавтгай байх ёстой.)
- 8GB ба түүнээс дээш хэмжээтэй Micro SD карт, Raspbian Stretch (ширээний хамт)
- Гар ба хулгана (гэхдээ хэрэв та одоо байгаа бол ssh дээр холбогдож болно)
- Монитор эсвэл телевизортой холболт (эсвэл ssh!)
- Хаягдал эрэг
- Жижиг утаснууд
- Жижиг унтраалга, жижиг товчлуур
- 3D принтер, ямар ч өнгийн PLA судалтай нэг дамар, ил тод PLA нэг дамар (эсвэл та 3D Hubs гэх мэт 3D үйлчилгээг ашиглан хэвлэж болно)
Алхам 1: Firebase ба Xcode
Эхлээд бид програмыг ашиглан Firebase -ийг тохируулах болно, ингэснээр бид програмаас Pi руу харилцах боломжтой болно.
Хэрэв та эргэлзэж байвал энэ видеог үзэх боломжтой.
1. Xcode -ийг нээгээд Xcode -ийн шинэ төсөл хий. Single View програмыг сонгоод RPiAppControl гэж нэрлээд хэл нь Swift байгаа эсэхийг шалгаарай. Дараах товчийг дараад хадгална уу.
2. Багц танигчийг хуулж ав, учир нь бидэнд дараа нь хэрэгтэй болно.
3. Firebase дээр Google акаунтаараа нэвтэрч консол руу очих товчийг дарна уу.
4. Шинэ төсөл үүсгээд түүнийгээ RPiAppControl гэж нэрлэнэ үү.
5. IOS App дээрээ Firebase нэмэх дээр дарна уу. Багц танигчдаа оруулаад бүртгүүлэх програмыг дарна уу.
6. GoogleService-Info.plist-ийг татаж аваад Xcode Project руу чирнэ үү.
7. Firebase дээр буцаж очоод Үргэлжлүүлэх дээр дарна уу. Дараа нь терминалын цонх нээгээд Xcode төслийнхөө байршил руу очно уу.
8. Энэ тушаалыг ажиллуулна уу:
pod init
9. Podfile -ийг нээж, use_frameworks -ийн доор!, энэ мөрийг нэмнэ үү:
"Firebase/Core" хэсэг
10. Терминалын төрөл рүү буцна уу: pod install, Xcode -ийг хаа.
11. Finder дээр Xcode төсөл рүүгээ ороод шинээр үүсгэсэн.xcworkspacefile -ийг нээнэ үү.
12. Энд AppDelegate.swift руу очоод UIKit импортлоход энэ мөрийг нэмнэ үү.
Firebase импортлох
Мөн програм-функцэд энэ мөрийг нэмнэ үү.
FIRApp.configure ().
13. Firebase -д буцаж очоод Үргэлжлүүлэх дээр дараад Finish дээр дарна уу.
14. Өгөгдлийн сан руу, дараа нь Дүрэм рүү ороод ".read" ба ".write" -ийг үнэн болгож тохируулна уу. PUBLISH дарна уу.
15. Xcode дээр буцаж очоод Podfile -ийг нээгээд бидний оруулсан эхний мөрийн доор үүнийг нэмнэ үү.
'Firebase/Database' хэсэг
16. Терминал руу буцаж ороод pod install -ийг дахин ажиллуулна уу.
Алхам 2: Xcode -г дуусгаж байна
Одоо бид код, байршлыг Xcode дээр дуусгах болно.
Энэ нь Xcode 9 болон Swift 4 -ийг ашиглаж байна
ViewController1 код. ViewController -ийн дээд хэсэгт, UIKit импортлох хэсэгт үүнийг нэмнэ үү.
Firebase импортлох
FirebaseDatabase -ийг импортлох
2. ViewController -ийн доод талд, didReceiveMemoryWarning -функцын доор энэ функцүүдийг товчлуур бүрт хуулж бичнэ үү.
func num1 (төлөв: String) {
ref = FIRDatabase.database (). reference () let post: [String: Any] = ["state": state] ref.child ("num1"). setValue (post)}(Дугаарыг өөрчлөхөө мартуузай
3. viewDidLoad -функцид super.viewDidLoad () доор энэ мөрийг товчлуур бүрт оруулна уу (Олон товчлуурын хувьд (тоог) өөрчилнө үү. Зургийг үзнэ үү …):
num1 (төлөв: "OFF")
Үндсэн самбарын байршил ба товчлуурууд
1. Main.storyboard руу ороод хэдэн товчлуур дарна уу. Та тэдгээрийг над шиг байрлуулж эсвэл хүссэнээрээ өөрчилж болно.
2. Товчнуудыг ViewController ашиглан холбоно уу. Товчлуур бүрийг хоёр удаа холбох шаардлагатай: Нэгийг нь үйлдэл болгон, UIButton -ийг num (number) Button гэж нэрлэдэг, нөгөө товчлуурыг анхдагч Outlet гэж нэрлэдэг бөгөөд үүнийг num (number) Өнгө гэж нэрлэдэг. Зургийг үзнэ үү…
3. Дараа нь бүх товчлуурын хувьд функц тус бүр дээр энэ мөрөнд оруулна уу.
if self.num1Color.backgroundColor == UIColor.lightGray {// Арын өнгийг lightGray болгож тохируулна
num1 (төлөв: "ON") // "ON" төлөвийг firebase руу илгээдэг self.num1Color.backgroundColor = UIColor (улаан: 0.96, ногоон: 0.41, цэнхэр: 0.26, альфа: 1.0) // Арын өнгийг reddish} else {num1 (төлөв: "OFF") // Төлөв: "OFF" -г firebase руу илгээдэг self.num1Color.backgroundColor = UIColor.lightGray // Арын өнгийг lightGray болгож тохируулна}
Одоо та програмыг ажиллуулснаар үүнийг туршиж үзэх боломжтой бөгөөд товчлуурыг дарахад Firebase дахь Бодит цагийн мэдээллийн баазын төлөв байдал өөрчлөгдөж байгааг харах ёстой.
Төгсгөлийн хяналт (заавал биш)
1. Доорх зургуудыг татаж аваад LaunchScreen.storyboard дээр LaunchScreen-image.jpg-ийг зураг харах хэсэгт оруулна уу.
2. Assets.xcassets, дараа нь AppIcon руу очно уу. Энд харгалзах AppIcon хэмжээг оруулна уу.
Алхам 3: Raspberry Pi -ийн тохиргоо
Одоо бид Pi -г Firebase -ээр тохируулах ёстой бөгөөд ингэснээр програм нь Firebase -ийг Pi руу шидэж, харилцах боломжтой болно.
Би кодыг бичээгүй боловч анхны кодыг эндээс олж болно.
1. Терминал дээр ердийн шинэчлэлтүүдийг ажиллуулна уу.
sudo apt-get update && sudo apt-get dist-upgrade
2. Дараа нь бид pyrebase (Firebase) импортлох болно:
sudo pip суулгах pyrebase
sudo pip3 суулгах pyrebase sudo pip3 install-google-auth-oauthlib-ийг шинэчилнэ үү
3. Одоо Blinkt номын санг татаж аваарай:
буржгар https://get.pimoroni.com/blinkt | bash
4. Миний GitHub репозиторыг хуулбарлах:
git clone https://github.com/Anders644PI/RPiAppControl.gitcd RPiAppControl
5. AppRPiControl_Template.py засварлах:
нано RPiAppControl_Template.py
6. Firebase ApiKey болон projectId -ээ бөглөнө үү. Та эдгээрийг Firebase төсөл дээрээ очиж, өөр апп нэмэх, дараа нь вэб програмдаа Firebase нэмэх дээр дарж олох боломжтой.
7. Функцийг өөрчилж, ctrl-o (enter) дарж, ctrl-x товчлуурыг дарж өөрчлөлтүүдээ хадгална уу.
8. Одоо үүнийг ажиллуулна уу:
sudo python3 RPiAppControl_Template.py
9. Дараа нь хэрэв та Blinkt ашиглаж байгаа бол Firebase ApiKey болон projectId -ээ бөглөсний дараа жишээг туршиж үзээрэй.
cd жишээ
нано RPiAppControl_blinkt_demo.py
Одоо ажиллуулна уу:
sudo python3 RPiAppControl_blinkt_demo.pyСкриптийг ажиллуулсны дараа бэлэн болоход нэг минут орчим болдог гэдгийг санаарай (Наад зах нь Pi Zero дээр). Мөн скриптийг python 3 дээр ажиллуулах ёстой
10. Шагнал: Хэрэв та скриптийг ачаалах горимд ажиллуулахыг хүсч байвал хэрхэн яаж хийхийг эндээс олж мэдэх боломжтой.
Унтраах/асаах товчлуур
Цахилгаан товчлуур суурилуулах нь заавал биш, гэхдээ би зөвлөж байна. Үүнийг тохируулахын тулд энэ видеог дагана уу.
Энэ нь Pi дээрх физик 5 -р зүүг ашигладаг тул зарим HATs ажиллахгүй болно гэдгийг санаарай.
Алхам 4: Хашаа
Зөвлөмж болгож буй:
Ухаалаг ширээний LED гэрэл - Ухаалаг гэрэлтүүлэг W/ Arduino - Neopixels ажлын талбар: 10 алхам (зурагтай)
Ухаалаг ширээний LED гэрэл | Ухаалаг гэрэлтүүлэг W/ Arduino | Neopixels Ажлын талбар: Одоо бид гэртээ маш их цагийг өнгөрөөж, виртуал орчинд ажиллаж, сурч, ажиллаж байгаа тул Arduino болон Ws2812b LED -ийг суурилуулсан, ухаалаг гэрэлтүүлгийн системийг ашиглан ажлын талбараа томруулж яагаад болохгүй гэж. Ширээний LED гэрэл нь
Raspberry Pi ашиглан урт хугацааны гэрэл зураг, астро гэрэл зураг: 13 алхам (зурагтай)
Бөөрөлзгөнө Pi ашиглан урт хугацааны гэрэл зураг, астро гэрэл зураг: Астрофотографи нь одон орны объектууд, селестиел үйл явдал, шөнийн тэнгэрийн талбайн гэрэл зураг юм. Астрофотографи нь Сар, Нар болон бусад гаригуудын нарийн ширийн зүйлийг бүртгэхээс гадна дуу чимээнд үл үзэгдэх объектуудыг авах чадвартай байдаг
Blynk програм ашиглан USB ашиглан ухаалаг гар утсыг ашиглан Arduino -г удирдах: 7 алхам (зурагтай)
Blynk програм ашиглан USB ашиглан ухаалаг гар утсыг ашиглан Arduino -ийг удирдах Arduino эсвэл c-ээ алсаас удирдах хамгийн энгийн шийдэл
Ir Sensor ашиглан Arduino ашиглан ухаалаг гудамжны гэрэл: 4 алхам (зурагтай)
Иргэний мэдрэгчийг ашиглан ухаалаг гудамжны гэрэл: Arduino ашиглан миний сувгийг SUBSCRIBE дараарай тээврийн хэрэгсэл, IR мэдрэгч бүрийг хянадаг
Дотно видео гэрэл/ гар гэрэл зургийн гэрэл: 7 алхам (зурагтай)
Дотно видео гэрэл/ гар гэрэл зургийн гэрэл: Таны юу бодож байгааг би мэднэ. &Quot; дотно " Би хүнд хэцүү гэрлийн нөхцөлд ойроос гэрэлтүүлэх гэсэн утгатай байсан-заавал " дотно нөхцөл байдалд” (Гэсэн хэдий ч үүнийг үүнийг ашиглаж болно …) Нью-Йорк хотын видео зураглаачийн хувьд эсвэл