Hallo Leute,
Habe mir einen Ultraschallabstandssensor nach diesem Schaltplan gebaut. Sender und Empfänger funktionieren soweit auch ganz gut.
Probleme hab ich, dass er bei der Entfernungsmessung Probleme beim Auswerten der Signallaufzeit hab. Mein Code sieht derzeit so aus:
Das Prinzip Hinter der Messung soll sein, dass der Zeitpunkt des stärksten Echos Festgehalten wird, welches doch die Signallaufzeit darstellen müsste.Code:Config Timer1 = Timer , Prescale = 256 Config Timer0 = Timer , Prescale = 1 On Timer0 Stop_us Config Adc = Single , Prescaler = Auto Start Adc Enable Timer1 Enable Timer0 Enable Interrupts While Timer1 < 1000 Empf_wert = Getadc(0) If Empf_wert > Ewert_max And Timer1 > 70 Then Counter_dist = Timer1 Ewert_max = Empf_wert End If Wend If Ewert_max < 500 Then Print "kein Hindernis" Else Dist = Counter_dist * 0.000032 Dist = Dist * 343 Dist = Dist / 2 End If Print Dist
Leider kommen bei den Messungen realtiv willkürliche Ergebnisse raus. (Meistens im Bereich von 60cm, egal wie weit er vor dem Hindernis, einer Wand, steht) Was mach ich falsch/hab ich nicht beachtet?
mfg
Alex







Zitieren

Lesezeichen