Spisu treści:

Skrzynka na listy Smart Parcel (Packr): 13 kroków (ze zdjęciami)
Skrzynka na listy Smart Parcel (Packr): 13 kroków (ze zdjęciami)

Wideo: Skrzynka na listy Smart Parcel (Packr): 13 kroków (ze zdjęciami)

Wideo: Skrzynka na listy Smart Parcel (Packr): 13 kroków (ze zdjęciami)
Wideo: Прохождение The Last of Us part 2 (Одни из нас 2)#5 Куда же без флэшбэков и жесть в офисе 2024, Lipiec
Anonim
Skrzynka na listy Smart Parcel (Packr)
Skrzynka na listy Smart Parcel (Packr)
Skrzynka na listy Smart Parcel (Packr)
Skrzynka na listy Smart Parcel (Packr)
Skrzynka na listy Smart Parcel (Packr)
Skrzynka na listy Smart Parcel (Packr)
Skrzynka na listy Smart Parcel (Packr)
Skrzynka na listy Smart Parcel (Packr)

Niektórzy ludzie rzadko otrzymują listy lub paczki. Muszą codziennie iść do swojej skrzynki pocztowej, aby sprawdzić, czy jest nowa poczta, zarówno gdy pada deszcz, jak i gdy świeci słońce. Aby lepiej wykorzystać ten czas w swoim życiu, oto ta inteligentna skrzynka pocztowa. Ta skrzynka pocztowa poinformuje Cię, kiedy nadejdzie nowa poczta, a także może zabezpieczyć Twoje paczki (w dowolnym momencie) za pomocą silnika, który zamyka drzwi. Czujniki mierzą również wartości fizyczne z wnętrza szyny listowej. Czy to wydaje Ci się interesujące? Następnie zrób to sam!

Kieszonkowe dzieci

  • Raspberry Pi 4 Model B / 2GB (1 sztuka)
  • Oryginalny zasilacz Raspberry Pi USB-C 3A Czarny (1 szt.)
  • 16 GB SanDisk Ultra Micro SDHC 80 mb/s (1 sztuka)
  • Zmontowany Pi T-Cobbler Plus - GPIO Breakout (1 szt.)
  • Tabliczka chlebowa 830 otworów (1 szt.)
  • MB102 Breadboard Power Supply Adapter Shield 3.3V / 5V Geekcreit dla Arduino (1 sztuka)
  • 65 szt. Mix kolorów z męskiego na lutowane bez lutowania Flexibele Breadboard kabel połączeniowy (1 szt.)
  • Czujnik temperatury TMP36 (1 szt.)
  • Detektor podczerwieni - diody LED 5mm (2 sztuki)
  • Detektor temperatury i wilgotności DHT11 (1 szt.)
  • 1 szt. Mikro serwomotor SG90 9G (2 sztuki)
  • Ekran wyświetlacza modułu LCD (1 sztuka)
  • Potencjometr Liniair 15mm 10K Ohm (1 szt.)

Cena całkowita => około 90 € (bez etui)

Krok 1: Zainstaluj LAMP na Raspberry Pi - Linux

Zainstaluj LAMP na Raspberry Pi - Linux
Zainstaluj LAMP na Raspberry Pi - Linux
Zainstaluj LAMP na Raspberry Pi - Linux
Zainstaluj LAMP na Raspberry Pi - Linux

Pobierz Raspberry Pi OS (wcześniej nazywany Raspbian) z oficjalnej strony Raspberry Pi.

Włóż kartę SD do adaptera kart SD lub gniazda kart SD, jeśli taki posiadasz. Zwróć uwagę na literę dysku w lewej kolumnie Eksploratora Windows, na przykład G:.

Pobierz Win32DiskImager jako plik instalacyjny i uruchom go, aby zainstalować oprogramowanie. Uruchom go i wybierz plik obrazu. W polu urządzenia wybierz kartę SD (rys. 1). Kliknij „Zapisz” i poczekaj na zakończenie zapisu.

Po zakończeniu otwórz folder „boot” na karcie SD i dodaj pusty plik o nazwie „ssh”. Zgadza się, bez rozszerzenia (rys. 2)! Następnie będziesz musiał edytować cmdline.txt w IDE (nie używaj notatnika). Po otwarciu pliku wystarczy dodać „ip=169.254.10.1” na końcu pierwszej linii i zapisać.

Jeśli to zrobiłeś, wyjmij kartę SD i włóż ją do Raspberry Pi.

Krok 2: Zainstaluj LAMP na Raspberry Pi - Apache

Zainstaluj LAMP na Raspberry Pi - Apache
Zainstaluj LAMP na Raspberry Pi - Apache
Zainstaluj LAMP na Raspberry Pi - Apache
Zainstaluj LAMP na Raspberry Pi - Apache
Zainstaluj LAMP na Raspberry Pi - Apache
Zainstaluj LAMP na Raspberry Pi - Apache
Zainstaluj LAMP na Raspberry Pi - Apache
Zainstaluj LAMP na Raspberry Pi - Apache

Po zainstalowaniu Raspbian i włączeniu Raspberry Pi, użyj Putty, aby połączyć się z wierszem poleceń przez SSH, aby wykonać kolejne polecenia. Podstawowa nazwa użytkownika to "pi" z hasłem "raspberry".

Zanim zaczniemy, musisz połączyć swoje WiFi z Raspberry Pi.

  • wpa_passphrase "NAZWATWOJEJSIECI"
  • Wpisz hasło i naciśnij Enter
  • Skopiuj wynik
  • sudo nano /etc/wpa_supplicant/wpa_supplicant.conf (rys. 1)
  • Wklej wynik tutaj i zamknij ctrl + X, Y i Enter
  • ponowne uruchomienie sudo

Musisz ponownie uruchomić połączenie Putty. Przed rozpoczęciem instalacji wszystkiego uruchom następujące polecenia, aby zaktualizować swoje Pi.

  • aktualizacja sudo apt
  • aktualizacja sudo apt -y

Zmienimy również nazwę hosta Raspberry Pi i włączymy SPI z raspi-config.

  • sudo raspi-config
  • Wybierz 2) Opcje sieciowe (rys. 2)
  • Wybierz N1) Nazwa hosta (rys. 3)
  • Wpisz „Packr” (rys. 4)
  • Wybierz 4) Opcje interfejsu (rys. 5)
  • Wybierz P4) SPI (rys. 6)
  • Wybierz Tak (rys. 7)
  • Zakończ konfigurację raspi
  • Restart

Musisz się ponownie zalogować. Aby zainstalować Apache2 na swoim Raspberry Pi, uruchom następne polecenie.

sudo apt zainstaluj apache2 -y

Apache jest już zainstalowany! Aby przetestować instalację, przejdź do katalogu /var/www/html i wyświetl listę plików.

  • cd /var/www/html
  • ls -al

Powinieneś mieć plik index.html w tym folderze.

Krok 3: Zainstaluj LAMP na Raspberry Pi - PHP

Aby zainstalować PHP na Raspberry Pi, uruchom następujące polecenie.

sudo apt zainstaluj php -y

Uruchom ponownie Apache2.

usługa sudo restart apache2

Krok 4: Zainstaluj LAMP na Raspberry Pi - MySQL (MariaDB Server)

Zainstaluj serwer MySQL (MariaDB Server) za pomocą tych poleceń

  • sudo apt zainstaluj serwer mariadb php-mysql -y
  • usługa sudo restart apache2

Po zainstalowaniu tego zaleca się zabezpieczyć instalację.

  • sudo mysql_secure_installation
  • Zostaniesz poproszony o podanie aktualnego hasła dla roota (wpisz bezpieczne hasło): naciśnij Enter
  • Wpisz Y i naciśnij Enter, aby ustawić hasło roota
  • Wpisz hasło w wierszu polecenia Nowe hasło: i naciśnij klawisz Enter.
  • Wpisz Y, aby usunąć anonimowych użytkowników
  • Wpisz Y, aby zablokować zdalne logowanie root
  • Wpisz Y, aby usunąć testową bazę danych i uzyskać do niej dostęp
  • Wpisz Y, aby załadować teraz tabele uprawnień

Teraz utworzymy użytkownika mysql dla naszej bazy danych.

  • sudo mysql --user=root --hasło
  • utwórz użytkownika mysql@localhost identyfikowanego przez 'Packr2001';
  • nadaj wszystkie uprawnienia na *.* mysql@localhost;
  • PRZYWILEJE WSPÓŁPRACUJĄCE;
  • Wyjście;

Krok 5: Zainstaluj LAMP na Raspberry Pi - PhpMyAdmin

Aby zainstalować phpMyAdmin na Raspberry Pi, wpisz następujące polecenie w terminalu.

  • sudo apt zainstaluj phpmyadmin -y
  • Po wyświetleniu monitu wybierz Apache2 i naciśnij klawisz Enter
  • Konfigurowanie phpmyadmina? ok
  • Skonfigurować bazę danych dla phpmyadmina za pomocą dbconfig-common? tak
  • Wpisz swoje hasło i naciśnij OK

Włączymy teraz rozszerzenie PHP MySQLi i zrestartujemy Apache2.

  • sudo phpenmod mysqli
  • usługa sudo restart apache2

Teraz musisz przenieść folder phpmyadmin do /var/www/html.

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

Otóż to! Twoje Raspberry Pi jest przygotowane z LAMP!

Krok 6: Skonfiguruj MySQL

Skonfiguruj MySQL
Skonfiguruj MySQL
Skonfiguruj MySQL
Skonfiguruj MySQL

Pobierz MySQL Workbench i zainstaluj go na swoim komputerze.

Utwórz nowe połączenie z tymi danymi, ale zamień nazwę hosta SSH na 169.254.10.1. Hasło SSH to "raspberry", a hasło mysql to "Packr2001" (rys. 1).

Jeśli zobaczysz błąd, możesz po prostu kliknąć „Mimo to kontynuuj (rys 2). Następnie kliknij „Ok” i połącz się, klikając nowe połączenie!

Krok 7: Skonfiguruj bazę danych

Skonfiguruj bazę danych
Skonfiguruj bazę danych
Skonfiguruj bazę danych
Skonfiguruj bazę danych
Skonfiguruj bazę danych
Skonfiguruj bazę danych

Pobierz model bazy danych Packr z GitHub.

Otwórz ten model (rys. 1) i kliknij Baza danych => Forward Engineer (rys. 2).

Kliknij 5 razy „Dalej” (rys. 3), ale usuń 2 „widoczne” z kodu w „Review SQL Script” (rys. 4) i otwórz bazę danych.

Jeśli widzisz bazę danych "Packr" z jego 2 tabelami (rys. 5), wszystko jest w porządku!

Krok 8: Podłącz edytor kodu do Raspberry Pi

Podłącz edytor kodów do Raspberry Pi
Podłącz edytor kodów do Raspberry Pi
Podłącz edytor kodów do Raspberry Pi
Podłącz edytor kodów do Raspberry Pi
Podłącz edytor kodów do Raspberry Pi
Podłącz edytor kodów do Raspberry Pi

Pobierz i zainstaluj Visual Studio Code na swoim komputerze.

Po zainstalowaniu możesz go otworzyć i zainstalować rozszerzenie "Remote Development" (rys. 1).

Naciśnij F1 i wpisz „ssh”, wybierz „Remote-SSH: Dodaj nowy host SSH…” (rys. 2).

Wpisz „ssh 169.254.10.1 -A” i naciśnij Enter, aby potwierdzić (rys. 3).

Po prostu naciśnij Enter w następnym kroku (rys. 4).

Otwórz połączenie, ponownie naciskając F1 i kliknij „Remote-SSH: Connect to Host…” po wpisaniu „SSH”.

Wybierz „169.254.10.1” (rys. 5), wpisz swoje hasło („raspberry”) i naciśnij Enter. Jeśli otrzymasz ostrzeżenie, po prostu Kontynuuj.

Teraz zainstaluj rozszerzenie "Python", robiąc to samo, co instalując poprzednie rozszerzenie (rys. 6).

Krok 9: Importuj kod

Zaimportuj kod
Zaimportuj kod
Zaimportuj kod
Zaimportuj kod
Zaimportuj kod
Zaimportuj kod

Otwórz terminal lub użyj Putty, aby wykonać następujące polecenie.

mkdir Packr

Otwórz nowy folder „Packr” w kodzie Visual Studio (rys. 1), a także folder „html”, który możesz znaleźć pod adresem /var/www/ (rys. 2).

Aby korzystać z folderu "html", musisz wyrazić zgodę. Wpisz następujące polecenie w terminalu lub w Putty.

sudo chmod 777 /var/www/html/

Pobierz folder Backend i Frontend i przeciągnij pliki i foldery z Backend do folderu „Packr” w Visual Studio Code, a wszystko z Frontendu do folderu „html” (rys. 3).

Otwórz Google Chrome (lub symulację) i przejdź do adresu IP Raspberry Pi. Czy widzisz stronę Packr? Dobra robota! To normalne, że nic jeszcze nie działa, w tej chwili nie masz żadnych podłączonych urządzeń ani uruchomionego kodu.

Krok 10: Zainstaluj dodatkowe narzędzia

Zainstaluj dodatkowe narzędzia
Zainstaluj dodatkowe narzędzia

Aby kod działał poprawnie, musimy zainstalować kilka dodatkowych rzeczy. Na przykład, musimy zainstalować łącznik MySQL, wykonując poniższą linię.

pip3 zainstaluj mysql-connector-python

Musimy również zainstalować flask-socketio, flask-cors i gevent (zdjęcie 1).

  • pip3 zainstaluj kolbę-socketio
  • pip3 zainstaluj kolby-cors
  • pip3 instalacja gevent
  • pip3 zainstaluj gevent-websocket

Krok 11: Pozwól, aby kod działał automatycznie

Niech kod działa automatycznie
Niech kod działa automatycznie

Utwórz nową usługę, uruchamiając następujące polecenie w Putty.

sudo nano /lib/systemd/system/Packr.service

W pustym pliku, który się otworzy, napisz kod, który można znaleźć w Packr.service na GitHub (rys. 1). Jeśli skończysz, zapisz plik, naciskając ctrl+X, Y i Enter.

Załaduj ponownie usługi za pomocą następującego polecenia.

sudo systemctl demon-reload

Krok 12: Podłącz sprzęt

Podłącz sprzęt
Podłącz sprzęt
Podłącz sprzęt
Podłącz sprzęt

Teraz, gdy cały kod jest gotowy, a oprogramowanie do projektu gotowe, podłączamy sprzęt. Do tego będziesz potrzebować wszystkich części sprzętu i możesz użyć plików Fritzing jako pomocy. Pobierz widok płytki prototypowej lub widok elektroniki i rozpocznij łączenie! Po zakończeniu włącz go i uruchom ponownie Raspberry Pi, aby automatycznie uruchomić kod!

Krok 13: Zrób sprawę

Zrób sprawę
Zrób sprawę
Zrób sprawę
Zrób sprawę
Zrób sprawę
Zrób sprawę

Aby korzystać z całego sprzętu, do którego jest przeznaczony, musisz wykonać obudowę. To może być wykonane z drewna, które nie jest wodoodporne, ale także z tworzywa sztucznego, które jest wodoodporne. W tym celu możesz narysować i wyciąć laserowo projekt z własnego dzieła lub użyć mojego. Pobierz plate 1 i plate 2 z GitHub. Te projekty są przeznaczone dla małych skrzynek pocztowych, które z pewnością nie mieszczą się w porządnym opakowaniu, więc użyj własnych pomiarów i edytuj moje w (na przykład) Inkscape!

Po wykonaniu etui Packr jest gotowy do użycia! Ciesz się i dziel się swoimi doświadczeniami!

Zalecana: