From e61412a9d4a800f9cc1b6003b74eaf0f6d98a533 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Wed, 7 Apr 2010 23:50:41 +0200 Subject: host/simu/model: fix Sensopart model, refs #126 --- host/simu/model/distance_sensor_sensopart.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'host/simu/model/distance_sensor_sensopart.py') diff --git a/host/simu/model/distance_sensor_sensopart.py b/host/simu/model/distance_sensor_sensopart.py index e7be510f..16676e5d 100644 --- a/host/simu/model/distance_sensor_sensopart.py +++ b/host/simu/model/distance_sensor_sensopart.py @@ -67,7 +67,7 @@ class DistanceSensorSensopart (Observable): d = None for r in self.rays: r.evaluate () - if d is None or r.distance < d: + if r.distance is not None and (d is None or r.distance < d): d = r.distance # Convert to voltage. if d is None or d > self.MAX: @@ -75,8 +75,9 @@ class DistanceSensorSensopart (Observable): elif d < self.MIN: self.value = self.OMIN else: - self.value = (d - self.MIN) / (self.MAX - self.MIN) * (self.OMAX - - self.OMIN) + self.value = (self.OMIN + + (d - self.MIN) / (self.MAX - self.MIN) + * (self.OMAX - self.OMIN)) # Update observers. self.notify () # Prepare next update. -- cgit v1.2.3