Pilotage de servomoteur via shield wifi
Bonjour,
je suis actuellement en sti2d sin et j'ai un projet a mener avec 3 autres amis. En cours Arduino nous utilisons arduino pour programmer .
Je vous contacte car j'ai un problème, j'ai réussit à piloter les 2 servomoteurs qui me servent pour piloter verticalement et horizontalement une caméra via le moniteur série avec la carte MEGA branché par usb.
Je tape v45 et le servo vertical va à 45 degrés mais ce que je dois faire c'est piloter ma tourelle à distance via un shield wifi que j'ai à ma disposition, j'ai réussit à établir la connexion du shield avec le wifi grâce à un programme présent dans "exemple" et j'ai voulut commencer par essayer d'envoyer une valeur au shield à distance pour qu'il allume une led quand je lui ordonne mais je ne voie pas comment faire,la led ne s'allume pas je ne voie pas comment établir la connexion entre ma led et le pc sans fil ... je peux seulement agir sur la led lorsque le cable usb est branché.
J'ai ping mon shield et il réponds quand il est connecté mais également quand le cable usb est déconnecté.
L'adresse ip de mon shield est 192.168.0.8
je vous montre le programme pour le connecter à mon réseaux et que j'ai modifié pour essayer d'allumer ou d'éteindre la led à distance sans succès,via la liaison usb je peu agir sur la led . Quelqu'un pourrait-il m'aiguiller ?
Merci!
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128
| #include <SPI.h>
#include <WiFi.h>
char ssid[] = "freeboxl"; // your network SSID (name)
char key[] = "1234567890"; // your network key
int keyIndex = 0; // your network key Index number
int status = WL_IDLE_STATUS; // the Wifi radio's status
int led = 13 ;
int test = 0 ;
void setup() {
//Initialize serial and wait for port to open:
Serial.begin(9600);
pinMode(led, OUTPUT); // La broche de la LED une sortie
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// check for the presence of the shield:
if (WiFi.status() == WL_NO_SHIELD) {
Serial.println("WiFi shield not present");
// don't continue:
while (true);
}
String fv = WiFi.firmwareVersion();
if ( fv != "1.1.0" )
Serial.println("Please upgrade the firmware");
// attempt to connect to Wifi network:
while ( status != WL_CONNECTED) {
Serial.print("Attempting to connect to WEP network, SSID: ");
Serial.println(ssid);
status = WiFi.begin(ssid, keyIndex, key);
// wait 10 seconds for connection:
delay(10000);
}
// once you are connected :
Serial.print("You're connected to the network");
// printCurrentNet();
// printWifiData();
}
void loop()
{
test = 0;
if (Serial.available() == 1 )
{
test = (Serial.read() - 48 );
digitalWrite(led, test) ; // Eteindre la LED
delay(500); // Attendre à nouveau 200 ms
}
else
{
digitalWrite(led, LOW) ; // Eteindre la LED
delay(500); // Attendre à nouveau 200 ms
}
// check the network connection once every 10 seconds:
delay(10000);
printCurrentNet();
}
void printWifiData() {
// print your WiFi shield's IP address:
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.println(ip);
Serial.println(ip);
// print your MAC address:
byte mac[6];
WiFi.macAddress(mac);
Serial.print("MAC address: ");
Serial.print(mac[5], HEX);
Serial.print(":");
Serial.print(mac[4], HEX);
Serial.print(":");
Serial.print(mac[3], HEX);
Serial.print(":");
Serial.print(mac[2], HEX);
Serial.print(":");
Serial.print(mac[1], HEX);
Serial.print(":");
Serial.println(mac[0], HEX);
}
void printCurrentNet() {
// print the SSID of the network you're attached to:
Serial.print("SSID: ");
Serial.println(WiFi.SSID());
// print the MAC address of the router you're attached to:
byte bssid[6];
WiFi.BSSID(bssid);
Serial.print("BSSID: ");
Serial.print(bssid[5], HEX);
Serial.print(":");
Serial.print(bssid[4], HEX);
Serial.print(":");
Serial.print(bssid[3], HEX);
Serial.print(":");
Serial.print(bssid[2], HEX);
Serial.print(":");
Serial.print(bssid[1], HEX);
Serial.print(":");
Serial.println(bssid[0], HEX);
// print the received signal strength:
long rssi = WiFi.RSSI();
Serial.print("signal strength (RSSI):");
Serial.println(rssi);
// print the encryption type:
byte encryption = WiFi.encryptionType();
Serial.print("Encryption Type:");
Serial.println(encryption, HEX);
Serial.println();
* /
} |