সুচিপত্র:

Home_X: 5 টি ধাপ
Home_X: 5 টি ধাপ

ভিডিও: Home_X: 5 টি ধাপ

ভিডিও: Home_X: 5 টি ধাপ
ভিডিও: FNF Mashup: Home X 5 songs 2024, জুলাই
Anonim
হোম_এক্স
হোম_এক্স

আমি হাওয়েস্ট কোর্ট্রিকের একজন ছাত্র যিনি নিউ মিডিয়া অ্যান্ড কমিউনিকেশন টেকনোলজি (এনএমসিটি) অধ্যয়ন করেন।

আমাদের সবাইকে একটি প্রকল্প তৈরি করতে হয়েছিল যা রাস্পবেরি এবং/অথবা আরডুইনোকে কেন্দ্র করে তৈরি হয়েছিল। একটি ওয়েবসাইটে ডেটা দেখানোর জন্য আমাদের সেন্সর এবং ডাটাবেস ব্যবহার করতে হয়েছিল, এবং তখনই আমি একটি মিনি স্মার্ট হাউস তৈরির ধারণা নিয়ে এসেছিলাম।

স্মার্ট হাউসের সাথে, আপনি ওয়েবসাইটে সেন্সরের সমস্ত রিডিং দেখতে পারবেন।

এই নির্দেশনায় আমি আপনাকে প্রতিটি ধাপে নির্দেশনা দেব যাতে আপনি নিজের জন্য এই প্রকল্পটি পুনরায় তৈরি করতে পারেন।

ধাপ 1: উপকরণ: আপনার কী দরকার

  • রাস্পবেরি পাই
  • DHT22
  • গ্রোভ - বায়ু মানের সেন্সর
  • গ্রোভ - গ্যাস সেন্সর (MQ2)
  • ব্রেডবোর্ড
  • রাস্পবেরি পাই টি মুচি
  • পুরুষ/মহিলা জাম্পার তারের
  • 5 মিমি LEDs
  • প্রতিরোধক
  • কাঠ এবং সরঞ্জাম
  • Servo মোটর
  • GrovePi+

আপনি এই আইটেমগুলি অনলাইনে (আলী এক্সপ্রেস, অ্যামাজন, কিউই ইলেকট্রনিক্স …) অথবা আপনার স্থানীয় দোকানগুলিতে কিনতে পারেন।

দোকানগুলির একটি লিঙ্ক সহ অংশগুলির একটি বিস্তারিত তালিকা BOM- এ দেওয়া আছে।

ধাপ 2: তারের

তারের
তারের
তারের
তারের

আমি তারের জন্য ফ্রিজিং ব্যবহার করেছি কিভাবে আমার তারের কাজ করা উচিত তার একটি সুন্দর ওভারভিউ আছে। আমি নিজে আমার 2 টি সেন্সরের জন্য GrovePi+ ব্যবহার করেছি। যদি আপনি একটি GrovePi+ ছাড়া এটি তৈরির পরিকল্পনা করেন তাহলে Fritzing স্কিম অনুসরণ করুন। আমি আপনার জন্য কাজ করি না, বিভিন্ন পিন ব্যবহার করে দেখুন।

আপনি নীচের ফ্রিজিং ফাইলটি খুঁজে পেতে পারেন।

ধাপ 3: MySQL ব্যবহার করে ডাটাবেস

MySQL ব্যবহার করে ডাটাবেস
MySQL ব্যবহার করে ডাটাবেস

আমাদের বাস্তবায়নের সবচেয়ে প্রয়োজনীয় কাজগুলির মধ্যে একটি ছিল মাইএসকিউএল ডাটাবেসের সাথে সংযোগ।

প্রতিবার যখন একটি সেন্সর রিডিং পায় বা একটি আলো যায়, আপনি ডাটাবেসে এই পরিবর্তনগুলি দেখতে পাবেন।

ডাটাবেস তারপর এই ডেটা ওয়েবসাইটে পাঠায় যাতে ব্যবহারকারী তাদের সেখানেও দেখতে পারে।

নীচে আপনি আমার.xml ফাইলটি খুঁজে পেতে পারেন যেখানে আপনার ডাটাবেস কিভাবে কাজ করে তার একটি ওভারভিউ আছে, তবে প্রথমে আপনাকে রাস্পবেরি পাইতে মাইএসকিউএল এবং ফ্লাস্ক ইনস্টল করতে হবে।

সেন্সরের কোডিং পাইচার্মের মাধ্যমে ঘটেছে তাই নিশ্চিত করুন যে এটিও (আপনার কম্পিউটারে) ইনস্টল করা আছে।

প্রথমে আপনাকে আপডেটগুলি পরীক্ষা করতে হবে এবং প্যাকেজগুলি ইনস্টল করতে হবে, যেমন:

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

sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3

এখন আমরা একটি ভার্চুয়াল পরিবেশ ব্যবহার করতে যাচ্ছি:

আমি@my-rpi: ~ $ python3 -m pip install --upgrade pip setuptools wheel virtualenvme@my-rpi: ~ $ mkdir project1 && cd project1 me@my-rpi: ~/project1 $ python3 -m venv --system- সাইট-প্যাকেজ env me@my-rpi: ~/project1 $ source env/bin/activate (env) me@my-rpi: ~/project1 $ python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth ফ্লাস্ক-মাইএসকিউএল মাইএসকিউএল-সংযোগকারী-পাইথন পাসলিব

এটি আপনাকে বলা উচিত যে mariadb.service সক্রিয়।

এখন, পাইচারামে VCS> ভার্সন কন্ট্রোল থেকে আমদানি> GitHub en clone https://github.com/NMCT-S2-Project-I/Project-I.git এ যান।

তারপরে আপনি যে ডিরেক্টরিটি তৈরি করেছেন তার জন্য স্থাপনার কনফিগার করুন, যেমন। /বাড়ি/আমি/প্রকল্প 1।

এটি সম্পন্ন হওয়ার পরে দোভাষী সেটিংসে যান এবং আপনি যে ভার্চুয়াল পরিবেশটি তৈরি করেছেন তা কনফিগার করুন, যেমন। /home/me/project/env/bin/python। পাথ ম্যাপিংও পূরণ করতে হবে।

যদি আপনি এই সব করেন তবে ডাটাবেসটি ইতিমধ্যে চলতে হবে।

sudo systemctl অবস্থা mysql

এখন আমাদের ডাটাবেসের জন্য ব্যবহারকারী তৈরি করতে হবে, যেমন:

সুডো মারিয়াডবি

ব্যবহারকারী 'প্রজেক্ট-অ্যাডমিন'@'লোকালহোস্ট' 'অ্যাডমিন পাসওয়ার্ড' দ্বারা চিহ্নিত করা; ব্যবহারকারী 'প্রজেক্ট-ওয়েব'@'লোকালহোস্ট' 'ওয়েব পাসওয়ার্ড' দ্বারা চিহ্নিত; ব্যবহারকারী 'প্রকল্প-সেন্সর'@'লোকালহোস্ট' 'সেন্সর পাসওয়ার্ড' দ্বারা সনাক্ত করা; ডেটাবেজ প্রকল্প তৈরি করুন;

প্রকল্পের সমস্ত বিশেষাধিকার গ্রান্ট করুন গ্রান্ট সিলেক্ট, ইনসার্ট, আপডেট, ডিলিট অন প্রোজেক্ট।* টু 'প্রজেক্ট-সেন্সর'@'লোকালহোস্ট'; ফ্লাশ বিশেষাধিকার;

এখন পাইচারামে আমাদের ডাটাবেস দেখতে আমাদের একটি সংযোগ করতে হবে।

আমরা ভিউ> টুল উইন্ডোজ> ডাটাবেসে গিয়ে সবুজ "প্লাস" বোতামে ক্লিক করে এটি করতে পারি।

ডেটা সোর্স> মাইএসকিউএল এবং পপ আপ হওয়া ড্রাইভার ডাউনলোড বাটনে ক্লিক করুন (যদি উপস্থিত থাকে)।

তারপর SSH/SSL এ গিয়ে SSH চেক করুন। পাই -এর জন্য হোস্ট/ব্যবহারকারী/পাসওয়ার্ড পূরণ করুন এবং এখনও পূরণ না হলে পোর্ট 22 ব্যবহার করুন।

আপনি যদি চান pycharm আপনার পাসওয়ার্ড মনে রাখবে তাহলে চেকবক্সে "পাসওয়ার্ড মনে রাখবেন" চেক করুন।

"সাধারণ" ট্যাবে, হোস্টে লোকালহোস্ট পূরণ করুন, ডাটাবেজে প্রজেক্ট করুন এবং সংযোগ পরীক্ষা করতে সক্ষম হওয়ার জন্য পাসওয়ার্ড দিয়ে প্রজেক্ট-অ্যাডমিন ব্যবহার করুন।

এখন ডাটাবেস ব্যবহারযোগ্য করার জন্য আপনাকে.sql চালাতে হবে যা আমি নীচে রেখেছি। আমদানি বিকল্পটি ব্যবহার করার চেষ্টা করুন, যদি আপনি একটি ডাম্পফিল আমদানি করতে না পারেন তবে আপনাকে ম্যানুয়ালি টেবিল যুক্ত করতে হবে।

এটি সম্পন্ন হওয়ার পরে আপনাকে দুটি.service ফাইলের সাথে conf ডিরেক্টরি খুঁজে বের করতে হবে। সেখানে আপনি আপনার পাই -তে যে ব্যবহারকারীর নাম ব্যবহার করেন তার নাম সহ প্রতিটি সেব পরিবর্তন করুন। এছাড়াও, গ্রুপটি www-data হতে হবে।

পরবর্তী ধাপ হল এই পরিষেবাগুলি আপনার পাইতে শুরু করা, যেমন:

sudo cp conf/project-*। service/etc/systemd/system/

sudo systemctl ডিমন-রিলোড

sudo systemctl শুরু প্রকল্প-*

sudo systemctl স্ট্যাটাস প্রকল্প-*

পরিকল্পনা অনুযায়ী সবকিছু চললে আপনার দুটি সক্রিয় পরিষেবা দেখা উচিত।

শেষ ধাপ হল nginx সক্ষম করা।

প্রথমে আপনার পাইতে apache2 চেক করুন, যদি আপনি এটি ইনস্টল করে থাকেন তবে এটি মুছুন বা অক্ষম করুন।

Nginx ফাইলে আপনাকে প্রথমে uwsgi_pass পরিবর্তন করতে হবে, তারপর এই কমান্ডগুলি চালান।

sudo cp conf/nginx/etc/nginx/sites-available/project

sudo rm/etc/nginx/sites-enabled/default

sudo ln -s/etc/nginx/sites-available/project1/etc/nginx/sites-enabled/project

sudo systemctl nginx.service পুনরায় চালু করুন

sudo systemctl অবস্থা nginx.service

Nginx সক্রিয় এবং চলমান হওয়া উচিত। যদি সবকিছু ঠিক থাকে, আপনি এখন আপনার পাইতে সার্ফ করতে পারেন। আপনি প্রথমে "হ্যালো ওয়ার্ল্ড" দেখতে পাবেন কিন্তু আপনাকে এখনও আমার নীচের কোড দিয়ে সেই ফাইলের বিষয়বস্তু পরিবর্তন করতে হবে।

আপনি পরিষেবাগুলি সক্ষম করতে পারেন যাতে সেগুলি স্বয়ংক্রিয়ভাবে চালিত হয় যখন পাই শুরু হয়।

যখন আপনি এটি করেছেন, নিশ্চিত করুন যে আপনি ডাটাবেসে ঠিকানা সহ অন্তত 1 টি বাড়ি রেখেছেন। আপনি একটি সহজ সন্নিবেশ সঙ্গে এটি করতে পারেন।

ধাপ 4: কোডিং

কোডিং
কোডিং
কোডিং
কোডিং

আপনি Github এর মাধ্যমে কোডটি ডাউনলোড করতে পারেন:

github.com/NMCT-S2-Project-I/project-i-Tib…

সেন্সরগুলির জন্য কোড sensor.py ফাইলে অন্তর্ভুক্ত করা হয়েছে।

সার্ভিস ফাইলে আমার নামটি আপনার (অথবা আপনার পাই ব্যবহারকারী ব্যবহারকারীর চেয়ে) পরিবর্তন করতে ভুলবেন না যাতে তারা সঠিকভাবে চালাতে পারে এবং আপনার পাইকার্মে বিদ্যমান ফাইলগুলিতে আমার কোড রাখতে পারে।

ধাপ 5: আবাসন

হাউজিং
হাউজিং
হাউজিং
হাউজিং
হাউজিং
হাউজিং
হাউজিং
হাউজিং

আমি আমার বাড়ি কিভাবে চেয়েছিলাম তার একটি দ্রুত অঙ্কন তৈরি করেছি, কিন্তু আপনার সম্পূর্ণ ভিন্ন দেখাতে পারে। আপনাকে কেবল নিশ্চিত করতে হবে যে আপনার একটি সম্পূর্ণ আছে যাতে সার্ভো একটি উইন্ডো খুলতে এবং বন্ধ করতে পারে।

আমি কাঠ কাটার জন্য প্রধানত একটি ছোট ড্রিল এবং একটি করাত ব্যবহার করেছি। আমি নিশ্চিত করেছি যে দেয়ালগুলি যথেষ্ট মোটা ছিল যাতে আমি তাদের ভিতরে আমার সার্ভো স্থাপন করতে পারি।

যখন আপনি আপনার নকশা শেষ করেন এবং সার্ভোটি জায়গায় থাকে, তখন আপনাকে কেবল সেন্সর সংযুক্ত করতে হবে এবং বাড়ির ভিতরে পাই স্থাপন করতে হবে এবং আপনি যেতে প্রস্তুত।

আমি আগেই বলেছি আপনার ঘরটি ঠিক আমার বাড়ির মত দেখতে পারে, আপনাকে কেবল সার্ভো এবং জানালার জন্য জায়গা তৈরি করতে হবে।

অবশেষে আপনি প্রকল্পটি সম্পন্ন করেছেন। আমি আশা করি এই গাইডটি যথেষ্ট স্পষ্ট যাতে আপনিও আমার মতো একটি দুর্দান্ত স্মার্টহাউস তৈরি করতে পারেন।

শুভকামনা করছি.

প্রস্তাবিত: