Proses manufaktur
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Demo
Game klasik ini mungkin membuat sebagian dari kita merasakan nostalgia masa kecil. Gameplay-nya sederhana, cobalah untuk menghindari menabrak mobil lawan dan dapatkan skor sebanyak mungkin. Mobil dapat beralih antara 5 jalur, dan ada 15 kecepatan yang berbeda. Saat kecepatan meningkat, mobil lawan akan berlari lebih cepat, membuat permainan menjadi lebih sulit.
Pengkabelan
Aliran Data
Arduino ---> PHPoC Shield ---> Peramban web
Pengguna berinteraksi dengan sensor sudut putar. Nilai sinyal input dari sensor sudut putar digunakan untuk mengubah posisi mobil.
Arduino membaca nilai dari sensor sudut putar. Nilai ADC input dibagi menjadi 5 level yang berbeda. Beralih antar level berarti mengubah jalur. Sederhananya, jika sinyal input dialihkan ke level lain, Arduino akan mengirimkan level yang diperbarui ke PHPoC Shield.
Saat menerima nilai, PHPoC WiFi Shield mengirimkannya ke Web Browser melalui Websocket. Kemudian, fungsi JavaScript akan memperbarui posisi (jalur) mobil. Program JavaScript akan terus memperbarui posisi lawan dan juga kecepatan permainan.
Hal yang Dapat Dilakukan
Siapkan koneksi WiFi untuk PHPoC Shield
Lihat instruksi ini.
Unggah Antarmuka Pengguna Web baru ke PHPoC Shield
Unggah Kode Arduino
Dan Akhirnya
http://
relace_ip_address_here
/remote_racing_game.php
Pelajari lebih lanjut tentang potensiometer di Arduino - Tutorial Potensiometer
Referensi Fungsi
#include "SPI.h"#include "Phpoc.h"PhpocServer server(80);int adcPin =A0; float adcVal =0; // variabel untuk menyimpan nilai yang berasal dari sensorint lastPos =-1; float adcMin =512-2,5*100;pengaturan batal() { Serial.begin(9600); while(!Serial); Phpoc.begin(PF_LOG_SPI | PF_LOG_NET); server.beginWebSocket("permainan"); Serial.print("Alamat server WebSocket :"); Serial.println(Phpoc.localIP()); }void loop() { // ketika klien mengirim byte pertama, ucapkan halo:PhpocClient client =server.available(); if (klien) { adcVal =0; for(int i =0; i <50; i++) adcVal +=analogRead(adcPin); adcVal /=50; int pos =(int)((adcVal-adcMin) / 100); jika (pos<0){ pos =0; } else if (pos>4) pos =4; if(pos terakhir !=pos){ String txtMsg =String(pos) + "\r\n"; char buf[txtMsg.length()]; txtMsg.toCharArray(buf, txtMsg.length()); server.write(buf, txtMsg.length()); Serial.println(txtMsg); pos terakhir =pos; delayMicroseconds(50); } } }
Arduino - Game Berbasis Web
Arduino - Balap Mobil Permainan Bata
WebSocket :null
Proses manufaktur
Komponen dan persediaan Arduino UNO × 1 Motor DC 12 V 200 rpm × 2 L293D Motor Drive Shield untuk Arduino Uno × 1 Modul Bluetooth HC-05 × 1 Breadboard (generik) × 1 Kabel jumper (generik) × 1 Aplikasi dan layanan online Arduino
Komponen dan persediaan Arduino UNO × 1 Resistor SparkFun 330 ohm kami hanya membutuhkan 4 dari mereka × 1 Resistor SparkFun 10k ohm kami hanya membutuhkan 4 dari mereka × 1 Berbagai macam LED SparkFun kita membutuhkan 4 LED dengan warna berbeda × 1 speaker S
Komponen dan persediaan Arduino UNO × 1 PHPoC WiFi Shield untuk Arduino × 1 Tombol × 4 Breadboard (generik) × 1 Resistor 10k ohm × 1 Tabung Penyusut Panas × 1 Tentang proyek ini Jika Anda seorang pemula, Anda dapat mempelajari
Komponen dan persediaan Arduino UNO × 1 Adafruit RGB Backlight LCD - 16x2 × 1 Breadboard (generik) × 1 Resistor 220 ohm × 1 Sakelar Tombol Tekan SparkFun 12mm × 1 Kabel jumper (generik) × 1 Kabel USB-A ke B × 1 Aplik