Ja ich wundere mich auch, aber manchmal kommt bei der Berechnung ein negativer Wert raus.
Ich filtere jetzt einfach die 0 raus, dann funktioniert es ganz gut.
Hier mal ein Programmausschnitt:
thread Entfernung //thread zur Berechnung der Entfernung in cm
{
U1=ports.adc(0);
U1=U1/204.6;
Entfernunglinkstemp=(A1/(U1-B1));
if Entfernunglinkstemp <= 30 & Entfernunglinkstemp >= 1
{
Entfernunglinks = Entfernunglinkstemp;
}

if Entfernunglinkstemp > 30 or Entfernunglinks < 0
{
Entfernunglinks = 30;
}

U2=ports.adc(1);
U2=U2/204.6;
Entfernungrechtstemp=(A2/(U2-B2));

if Entfernungrechtstemp <= 30 & Entfernungrechtstemp >= 1
{
Entfernungrechts = Entfernungrechtstemp;
}
if Entfernungrechtstemp > 30 or Entfernungrechtstemp < 0
{
Entfernungrechts = 30;
}
}