Det tidligee eksemplet har blitt forenklet litt og så har simulatoren også fått mulighet til å simulere ny type ultralydmåler.
Forslag til programkode (kompakt)
const unsigned int TRIG_PIN=11; const unsigned int ECHO_PIN=10; const unsigned int UTGANG=3; unsigned long pulstid; int avstand = 0; int spenning = 0; void setup() { pinMode(TRIG_PIN, OUTPUT); pinMode(ECHO_PIN, INPUT); } void loop() { digitalWrite(TRIG_PIN, LOW); delayMicroseconds(2); digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); pulstid = pulseIn(ECHO_PIN, HIGH); avstand = pulstid/29/2; // i cm spenning = map(avstand, 50, 1, 1, 254); analogWrite(UTGANG, spenning); delay(200); }
Programesemplet er laget for en reguleringssløyfe med en tank på 50 cm. Derfor så er måleområdet satt fra 1-50 cm. Utgangssignalet 0-5 V ligger hos Arduino. Måleområdet kan settes fra 1 cm til 500 cm i map funksjonen.