Spisu treści:

Przycisk pizzy: 13 kroków (ze zdjęciami)
Przycisk pizzy: 13 kroków (ze zdjęciami)

Wideo: Przycisk pizzy: 13 kroków (ze zdjęciami)

Wideo: Przycisk pizzy: 13 kroków (ze zdjęciami)
Wideo: ILE ZJESZ = TYLE ZAROBISZ $$$ 2024, Lipiec
Anonim
Przycisk pizzy
Przycisk pizzy
Przycisk pizzy
Przycisk pizzy
Przycisk pizzy
Przycisk pizzy

Studenci drugiego roku studiów, nowojorczycy, technicy do późnych godzin nocnych i naprawdę leniwi: witaj w swojej fantazji. Przedstawiamy ostateczne ulepszenie technologii gastronomicznej, przycisk Pizza. Nie musisz już odbierać telefonu, aby zamówić pizzę. Po prostu naciśnij ten przycisk i poczekaj, aż zamówi dostawę pizzy na Twój adres.

Pizza Button wykorzystuje płytę BeagleBone Black (BBB) do podnoszenia ciężkich przedmiotów w tym projekcie. Naciśnięcie przycisku uruchamia tablicę, aby uruchomić skrobak sieciowy. Web scraper loguje się na twoje konto Grub Hub i zamawia pizzę ze słynnej San Francisco North Beach Pizza (co oznacza, że obecnie ten przycisk działa tylko w San Francisco, ale szczerze mówiąc, czy naprawdę chciałbyś być gdzie indziej?) Zamawia duży ser pizza, płaci za pizzę i dostarcza ją pod same drzwi. Ten projekt jest bardzo prosty w wykonaniu i nieodparty w użyciu!

Przyszłe aktualizacje tego projektu obejmują:

  • Wi-Fi
  • Wewnętrzny GPS
  • Zapach pizzy, aby tylko zwiększyć apetyt

Lista części

  • (x3) pudełka po pizzy z ulubionego sklepu z pizzą
  • (x1) Masywny przycisk Arcade z diodą LED - 100 mm Biały Adafruit 1187
  • (x1) Zestaw Proto Cape dla BeagleBone Adafruit 572
  • (x1) Rezystor 470 omów 1/4 W RadioShack 271-1317
  • (x1) Rezystor 1 kΩ 1/4 W RadioShack 271-1321
  • Winylowy lub błyszczący papier do drukarek atramentowych LC (8,5 "x 11") Amazon B000VKV2H4

Dodatkowe materiały

  • Lutowane RadioShack 64-013
  • 22 Gauge Wire RadioShack 278-1224
  • Rurki termokurczliwe RadioShack 278-1611

Krok 1: Wydrukuj naklejkę na pizzę

Wydrukuj naklejkę na pizzę
Wydrukuj naklejkę na pizzę
Wydrukuj naklejkę na pizzę
Wydrukuj naklejkę na pizzę

Znajdź apetyczne zdjęcie pizzy i wydrukuj je na samoprzylepnym papierze. Użyłem plotera tnącego do winylu, ale standardowa drukarka też by działała.

Krok 2: Rozłóż przycisk Arcade

Rozłóż przycisk zręcznościowy
Rozłóż przycisk zręcznościowy
Rozłóż przycisk zręcznościowy
Rozłóż przycisk zręcznościowy
Rozłóż przycisk zręcznościowy
Rozłóż przycisk zręcznościowy

Do przycisku arkadowego dołączony jest przełącznik umieszczony w jego podstawie. Po prostu przekręć przełącznik w kierunku przeciwnym do ruchu wskazówek zegara i poczuj, jak się odblokował. Wyciągnij przełącznik z wnętrza gwintowanej szyjki przycisku (gwintowanie to rowki widoczne w przedmiotach, takich jak śruby). Do przełącznika będzie podłączona dioda LED. Następnie odkręć mały czarny pierścień z gwintowanej szyjki, aby można było odciągnąć podstawę guzika. Wewnątrz szyi znajdują się dwie białe wypustki. Wciśnij je do środka i w dół, aby odsunąć plastikową część guzika od szyi. Teraz wszystko, co pozostało, to przezroczysta powierzchnia przycisku przymocowana do białej platformy za pomocą zakładek. Użyj małego śrubokręta, aby podważyć przycisk z białej platformy.

Krok 3: naklej naklejkę i ponownie zamontuj przycisk

Zastosuj naklejkę i ponownie zamontuj przycisk
Zastosuj naklejkę i ponownie zamontuj przycisk
Zastosuj naklejkę i ponownie zamontuj przycisk
Zastosuj naklejkę i ponownie zamontuj przycisk
Zastosuj naklejkę i ponownie zamontuj przycisk
Zastosuj naklejkę i ponownie zamontuj przycisk

Wytnij naklejkę i przyklej ją do gładkiej białej platformy. W ten sposób będzie widoczny przez przezroczystą powierzchnię przycisku. Zamontuj przycisk.

Krok 4: Zrób pudełko

Zrób pudełko
Zrób pudełko
Zrób pudełko
Zrób pudełko
Zrób pudełko
Zrób pudełko

Zacząłem od płaskich pudełek po pizzy, które kupiłem w sklepie z kontenerami. Nie krępuj się jednak używać swoich ulubionych pudełek po pizzy! Ta podstawa wymaga trzech pudełek po pizzy ułożonych jeden na drugim, które pomieszczą raczej większy przycisk zręcznościowy i pomieszczą elektronikę. Zacznij od dolnego pudełka. Znajdź i zaznacz środek pudełka linijką i za pomocą kubka narysuj wokół niego okrąg. Wytnij otwór nożem X-Acto. Wytnij otwór na górze dolnego pudełka oraz otwory na górze i na dole środkowego i górnego pudełka. Ułóż pudełka razem i sklej je razem za pomocą pistoletu do klejenia na gorąco. Umieść przycisk na górze, aby upewnić się, że przełącznik pasuje do otworu.

Krok 5: Obwód

Obwód
Obwód

Ten tor jest dość prosty. Po naciśnięciu przycisk arkadowy uruchamia zarówno kod, jak i zapala się dioda wewnątrz przycisku.

Krok 6: Komunikacja z Beagle Bone Black

Ten projekt to moje pierwsze doświadczenie z czarną tablicą BeagleBone. Moim zdaniem BeagleBoard jest dość podobny do płyty RaspberryPi, ale ma więcej pinów gpio. Przeczytaj więcej o BeagleBoard na oficjalnej stronie społeczności i odkryj główne różnice między BeagleBoard a Raspberry Pi tutaj.

Ten projekt wykorzystuje płytę Rev C BeagleBone Black z kartą micro SD 16G z flashowaną środowiskiem Debian. Możesz użyć dowolnej karty micro SD o rozmiarze większym niż 8G. Chociaż nowa tablica BeagleBone Black Board ma wbudowany procesor 4G, środowisko graficzne Debiana wymaga większej przestrzeni dyskowej. Aby wejść w interakcję z płytą, po prostu podłącz ją do komputera za pomocą kabla micro HDMI do USB, który jest dołączony do płyty. „Diody użytkownika” znajdujące się obok portu Ethernet powinny migać w sposób zaprogramowany na naśladowanie ludzkiego pulsu (twórcy beagle są fajni, prawda?), a ikona płyty powinna pojawić się na pulpicie. Jeśli używasz komputera Mac, możesz zaprogramować swoją tablicę na dwa różne sposoby:

METODA 1: TERMINAL

Otwórz terminal i wpisz w wierszu poleceń

ssh [email protected]

Jeśli po wyświetleniu monitu o hasło wpisz:

źródło

** Jeśli to nie zadziała z powodu „obraźliwego klucza ssh” **

Wpisz w wierszu poleceń

rm -f.ssh/znane_hosty

ssh [email protected]

** Jeśli to nadal nie działa **

Wpisz w wierszu poleceń

sudo ssh [email protected]

METODA 2: ŚRODOWISKO DEBIANA

Możesz także vnc do środowiska graficznego płyty i stamtąd go programować. Aby to zrobić, wykonaj poniższe czynności.

  • Pobierz Podłączanie pulpitu zdalnego dla komputerów Mac stąd.
  • Otwórz Podłączanie pulpitu zdalnego i w polu wprowadzania „Komputer” wpisz „192.168.7.2”
  • W wyskakującym okienku zdalnego pulpitu wpisz „root” zarówno jako nazwę użytkownika, jak i hasło.
  • Zobaczysz pulpit Beagle Board.

Krok 7: Kodeks

Ten kod automatycznie loguje się na Twoje osobiste konto GrubHub, przechodzi do menu North Beach Pizza i zamawia dużą pizzę z serem. Wszystko uruchamia się za naciśnięciem przycisku!

Robi to wszystko poprzez interakcję ze stronami internetowymi z Selenium za pomocą bezgłowej przeglądarki internetowej PhantomJS. Co to jest selen? Jest to pakiet oprogramowania, który wykonuje wszystkie kliknięcia na stronach internetowych za Ciebie (pamiętaj, że ten projekt jest dla najbardziej leniwych). Co to jest bezgłowa przeglądarka internetowa? Dowiedz się więcej tutaj, ale w skrócie, jest to przeglądarka internetowa (pomyśl o Safari, Firefox i, ośmielę się powiedzieć, Netscape) bez graficznego interfejsu użytkownika. To znacznie przyspiesza automatyzację nawigacji na stronie (jesteś głodny pizzy, więc chcesz, aby Twoje zamówienie zostało wysłane tak szybko, jak to możliwe).

Rzeczy, które będziesz musiał edytować w kodzie:

  • Dane logowania do GrubHub, w tym nazwa użytkownika i hasło
  • Informacje o karcie kredytowej

Krok 8: Transfer plików z komputera do BBB

Możesz przesyłać pliki takie jak „code.py” z komputera do BBB za pomocą prostych poleceń w środowisku terminala.

Ogólnie rzecz biorąc, sposób przesyłania pliku z komputera do BBB wygląda tak

scp /home/nazwapliku.plik użytkownik@adresIP:/katalog

Rozbijając to:

  • 'scp': Polecenie 'scp' pozwala na kopiowanie plików do, z lub pomiędzy różnymi hostami. Używa ssh do przesyłania danych i zapewnia ten sam uwierzytelnianie i ten sam poziom bezpieczeństwa co ssh.
  • '/home/filename.file': Lokalizacja pliku na twoim komputerze.
  • 'użytkownik@adresIP:/katalog': Informacje logowania BBB oraz miejsce na tablicy, do którego chcesz skopiować plik.

Załóżmy na przykład, że pobrałem i zapisałem 'code.py' na pulpicie mojego komputera. Teraz chcę go przenieść na pulpit BBB. Otworzę terminal mojego komputera i piszę

scp /Użytkownicy/kropka/Desktop/code.py [email protected]:/home/root/Desktop/

Nie kopiuj tego przykładu słowo w słowo, ponieważ ścieżki na twoim komputerze i BBB będą inne niż moje.

Znalazłem te informacje z przydatnej strony tutaj, gdzie można również dowiedzieć się, jak przenosić foldery treści.

Krok 9: Instalowanie odpowiednich bibliotek na BBB

Będziesz musiał zainstalować kilka bibliotek, aby kod działał poprawnie. Aby zainstalować cokolwiek na BBB, musi:

  • Podłącz się do sieci Ethernet
  • Zasilany przez komputer (jeśli komunikujesz się z tablicą przez terminal)
  • Zasilany przez brodawkę ścienną 5V (jeśli podłączasz płytkę do monitora)

Osobiście zasilałem swoją płytę przez komputer i zaprogramowałem ją za pomocą polecenia ssh, które zostało wcześniej opisane w "Komunikacja z Beagle Bone Black".

Będziesz musiał zainstalować:

  • Pyton
  • Biblioteka Pythona GPIO Adafruit
  • Selen
  • Bezgłowa przeglądarka internetowa PhantomJS

Krok 10: Instalacja Pythona i biblioteki I/O Adafruit

Płyta Beaglebone Black Board ma wiele pinów gpio, łącznie 65, co czyni ją wyjątkową wśród wielu minikomputerów i płyt mikroprocesorowych dostępnych na rynku. Dwie biblioteki gpio kompatybilne z pinami gpio Beagle to wbudowana biblioteka BoneScript i biblioteka GPIO Pythona Adafruit. Ponieważ osobiście czuję się bardziej komfortowo z Pythonem, zdecydowałem się na skorzystanie z biblioteki Python GPIO. Biblioteka jest dość prosta do pobrania. Najpierw ssh do Beagle Board i zainstaluj następujące zależności:

sudo ntpdate pool.ntp.org

sudo apt-get aktualizacja sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y

Następnie wpisz następujące polecenie, aby zainstalować bibliotekę python gpio

sudo pip zainstaluj Adafruit_BBIO

Krok 11: Instalacja selenu

Mówiąc najprościej, Selenium automatyzuje przeglądarki internetowe. Ten projekt używa głównie Selenium WebDriver, który akceptuje polecenia, wysyła je do przeglądarki takiej jak Chrome lub Firefox i pobiera wyniki. Ten projekt używa powiązań Pythona Selenium. Mogłem użyć powiązań javascript, ale wolałem trzymać kod w jednym języku, a ponieważ zdecydowałem się użyć Pythona do kontrolowania pinów GPIO BBB, użyłem również Pythona do mojego skrobaka internetowego.

Aby zainstalować selen, ssh do BBB i wpisz w wierszu poleceń

sudo pip zainstaluj selen

Krok 12: Używanie selenu z bezgłową przeglądarką internetową

Aby zainstalować PhantomJS, abyś mógł korzystać z bezgłowej przeglądarki internetowej PhantomJS, ssh do BBB i wpisz w wierszu poleceń

sudo apt-get install build-essential chrpath git-core libssl-dev

libfontconfig1-dev klon git git://github.com/ariya/phantomjs.git cd phantomjs git kasa 1.9./build.sh

Te instrukcje pochodzą ze strony PhantomJS tutaj. Podczas instalacji PhantomJS napotkałem wiele problemów, ale w końcu udało mi się wykonać te polecenia.

Krok 13: Czas na pizzę

Teraz usiądź wygodnie i ciesz się pizzą.

Zalecana: