com.flash3388.flashlib.io.devices.FlashLibDevicesIds Maven / Gradle / Ivy
package com.flash3388.flashlib.io.devices;
public class FlashLibDevicesIds {
private FlashLibDevicesIds() {}
/**
* Defines a basic PWM speed (motor) controller.
*
*
* Params:
*
* - port ({@link com.flash3388.flashlib.io.Pwm}): port the device is connected to.
* - pulseBounds ({@link com.flash3388.flashlib.io.devices.actuators.PwmBounds}): defines pwm bounds for controlling the device.
* - pwmFrequency (double): frequency to use for communicating with the device (in HZ).
*
*/
public static final DeviceId PwmSpeedController = DeviceId.of(21, SpeedController.class);
/**
* Defines a basic PWM position controller.
*
*
* Params:
*
* - port ({@link com.flash3388.flashlib.io.Pwm}): port the device is connected to.
* - pulseBounds ({@link com.flash3388.flashlib.io.devices.actuators.PwmBounds}): defines pwm bounds for controlling the device.
* - pwmFrequency (double): frequency to use for communicating with the device (in HZ).
*
*/
public static final DeviceId PwmPositionController = DeviceId.of(22, PositionController.class);
/**
* Defines a TalonSRX speed (motor) controller connected via a PWM port.
*
*
* Params:
*
* - port ({@link com.flash3388.flashlib.io.Pwm}): port the device is connected to.
*
*/
public static final DeviceId TalonSrx = DeviceId.of(23, SpeedController.class);
/**
* Defines a Talon speed (motor) controller connected via a PWM port.
*
*
* Params:
*
* - port ({@link com.flash3388.flashlib.io.Pwm}): port the device is connected to.
*
*/
public static final DeviceId Talon = DeviceId.of(24, SpeedController.class);
/**
* Defines a basic accelerometer which is connected via an analog port.
*
*
* Params:
*
* - input ({@link com.flash3388.flashlib.io.AnalogInput}): port the device is connected to.
* - zeroGVoltage (double): voltage when acceleration is 0, as defined by the device.
* - voltsPerG (double): conversion factor from volts to G acceleration.
*
*/
public static final DeviceId AnalogAccelerometer = DeviceId.of(51, Accelerometer.class);
/**
* Defines a basic range finder which is connected via an analog port.
*
*
* Params:
*
* - input ({@link com.flash3388.flashlib.io.AnalogInput}): port the device is connected to.
* - sensitivity (double): sensitivity of the device in volts/centimeter
*
*/
public static final DeviceId AnalogRangeFinder = DeviceId.of(52, RangeFinder.class);
/**
* Defines a basic range finder which is connected via a digital port and uses pulses to report the range.
*
*
* Params:
*
* - counter ({@link com.flash3388.flashlib.io.PulseLengthCounter}): counter on the port the device is connected to.
* - sensitivity (double): sensitivity of the device in microseconds/centimeter
*
*/
public static final DeviceId PulseWidthRangeFinder = DeviceId.of(53, RangeFinder.class);
/**
* Defines a basic ultrasonic range finder which is connected to a digital port. Works for devices
* which use two channels: trigger which forces the device to send a pulse, and echo which the device uses
* to reply with the distance.
*
* Based on HC-SR04.
*
*
* Params:
*
* - pingChannel ({@link com.flash3388.flashlib.io.DigitalOutput}): channel used to trigger pings (trigger).
* - counter ({@link com.flash3388.flashlib.io.PulseLengthCounter}): counter on the pulse used to report the range (echo).
*
*/
public static final DeviceId Ultrasonic = DeviceId.of(54, RangeFinder.class);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy