Stap 2: De draadloze XBee sensor
XBee van DIN en DOUT zijn aangesloten op D0 en D1 op de arduino, zodat het bouwen--in serie kan worden gebruikt.
De schets wordt uitgevoerd is zeer eenvoudig, het leest de URM37 (aangesloten op pin 2 en 3) en de afstand in cm via serieel naar de Xbee stuurt.
int URPWM1 = 2; PWM-uitgang 0-25000us, elke 50us vertegenwoordigen 1cm
int URTRIG1 = 3; PWM trigger pin
unsigned long urmTimer = 0; timer voor het beheer van de sensor die het lezen van flash tarief
unsigned int Distance1 = 0;
void setup {/ / serieel initialisatie
Hiermee stelt u de baud-rate op 9600
PWM_Mode_Setup();
pinMode(URTRIG1,OUTPUT);
Serial.begin(9600);
}
void loop {}
Als (millis ()-urmTimer > 1000) {}
urmTimer=millis();
PWM_Mode();
}
}
VOID PWM_Mode_Setup() {}
pinMode(URTRIG1,OUTPUT); Een lage pull op pin COMP/TRIG
digitalWrite(URTRIG1,HIGH); Te hoog ingesteld
pinMode (URPWM1, INPUT); Verzenden inschakelen PWM mode commando
}
VOID PWM_Mode() {/ / een lage pull op pin COMP/TRIG triggering een sensorgegevens
digitalWrite (URTRIG1, laag);
digitalWrite (URTRIG1, hoge); lezen van Pin PWM zal output pulsen
unsigned long DistanceMeasured1=pulseIn(URPWM1,LOW);
if(DistanceMeasured1<49000) {}
digitalWrite(13,LOW);
Distance1 = DistanceMeasured1/50; elke 50us lage staat 1 cm
} else {}
Distance1 = 0;
digitalWrite(13,HIGH);
}
Als ((Distance1 > 3) & & (Distance1 < 400)) {}
Serial.Print(Distance1);
Serial.Print("-");
}
}