Inhoudsopgave:
- Stap 1: Print de pizzasticker
- Stap 2: Haal de Arcade-knop uit elkaar
- Stap 3: Breng de sticker aan en zet de knop weer in elkaar
- Stap 4: Maak de doos
- Stap 5: Het circuit
- Stap 6: Communiceren met de Beagle Bone Black
- Stap 7: De code
- Stap 8: Bestandsoverdracht van uw computer naar de BBB
- Stap 9: De juiste bibliotheken installeren op de BBB
- Stap 10: De I/O-bibliotheek van Python en Adafruit installeren
- Stap 11: Selenium installeren
- Stap 12: Selenium gebruiken met een headless webbrowser
- Stap 13: Pizzatijd
Video: Pizzaknop - Ajarnpa 13 stappen (met afbeeldingen)
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Tweedejaarsstudenten, New Yorkers, nachtelijke techneuten en de echt luie: welkom in je fantasie. Introductie van de ultieme upgrade in gastronomische technologie, de Pizza Button. U hoeft de telefoon niet meer op te nemen om pizza te bestellen. Druk gewoon op deze knop en wacht terwijl hij pizza bezorgt op jouw adres.
De Pizza Button gebruikt een BeagleBone Black (BBB) bord om het zware werk in dit project te doen. Een druk op de knop activeert het bord om een webschraper uit te voeren. De webschraper logt in op je Grub Hub-account en bestelt pizza bij de beroemde San Francisco North Beach Pizza (wat betekent dat deze knop momenteel alleen in San Francisco werkt, maar eerlijk gezegd, zou je echt ergens anders willen zijn?) Hij bestelt een grote kaas pizza, betaalt de pizza en laat hem aan je deur bezorgen. Dit project is heel eenvoudig te maken en onweerstaanbaar in gebruik!
Toekomstige updates van dit project zijn onder meer:
- Wifi
- Interne GPS
- Pizzageur om je eetlust alleen maar te vergroten
Onderdelen lijst
- (x3) pizzadozen van je favoriete pizzeria
- (x1) Massieve Arcade-knop met LED - 100 mm Wit Adafruit 1187
- (x1) Proto Cape Kit voor de BeagleBone Adafruit 572
- (x1) 470 ohm 1/4 W weerstand RadioShack 271-1317
- (x1) 1 k-ohm 1/4 W weerstand RadioShack 271-1321
- vinyl of LC glanzend inkjet fotostickerpapier (8,5" x 11") Amazon B000VKV2H4
Aanvullende materialen
- Soldeer RadioShack 64-013
- 22 Gauge Draad RadioShack 278-1224
- Krimpkous RadioShack 278-1611
Stap 1: Print de pizzasticker
Zoek een verrukkelijke foto van een pizza en print deze uit op plakpapier. Ik gebruikte een vinylsnijder, maar een standaardprinter zou ook werken.
Stap 2: Haal de Arcade-knop uit elkaar
De arcade-knop wordt geleverd met een schakelaar die in de basis is vergrendeld. Draai de schakelaar gewoon tegen de klok in en voel hem ontgrendelen. Trek de schakelaar uit de binnenkant van de getapte nek van de knop (tikken zijn de groeven die je ziet in voorwerpen zoals schroeven). Er zal een LED aan de schakelaar worden bevestigd. Schroef vervolgens de kleine zwarte ring van de getapte nek zodat de basis van de knop kan worden weggetrokken. In de nek zitten twee witte lipjes. Duw ze naar binnen en naar beneden om de plastic knop weg van de nek te duwen. Nu rest alleen nog het doorzichtige knopvlak dat met de lipjes aan het witte platform is bevestigd. Gebruik een kleine schroevendraaier om de knop van het witte platform los te wrikken.
Stap 3: Breng de sticker aan en zet de knop weer in elkaar
Knip de sticker uit en plak deze op het gladde witte plateau. Op deze manier is het zichtbaar door het duidelijke knopvlak. Zet de knop weer in elkaar.
Stap 4: Maak de doos
Ik begon met platte pizzadozen die ik in de containerwinkel kocht. Voel je echter vrij om je favoriete pizzadozen te gebruiken! Deze basis vereist drie pizzadozen die op elkaar zijn gestapeld, die plaats bieden aan de vrij grotere arcade-knop en de elektronica huisvesten. Begin met het onderste vak. Zoek en markeer het midden van de doos met een liniaal en gebruik een kopje om er een cirkel omheen te tekenen. Snijd het gat uit met een X-Acto-mes. Snijd een gat aan de bovenkant van de onderste doos en gaten aan zowel de boven- als onderkant van de middelste en bovenste dozen. Stapel de dozen op elkaar en lijm ze aan elkaar met een heet lijmpistool. Plaats de knop op de bovenkant om ervoor te zorgen dat de schakelaar door het gat past.
Stap 5: Het circuit
Dit circuit is redelijk rechttoe rechtaan. Wanneer ingedrukt, activeert de arcade-knop zowel de code om uit te voeren als de LED in de knop om op te lichten.
Stap 6: Communiceren met de Beagle Bone Black
Dit project is mijn eerste ervaring met het BeagleBone Black Board. Naar mijn mening lijkt het BeagleBoard veel op het RaspberryPi-bord, maar met meer gpi-pinnen. Lees meer over het BeagleBoard op de officiële communitysite en ontdek hier de belangrijkste verschillen tussen het BeagleBoard en Raspberry Pi.
Dit project maakt gebruik van een Rev C BeagleBone Black-bord dat loopt van een 16G micro SD-kaart die is geflitst met de Debian-omgeving. U kunt elk formaat micro SD-kaart groter dan 8G gebruiken. Hoewel het nieuwe BeagleBone Black Board een ingebouwde 4G-processor heeft, vereist de desktopomgeving van Debian meer opslagruimte. Om met het bord te communiceren, sluit u het eenvoudig aan op uw computer met de micro-HDMI-naar-USB-kabel die bij uw bord wordt geleverd. De 'gebruikerslampjes' naast de ethernetpoort moeten knipperen in een patroon dat is geprogrammeerd om de menselijke hartslag na te bootsen (de beaglemakers zijn cool, toch?) en het pictogram van het bord moet op uw bureaublad verschijnen. Als je een mac gebruikt, kun je je bord op twee verschillende manieren programmeren:
METHODE 1: DE TERMINAL
Open de terminal en typ in de opdrachtregel
Als u om een wachtwoord wordt gevraagd, typt u
wortel
** Als dit niet werkt vanwege een "beledigende ssh-sleutel" **
Typ in de opdrachtregel
rm -f.ssh/bekende_hosts
** Als dit nog steeds niet werkt **
Typ in de opdrachtregel
sudo ssh [email protected]
METHODE 2: DEBISCHE OMGEVING
Je kunt ook vnc in de desktopomgeving van het bord plaatsen en het van daaruit programmeren. Volg hiervoor de onderstaande stappen.
- Download Remote Desktop Connection voor mac hier.
- Open Remote Desktop Connection en typ in het invoerveld voor 'Computer' '192.168.7.2'
- Typ in de externe desktop-pop-up 'root' voor zowel de gebruikersnaam als het wachtwoord.
- U krijgt het bureaublad van het Beagle Board te zien.
Stap 7: De code
Deze code meldt zich automatisch aan bij uw persoonlijke GrubHub-account, navigeert naar het menu voor North Beach Pizza en bestelt een grote kaaspizza. Het wordt allemaal geactiveerd door een druk op de knop!
Het doet dit allemaal door te communiceren met webpagina's met Selenium met behulp van een headless webbrowser PhantomJS. Wat is selenium? Het is een softwarepakket dat al het doorklikken van webpagina's voor je doet (onthoud, dit project is voor de ultieme lui die er zijn). Wat is een headless webbrowser? Lees hier meer, maar kortom, het is een webbrowser (denk aan Safari, Firefox en, ik durf te zeggen, Netscape) zonder grafische gebruikersinterface. Dit maakt het automatiseren van webpagina-navigatie VEEL sneller (je hebt trek in pizza, dus je wilt dat je bestelling zo snel mogelijk wordt verzonden).
Dingen die u in de code moet bewerken:
- GrubHub-inloggegevens, waaronder uw gebruikersnaam en wachtwoord
- Creditcardgegevens
Stap 8: Bestandsoverdracht van uw computer naar de BBB
U kunt bestanden zoals 'code.py' van uw computer naar de BBB overbrengen met eenvoudige commando's in de terminalomgeving.
Over het algemeen ziet de manier om een bestand van uw computer naar de BBB over te brengen er als volgt uit:
scp /home/bestandsnaam.bestand gebruiker@IPAddress:/directory
Dit opsplitsen:
- 'scp': Met het commando 'scp' kunnen bestanden worden gekopieerd naar, van of tussen verschillende hosts. Het gebruikt ssh voor gegevensoverdracht en biedt dezelfde authenticatie en hetzelfde beveiligingsniveau als ssh.
- '/home/filename.file': De bestandslocatie op uw computer.
- 'user@IPAddress:/directory': De login-informatie van de BBB en waar op het bord je het bestand naartoe wilt kopiëren.
Laten we bijvoorbeeld zeggen dat ik 'code.py' heb gedownload en opgeslagen op het bureaublad van mijn computer. Nu wil ik het overzetten naar het bureaublad van de BBB. Ik zal de terminal van mijn computer openen en typen
scp /Users/dot/Desktop/code.py [email protected]:/home/root/Desktop/
Kopieer dit voorbeeld niet woord voor woord, aangezien de paden op uw computer en BBB anders zullen zijn dan die van mij.
Ik vond deze informatie van een nuttige website hier, waar u ook kunt leren hoe u mappen met inhoud kunt overbrengen.
Stap 9: De juiste bibliotheken installeren op de BBB
U moet een paar bibliotheken installeren om de code correct te laten werken. Om iets op uw BBB te installeren, moet het:
- Worden aangesloten op ethernet
- Aangedreven door uw computer (als u via de terminal met uw bord communiceert)
- Aangedreven door een 5V-muurwrat (als u het bord op een monitor aansluit)
Ik heb persoonlijk mijn bord via mijn computer gevoed en geprogrammeerd via het ssh-commando, dat eerder werd beschreven in "Communiceren met de Beagle Bone Black".
U moet installeren:
- Python
- Adafruit's GPIO python-bibliotheek
- Selenium
- PhantomJS headless webbrowser
Stap 10: De I/O-bibliotheek van Python en Adafruit installeren
Het Beaglebone Black Board heeft veel gpi-pinnen, 65 in totaal, waardoor het uniek is tussen de vele minicomputers en microprocessorborden op de markt. Twee gpio-bibliotheken die compatibel zijn met de gpio-pinnen van de Beagle zijn de ingebouwde bibliotheek van BoneScript en de Python GPIO-bibliotheek van Adafruit. Omdat ik persoonlijk meer op mijn gemak ben met Python, heb ik besloten om de Python GPIO-bibliotheek te gebruiken. De bibliotheek is vrij eenvoudig te downloaden. SSH eerst naar het Beagle Board en installeer de volgende afhankelijkheden:
sudo ntpdate pool.ntp.org
sudo apt-get update sudo apt-get install build-essentiële python-dev python-setuptools python-pip python-smbus -y
Typ vervolgens de volgende opdracht om de python gpio-bibliotheek te installeren:
sudo pip installeren Adafruit_BBIO
Stap 11: Selenium installeren
Selenium, simpel gezegd, automatiseert webbrowsers. Wat dit project voornamelijk gebruikt, is de Selenium WebDriver, die opdrachten accepteert, ze naar een browser zoals Chrome of Firefox stuurt en resultaten ophaalt. Dit project maakt gebruik van Selenium's python bindingen. Ik had javascript-bindingen kunnen gebruiken, maar ik gaf er de voorkeur aan de code in één taal te houden en aangezien ik besloot python te gebruiken om de GPIO-pinnen van de BBB te besturen, gebruikte ik ook python voor mijn webschraper.
Om selenium te installeren, ssh in de BBB en typ in de opdrachtregel
sudo pip installeer selenium
Stap 12: Selenium gebruiken met een headless webbrowser
Om PhantomJS te installeren zodat u de PhantomJS headless webbrowser kunt gebruiken, ssh in de BBB en typ in de opdrachtregel
sudo apt-get install build-essentiële chrpath git-core libssl-dev
libfontconfig1-dev git clone git://github.com/ariya/phantomjs.git cd phantomjs git checkout 1.9./build.sh
Deze instructies zijn afkomstig van de PhantomJS-website hier. Ik kwam veel problemen tegen toen ik PhantomJS probeerde te installeren, maar het lukte uiteindelijk om deze commando's te volgen.
Stap 13: Pizzatijd
Leun nu achterover en geniet van je pizza.
Aanbevolen:
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Een computer demonteren met eenvoudige stappen en afbeeldingen: 13 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Een computer demonteren met eenvoudige stappen en afbeeldingen: dit is een instructie over het demonteren van een pc. De meeste basiscomponenten zijn modulair en gemakkelijk te verwijderen. Wel is het belangrijk dat je er goed over georganiseerd bent. Dit zal helpen voorkomen dat u onderdelen kwijtraakt, en ook bij het maken van de hermontage e
PCB-ontwerp met eenvoudige en gemakkelijke stappen: 30 stappen (met afbeeldingen)
PCB-ontwerp met eenvoudige en gemakkelijke stappen: HELLO VRIENDEN Het is een zeer nuttige en gemakkelijke tutorial voor diegenen die PCB-ontwerp willen leren, laten we beginnen
Een video met gesplitst scherm maken in vier stappen: 4 stappen (met afbeeldingen)
Een video met gesplitst scherm maken in vier stappen: we zien vaak dezelfde persoon twee keer in een scène in een tv-toneelstuk. En voor zover we weten heeft de acteur geen tweelingbroer. We hebben ook gezien dat er twee zangvideo's op één scherm worden gezet om hun zangkunsten te vergelijken. Dit is de kracht van spl
Uw afbeeldingen opslaan voor uw taak: 4 stappen (met afbeeldingen)
Uw afbeeldingen opslaan voor uw taak: 1. Open een nieuw Google-document en gebruik deze pagina om uw afbeeldingen te beveiligen.2. Gebruik ctrl (control) en de "c" sleutel om te kopiëren.3. Gebruik ctrl (control) en de "v" sleutel om te plakken