فهرست مطالب:

RPi IoT Smart Light با استفاده از Firebase: 4 مرحله (همراه با تصاویر)
RPi IoT Smart Light با استفاده از Firebase: 4 مرحله (همراه با تصاویر)

تصویری: RPi IoT Smart Light با استفاده از Firebase: 4 مرحله (همراه با تصاویر)

تصویری: RPi IoT Smart Light با استفاده از Firebase: 4 مرحله (همراه با تصاویر)
تصویری: کنترل اشیا از طریق اینترنت برد Wemos با تنظیمات DDNS 2024, نوامبر
Anonim
RPi IoT Light Light با استفاده از Firebase
RPi IoT Light Light با استفاده از Firebase
RPi IoT Light Light با استفاده از Firebase
RPi IoT Light Light با استفاده از Firebase
RPi IoT Light Light با استفاده از Firebase
RPi IoT Light Light با استفاده از Firebase
RPi IoT Light Light با استفاده از Firebase
RPi IoT Light Light با استفاده از Firebase

این راهنما نحوه ساخت و راه اندازی برنامه ای برای کنترل رزبری پای از طریق Firebase (پایگاه داده آنلاین) را به شما نشان می دهد. و سپس چاپ سه بعدی یک کیف برای Pi Zero W ، یک Powerboost 1000C ، یک باتری و یک Blinkt !.

برای اینکه بتوانید راحت ترین راه را دنبال کنید ، توصیه می کنم با Xcode و Raspberry Pi آشنا باشید.

و اگر از آنچه می بینید خوشتان آمده است ، من را در اینستاگرام و توییتر (@Anders644PI@) دنبال کنید تا با آنچه من می سازم ادامه دهید.

شما نیاز خواهید داشت:

  • Raspberry Pi Zero W با آداپتورها و هدرهای GPIO

    (یا Pi Zero معمولی با دانگل WiFi)

  • یک PowerBoost 1000 درجه سانتی گراد
  • یک باتری لیتیوم یون - 3.7 ولت 2000 میلی آمپر ساعت
  • یک بلینکت! (یا هر PHAT/HAT ، که: از پین 5 فیزیکی استفاده نمی کند و HAT باید در قسمت پایین صاف باشد.)
  • کارت حافظه Micro SD 8 گیگابایت یا بالاتر ، با Raspbian Stretch (با دسکتاپ) روی آن
  • یک صفحه کلید و یک موس (اما اگر می دانید چگونه می توانید از طریق ssh متصل شوید)
  • اتصال به مانیتور یا تلویزیون (یا ssh!)
  • پیچ های قراضه ای
  • سیمهای کوچک
  • یک سوئیچ کوچک و یک دکمه کوچک
  • یک چاپگر سه بعدی و یک قرقره از هر رشته رشته PLA ، و یک قرقره از PLA شفاف (یا می توانید از یک سرویس سه بعدی مانند 3D Hubs برای چاپ آن برای شما استفاده کنید)

مرحله 1: Firebase و Xcode

Firebase و Xcode
Firebase و Xcode
Firebase و Xcode
Firebase و Xcode
Firebase و Xcode
Firebase و Xcode

ابتدا Firebase را با برنامه راه اندازی می کنیم ، بنابراین می توانیم از برنامه به Pi ارتباط برقرار کنیم.

اگر گیج شدید ، می توانید این ویدیو را تماشا کنید.

1. Xcode را باز کرده و یک پروژه Xcode جدید بسازید. برنامه Single View را انتخاب کرده و آن را RPiAppControl بنامید و مطمئن شوید که زبان Swift است. Next را فشار دهید و آن را ذخیره کنید.

2. شناسه بسته نرم افزاری خود را کپی کنید ، زیرا بعداً به آن نیاز خواهیم داشت.

3. در Firebase ، با حساب Google خود وارد شوید و روی Go to console کلیک کنید.

4. یک پروژه جدید ایجاد کنید و آن را RPiAppControl بنامید.

5. روی Add Firebase to IOS App خود کلیک کنید. شناسه بسته را بچسبانید و Register App را فشار دهید.

6. GoogleService-Info.plist را بارگیری کرده و آن را به پروژه Xcode خود بکشید.

7. در Firebase ، Continue را فشار دهید. سپس پنجره ترمینال را باز کرده و به محل پروژه 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 ، روی ادامه و سپس پایان کلیک کنید.

14. به Database ، سپس Rules بروید و ".read" و ".write" را روی true تنظیم کنید. PUBLISH را فشار دهید.

15. در Xcode ، Podfile را باز کنید و در زیر اولین خطی که قرار داده ایم ، این را اضافه کنید:

غلاف "Firebase/Database"

16. به ترمینال برگردید ، pod install را دوباره اجرا کنید.

مرحله 2: تکمیل Xcode

اتمام Xcode
اتمام Xcode
اتمام Xcode
اتمام Xcode
اتمام Xcode
اتمام Xcode

اکنون کد و طرح بندی را در Xcode به پایان می بریم.

این از Xcode 9 و Swift 4 استفاده می کند

کد ViewController1. در بالای ViewController و در زیر UIKit وارد کردن ، این را اضافه کنید:

وارد کردن Firebase

وارد کردن FirebaseDatabase

2. در پایین ViewController ، و زیر عملکرد didReceiveMemoryWarning ، این عملکردها را برای هر دکمه کپی کنید:

func num1 (حالت: رشته) {

let ref = FIRDatabase.database (). مرجع () let post: [String: Any] = ["state": state] ref.child ("num1"). setValue (post)}به یاد داشته باشید که (شماره) را تغییر دهید

3. در عملکرد viewDidLoad ، در super.viewDidLoad () ، این خط را برای هر دکمه وارد کنید (برای دکمه های متعدد ، فقط (شماره) را تغییر دهید. تصویر را ببینید …):

num1 (حالت: "خاموش")

چیدمان صفحه اصلی. استوری بورد و دکمه ها

1. به Main.storyboard بروید و چند دکمه در آن قرار دهید. می توانید آنها را مانند من طرح بندی کنید ، یا آنها را به دلخواه سفارشی کنید.

2. دکمه ها را با ViewController وصل کنید. هر دکمه باید دوبار متصل شود: یکی به عنوان یک عمل و UIButton به نام num (number) Button و دیگری به عنوان Outlet پیش فرض و شماره (شماره) Color نامیده می شود. مشاهده تصویر…

3. سپس برای همه دکمه ها ، در این خط به هر یک از توابع بچسبانید:

if self.num1Color.backgroundColor == UIColor.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} تنظیم می کند}

اکنون باید بتوانید آن را با اجرای برنامه آزمایش کنید و وقتی دکمه ها را فشار می دهید ، باید وضعیت آن را تغییر دهید ، در پایگاه داده Realtime در Firebase.

مراحل نهایی (اختیاری)

1. تصاویر زیر را بارگیری کرده و LaunchScreen-image-j.webp

2. به Assets.xcassets و سپس AppIcon بروید. در اینجا ، در AppIcon -size مربوطه قرار دهید.

مرحله 3: راه اندازی رزبری پای

راه اندازی رزبری پای
راه اندازی رزبری پای

اکنون باید Pi را با Firebase تنظیم کنیم ، بنابراین برنامه می تواند ارتباط برقرار کند ، Firebase را به Pi منتقل کند.

من کد را ننوشتم ، اما می توانید کد اصلی را در اینجا پیدا کنید.

1. در ترمینال ، به روز رسانی های معمول را اجرا کنید:

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

2. سپس pyrebase (Firebase) را وارد می کنیم:

sudo pip install pyrebase

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

3. اکنون کتابخانه Blinkt را بارگیری کنید:

پیچ خوردن https://get.pimoroni.com/blinkt | خراب کردن

4. مخزن GitHub من را کلون کنید:

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

5. AppRPiControl_Template.py را ویرایش کنید:

nano 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 خود را پر کرده اید:

نمونه های سی دی

nano RPiAppControl_blinkt_demo.py

حالا آن را اجرا کنید:

sudo python3 RPiAppControl_blinkt_demo.pyبه خاطر داشته باشید که پس از اجرای اسکریپت ، آماده شدن آن حدود یک دقیقه طول می کشد (حداقل روی Pi Zero). و اسکریپت باید در پایتون 3 اجرا شود

10. BONUS: اگر می خواهید اسکریپت در بوت اجرا شود ، می توانید نحوه انجام آن را در اینجا بیابید.

دکمه خاموش/خاموش

نصب دکمه پاور اختیاری است ، اما من آن را توصیه می کنم. با این ویدئو همراه باشید تا تنظیم شود.

به خاطر داشته باشید که این از پین فیزیکی 5 در Pi استفاده می کند ، بنابراین برخی از HAT ها کار نمی کنند.

مرحله 4: محوطه سازی

توصیه شده: