Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Arduino - Jogo para dois jogadores baseado na web

Componentes e suprimentos

Arduino UNO
× 1
PHPoC WiFi Shield para Arduino
× 1
Botão
× 4
Breadboard (genérico)
× 1
Resistor 10k ohm
× 1
Tubo termorretrátil
× 1

Sobre este projeto


Se você é um iniciante, pode aprender sobre o botão em Arduino - Tutorial de botões.

Fiz um projeto semelhante usando um hardware mais simples (apenas PHPoC) aqui.





Demonstração





Fluxo de dados


Arduino ---> PHPoC WiFi Shield ---> Navegador da Web

Há duas pessoas jogando. cada pessoa usa dois botões para controlar a direção dos goleiros. Portanto, precisamos de quatro botões.

O Arduino lê os estados de quatro botões. Se algum deles for alterado, o Arduino irá recalcular a direção do movimento do goleiro e enviar os valores de direção para PHPoC WiFi Shield. Ao receber os valores, o PHPoC WiFi Shield envia para o Web Browser via websocket. A função JavaScript atualizará a direção do movimento dos goleiros.

O programa JavaScript atualiza continuamente a posição da bola, goleiros e obstáculos com base em sua direção e também verifica a colisão.

A direção dos goleiros é alterada com base no estado dos botões.

Observe que: O escudo PHPoC tem um programa embutido para passar dados do Arduino para o navegador da web. Portanto, não precisamos nos preocupar com isso.





O que precisamos fazer

  • Definir informações de WiFi para escudo PHPoC (SSID e senha)
  • Carregue uma nova IU para o escudo PHPoC
  • Escreva o código do Arduino

Definindo informações de WiFi para PHPoC Shield

Veja esta instrução.

Carregar nova IU da web para PHPoC Shield
  • Baixe o código-fonte do PHPoC remote_game.php (na seção de código).
  • Faça o upload para o escudo PHPoC usando o depurador PHPoC de acordo com esta instrução.

Ao receber uma solicitação HTTP do navegador da web, o PHPoC Shield interpreta o script PHP neste arquivo e, em seguida, envia o arquivo interpretado para o navegador da web. O arquivo interpretado (contém código HTML, CSS e JavaScript) fornece IU (Interface do Usuário), atualiza a posição da bola, goleiros e obstáculos com base em sua direção e também verifica a colisão. Ele também recebe a direção de movimento dos goleiros do websocket.

Escreva o código do Arduino
  • Instale a biblioteca PHPoC para Arduino (consulte as instruções).
  • Carregue o código do Arduino (na seção de código) para o Arduino









Teste

  • Clique no botão serial no Arduino IDE para ver o endereço IP.
  • Abra o navegador da web, digite http:// replace_ip_address /remote_game.php
  • Clique no botão conectar e teste-o









O melhor Arduino Starter Kit para iniciantes


Veja o melhor kit Arduino para iniciantes







Referências de função

  • pinMode ()
  • digitalRead ()
  • Serial.begin ()
  • Serial.print ()
  • Serial.println ()

Código

  • Código Arduino
  • Código PHPoC Shield (remote_game.php)
Código Arduino Arduino
 #include "SPI.h" #include "Phpoc.h" Servidor PhpocServer (80); booleano jáConnected =false; 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 ()); pinMode (6, INPUT); pinMode (7, INPUT); pinMode (8, INPUT); pinMode (9, INPUT); } valor int_6 =leitura digital (6); valor int_7 =leitura digital (7); valor int_8 =leitura digital (8); valor int_9 =leitura digital (9); int pre_dir_1 =0; int pre_dir_2 =0; int dir_1 =0; int dir_2 =0; void loop () {// quando o cliente enviar o primeiro byte, diga olá:PhpocClient client =server.available (); if (cliente) {value_6 =digitalRead (6); valor_7 =digitalRead (7); valor_8 =digitalRead (8); valor_9 =digitalRead (9); dir_1 =valor_7 - valor_6; dir_2 =valor_9 - valor_8; if (dir_1! =pre_dir_1 || dir_2! =pre_dir_2) {pre_dir_1 =dir_1; pre_dir_2 =dir_2; String txtMsg ="[" + String (dir_1) + "," + String (dir_2) + "] \ r \ n"; char buf [txtMsg.length () + 1]; txtMsg.toCharArray (buf, txtMsg.length () + 1); server.write (buf, txtMsg.length ()); }}} 
Código PHPoC Shield (remote_game.php) PHP
     PHPoC - Jogo       

PHPoC - Jogo baseado na web

WebSocket: null

Esquemas

1. Empilhar escudo wi-fi PHPoC ou escudo PHPoC no Arduino
2. Fiação como a imagem abaixo

Processo de manufatura

  1. Xadrez
  2. Jogo Arduino Gyroscope com MPU-6050
  3. Jogo Arduino Pong - Tela OLED
  4. Controlador de jogo Arduino
  5. Jogo Arduino Pong em Matriz 24x16 com MAX7219
  6. Jogo Arduino Touch Breakout
  7. Jogo de Operação Gigante Animatronics Lego Minfig
  8. Arduino - MP3 Player baseado na web
  9. Jogo Pixel Chaser
  10. Jogo Dino automatizado usando arduino