Project 2nd – Kendali Servo Via Ethernet WIFI
2 Comments
Hi… Sobat KeiRo penggemar Arduino…
ketemu lagi kita
ketemu lagi kita
Pernahkan Sobat ngebayangin bisa ngendaliin robot via internet… nah untuk Project yang 2nd..
Keiro akan berbagi kepada sobat pencinta Arduino… bagaimana caranya ngendaliin servo via WIFI menggunakan DFRduino Ethernet Shield dan browse Firefox atau yg lain yang. Pembahasan kali ini dapat dijadikan atau dikembangkan sebagai dasar untuk pengendalian robot via intranet atau internet…
WOW kayaknya menarik deh…
Ok enggak usah lama2 sudah enggak sabar nih… mari kita mulai…
Pertama yang kelengkapan yang perlu disiapin adalah seperti penampakan foto di bawah ini:
Komponen yang digunakan dapat di lihat di kedarobot.com
Arduino: 1bh | Ethernet Shield | Arduino Jumper Cables | Micro Servo 2 bh |
Prototyping Shield: 1bh |
1bh kabel UTP
loh WIFI Shielnya mana… hehehe…
Emang enggak ada Sobat Keiro… Keiro coba siasati pake AP dari Prolink di set ke client AP (WIFI produk Prolink Model WNR1004… karena WIFI shield utuk Arduino mahal jhe… “Oooooo… begitu tho”
Alasan Keiro menggunakan model tersebut karena bentuk dan ukurannya kecil(seukuran Arduino), dengan daya 3.3Volt/1.5A (Wow tinggal colok di Arduino dong) dan sudah draft-N lho… dan satu lagi harganya lebih murah dan masih dapat dimanfaatkan untuk yang lain… CMIIW..
Emang enggak ada Sobat Keiro… Keiro coba siasati pake AP dari Prolink di set ke client AP (WIFI produk Prolink Model WNR1004… karena WIFI shield utuk Arduino mahal jhe… “Oooooo… begitu tho”
Alasan Keiro menggunakan model tersebut karena bentuk dan ukurannya kecil(seukuran Arduino), dengan daya 3.3Volt/1.5A (Wow tinggal colok di Arduino dong) dan sudah draft-N lho… dan satu lagi harganya lebih murah dan masih dapat dimanfaatkan untuk yang lain… CMIIW..
Ok… lanjut…
Skenario kayak gini…
Keiro buat skenario seperti ini
Browse HTML –>Laptop<–WIFI Router/Acces Point–>Prolink WIFI–>Ethernet Shield–>Arduino–>Prototype–>Servo
Pertama Setting Jaringan
Setting IP address adan Gateway (bebas atau sesuaikan dengan jaringan Ethernet yang Sobat punya)
misalnya:
Wifi Router
IP : 192.168.1.1; Gateway : 192.168.1.1; Subnet : 255.255.255.0
Laptop di set atau desktop
IP : 192.168.1.2; Gateway : 192.168.1.1; Subnet : 255.255.255.0
Prolink WIFI atau client AP
IP : 192.168.1.3; Gateway : 192.168.1.1; Subnet : 255.255.255.0
Ethernet Shield
IP : 192.168.1.110; Gateway : 192.168.1.1; Subnet : 255.255.255.0
Ke-dua
Copas kode HTML ke Notepad, edit IP sesuaikan dengan setting jaringan intranet Sobat Keiro, kemudian save as dengan ekstensen file *.html dengan penamaan file bebas/terserah Sobat.
Copas juga kode sket arduino ke Arduino IDE ver 1.01. Sebelum di Upload ke Arduino Board, dicek pengkabelan dan kemudian diverifikasi terlebih dahulu dengan cara click verifikasi di menu Arduino IDE. Jika semuanya sudah beres jalankan upload.
Copas juga kode sket arduino ke Arduino IDE ver 1.01. Sebelum di Upload ke Arduino Board, dicek pengkabelan dan kemudian diverifikasi terlebih dahulu dengan cara click verifikasi di menu Arduino IDE. Jika semuanya sudah beres jalankan upload.
Ke-tiga
Buka code HTML yang Sobat buat menggunakan browse internet…
//kendali servo via router prolink http://kedairobot.com //for use with Arduino IDE 1.01 //open serial monitor to see what the arduino receives #include <SPI.h> #include <Ethernet.h> #include <Servo.h> // Masukkan Mac address dan IP address seperti tersebut dibawah byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // Setting IP address disesuaikan dengan jaringan lokal (LAN) byte ip[] = { 192, 168, 1, 102 }; // ip in lan // Setting Internet via router disesuaikan dengan jaringan lokal (LAN) byte gateway[] = { 192, 168, 1, 1 }; // Setting subnet mask disesuaikan dengan jaringan lokal (LAN) byte subnet[] = { 255, 255, 255, 0 }; // Inisial server library dengan IP address dan port sesuai // dengan jaringan lokal (LAN) EthernetServer server(84); //server port String readString, servo1, servo2; // Kontrol servo Servo myservo1; Servo myservo2; void setup(){ // start koneksi Ethernet dan server: Ethernet.begin(mac, ip, gateway, subnet); server.begin(); //serial data print Serial.begin(9600); myservo1.attach(7); myservo2.attach(6); Serial.println("bot1"); // so I can keep track of what is loaded } void loop(){ // koneksi ke klie EthernetClient client = server.available(); if (client) { while (client.connected()) { if (client.available()) { char c = client.read(); // Baca karakter dari permintaan HTTP if (readString.length() < 100) { // Ubah karakter menjadi string readString += c; } //jika permintaan HTTP berakhir if (c == 'n') { Serial.println(readString); if (readString.length() >0) { Serial.println(readString); servo1 = readString.substring(7, 11); servo2 = readString.substring(12, 16); Serial.println(servo1); Serial.println(servo2); int n1; int n2; char CharArray1[6]; servo1.toCharArray(CharArray1, sizeof(CharArray1)); n1 = atoi(CharArray1); char CharArray2[6]; servo2.toCharArray(CharArray2, sizeof(CharArray2)); n2 = atoi(CharArray2); myservo1.writeMicroseconds(n1); myservo2.writeMicroseconds(n2); //myservo.write(n); readString=""; } client.println("HTTP kedairobot.com"); client.println(); client.println(); delay(1); client.stop(); readString=""; } } } } }
Kode HTML
<HTML> <HEAD> <H3>Zoomkat's Routerbot<BR> Web Control Page</H3> <TITLE>Zoomkat's Routerbot Control Page</TITLE> </HEAD> <BODY> Foward-*Stop*-Reverse <BR> <a href="http://192.168.1.102:84/?-1000-2000" target="inlineframe">F-F</a>| <a href="http://192.168.1.102:84/?-1450-1550" target="inlineframe">S-F</a>| <a href="http://192.168.1.102:84/?-1500-1500" target="inlineframe">*-Stop-*</a>| <a href="http://192.168.1.102:84/?-1550-1450" target="inlineframe">S-R</a>| <a href="http://192.168.1.102:84/?-2000-1000" target="inlineframe">F-R</a>| <BR> <BR> Turn-L-*Stop*-Turn-R <BR> <a href="http://192.168.1.102:84/?-1000-1000" target="inlineframe">F-L</a>| <a href="http://192.168.1.102:84/?-1450-1450" target="inlineframe">S-L</a>| <a href="http://192.168.1.102:84/?-1500-1500" target="inlineframe">*-Stop-*</a>| <a href="http://192.168.1.102:84/?-1550-1550" target="inlineframe">S-R</a>| <a href="http://192.168.1.102:84/?-2000-2000" target="inlineframe">F-R</a>| <BR> <IFRAME name=inlineframe src="res://D:WINDOWSSystem32shdoclc.dll/dnserror.htm" width=1 height=1> this will hold the html answer of the moves </IFRAME> </body> </html>
Artikel Keiro ambil dari Forum www.lynxmotion.net
Selamat mencoba dan bereksplorasi….
|
Ilmu Komputer 95
|