সুচিপত্র:

ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট: 4 টি ধাপ (ছবি সহ)
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট: 4 টি ধাপ (ছবি সহ)

ভিডিও: ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট: 4 টি ধাপ (ছবি সহ)

ভিডিও: ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট: 4 টি ধাপ (ছবি সহ)
ভিডিও: Projects of CBIU Students for IT Fair of Innovation Hub | CBIU | Innovation Hub 2024, জুলাই
Anonim
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট
ফায়ারবেস ব্যবহার করে RPi IoT স্মার্ট লাইট

এই নির্দেশিকা আপনাকে দেখায় কিভাবে ফায়ারবেস (একটি অনলাইন ডাটাবেস) এর মাধ্যমে রাস্পবেরি পাই নিয়ন্ত্রণ করার জন্য একটি অ্যাপ তৈরি এবং সেটআপ করতে হয়। এবং তারপর থ্রিডি প্রিন্টিং পাই জিরো ডব্লিউ, একটি পাওয়ার বুস্ট 1000 সি, একটি ব্যাটারি এবং একটি ব্লিঙ্কট!

খুব সহজেই অনুসরণ করতে সক্ষম হওয়ার জন্য, আমি এক্সকোড এবং রাস্পবেরি পাই এর সাথে পরিচিত হওয়ার পরামর্শ দিই।

এবং আপনি যা দেখেন তা যদি আপনার পছন্দ হয় তবে আমি যা তৈরি করি তা ধরে রাখতে আমাকে ইনস্টাগ্রাম এবং টুইটারে (@Anders644PI) অনুসরণ করুন।

আপনার প্রয়োজন হবে:

  • অ্যাডাপ্টার এবং জিপিআইও-হেডার সহ একটি রাস্পবেরি পাই জিরো ডাব্লু

    (অথবা একটি ওয়াইফাই ডংগলের সাথে সাধারণ পাই জিরো)

  • একটি পাওয়ার বুস্ট 1000 গ
  • একটি লিথিয়াম আয়ন ব্যাটারি - 3.7v 2000mAh
  • একটি ঝলকানি! (অথবা কোন pHAT/HAT, যে: পিন 5 শারীরিক ব্যবহার করে না এবং HAT গুলি নীচে সমতল হওয়া উচিত।)
  • একটি 8GB বা উচ্চতর মাইক্রো এসডি কার্ড, তার উপর রাস্পবিয়ান স্ট্রেচ (ডেস্কটপ সহ)
  • একটি কীবোর্ড এবং একটি মাউস (কিন্তু আপনি ssh এর মাধ্যমেও সংযোগ করতে পারেন, যদি আপনি এখন কিভাবে)
  • একটি মনিটর বা টিভির সাথে সংযোগ (অথবা ssh!)
  • স্ক্র্যাপ স্ক্রু
  • ছোট তার
  • একটি ছোট সুইচ এবং একটি ছোট বোতাম
  • একটি থ্রিডি প্রিন্টার এবং যেকোনো রঙের পিএলএ ফিলামেন্টের একটি স্পুল এবং স্বচ্ছ পিএলএর একটি স্পুল (অথবা আপনি এটির জন্য প্রিন্ট করতে 3D হাবের মত একটি 3D পরিষেবা ব্যবহার করতে পারেন)

ধাপ 1: ফায়ারবেস এবং এক্সকোড

ফায়ারবেস এবং এক্সকোড
ফায়ারবেস এবং এক্সকোড
ফায়ারবেস এবং এক্সকোড
ফায়ারবেস এবং এক্সকোড
ফায়ারবেস এবং এক্সকোড
ফায়ারবেস এবং এক্সকোড

প্রথমে আমরা অ্যাপটির সাথে ফায়ারবেস সেটআপ করব, যাতে আমরা অ্যাপ থেকে পাইতে যোগাযোগ করতে পারি।

আপনি যদি বিভ্রান্ত হন, আপনি এই ভিডিওটি দেখতে পারেন।

1. Xcode খুলুন, এবং একটি নতুন Xcode প্রকল্প তৈরি করুন। সিঙ্গেল ভিউ অ্যাপ চয়ন করুন এবং এটিকে RPiAppControl বলুন এবং নিশ্চিত করুন যে ভাষাটি সুইফট। পরবর্তী টিপুন, এবং এটি সংরক্ষণ করুন।

2. আপনার বান্ডেল আইডেন্টিফায়ার কপি করুন, কারণ আমাদের পরে এটি প্রয়োজন হবে।

3. ফায়ারবেসে, আপনার গুগল অ্যাকাউন্ট দিয়ে লগইন করুন এবং কনসোলে যান ক্লিক করুন।

4. একটি নতুন প্রকল্প তৈরি করুন, এবং এটি RPiAppControl কল করুন।

5. আপনার IOS অ্যাপে Firebase যোগ করুন ক্লিক করুন। আপনার বান্ডেল আইডেন্টিফায়ারে পেস্ট করুন এবং রেজিস্টার অ্যাপ টিপুন।

6. GoogleService-Info.plist ডাউনলোড করুন এবং আপনার Xcode প্রকল্পে টেনে আনুন।

7. Firebase এ ফিরে, Continue চাপুন। তারপর একটি টার্মিনাল উইন্ডো খুলুন এবং আপনার Xcode প্রকল্পের অবস্থানে নেভিগেট করুন।

8. এই কমান্ডটি চালান:

পড init

9. Podfile খুলুন, এবং use_frameworks এর অধীনে!, এই লাইন যোগ করুন:

পড 'ফায়ারবেস/কোর'

10. টার্মিনালে ফিরে যান: পড ইনস্টল করুন এবং এক্সকোড বন্ধ করুন।

11. ফাইন্ডারে, আপনার এক্সকোড প্রকল্পে নেভিগেট করুন এবং নতুন তৈরি.xcworkspacefile খুলুন।

12. এখানে AppDelegate.swift এ যান, এবং UIKit আমদানির অধীনে এই লাইনটি যোগ করুন:

ফায়ারবেস আমদানি করুন

এবং অ্যাপ্লিকেশন-ফাংশনে, এই লাইন যোগ করুন:

FIRApp.configure ()।

13. ফায়ারবেসে ফিরে যান, চালিয়ে যান ক্লিক করুন এবং তারপর শেষ করুন।

14। PUBLISH টিপুন।

15. Xcode- এ ফিরে, Podfile খুলুন, এবং আমরা যে প্রথম লাইনের মধ্যে সেট করেছি, এটি যোগ করুন:

পড 'ফায়ারবেস/ডাটাবেস'

16. টার্মিনালে ফিরে, আবার পড ইনস্টল চালান।

ধাপ 2: এক্সকোড শেষ করা

এক্সকোড শেষ করা হচ্ছে
এক্সকোড শেষ করা হচ্ছে
এক্সকোড শেষ করা হচ্ছে
এক্সকোড শেষ করা হচ্ছে
এক্সকোড শেষ করা হচ্ছে
এক্সকোড শেষ করা হচ্ছে

আমরা এখন Xcode এ কোড এবং লেআউট শেষ করব।

এটি Xcode 9 এবং Swift 4 ব্যবহার করছে

ViewController1 এর জন্য কোড। ভিউ কন্ট্রোলারের শীর্ষে এবং আমদানি UIKit এর অধীনে, এটি যুক্ত করুন:

ফায়ারবেস আমদানি করুন

FirebaseDatabase আমদানি করুন

2. ভিউ কন্ট্রোলারের নীচে, এবং didReceiveMemoryWarning -function এর অধীনে, প্রতিটি বোতামের জন্য এই ফাংশনগুলি কপি পেস্ট করুন:

func num1 (অবস্থা: স্ট্রিং) {

let ref = FIRDatabase.database ()। reference () let post: [String: Any] = ["state": state] ref.child ("num1")। setValue (post)}পরিবর্তন করতে ভুলবেন না (সংখ্যা

3. viewDidLoad- ফাংশনে, super.viewDidLoad () এর অধীনে, প্রতিটি বোতামের জন্য এই লাইনটি সন্নিবেশ করান (একাধিক বোতামের জন্য, শুধু (সংখ্যা) পরিবর্তন করুন। ছবি দেখুন …):

num1 (রাষ্ট্র: "বন্ধ")

Main.storyboard এবং বোতামগুলির বিন্যাস

1. Main.storyboard এ যান এবং কিছু বোতাম রাখুন। আপনি আমার মতো তাদের লেআউট করতে পারেন, অথবা আপনার পছন্দ মতো তাদের কাস্টমাইজ করতে পারেন।

2. ভিউ কন্ট্রোলারের সাথে বোতামগুলি সংযুক্ত করুন। প্রতিটি বাটনকে দুবার সংযুক্ত করতে হবে: একটি একটি অ্যাকশন হিসেবে এবং UIButton নাম্বার (নাম্বার) বোতাম, এবং অন্যটি ডিফল্ট আউটলেট হিসেবে এবং এটিকে নাম্বার (নাম্বার) কালার বলে। ছবি দেখো…

3. তারপর সমস্ত বোতামের জন্য, এই লাইনে প্রতিটি ফাংশনে পেস্ট করুন:

যদি self.num1Color.backgroundColor == UIColor.lightGray {// ব্যাকগ্রাউন্ড কালারকে lightGray তে সেট করে

num1 (state: "ON") // স্টেট পাঠায়: "ON" firebase self.num1Color.backgroundColor = UIColor (লাল: 0.96, সবুজ: 0.41, নীল: 0.26, আলফা: 1.0) // এ ব্যাকগ্রাউন্ড কালার সেট করে reddish} else {num1 (state: "OFF") // স্টেট পাঠায়: "OFF" firebase self.num1Color.backgroundColor = UIColor.lightGray // ব্যাকগ্রাউন্ড কালারকে lightGray তে সেট করে

এখন আপনি অ্যাপটি চালানোর মাধ্যমে এটি পরীক্ষা করতে সক্ষম হবেন, এবং যখন আপনি বোতাম টিপবেন, তখন ফায়ারবেসে রিয়েলটাইম ডাটাবেসে এটির পরিবর্তনশীল অবস্থা দেখতে হবে।

সমাপ্তি স্পর্শ (ptionচ্ছিক)

1. নীচের ছবিগুলি ডাউনলোড করুন, এবং LaunchScreen.storyboard- এ একটি ইমেজ-ভিউতে LaunchScreen-image-j.webp

2. Assets.xcassets এবং তারপর AppIcon এ যান। এখানে, সংশ্লিষ্ট AppIcon -size- এ রাখুন।

ধাপ 3: রাস্পবেরি পাই সেটআপ

রাস্পবেরি পাই সেটআপ
রাস্পবেরি পাই সেটআপ

এখন আমাদের ফায়ারবেস দিয়ে পাই সেটআপ করতে হবে, যাতে অ্যাপ যোগাযোগ করতে পারে, ফায়ারবেস নিক্ষেপ করতে পারে, পাইতে।

আমি কোডটি লিখিনি, কিন্তু আপনি মূল কোডটি এখানে খুঁজে পেতে পারেন।

1. টার্মিনালে, স্বাভাবিক আপডেটগুলি চালান:

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

2. তারপর আমরা পাইরেবেস (ফায়ারবেস) আমদানি করব:

sudo pip 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 সম্পাদনা করুন:

ন্যানো RPiAppControl_Template.py

6. আপনার Firebase ApiKey এবং projectId পূরণ করুন। আপনি আপনার ফায়ারবেস প্রজেক্টে গিয়ে, এবং অন্য অ্যাপ যোগ করুন এবং তারপর আপনার ওয়েব অ্যাপে ফায়ারবেস যুক্ত করে এগুলি খুঁজে পেতে পারেন।

7. ফাংশন কাস্টমাইজ করুন, এবং ctrl-o (এন্টার) টিপে আপনার পরিবর্তনগুলি সংরক্ষণ করুন এবং ctrl-x দিয়ে বন্ধ করুন।

8. এখন এটি দিয়ে চালান:

sudo python3 RPiAppControl_Template.py

9. তারপর যদি আপনি একটি Blinkt ব্যবহার করেন, তাহলে আপনি উদাহরণটি চেষ্টা করতে পারেন, যখন আপনি আপনার Firebase ApiKey এবং projectId পূরণ করেছেন:

সিডি উদাহরণ

ন্যানো RPiAppControl_blinkt_demo.py

এখন এটি চালান:

sudo python3 RPiAppControl_blinkt_demo.pyমনে রাখবেন যে আপনি স্ক্রিপ্ট চালানোর পরে, এটি প্রস্তুত হতে প্রায় এক মিনিট সময় নেয় (অন্তত পাই জিরোতে)। এবং স্ক্রিপ্টটি পাইথন 3 এ চালাতে হবে

10. বোনাস: আপনি যদি স্ক্রিপ্টটি বুটে চালাতে চান, তাহলে আপনি এখানে কিভাবে তা জানতে পারেন।

শাটডাউন/পাওয়ার বোতাম

এটি একটি পাওয়ার বোতাম ইনস্টল করার জন্য alচ্ছিক, কিন্তু আমি এটি সুপারিশ। এটি সেট আপ করতে, এই ভিডিও সহ অনুসরণ করুন।

মনে রাখবেন যে এটি পাইতে শারীরিক পিন 5 ব্যবহার করে, তাই কিছু HAT কাজ করবে না।

ধাপ 4: ঘের

প্রস্তাবিত: