Paso 13: Potenciómetros múltiples
Después de buscar en línea, encontré una biblioteca para arduino que permite enviar varios valores del potenciómetro de 1 combo/arduino xbee a otro. Se llama la biblioteca de EasyTransfer.
http://www.billporter.info/2011/05/30/easytransfer...
Un ejemplo de que se utilice se discute en este foro
http://Forum.Arduino.CC/index.php?topic=152604.0
Yo ya han probado y han sido capaces de 3 potenciómetros con ambos xbees en el modo de control.
A continuación es el código que usé para la transmisión inalámbrica de 3 valores del potenciómetro. Pude hacerlo usando el código de la segunda página web de esta pagina.
Remitente
#include < EasyTransfer.h >
EasyTransfer ET;
int potpin1 = A0;
int potpin2 = A1;
int potpin3 = A2;
struct SEND_DATA_STRUCTURE {}
int servo1val;
int servo2val;
int servo3val; };
Txdata SEND_DATA_STRUCTURE;
void setup() {}
Serial.Begin(9600);
ET.begin(details(txdata) y serie);
pinMode (potpin1, entrada);
pinMode (potpin2, entrada);
pinMode (potpin3, entrada);
}
void loop() {}
txdata.servo1val = analogRead(potpin1);
txdata.servo2val = analogRead(potpin2);
txdata.servo3val = analogRead(potpin3);
ET.sendData();
Delay(500);
}
Esta sección recibe los datos de los potenciómetros. Para mis propios propósitos, yo quería una prueba y mi Arduino imprimir los valores enviados por el potenciómetro tres.
Receptor
#include < Servo.h >
#include < EasyTransfer.h >
EasyTransfer ET;
Servo myservo1;
Servo myservo2;
Servo myservo3;
int val1, val2, val3;
struct RECEIVE_DATA_STRUCTURE {}
int servo1val;
int servo2val;
int servo3val;
};
Txdata RECEIVE_DATA_STRUCTURE;
void setup() {}
Serial.Begin(9600);
ET.begin(details(txdata) y serie);
myservo1.Attach(9);
myservo2.Attach(10);
myservo2.Attach(12); }
void loop() {}
{if(et.receiveData())}
val1 = mapa (txdata.servo1val, 0, 1023, 0, 179);
val2 = mapa (txdata.servo2val, 0, 1023, 0, 179);
val3 = mapa (txdata.servo3val, 0, 1023, 0, 179);
Serial.println(val1);
Serial.println(val2);
Serial.println(val3);
myservo1.Write(val1);
myservo2.Write(val2);
}
}