Table des matières:
- Étape 1: Imprimez l'autocollant de pizza
- Étape 2: démontez le bouton Arcade
- Étape 3: Appliquez l'autocollant et réassemblez le bouton
- Étape 4: Fabriquez la boîte
- Étape 5: Le circuit
- Étape 6: Communiquer avec le Beagle Bone Black
- Étape 7: Le code
- Étape 8: Transfert de fichiers de votre ordinateur vers le BBB
- Étape 9: Installation des bibliothèques appropriées sur le BBB
- Étape 10: Installation de la bibliothèque d'E/S de Python et d'Adafruit
- Étape 11: Installation de Selenium
- Étape 12: Utilisation de Selenium avec un navigateur Web sans tête
- Étape 13: L'heure de la pizza
Vidéo: Bouton Pizza : 13 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Les étudiants de deuxième année, les New-Yorkais, les techniciens de fin de soirée et les vrais paresseux: bienvenue dans votre fantaisie. Présentation de la mise à niveau ultime de la technologie gastronomique, le bouton Pizza. Plus besoin de décrocher le téléphone pour commander une pizza. Appuyez simplement sur ce bouton et patientez pendant qu'il commande une livraison de pizza à votre adresse.
Le bouton Pizza utilise une carte BeagleBone Black (BBB) pour faire le gros du travail dans ce projet. Une pression sur un bouton déclenche la carte pour exécuter un grattoir Web. Le grattoir Web se connecte à votre compte Grub Hub et commande des pizzas à la célèbre pizza de San Francisco North Beach (ce qui signifie qu'actuellement ce bouton ne fonctionne qu'à San Francisco, mais honnêtement, voudriez-vous vraiment être ailleurs ?) Il commande un gros fromage pizza, paie la pizza et la fait livrer directement à votre porte. Ce projet est très simple à réaliser et irrésistible à utiliser !
Les futures mises à jour de ce projet incluent:
- Wifi
- GPS interne
- L'odeur de la pizza ne fait qu'augmenter votre appétit
Liste des pièces
- (x3) boîtes à pizza de votre pizzeria préférée
- (x1) Bouton Arcade Massive avec LED - 100 mm Blanc Adafruit 1187
- (x1) Kit Proto Cape pour le BeagleBone Adafruit 572
- (x1) Résistance 470 ohms 1/4 W RadioShack 271-1317
- (x1) Résistance 1 kohm 1/4 W RadioShack 271-1321
- Papier autocollant photo jet d'encre brillant vinyle ou LC (8,5" x 11") Amazon B000VKV2H4
Matériaux additionnels
- Soudure RadioShack 64-013
- Fil de calibre 22 RadioShack 278-1224
- Tube thermorétractable RadioShack 278-1611
Étape 1: Imprimez l'autocollant de pizza
Trouvez une image alléchante d'une pizza et imprimez-la sur du papier collant. J'ai utilisé un coupe-vinyle, mais une imprimante standard fonctionnerait également.
Étape 2: démontez le bouton Arcade
Le bouton arcade est livré avec un interrupteur verrouillé dans sa base. Tournez simplement l'interrupteur dans le sens inverse des aiguilles d'une montre et sentez-le se déverrouiller. Tirez sur l'interrupteur de l'intérieur du col taraudé du bouton (le taraudage correspond aux rainures que vous voyez dans des objets comme des vis). Il y aura une LED attachée à l'interrupteur. Ensuite, dévissez le petit anneau noir du col taraudé pour que la base du bouton puisse être retirée. A l'intérieur du col se trouvent deux languettes blanches. Poussez-les vers l'intérieur et vers le bas pour éloigner le bouton en plastique du cou. Maintenant, tout ce qui reste est le bouton transparent attaché à la plate-forme blanche avec les onglets. Utilisez un petit tournevis pour retirer le bouton de la plate-forme blanche.
Étape 3: Appliquez l'autocollant et réassemblez le bouton
Découpez l'autocollant et attachez-le à la plate-forme blanche et lisse. De cette façon, il sera visible à travers la face transparente du bouton. Remontez le bouton.
Étape 4: Fabriquez la boîte
J'ai commencé avec des boîtes à pizza plates que j'ai achetées au magasin de conteneurs. Cependant, n'hésitez pas à utiliser vos boîtes à pizza préférées ! Cette base nécessite trois boîtes à pizza empilées les unes sur les autres, qui accueilleront le bouton d'arcade plutôt plus grand et abriteront l'électronique. Commencez par la case du bas. Trouvez et marquez le centre de la boîte avec une règle et utilisez une tasse pour dessiner un cercle autour. Découpez le trou avec un couteau X-Acto. Découpez un trou en haut de la boîte du bas et des trous en haut et en bas des boîtes du milieu et du haut. Empilez les boîtes ensemble et collez-les ensemble avec un pistolet à colle chaude. Placez le bouton sur le dessus pour vous assurer que l'interrupteur passe dans le trou.
Étape 5: Le circuit
Ce circuit est assez simple. Lorsqu'il est enfoncé, le bouton d'arcade déclenche à la fois l'exécution du code et l'allumage de la LED à l'intérieur du bouton.
Étape 6: Communiquer avec le Beagle Bone Black
Ce projet est ma première expérience avec le BeagleBone Black Board. À mon avis, la BeagleBoard est assez similaire à la carte RaspberryPi mais avec plus de broches gpio. En savoir plus sur le BeagleBoard sur son site communautaire officiel et découvrir les principales différences entre le BeagleBoard et Raspberry Pi ici.
Ce projet utilise une carte Rev C BeagleBone Black fonctionnant sur une carte micro SD 16G flashée avec l'environnement Debian. Vous pouvez utiliser n'importe quelle taille de carte micro SD supérieure à 8G. Bien que le nouveau BeagleBone Black Board dispose d'un processeur 4G intégré, l'environnement de bureau de Debian nécessite plus d'espace de stockage. Pour interagir avec la carte, branchez-la simplement sur votre ordinateur avec le câble micro HDMI vers USB fourni avec votre carte. Les « LED utilisateur » situées à côté du port Ethernet devraient clignoter selon un motif programmé pour imiter le pouls humain (les fabricants de beagles sont cool, n'est-ce pas ?) et l'icône de la carte devrait apparaître sur votre bureau. Si vous utilisez un mac, vous pouvez programmer votre carte de deux manières différentes:
MÉTHODE 1: LE TERMINAL
Ouvrez le terminal et tapez dans la ligne de commande
racine [email protected]
Si lorsque vous êtes invité à entrer un mot de passe, tapez
racine
** Si cela ne fonctionne pas à cause d'une "clé ssh incriminée" **
Tapez dans la ligne de commande
rm -f.ssh/known_hosts
racine [email protected]
** Si cela ne fonctionne toujours pas **
Tapez dans la ligne de commande
racine sudo [email protected]
MÉTHODE 2: ENVIRONNEMENT DEBIAN
Vous pouvez également vnc dans l'environnement de bureau de la carte et le programmer à partir de là. Suivez les étapes ci-dessous pour ce faire.
- Téléchargez la connexion Bureau à distance pour mac à partir d'ici.
- Ouvrez la connexion Bureau à distance et dans la zone de saisie pour 'Ordinateur' tapez '192.168.7.2'
- Dans la fenêtre contextuelle du bureau à distance, tapez « root » pour le nom d'utilisateur et le mot de passe.
- Le bureau du Beagle Board vous sera présenté.
Étape 7: Le code
Ce code se connecte automatiquement à votre compte GrubHub personnel, accède au menu de North Beach Pizza et commande une grande pizza au fromage. Tout se déclenche en appuyant sur un bouton !
Il fait tout cela en interagissant avec des pages Web avec Selenium à l'aide d'un navigateur Web sans tête PhantomJS. Qu'est-ce que le sélénium ? C'est un progiciel qui fait tous les clics sur les pages Web pour vous (rappelez-vous, ce projet est pour les paresseux ultimes). Qu'est-ce qu'un navigateur Web sans tête ? Apprenez-en plus ici, mais en bref, c'est un navigateur Web (pensez à Safari, Firefox et, oserais-je dire, Netscape) sans interface utilisateur graphique. Cela rend l'automatisation de la navigation sur les pages Web BEAUCOUP plus rapide (vous avez faim de pizza, vous voulez donc que votre commande soit envoyée le plus rapidement possible).
Choses que vous devrez modifier dans le code:
- Informations de connexion GrubHub, qui incluent votre nom d'utilisateur et votre mot de passe
- Informations de carte de crédit
Étape 8: Transfert de fichiers de votre ordinateur vers le BBB
Vous pouvez transférer des fichiers tels que « code.py » de votre ordinateur vers le BBB avec des commandes simples dans l'environnement du terminal.
De manière générale, la façon de transférer un fichier de votre ordinateur vers le BBB ressemble à
scp /home/filename.file user@IPAddress:/directory
Décomposer cela:
- 'scp': La commande 'scp' permet de copier des fichiers vers, depuis ou entre différents hôtes. Il utilise ssh pour le transfert de données et fournit la même authentification et le même niveau de sécurité que ssh.
- '/home/filename.file': L'emplacement du fichier sur votre ordinateur.
- 'user@IPAddress:/directory': Les informations de connexion du BBB et l'emplacement sur le tableau vers lequel vous souhaitez copier le fichier.
Par exemple, disons que j'ai téléchargé et enregistré 'code.py' sur le bureau de mon ordinateur. Maintenant, je veux le transférer sur le bureau du BBB. Je vais ouvrir le terminal de mon ordinateur et taper
scp /Users/dot/Desktop/code.py [email protected]:/home/root/Desktop/
Ne copiez pas cet exemple mot à mot, car les chemins sur votre ordinateur et BBB seront différents des miens.
J'ai trouvé ces informations sur un site Web utile ici, où vous pouvez également apprendre à transférer des dossiers de contenu.
Étape 9: Installation des bibliothèques appropriées sur le BBB
Vous devrez installer quelques bibliothèques pour que le code fonctionne correctement. Pour installer quoi que ce soit sur votre BBB, il doit:
- Être connecté à Ethernet
- Alimenté par votre ordinateur (si vous communiquez avec votre carte via le terminal)
- Alimenté par une verrue murale 5V (si vous connectez la carte à un moniteur)
J'ai personnellement alimenté ma carte via mon ordinateur et l'ai programmée via la commande ssh, qui a été précédemment décrite dans "Communiquer avec le Beagle Bone Black".
Vous devrez installer:
- Python
- La bibliothèque python GPIO d'Adafruit
- Sélénium
- Navigateur Web sans tête PhantomJS
Étape 10: Installation de la bibliothèque d'E/S de Python et d'Adafruit
Le Beaglebone Black Board a beaucoup de broches gpio, 65 au total, ce qui le rend unique parmi les nombreux mini-ordinateurs et cartes à microprocesseur sur le marché. Deux bibliothèques gpio compatibles avec les broches gpio du Beagle sont la bibliothèque intégrée de BoneScript et la bibliothèque Python GPIO d'Adafruit. Parce que je suis personnellement plus à l'aise avec Python, j'ai décidé d'utiliser la bibliothèque Python GPIO. La bibliothèque est assez simple à télécharger. Tout d'abord, ssh dans la carte Beagle et installez les dépendances suivantes:
sudo ntpdate pool.ntp.org
sudo apt-get update sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y
Tapez ensuite la commande suivante pour installer la bibliothèque python gpio
sudo pip installer Adafruit_BBIO
Étape 11: Installation de Selenium
Selenium, en termes simples, automatise les navigateurs Web. Ce projet utilise principalement le Selenium WebDriver, qui accepte les commandes, les envoie à un navigateur comme Chrome ou Firefox, et récupère les résultats. Ce projet utilise les liaisons python de Selenium. J'aurais pu utiliser des liaisons javascript, mais j'ai préféré garder le code dans un seul langage et depuis que j'ai décidé d'utiliser python pour contrôler les broches GPIO du BBB, j'ai également utilisé python pour mon web scraper.
Pour installer le sélénium, ssh dans le BBB et tapez dans la ligne de commande
sudo pip installer le sélénium
Étape 12: Utilisation de Selenium avec un navigateur Web sans tête
Pour installer PhantomJS afin que vous puissiez utiliser le navigateur Web sans tête PhantomJS, ssh dans le BBB et tapez dans la ligne de commande
sudo apt-get install build-essential chrpath git-core libssl-dev
libfontconfig1-dev git clone git://github.com/ariya/phantomjs.git cd phantomjs git checkout 1.9./build.sh
Ces instructions proviennent du site Web de PhantomJS ici. J'ai rencontré de nombreux problèmes en essayant d'installer PhantomJS, mais j'ai finalement réussi à suivre ces commandes.
Étape 13: L'heure de la pizza
Maintenant, asseyez-vous et dégustez votre pizza.
Conseillé:
Flexlight : une lampe de poche LED à pile bouton sans soudure : 3 étapes (avec photos)
Flexlight : une lampe de poche LED à pile bouton sans soudure : Mon objectif pour ce projet était de créer une simple lampe de poche LED alimentée par batterie avec un minimum de pièces et aucune soudure nécessaire. Vous pouvez imprimer les pièces en quelques heures et les assembler en 10 minutes environ, ce qui le rend idéal pour un arrière (supervisé par un adulte)
Une application d'un bouton extensible avec retour de vibration : 7 étapes (avec photos)
Une application d'un bouton extensible avec retour de vibration : Dans ce tutoriel, nous allons d'abord vous montrer comment utiliser un Arduino Uno pour contrôler un moteur de vibration via un bouton étendu. La plupart des didacticiels sur les boutons-poussoirs impliquent le bouton de la maquette physique, alors que dans ce didacticiel, le bouton a été
Microcontrôleur AVR. Basculez les LED à l'aide d'un interrupteur à bouton-poussoir. Anti-rebond de bouton poussoir. : 4 étapes
Microcontrôleur AVR. Basculez les LED à l'aide d'un interrupteur à bouton-poussoir. Anti-rebond de bouton-poussoir. : Dans cette section, nous allons apprendre comment créer un code C de programme pour ATMega328PU pour basculer l'état des trois LED en fonction de l'entrée d'un interrupteur à bouton. En outre, nous avons exploré une solution au problème de « Switch Bounce ». Comme d'habitude, nous allons
Télécommande : ESP8266 avec pile bouton : 5 étapes (avec photos)
Télécommande : ESP8266 avec pile bouton : Le gros problème de l'utilisation des ESP est la consommation d'énergie lorsque le Wifi "monte", environ 100-200mA, avec un pic jusqu'à 300mA. Les piles boutons normales délivrent quelques mA, avec une pointe jusqu'à 20-40 mA. Mais pour les ESP, la tension s'effondrera. Nous avons besoin de "un peu d'aide
Mini joystick avec bouton Fire : 9 étapes (avec photos)
Mini Joystick With Fire Button : Il s'agit d'un joystick miniature composé de quelques commutateurs et d'un stylo à bille. Un bouton de tir facultatif peut être ajouté si votre stylet est du type clicker. L'action est très fluide et réactive. Un peu d'histoire suit alors n'hésitez pas à l'ignorer et à obtenir r