Índice:

Botão Pizza: 13 etapas (com imagens)
Botão Pizza: 13 etapas (com imagens)

Vídeo: Botão Pizza: 13 etapas (com imagens)

Vídeo: Botão Pizza: 13 etapas (com imagens)
Vídeo: BURLANDO SELFIE SUMUP 2024, Novembro
Anonim
Botão Pizza
Botão Pizza
Botão Pizza
Botão Pizza
Botão Pizza
Botão Pizza

Homens universitários do segundo ano, nova-iorquinos, técnicos da madrugada e realmente preguiçosos: bem-vindos à sua fantasia. Apresentando a última atualização em tecnologia gastronômica, o Pizza Button. Não há mais necessidade de pegar o telefone para pedir pizza. Basta pressionar este botão e aguardar enquanto ele faz o pedido de entrega de pizza no seu endereço.

O Pizza Button usa uma placa BeagleBone Black (BBB) para fazer o trabalho pesado neste projeto. Um pressionamento de botão aciona a placa para executar um raspador de teia. O web scraper faz login em sua conta do Grub Hub e pede pizza da famosa San Francisco North Beach Pizza (o que significa que atualmente esse botão só funciona em San Francisco, mas, honestamente, você realmente gostaria de estar em outro lugar?) Ele pede um queijo grande pizza, paga pela pizza e faz com que seja entregue na sua porta. Este projeto é muito simples de fazer e irresistível de usar!

As atualizações futuras para este projeto incluem:

  • Wi-fi
  • GPS interno
  • Cheiro de pizza apenas para aumentar seu apetite

Lista de Peças

  • (x3) caixas de pizza da sua pizzaria favorita
  • (x1) Botão Arcade maciço com LED - 100 mm Branco Adafruit 1187
  • (x1) Kit de capa protetora para o BeagleBone Adafruit 572
  • (x1) 470 ohm 1/4 W resistor RadioShack 271-1317
  • (x1) 1 k-ohm 1/4 W resistor RadioShack 271-1321
  • vinil ou papel autocolante fotográfico brilhante LC para jato de tinta (8,5 "x 11") Amazon B000VKV2H4

Materiais adicionais

  • Solder RadioShack 64-013
  • 22 Gauge Wire RadioShack 278-1224
  • Tubulação termorretrátil RadioShack 278-1611

Etapa 1: imprima o adesivo da pizza

Imprima o adesivo da pizza
Imprima o adesivo da pizza
Imprima o adesivo da pizza
Imprima o adesivo da pizza

Encontre uma imagem de dar água na boca de uma pizza e imprima-a em papel adesivo. Usei um cortador de vinil, mas uma impressora padrão também funcionaria.

Etapa 2: desmontar o botão Arcade

Desmontar o botão Arcade
Desmontar o botão Arcade
Desmontar o botão Arcade
Desmontar o botão Arcade
Desmontar o botão Arcade
Desmontar o botão Arcade

O botão de arcade vem com um interruptor travado em sua base. Simplesmente gire o interruptor no sentido anti-horário e sinta-o destravar. Puxe a chave para fora de dentro do pescoço rosqueado do botão (rosqueamento são as ranhuras que você vê em objetos como parafusos). Haverá um LED conectado ao switch. Em seguida, desparafuse o pequeno anel preto do pescoço virado para que a base do botão possa ser puxada. Dentro do pescoço existem duas abas brancas. Empurre-os para dentro e para baixo para empurrar o botão de plástico para longe do pescoço. Agora tudo o que resta é a face do botão transparente anexada à plataforma branca com as abas. Use uma pequena chave de fenda para soltar o botão da plataforma branca.

Etapa 3: aplique o adesivo e remonte o botão

Aplique o adesivo e remonte o botão
Aplique o adesivo e remonte o botão
Aplique o adesivo e remonte o botão
Aplique o adesivo e remonte o botão
Aplique o adesivo e remonte o botão
Aplique o adesivo e remonte o botão

Corte o adesivo e fixe-o na plataforma branca e lisa. Dessa forma, ele será visto através da face do botão transparente. Remonte o botão.

Etapa 4: faça a caixa

Faça a Caixa
Faça a Caixa
Faça a Caixa
Faça a Caixa
Faça a Caixa
Faça a Caixa

Comecei com caixas de pizza rasas que comprei na loja de contêineres. No entanto, fique à vontade para usar suas caixas de pizza favoritas! Esta base requer três caixas de pizza empilhadas uma em cima da outra, o que acomodará o botão de arcada um tanto maior e alojará os eletrônicos. Comece com a caixa inferior. Encontre e marque o centro da caixa com uma régua e use uma xícara para desenhar um círculo ao redor dela. Corte o buraco com uma faca X-Acto. Faça um orifício na parte superior da caixa inferior e orifícios nas partes superior e inferior das caixas do meio e superior. Empilhe as caixas e cole-as com uma pistola de cola quente. Coloque o botão na parte superior para garantir que a chave se encaixe no orifício.

Etapa 5: o circuito

O circuito
O circuito

Este circuito é bastante simples. Quando pressionado, o botão de arcade aciona o código para ser executado e o LED dentro do botão para acender.

Etapa 6: comunicação com o Beagle Bone Black

Este projeto é minha primeira experiência com o BeagleBone Black Board. Na minha opinião, a BeagleBoard é bastante semelhante à placa RaspberryPi, mas com mais pinos gpio. Leia mais sobre o BeagleBoard em seu site oficial da comunidade e descubra as principais diferenças entre o BeagleBoard e o Raspberry Pi aqui.

Este projeto usa uma placa Rev C BeagleBone Black rodando em um cartão micro SD de 16G com o ambiente Debian. Você pode usar um cartão micro SD de qualquer tamanho maior que 8G. Embora o novo BeagleBone Black Board tenha um processador 4G onboard, o ambiente de desktop do Debian requer mais espaço de armazenamento. Para interagir com a placa, basta conectá-lo ao computador com o cabo micro HDMI para USB que vem com a placa. Os 'leds do usuário' localizados próximos à porta Ethernet devem piscar em um padrão programado para imitar o pulso humano (os fabricantes de beagle são legais, certo?) E o ícone da placa deve aparecer na sua área de trabalho. Se estiver usando um mac, você pode programar sua placa de duas maneiras diferentes:

MÉTODO 1: O TERMINAL

Abra o terminal e digite na linha de comando

ssh [email protected]

Se quando for solicitada uma senha, digite

raiz

** Se isso não funcionar por causa de uma "chave ssh ofensiva" **

Digite na linha de comando

rm -f.ssh / known_hosts

ssh [email protected]

** Se isso ainda não funcionar **

Digite na linha de comando

sudo ssh [email protected]

MÉTODO 2: AMBIENTE DEBIANO

Você também pode acessar o ambiente de área de trabalho da placa e programá-lo a partir daí. Siga as etapas abaixo para fazer isso.

  • Baixe o Remote Desktop Connection para mac aqui.
  • Abra a Conexão de Área de Trabalho Remota e na caixa de entrada para 'Computador' digite '192.168.7.2'
  • No pop-up da área de trabalho remota, digite 'root' para o nome de usuário e a senha.
  • Você verá a área de trabalho da Beagle Board.

Etapa 7: O Código

Este código faz login automaticamente em sua conta pessoal do GrubHub, navega até o menu de North Beach Pizza e pede uma pizza grande de queijo. Tudo é acionado com o apertar de um botão!

Ele faz tudo isso interagindo com páginas da web com o Selenium usando um navegador sem interface PhantomJS. O que é selênio? É um pacote de software que faz todos os cliques em páginas da web para você (lembre-se, este projeto é para os preguiçosos mais recentes). O que é um navegador sem cabeça? Saiba mais aqui, mas em resumo, é um navegador da web (pense no Safari, Firefox e, ouso dizer, no Netscape) sem uma interface gráfica de usuário. Isso torna a navegação automatizada na página da web MUITO mais rápida (você está com fome de pizza, então quer que seu pedido seja enviado o mais rápido possível).

Coisas que você terá que editar no código:

  • Informações de login do GrubHub, que incluem seu nome de usuário e senha
  • Informação do cartão de crédito

Etapa 8: transferência de arquivos de seu computador para o BBB

Você pode transferir arquivos como 'code.py' do seu computador para o BBB com comandos simples no ambiente do terminal.

Genericamente, a maneira de transferir um arquivo do seu computador para o BBB parece

scp /home/filename.file user @ IPAddress: / diretório

Quebrando isso:

  • 'scp': O comando 'scp' permite que os arquivos sejam copiados de, para ou entre hosts diferentes. Ele usa ssh para transferência de dados e fornece a mesma autenticação e o mesmo nível de segurança que o ssh.
  • '/home/filename.file': A localização do arquivo em seu computador.
  • 'user @ IPAddress: / directory': As informações de login do BBB e para onde você deseja copiar o arquivo no fórum.

Por exemplo, digamos que eu baixei e salvei 'code.py' na área de trabalho do meu computador. Agora quero transferi-lo para a área de trabalho do BBB. Vou abrir o terminal do meu computador e digitar

scp /Users/dot/Desktop/code.py [email protected]: / home / root / Desktop /

Não copie este exemplo palavra por palavra, pois os caminhos no seu computador e no BBB serão diferentes dos meus.

Encontrei essas informações em um site útil aqui, onde você também pode aprender como transferir pastas de conteúdo.

Etapa 9: Instalando as bibliotecas adequadas no BBB

Você terá que instalar algumas bibliotecas para que o código funcione corretamente. Para instalar qualquer coisa em seu BBB, é necessário:

  • Ser conectado a ethernet
  • Alimentado por seu computador (se você estiver se comunicando com sua placa através do terminal)
  • Alimentado por uma verruga de parede de 5 V (se você estiver conectando a placa a um monitor)

Eu pessoalmente liguei minha placa através do meu computador e programei através do comando ssh, que foi descrito anteriormente em "Comunicando-se com o Beagle Bone Black".

Você terá que instalar:

  • Pitão
  • Biblioteca python GPIO da Adafruit
  • Selênio
  • Navegador PhantomJS sem cabeça

Etapa 10: Instalando Python e a biblioteca de E / S da Adafruit

O Beaglebone Black Board tem muitos pinos gpio, 65 no total, tornando-o único entre os muitos minicomputadores e placas de microprocessador no mercado. Duas bibliotecas gpio compatíveis com os pinos gpio do Beagle são a biblioteca integrada do BoneScript e a biblioteca Python GPIO da Adafruit. Como, pessoalmente, estou mais confortável com Python, decidi usar a biblioteca Python GPIO. A biblioteca é bastante simples de baixar. Primeiro, faça SSH na Beagle Board e instale as seguintes dependências:

sudo ntpdate pool.ntp.org

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

Em seguida, digite o seguinte comando para instalar a biblioteca python gpio

sudo pip install Adafruit_BBIO

Etapa 11: Instalando o Selenium

O Selenium, simplesmente, automatiza os navegadores da web. O que este projeto usa principalmente é o Selenium WebDriver, que aceita comandos, os envia para um navegador como Chrome ou Firefox e recupera os resultados. Este projeto usa ligações python do Selenium. Eu poderia ter usado ligações de javascript, mas preferi manter o código em uma única linguagem e, como decidi usar python para controlar os pinos GPIO do BBB, também usei python para meu web scraper.

Para instalar o selênio, faça ssh no BBB e digite na linha de comando

sudo pip instalar selênio

Etapa 12: usando o selênio com um navegador sem cabeça

Para instalar o PhantomJS para que você possa usar o navegador web sem cabeça PhantomJS, faça ssh no BBB e digite na linha de comando

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

Essas instruções vieram do site do PhantomJS aqui. Tive muitos problemas ao tentar instalar o PhantomJS, mas finalmente consegui seguir esses comandos.

Etapa 13: hora da pizza

Agora sente-se e desfrute da sua pizza.

Recomendado: