class Sensor: def __init__(self, trigger, echo): self.trig = Pmod_IO(PMODA, trigger, "out") self.echo = Arduino_Analog(ARDUINO, [echo]) def getDistance(self): self.trig.write(0) time.sleep(0.1) self.trig.write(1) time.sleep(0.00001) self.trig.write(0) return self.echo.read()[0] def poll(self, n=11): return np.mean([self.getDistance() for i in range(n)])
class Sensor: def __init__(self, trigger, echo): self.trig = Pmod_IO(PMODA, trigger, "out") self.echo = Arduino_Analog(ARDUINO, [echo]) def getDistance(self): self.trig.write(0) time.sleep(0.1) self.trig.write(1) time.sleep(0.00001) self.trig.write(0) return self.echo.read()[0] def poll(self, n=10): values = [self.getDistance() for i in range(n)].sort() mean = np.mean(values) dev = np.std(values) return np.mean( [value for value in sorted(values) if abs(value - mean) <= dev])
from pynq import Overlay Overlay("base.bit").download from pynq.iop import ARDUINO from pynq.iop import Arduino_Analog #from pynq.iop import ARDUINO_GROVE_A1 #grove peripheral: groveA1 contains pinA0&pinA1 of pynq analog1 = Arduino_Analog(ARDUINO, [0]) #analog pin 0 value = analog1.read() print(value)
from time import sleep from pynq.iop import Arduino_Analog forcePin = 0 forceSensor = Arduino_Analog(3, [forcePin]) while(True): forceReading = forceSensor.read() print(forceReading) sleep(1)