Სარჩევი:

SmartHome ჟოლოს პი: 5 ნაბიჯი
SmartHome ჟოლოს პი: 5 ნაბიჯი

ვიდეო: SmartHome ჟოლოს პი: 5 ნაბიჯი

ვიდეო: SmartHome ჟოლოს პი: 5 ნაბიჯი
ვიდეო: როგორ შევქმნათ სისტემა წინასწარი გაზ... 2024, ნოემბერი
Anonim
SmartHome ჟოლოს პიით
SmartHome ჟოლოს პიით

ამ პროექტისთვის მე გავაკეთე SmartHome, რომლის მართვაც შესაძლებელია ვებსაიტით და მობილურით. ამისათვის მე ვიყენებ Raspberry PI როგორც მონაცემთა ბაზას და ვებ სერვერს.

მარაგები

თუ გსურთ ამის დაწყება, გჭირდებათ რამდენიმე რამ:

  • 5 თეთრი led (5 მმ)
  • 1 ერთი მავთულის ტემპერატურის სენსორი
  • 1 LDR (სინათლეზე დამოკიდებული რეზისტორი)
  • 2 სერვო ძრავა
  • 1 microSD (ჟოლოს პიისთვის)
  • 1 პურის დაფის მომწოდებელი
  • 1 ჟოლო Pi 3 მოდელი B+
  • 3 ქაფის ფირფიტა
  • 1 სტეპერიანი ძრავა (5V)
  • 1 RFID-RC522 მკითხველი
  • 8 რეზისტორი (220 Ohm)
  • 1 რეზისტორი (10K Ohm)
  • 2 პურის დაფა
  • 2 პაკეტი ჯუმბერის მავთულები
  • 1 16x2 LCD დისპლეი
  • 1 PCF8574AN
  • 4 პატარა ფანჯარა (3D ბეჭდვით)
  • 1 კარი (3D ბეჭდვით)
  • 2 დიდი ფანჯარა (3D ბეჭდვით)
  • 1 ავტოფარეხის კარი (3D ბეჭდვით)

თუ თქვენ გჭირდებათ ეს ყველაფერი შესაძენად, მაქსიმალური ღირებულება იქნება დაახლოებით 150 ევრო

ნაბიჯი 1: გაყვანილობა

გაყვანილობა
გაყვანილობა
გაყვანილობა
გაყვანილობა
გაყვანილობა
გაყვანილობა

დასაწყებად უმარტივესი გზაა გაყვანილობა ისე, რომ თქვენ უკვე გაქვთ საფუძვლები, ამ მეთოდით თქვენ მარტივად შეგიძლიათ შეამოწმოთ მუშაობს თუ არა ყველაფერი კოდის წერისას.

ამ გზით, თქვენ შეგიძლიათ ნახოთ გაქვთ თუ არა საკმარისი ქინძისთავები Raspberry Pi– ზე ყველაფრის დასაკავშირებლად. ამ შემთხვევაში მე გამოვიყენე PCF8574AN ჩემი LCD– ის გასაკონტროლებლად ნაკლები GPIO ქინძისთავებით.

სქემის დასახატად გამოვიყენე ფრიზინგი. ეს არის მოსახერხებელი პროგრამა, სადაც შეგიძლიათ ნახოთ თქვენი კაბელები კარგად ორგანიზებული გზით.

როგორც ხედავთ მეორე ფოტოზე არის ბევრი კაბელი, ასე რომ თქვენ მაინც უნდა იმუშაოთ ორგანიზებულად.

ნაბიჯი 2: საცხოვრებელი

საცხოვრებელი
საცხოვრებელი
საცხოვრებელი
საცხოვრებელი
საცხოვრებელი
საცხოვრებელი
საცხოვრებელი
საცხოვრებელი

საცხოვრებლისთვის მე გამოვიყენე ქაფის დაფები კედლებად. დანა გამოვიყენე დაფები სასურველ ფორმებში. ფანჯრები, კარები და ავტოფარეხის კარი 3D ბეჭდვით. რა თქმა უნდა, სახლი წინასწარ დავხატე, ასე რომ ვიცოდი რა ზომები უნდა გამომეყენებინა.

მე გამოვიყენე SketchUp სახლის დასახატად. მე წებოს იარაღი გამოვიყენე კედლების გასწორებისა და ერთმანეთთან დასაკავშირებლად, თუ ფოტოებზე ხედავთ, ფანჯარა და ავტოფარეხის კარი მიმაგრებულია წებოთი, ასე რომ საკმარისად ძლიერი იქნებოდა. შავი ყუთი მე -3 ფოტოზე არის ყუთი, რომლის გადასატანად ვიყენებდი ისე, რომ ყველაფერი ხელუხლებელი დარჩეს

ნაბიჯი 3: მონაცემთა ბაზა

Მონაცემთა ბაზა
Მონაცემთა ბაზა

უპირველეს ყოვლისა, თქვენ უნდა შეიმუშაოთ მონაცემთა ბაზა Mysql Workbench– ის გამოყენებით. თუ ეს წარმატებულია, თქვენ უნდა დააინსტალიროთ Mysql მონაცემთა ბაზა Raspberry Pi– ზე.

პირველი ნაბიჯი, რომლის გადადგმაც გჭირდებათ არის იმის შემოწმება, არის თუ არა თქვენი Pi განახლებული. თქვენ შეგიძლიათ გამოიყენოთ შემდეგი ბრძანება:

sudo apt-get განახლება

და

sudo apt-get განახლება

ახლა თქვენ შეგიძლიათ დააინსტალიროთ Mysql სერვერი:

sudo apt-get დააინსტალირეთ mysql- სერვერი

თუ Mysql სერვერი დაინსტალირებულია, დააინსტალირეთ Mysql კლიენტი

sudo apt-get დააინსტალირეთ mysql-client

თუ ახლა უყურებთ sql სერვერს ბრძანებით:

sudo mysql

ახლა თქვენ შეგიძლიათ შემოიტანოთ თქვენი მონაცემთა ბაზის კოდი.mwb ფაილის გახსნით sql სამუშაო მაგიდასთან და წინ მიმავალ ინჟინერთან. თქვენ დააკოპირეთ კოდი და ჩასვით ეს ჟოლოდან mysql– ში. მონაცემთა ბაზა შედგენილია.

იმისათვის, რომ მომხმარებელმა მიიღოს ყველა ნებართვა, უბრალოდ დაამატეთ თქვენი მომხმარებლის სახელი ცხრილში

მიანიჭეთ ყველა პრივილეგია smarthome– ზე.* 'yourname'@'%' გამოვლენილი 'yourname';

რა თქმა უნდა, მაგიდის განახლება გჭირდებათ

FLUSH პრივილეგიები;

ამის შესამოწმებლად შეგიძლიათ უბრალოდ სცადოთ:

გამოიყენეთ smarthome;

აირჩიეთ * historiek– დან;

მომხმარებლის ცხრილში მომხმარებელთა სახელები გაერთიანებულია მათ სამკერდე ნიშანთან ერთად, აქ შეგიძლიათ დაამატოთ ახალი მომხმარებლები. მოწყობილობების ცხრილში შეგიძლიათ იპოვოთ ყველა აქტიური სენსორი მათი პირადობის მოწმობით. ისტორიული ცხრილი გვიჩვენებს ყველაფერს, რაც ხდება ტემპერატურის სენსორის მსგავსად, სამკერდე ავტოფარეხის კარის სტატუსით და სხვა.

ნაბიჯი 4: დაყენება

Raspberry Pi– ზე გამოსახულების დასაყენებლად შეგიძლიათ გამოიყენოთ Putty, ეს არის უფასო პროგრამა. თქვენ შეგიძლიათ იპოვოთ ძირითადი სურათის ფაილი აქ:

ინტერფეისები

რა თქმა უნდა, თქვენ უნდა ჩართოთ Pi ინტერფეისები. პირველი გადადით კონფიგურაციის გვერდზე.

sudo raspi-config

ახლა თქვენ შეგიძლიათ გადახვიდეთ კატეგორიებზე 1-Wire და Spi და ორივე ჩართოთ ისინი. თქვენ დაგჭირდებათ ისინი ტემპერატურის სენსორისთვის.

ვაი - ფაი

მიჰყევით შემდეგ ნაბიჯებს, რომ მიიღოთ Wi -Fi Pi- ზე.

პირველი შედით როგორც root

სუდო-ი

შემდეგ შეავსეთ თქვენი wifi ქსელის სახელი და პაროლი

wpa_passphrase = "wifiname" "password" >> /etc/wpa_supplicant/wpa_supplicant.conf

შემდეგ შეიყვანეთ WPA კლიენტი

wpa_cli

აირჩიეთ ინტერფეისი

ინტერფეისი wlan0

ახლა გადატვირთეთ კონფიგურაცია

ხელახლა კონფიგურაცია

და ახლა თქვენ შეგიძლიათ შეამოწმოთ ხართ თუ არა დაკავშირებული

ip a

პაკეტები

პირველი რაც უნდა გააკეთოთ არის უახლესი ვერსიების განახლება

sudo apt განახლება

პითონისთვის ჩვენ ვამონტაჟებთ და დავრწმუნდებით, რომ Pi ირჩევს სწორ ვერსიას

განახლება-ალტერნატივები-დააინსტალირეთ/usr/bin/python python /usr/bin/python2.7 1 განახლება-ალტერნატივები-დააინსტალირეთ/usr/bin/python python/usr/bin/python3 2

ვებ სერვერისთვის საიტის გასაშვებად, ჩვენ უნდა დავაინსტალიროთ Apache2

sudo apt დააინსტალირეთ apache2 -y

პითონის ზოგიერთი პაკეტი ასევე უნდა იყოს დაინსტალირებული

  • კოლბა
  • Flask-Cors
  • Flask-MySQL
  • Flask-SocketIO
  • PyMySQL
  • პითონ-სოკეტი IO
  • მოთხოვნებს
  • პიპი
  • gpio
  • გევენტი
  • Gevent-websocket

თუ პრობლემები გაქვთ პაკეტთან, რომელიც არ არის ნაპოვნი, უბრალოდ დააწკაპუნეთ მასზე და დაუშვით ინსტალაცია.

ნაბიჯი 5: კოდი

კოდი
კოდი
კოდი
კოდი

უკანა მხარე

უკანა პლანზე, ჩვენ ვწერთ კოდს პითონში და ვიყენებთ pycharm– ის გამოყენებით. ამ აპლიკაციის საშუალებით შეგიძლიათ გამოიყენოთ POST და GET მეთოდები. უკანა პლანზე მე ვიყენებდი მულტიტრედინგს, ასე რომ ყველაფერი უკანა პლანზე მუშაობს და შეიძლება ერთად ვიმუშაოთ. Raspberry Pi– ზე გამოსახულების დასაყენებლად შეგიძლიათ გამოიყენოთ Putty, ეს არის უფასო პროგრამა.

ფრონტონდი

ფრონტონზე არის რამდენიმე ღილაკი, რომელსაც შეუძლია განათების ჩართვა, ხსნის ავტოფარეხის პორტს და კარს. Javascript და CSS გამოყენებით სტილი ღილაკებიდან იცვლება როდესაც ისინი აქტიურია. ასევე არსებობს ცოცხალი ტემპერატურა და სქემა წარსული ტემპერატურებით. მომხმარებლის გვერდზე შეგიძლიათ ნახოთ სხვადასხვა მომხმარებელი, ასევე შეგიძლიათ დაამატოთ მომხმარებელი მონაცემთა ბაზაში და არის მომხმარებლის ისტორია, სადაც შეგიძლიათ ნახოთ ვინ გახსნა ან დახურა ავტოფარეხის კარი როგორც ბოლო.

თქვენ შეგიძლიათ იპოვოთ კოდი frontend და backend– ზე აქ

github.com/NMCT-S2-Project-1/nmct-s2-proje…

გირჩევთ: