Ciao a tutti,
ho un problema con un sensore a ultrasuoni URM37 V3.2 e il servo pan/tilt bracket che vende sparkfun.
#include "URMSerial.h"
#include "Servo.h"
#define DISTANCE 1
#define TEMPERATURE 2
#define ERROR 3
#define NOTREADY 4
URMSerial urm;
Servo ax;
Servo ay;
void setup() {
Serial.begin(57600);
urm.begin(2,3,9600);
ax.attach(9);
ay.attach(11);
}
void loop() {
ax.write(74);
ay.write(20);
urm.requestMeasurement(TEMPERATURE);
Serial.print("Measurement: ");
Serial.println(getMeasurement());
}
int value;
int getMeasurement()
{
switch(urm.requestMeasurementOrTimeout(DISTANCE, value))
{
case DISTANCE:
return value;
break;
case TEMPERATURE:
return value;
break;
case ERROR:
Serial.println("Error");
break;
case NOTREADY:
Serial.println("Not Ready");
break;
case TIMEOUT:
Serial.println("Timeout");
break;
}
return -1;
}
In pratica quando accendo anche il sensore ad ultrasuoni come nel codice qui sopra,
i servi 'scattano' di 1-2 posizioni avanti e indietro continuamente. Invece, se il sensore
non è presente, funzionano normalmente. Ho un I/O 5V Shield.