Arduino - Jogo Car Race Brick baseado na web
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Sobre este projeto
Demonstração
Este jogo clássico pode fazer com que alguns de nós sintam nostalgia da infância. O jogo é simples, tente evitar bater nos carros adversários e obtenha o máximo de pontos possível. O carro pode alternar entre 5 pistas e há 15 velocidades diferentes. À medida que a velocidade aumenta, os carros do oponente correrão mais rápido, tornando o jogo mais difícil.
Fiação
- Empilhe o escudo PHPoC no Arduino.
- Conecte os pinos GND, VCC e SIG do sensor de ângulo rotativo ao GND, 5V e A0 do Arduino, respectivamente.
Fluxo de dados
Arduino ---> PHPoC Shield ---> Navegador da Web
O usuário interage com o sensor de ângulo rotativo. O valor do sinal de entrada do sensor de ângulo rotativo é usado para mudar a posição do carro.
O Arduino lê o valor do sensor de ângulo rotativo. Os valores de entrada do ADC são divididos em 5 níveis diferentes. Alternar entre níveis significa mudar de faixa. Simplesmente, se o sinal de entrada for alterado para outro nível, o Arduino enviará o nível atualizado para o escudo PHPoC.
Ao receber o valor, o PHPoC WiFi Shield o envia para o Web Browser via Websocket. Então, a função JavaScript atualizará a posição (pista) do carro. O programa JavaScript atualizará continuamente a posição dos oponentes e a velocidade do jogo.
Coisas para fazer
- Configurar conexão WiFi para escudo PHPoC (SSID e senha)
- Carregue uma nova IU para o escudo PHPoC
- Carregue o código do Arduino
Configurar conexão WiFi para PHPoC Shield
Veja esta instrução.
Carregar nova interface de usuário da web para PHPoC Shield
- Baixe o código-fonte do PHPoC remote_racing_game.php.
- Faça o upload para o escudo PHPoC usando o depurador PHPoC de acordo com esta instrução.
Carregar o código do Arduino
- Instale a biblioteca PHPoC para Arduino (consulte as instruções).
- Carregue o código do Arduino para o Arduino
E finalmente
- Clique no botão serial no Arduino IDE para obter o endereço IP.
- Abra o navegador da web, digite
http://
relace_ip_address_aqui
/remote_racing_game.php
- Clique no botão conectar e divirta-se com o jogo.
Saiba mais sobre potenciômetro no Arduino - Tutorial do potenciômetro
Referências de função
- pinMode ()
- analogRead ()
- digitalWrite ()
- Serial.begin ()
- Serial.println ()
- para loop
- while loop
- se mais
- loop ()
- configuração ()
Código
- código Arduino
- remote_racing_game.php
Código do Arduino Arduino
#include "SPI.h" #include "Phpoc.h" servidor PhpocServer (80); int adcPin =A0; float adcVal =0; // variável para armazenar o valor proveniente do sensorint lastPos =-1; float adcMin =512-2,5 * 100; void setup () {Serial.begin (9600); while (! Serial); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET); server.beginWebSocket ("jogo"); Serial.print ("endereço do servidor WebSocket:"); Serial.println (Phpoc.localIP ()); } void loop () {// quando o cliente enviar o primeiro byte, diga olá:PhpocClient client =server.available (); if (cliente) {adcVal =0; para (int i =0; i <50; i ++) adcVal + =analogRead (adcPin); adcVal / =50; pos int =(int) ((adcVal-adcMin) / 100); if (pos <0) {pos =0; } else if (pos> 4) pos =4; if (lastPos! =pos) {String txtMsg =String (pos) + "\ r \ n"; char buf [txtMsg.length ()]; txtMsg.toCharArray (buf, txtMsg.length ()); server.write (buf, txtMsg.length ()); Serial.println (txtMsg); lastPos =pos; atraso Microssegundos (50); }}}
remote_racing_game.php PHP
Código PHPoC ShieldArduino - Jogo baseado na Web corpo {alinhamento do texto:centro; tamanho da fonte:15pt; família da fonte:Arial, Helvetica, sans-serif;} h1 {peso da fonte:negrito; tamanho da fonte:25pt; } h2 {tamanho da fonte:negrito; tamanho da fonte:15pt; } botão {tamanho da fonte:negrito; tamanho da fonte:15pt; }
Arduino - corrida de carros Jogo de tijolos
WebSocket: nulo
Processo de manufatura