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.
