/// <summary> /// Initialize a new NXT Touch sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public NXTTouchSensor(BrickPortSensor port, int timeout) { brick = new Brick(); Port = port; brick.BrickPi.Sensor[(int)Port].Type = BrickSensorType.TOUCH; periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initialize a NXT Sound Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public NXTSoundSensor(BrickPortSensor port, int timeout) { brick = new Brick(); Port = port; brick.BrickPi.Sensor[(int)Port].Type = (byte)BrickSensorType.SENSOR_RAW; periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initialize an EV3 Gyro Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Gyro mode</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public EV3GyroSensor(BrickPortSensor port, GyroMode mode, int timeout) { brick = new Brick(); Port = port; gmode = mode; brick.BrickPi.Sensor[(int)Port].Type = (BrickSensorType)mode; periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initilaize an EV3 Color Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Color mode</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public EV3ColorSensor(BrickPortSensor port, ColorSensorMode mode, int timeout) { brick = new Brick(); Port = port; colorMode = mode; //set the correct mode brick.BrickPi.Sensor[(int)Port].Type = GetEV3Mode(mode); periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initialize an EV3 Ultrasonic Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="usmode">Ultrasonic mode</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public EV3UltraSonicSensor(BrickPortSensor port, UltraSonicMode usmode, int timeout) { brick = new Brick(); Port = port; if (UltraSonicMode.Listen == mode) mode = UltraSonicMode.Centimeter; mode = usmode; brick.BrickPi.Sensor[(int)Port].Type = (BrickSensorType)BrickSensorType.EV3_US_M0; periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initialize an EV3 Ultrasonic sensor /// </summary> /// <param name="port">Sensor mode</param> /// <param name="usmode">Ultrasonic mode</param> public EV3UltraSonicSensor(BrickPortSensor port, UltraSonicMode usmode) : this(port, usmode, 1000) { }
/// <summary> /// Initialize a new NXT Touch sensor /// </summary> /// <param name="port">Sensor port</param> public NXTTouchSensor(BrickPortSensor port) : this(port, 1000) { }
/// <summary> /// Initialize a NXT Ultrasonic sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Ultrasonic mode</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public NXTUltraSonicSensor(BrickPortSensor port, UltraSonicMode mode, int timeout) { brick = new Brick(); Port = port; if (UltraSonicMode.Listen == mode) mode = UltraSonicMode.Centimeter; sonarMode = mode; brick.BrickPi.Sensor[(int)Port].Type = (BrickSensorType)BrickSensorType.ULTRASONIC_CONT; periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initialize an EV3 Ulrasonic sensor /// </summary> /// <param name="port">Sensor port</param> public EV3UltraSonicSensor(BrickPortSensor port) : this(port, UltraSonicMode.Centimeter, 1000) { }
/// <summary> /// Initialize a NXT Sound Sensor /// </summary> /// <param name="port">Sensor Port</param> public NXTSoundSensor(BrickPortSensor port) : this(port, 1000) { }
/// <summary> /// Initialize an EV3 Gyro Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Gyro mode</param> public EV3GyroSensor(BrickPortSensor port, GyroMode mode):this(port, mode, 1000) { }
/// <summary> /// Initializes an EV3 IS Sensor /// </summary> /// <param name="mode">IR mode</param> public EV3IRSensor(Brick brick, BrickPortSensor port, IRMode mode) : this(brick, port, mode, 1000) { }
/// <summary> /// Initialize a NXT Light Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Light mode</param> public NXTLightSensor(BrickPortSensor port, LightMode mode) : this(port, mode, 1000) { }
/// <summary> /// Initialize an EV3 Color Sensor /// </summary> /// <param name="port">Sensor port</param> public EV3ColorSensor(BrickPortSensor port) : this(port,ColorSensorMode.Color, 1000) { }
/// <summary> /// Initialize an EV3 IR Sensor /// </summary> /// <param name="port">Sensor port</param> public EV3IRSensor(Brick brick, BrickPortSensor port) : this(brick, port, IRMode.Proximity, 1000) { }
/// <summary> /// Initialize an Analog Sensor /// </summary> /// <param name="port">Sensor port</param> public AnalogSensor(BrickPortSensor port) : this(port, 1000) { }
/// <summary> /// Initialize a NXT Color Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Color mode</param> public NXTColorSensor(BrickPortSensor port, ColorSensorMode mode) : this(port, mode, 1000) { }
/// <summary> /// Initialize an EV3 Gyro Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Gyro mode</param> public EV3GyroSensor(BrickPortSensor port, GyroMode mode) : this(port, mode, 1000) { }
/// <summary> /// Initialize an EV3 Gyro Sensor /// </summary> /// <param name="port">Sensor port</param> public EV3GyroSensor(BrickPortSensor port) : this(port, GyroMode.Angle) { }
/// <summary> /// Initialize a NXT Sound Sensor /// </summary> /// <param name="port">Sensor Port</param> public NXTSoundSensor(Brick brick, BrickPortSensor port) : this(brick, port, 1000) { }
/// <summary> /// Initialize an EV3 Color Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Color mode</param> public EV3ColorSensor(BrickPortSensor port, ColorSensorMode mode) : this(port, mode, 1000) { }
/// <summary> /// Initialize an EV3 Color Sensor /// </summary> /// <param name="port">Sensor port</param> public EV3ColorSensor(BrickPortSensor port) : this(port, ColorSensorMode.Color, 1000) { }
/// <summary> /// Initialize an EV3 IR Sensor /// </summary> /// <param name="port">Sensor port</param> public EV3IRSensor(BrickPortSensor port) : this(port, IRMode.Proximity, 1000) { }
/// <summary> /// Initialize a NXT Light Sensor /// </summary> /// <param name="port">Sensor port</param> public NXTLightSensor(BrickPortSensor port) : this(port, LightMode.Relection, 1000) { }
/// <summary> /// Initializes an EV3 IS Sensor /// </summary> /// <param name="mode">IR mode</param> public EV3IRSensor(BrickPortSensor port, IRMode mode) : this(port, mode, 1000) { }
/// <summary> /// Initialize a NXT Light Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Light mode</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public NXTLightSensor(BrickPortSensor port, LightMode mode, int timeout) { brick = new Brick(); Port = port; lightMode = mode; CutOff = 512; brick.BrickPi.Sensor[(int)Port].Type = (BrickSensorType)mode; periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initialize an EV3 IR Sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">IR mode</param> /// <param name="timeout">Period in millisecond to check sensor value changes</param> public EV3IRSensor(BrickPortSensor port, IRMode mode, int timeout) { brick = new Brick(); Mode = mode; Channel = IRChannel.One; brick.BrickPi.Sensor[(int)Port].Type = (BrickSensorType)mode; periodRefresh = timeout; timer = new Timer(UpdateSensor, this, TimeSpan.FromMilliseconds(timeout), TimeSpan.FromMilliseconds(timeout)); }
/// <summary> /// Initialize a NXT Ultrasonic sensor /// </summary> /// <param name="port">Sensor port</param> /// <param name="mode">Ultrasonic mode</param> public NXTUltraSonicSensor(BrickPortSensor port, UltraSonicMode mode) : this(port, mode, 1000) { }
/// <summary> /// Initialize an EV3 Gyro Sensor /// </summary> /// <param name="port">Sensor port</param> public EV3GyroSensor(BrickPortSensor port):this(port, GyroMode.Angle) { }