Spisu treści:

Inteligentne zarządzanie praniem: 7 kroków
Inteligentne zarządzanie praniem: 7 kroków

Wideo: Inteligentne zarządzanie praniem: 7 kroków

Wideo: Inteligentne zarządzanie praniem: 7 kroków
Wideo: 7 kroków zarządzania emocjami #1 2024, Lipiec
Anonim
Inteligentne zarządzanie pralnią
Inteligentne zarządzanie pralnią
Inteligentne zarządzanie pralnią
Inteligentne zarządzanie pralnią
Inteligentne zarządzanie pralnią
Inteligentne zarządzanie pralnią

Dandywash to inteligentny system zarządzania praniem, zorientowany na osoby, które mają mało czasu na wykonywanie oklepanych czynności domowych, takich jak pranie. Wszyscy tam byliśmy, po prostu wrzucając nasze brudne ubrania do kosza, mając nadzieję, że znajdziemy motywację, by później uporządkować ten bałagan. Jednak nikt tego nigdy nie znajduje. Aż naprawdę potrzebujemy jakiejś części garderoby i nie możemy jej nigdzie znaleźć. To dopiero początek. Potem przychodzi sortowanie, napełnianie i śledzenie. Wykonanie tego prostego i powtarzalnego zadania wymaga zbyt wiele uwagi i skupienia. Właśnie dlatego rozpocząłem ten projekt. Dandywash eliminuje wszystkie te męczące czynności. Nie musisz już spędzać kolejnej sekundy na sortowaniu, śledzeniu lub mierzeniu swoich ładunków. Zachowując pełną kontrolę. Dowiedz się więcej i dowiedz się, jak możesz osiągnąć ten sam produktywny wynik, czytając ten artykuł.

Kieszonkowe dzieci

Stworzyłem szczegółowy wykaz materiałów w Excelu, który możesz zobaczyć tutaj.

Zawiera wszystkie niezbędne elementy i elementy, których potrzebujesz, oraz gdzie je zdobyć.

Oprócz tego chciałbym wymienić kilka dodatkowych elementów, które będą bardzo przydatne podczas samodzielnego tworzenia tego projektu, ale nie są obowiązkowe.

  • Ponieważ będziesz potrzebować długich przewodów połączeniowych, a tak naprawdę to nie jest rzecz, proponuję kupić zarówno kable żeńsko-żeńskie, jak i męskie-męskie. Kupiłam też suczkę - samca, ale te nie są potrzebne. W ten sposób możesz tworzyć dłuższe kable, łącząc je ze sobą. Eliminuje to czasochłonne prace lutownicze.
  • Dodałem też dużo rezystorów bezpieczeństwa w obwodzie. Możesz je wyjąć, jeśli czujesz się bardziej pewny siebie. Jeśli kończą ci się rezystory, polecam wybrać ten zestaw, bardzo wygodnie jest mieć zawsze potrzebne rezystory, które są wyraźnie oznaczone.

Krok 1: Wstępny

Wstępny
Wstępny
Wstępny
Wstępny

Uruchamianie Raspberry Pi

Aby uruchomić cały łańcuch IOT z Raspberry Pi, musimy zainicjować urządzenie. Można to zrobić, pobierając dostarczony obraz i wypalając go na karcie micro SD (16 GB). Można to zrobić naprawdę za pomocą Win32DiskImager lub dowolnego innego oprogramowania. Upewnij się, że karta SD jest całkowicie pusta i sformatowana przed nagraniem obrazu. Ten film wyjaśnia krok po kroku cały proces. Zauważ, że nie musisz używać obrazu raspbian, ale zamiast tego dostarczonego obrazu.

Po zakończeniu pisania na karcie SD możesz ją wyjąć i włożyć do Pi. Upewnij się, że Pi nie jest jeszcze podłączony do zasilania!

Po włożeniu karty SD podłącz Pi do laptopa za pomocą kabla Ethernet. Dopiero wtedy, gdy jest już pod Twoją kontrolą, daj mu moc. Pi uruchomi się za kilka sekund.

Możesz to monitorować, przechodząc do wiersza poleceń i wpisując

ping 169.254.10.1 -t

Kiedy otrzymasz odpowiedź, a nie „Host nieosiągalny”, Twoje Pi pomyślnie uruchomiło się. Oznacza to, że możemy z nim wchodzić w interakcje. Wyjdź z nieskończonej pętli pingowania, naciskając Ctrl+C. Teraz możesz wprowadzić Pi, wpisując

ssh [email protected]

to poprosi Cię o hasło, które jest domyślnym malinowym.

Podczas uruchamiania po raz pierwszy ogólnie dobrą praktyką jest uruchamianie obu

$ sudo apt-get update

$ sudo apt-get upgrade

Dzięki temu wszystkie pakiety zostaną zaktualizowane i będą miały najnowszą wersję.

MariaDB i Apache2 zostaną już zainstalowane. Więc nie musimy się o to martwić. Musimy jednak skonfigurować kilka innych rzeczy, aby wszystko działało tak, jak chcemy.

Należy jednak najpierw zrestartować komputer, aby upewnić się, że wszystko jest gotowe do następnego kroku.

$ restart sudo

Krok 2: Konfiguracja bazy danych

Konfigurowanie bazy danych
Konfigurowanie bazy danych
Konfigurowanie bazy danych
Konfigurowanie bazy danych

Bazę danych skonfigurujemy za pomocą laptopa/komputera stacjonarnego, a nie Pi. Otwórz MySQL Workbench (przewodnik pobierania) i dodaj nowe połączenie.

Następnie zostaniesz poproszony o okno konfiguracji. Mój jest wypełniony tak, jak powinien być twój. Zwróć szczególną uwagę na zaznaczone pola. Strzałki wskazują hasła, które musisz przechowywać w skarbcu. Są to tylko wartości domyślne i można je zmienić według własnych upodobań.

Po wprowadzeniu wszystkich informacji kliknij Testuj połączenie, zignoruj ostrzeżenie i miejmy nadzieję, że zobaczysz okno sukcesu. Jeśli tego nie zrobisz, niektóre pola są nieprawidłowe. Możesz kontynuować, klikając OK w oknie ze wszystkimi polami wejściowymi.

Połączenie powinno być teraz widoczne w oknie startowym. Kliknij go, aby spróbować się połączyć. Hasło powinno zostać wprowadzone automatycznie, ponieważ przechowujemy je w skarbcu.

Ostatnim krokiem jest zaimportowanie bazy danych. Zrzut można pobrać tutaj. W tym filmie wyjaśniono, jak otworzyć i uruchomić plik.sql. Upewnij się, że masz połączenie z Raspberry Pi, a nie z lokalną instancją na swoim laptopie!

Krok 3: Konfigurowanie repozytorium Git

Konfigurowanie repozytorium Git
Konfigurowanie repozytorium Git
Konfigurowanie repozytorium Git
Konfigurowanie repozytorium Git
Konfigurowanie repozytorium Git
Konfigurowanie repozytorium Git
Konfigurowanie repozytorium Git
Konfigurowanie repozytorium Git

Praca z repozytorium git jest tutaj bardzo potrzebna. Zwłaszcza jeśli chcesz łatwo przełączać się między komputerem a raspi. Git powinien być już zainstalowany na urządzeniu, więc możesz po prostu git sklonować dowolne repozytorium do dowolnego folderu. Ponieważ jednak używamy Apache, musimy umieścić nasz kod frontendowy (html, css, javascript) w folderze /var/www/html. Nie chcę tutaj umieszczać całego repozytorium i zdecydowanie nie chcę osobnego repozytorium.

Można to rozwiązać, tworząc połączenie symbiotyczne, które zasadniczo jest tym samym, co skrót w systemie Windows. Można go łatwo skonfigurować, wpisując następujące polecenie w terminalu raspi (po sklonowaniu repozytorium!)

$ git clone

Tworzenie symbiotycznego połączenia ma następującą strukturę

$ ln -s /ścieżka/do/katalogu /ścieżka/do/łącza symbolicznego

W tym przypadku użycia polecenie powinno wyglądać mniej więcej tak

$ ln -s ~/home/pi/project1/git-repo//var/www/html

Teraz, jeśli wszystko poszło dobrze, możesz przejść do https://169.254.10.1/Frontend powinien zobaczyć index.html z repozytorium git.

W tym folderze znajdziesz pełny responsywny kod frontendu. W tym HTML5, CSS i JavaScript.

Krok 4: Backend

Zaplecze
Zaplecze
Zaplecze
Zaplecze

W tym projekcie użyjemy Flaska w połączeniu z Socketio. Dzięki temu możemy skonfigurować elastyczny serwer WWW z routingiem i gniazdami sieciowymi. Ta aplikacja Flask będzie również współdziałać z bazą danych w celu wykonywania działań CRUD. Najlepszą rzeczą w tym całym stosie jest to, że konfiguracja zajmuje bardzo mało czasu i wysiłku. Po pierwsze, upewnij się, że zainstalowano następujące pakiety Pythona innych firm. Powinny one być zawarte w obrazie, ale uruchamiając następujące polecenia, możesz upewnić się, że / zaktualizuj do nowszych wersji.

$ pip3 zainstaluj mysql-connector-python

$ pip3 zainstaluj flask-socketio $ pip3 zainstaluj flask-cors $ pip3 zainstaluj gevent $ pip3 zainstaluj gevent-websocket

Teraz powinieneś być w stanie uruchomić skrypt app.py bez żadnych problemów. Może się zdarzyć, że otrzymasz atrybut attributeError mówiący, że obiekt typu „Baza danych” nie ma atrybutu „kursor”. Jest to spowodowane błędem w pliku config.py. Upewnij się, że hasło do nazwy użytkownika i nazwa bazy danych są poprawne i masz dostęp do bazy danych, którą właśnie zaimportowaliśmy. Jest to szczególnie godne uwagi w przypadku zmiany domyślnej nazwy użytkownika i hasła w MySQL.

Krok 5: Obwód

Okrążenie
Okrążenie
Okrążenie
Okrążenie
Okrążenie
Okrążenie

Naprawdę nie mogę wiele powiedzieć o torze. Musisz tylko to zbudować i uruchomić skrypty testowe w repozytorium git. Stworzyłem skrypt testowy dla każdego czujnika i elementu wykonawczego w obwodzie, dzięki czemu można indywidualnie przetestować każdą część / komponent.

Możliwe, że będziesz musiał zmienić numery PIN w kodzie. Dodałem też dużo rezystorów bezpieczeństwa w obwodzie. Możesz je wyjąć, jeśli czujesz się bardziej pewny siebie. Jeśli kończą ci się rezystory, polecam wybrać ten zestaw, bardzo wygodnie jest mieć zawsze potrzebne rezystory, które są wyraźnie oznaczone.

Jeśli tor w ogóle Cię przeraża, nie zniechęcaj się. Spróbuj podzielić to na sekcje. Najpierw zbuduj przyciski, upewnij się, że działa, a następnie przejdź do następnego czujnika. To jest coś, czego nie możesz po prostu zbudować za jednym podejściem, chyba że jesteś zadziwiająco utalentowany.

Na koniec zauważ, że Raspberry Pi nie nadaje się do żadnego poważnego oprogramowania PWM. Linux nie jest systemem operacyjnym czasu rzeczywistego. Oznacza to, że serwomotory będą miały niewielkie drgania. Pin 18 GPIO obsługuje sprzętowe pwm, ale potrzebujemy czegoś więcej niż tylko 1 pinu.

Krok 6: Sprawa

Sprawa
Sprawa
Sprawa
Sprawa
Sprawa
Sprawa

Miałem w głowie zaplanowany cały projekt, którego nie udało się zrealizować z powodu pandemii. Oczywiście jest to sytuacja, która wymaga od wszystkich elastyczności i dokładnie tak zareagowałem. Nadal mam oryginalną scenę 3D, którą stworzyłem, i podzielę się nią również tutaj, jeśli chcesz zbudować obudowę w ten sposób. Jednak do końca tego artykułu omówię alternatywną konstrukcję obudowy.

Główną niedogodnością była płyta abs, której zamierzałem użyć do zamontowania górnej części do dolnej części. To był doskonały materiał. Estetyczny i bardzo praktyczny. Tego jednak nie można było zrealizować, więc musiałem znaleźć alternatywę. Ponieważ nie mogłem wymyślić innego materiału o tej samej wytrzymałości, który można by zginać w ten sam sposób, postanowiłem zastąpić go drewnianym sobowtórem. Uniemożliwiło to zaokrąglenie krzywizn, ale w rzeczywistości stworzyło kolejną płaską powierzchnię, która może być używana do przechowywania rzeczy, takich jak pranie lub spinacze do bielizny. Skończyło się na tym, że użyłem go do przechowywania drugiej płytki stykowej, co znacznie ułatwiło mi życie z obwodami dla tego prototypu.

Zwróć uwagę na prostokątny otwór wywiercony z tyłu. Pozwala to na poprowadzenie kabli do Raspbarry Pi.

W przypadku desek odwiedziłem mój lokalny sklep z majsterkowaniem. Zawsze mają wokół siebie trochę kawałków drewna i są gotowi pociąć je na kawałki za niewielką cenę. Łącznie zapłaciłem 5 euro. Ogromne okrzyki dla Louisa od Hubo Wevelgem, aby było to możliwe. Potem wystarczyło już tylko wywiercić otwory i przykręcić wszystko na swoim miejscu. Szczegółowy przegląd tego, gdzie ciąć i gdzie wiercić można znaleźć tutaj.

W przypadku bitów drukowanych w 3D musiałem polegać na ludziach wokół mnie, ponieważ szkoła nie mogła już świadczyć tej usługi z powodu pandemii. Poprzez przyjaciela znajomego skontaktowałem się z kimś, kto dopiero zaczynał budować swój biznes druku 3D. Był na tyle hojny, że wydrukował mój główny artykuł. Jakość była dość chamska ze względu na błędną konfigurację drukarki. Kupiłem podkład w sprayu i nałożyłem 3 powłoki, przywracając ogólny wygląd.

Uchwyty do czujników odległości wykonał inny przyjaciel. Wydrukował również włazy, które były przymocowane do serwomotorów. Na początku próbowałem tego z tekturą, ale nie trzymałyby się zbyt dobrze. Zauważ, że jeśli drukujesz te bity w 3D, potrzebujesz dwa razy bottom_hatch.stl, a także distanceSensorHolder.stl. main_piece.stl i middle_hatch.stl wystarczy wydrukować tylko raz.

Krok 7: Pytania?

Jeśli jakaś część nie jest jeszcze dla Ciebie całkowicie jasna, nie wahaj się skontaktować i pozwól mi pomóc.

Zapraszam do kontaktu przez e-mail na [email protected]

Zalecana: