Package com.tinkerforge
Class BrickletPerformanceDC
- java.lang.Object
-
- com.tinkerforge.DeviceBase
-
- com.tinkerforge.Device
-
- com.tinkerforge.BrickletPerformanceDC
-
public class BrickletPerformanceDC extends Device
Drives one brushed DC motor with up to 36V and 10A
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
BrickletPerformanceDC.CurrentVelocityCallbackConfiguration
static interface
BrickletPerformanceDC.CurrentVelocityListener
This listener is triggered with the period that is set bysetCurrentVelocityCallbackConfiguration(long, boolean)
.static interface
BrickletPerformanceDC.EmergencyShutdownListener
This listener is triggered if either the current consumption is too high or the temperature of the driver chip is too high (above 150°C) or the user defined thermal shutdown is triggered (seesetThermalShutdown(int)
).class
BrickletPerformanceDC.GPIOConfiguration
static interface
BrickletPerformanceDC.GPIOStateListener
This listener is triggered by GPIO changes if it is activated throughsetGPIOAction(int, long)
.class
BrickletPerformanceDC.Motion
class
BrickletPerformanceDC.PowerStatistics
class
BrickletPerformanceDC.SPITFPErrorCount
static interface
BrickletPerformanceDC.VelocityReachedListener
This listener is triggered whenever a set velocity is reached.-
Nested classes/interfaces inherited from class com.tinkerforge.Device
Device.Identity
-
-
Field Summary
-
Constructor Summary
Constructors Constructor Description BrickletPerformanceDC(java.lang.String uid, IPConnection ipcon)
Creates an object with the unique device ID \c uid.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCurrentVelocityListener(BrickletPerformanceDC.CurrentVelocityListener listener)
Adds a CurrentVelocity listener.void
addEmergencyShutdownListener(BrickletPerformanceDC.EmergencyShutdownListener listener)
Adds a EmergencyShutdown listener.void
addGPIOStateListener(BrickletPerformanceDC.GPIOStateListener listener)
Adds a GPIOState listener.void
addVelocityReachedListener(BrickletPerformanceDC.VelocityReachedListener listener)
Adds a VelocityReached listener.void
fullBrake()
Executes an active full brake.int
getBootloaderMode()
Returns the current bootloader mode, seesetBootloaderMode(int)
.int
getCCWLEDConfig()
Returns the LED configuration as set bysetCCWLEDConfig(int)
int
getChipTemperature()
Returns the temperature as measured inside the microcontroller.int
getCurrentVelocity()
Returns the *current* velocity of the motor.BrickletPerformanceDC.CurrentVelocityCallbackConfiguration
getCurrentVelocityCallbackConfiguration()
Returns the listener configuration as set bysetCurrentVelocityCallbackConfiguration(long, boolean)
.int
getCWLEDConfig()
Returns the LED configuration as set bysetCWLEDConfig(int)
int
getDriveMode()
Returns the drive mode, as set bysetDriveMode(int)
.boolean
getEmergencyShutdownCallbackConfiguration()
Returns the listener configuration as set bysetEmergencyShutdownCallbackConfiguration(boolean)
.boolean
getEnabled()
Returns *true* if the driver chip is enabled, *false* otherwise.int
getErrorLEDConfig()
Returns the LED configuration as set bysetErrorLEDConfig(int)
long
getGPIOAction(int channel)
Returns the GPIO action for a channel as set bysetGPIOAction(int, long)
.BrickletPerformanceDC.GPIOConfiguration
getGPIOConfiguration(int channel)
Returns the GPIO configuration for a channel as set bysetGPIOConfiguration(int, int, int)
.int
getGPIOLEDConfig(int channel)
Returns the LED configuration as set bysetGPIOLEDConfig(int, int)
boolean[]
getGPIOState()
Returns the GPIO state for both channels.Device.Identity
getIdentity()
Returns the UID, the UID where the Bricklet is connected to, the position, the hardware and firmware version as well as the device identifier.BrickletPerformanceDC.Motion
getMotion()
Returns the acceleration/deceleration as set bysetMotion(int, int)
.BrickletPerformanceDC.PowerStatistics
getPowerStatistics()
Returns input voltage, current usage and temperature of the driver.int
getPWMFrequency()
Returns the PWM frequency as set bysetPWMFrequency(int)
.BrickletPerformanceDC.SPITFPErrorCount
getSPITFPErrorCount()
Returns the error count for the communication between Brick and Bricklet.int
getStatusLEDConfig()
Returns the configuration as set bysetStatusLEDConfig(int)
int
getThermalShutdown()
Returns the thermal shutdown temperature as set bysetThermalShutdown(int)
.int
getVelocity()
Returns the velocity as set bysetVelocity(int)
.boolean
getVelocityReachedCallbackConfiguration()
Returns the listener configuration as set bysetVelocityReachedCallbackConfiguration(boolean)
.long
readUID()
Returns the current UID as an integer.void
removeCurrentVelocityListener(BrickletPerformanceDC.CurrentVelocityListener listener)
Removes a CurrentVelocity listener.void
removeEmergencyShutdownListener(BrickletPerformanceDC.EmergencyShutdownListener listener)
Removes a EmergencyShutdown listener.void
removeGPIOStateListener(BrickletPerformanceDC.GPIOStateListener listener)
Removes a GPIOState listener.void
removeVelocityReachedListener(BrickletPerformanceDC.VelocityReachedListener listener)
Removes a VelocityReached listener.void
reset()
Calling this function will reset the Bricklet.int
setBootloaderMode(int mode)
Sets the bootloader mode and returns the status after the requested mode change was instigated.void
setCCWLEDConfig(int config)
Configures the CCW LED to be either turned off, turned on, blink in heartbeat mode or if the motor turn counter-clockwise.void
setCurrentVelocityCallbackConfiguration(long period, boolean valueHasToChange)
The period is the period with which theBrickletPerformanceDC.CurrentVelocityListener
listener is triggered periodically.void
setCWLEDConfig(int config)
Configures the CW LED to be either turned off, turned on, blink in heartbeat mode or if the motor turn clockwise.void
setDriveMode(int mode)
Sets the drive mode.void
setEmergencyShutdownCallbackConfiguration(boolean enabled)
Enable/DisableBrickletPerformanceDC.EmergencyShutdownListener
listener.void
setEnabled(boolean enabled)
Enables/Disables the driver chip.void
setErrorLEDConfig(int config)
Configures the error LED to be either turned off, turned on, blink in heartbeat mode or show an error.void
setGPIOAction(int channel, long action)
Sets the GPIO action for the given channel.void
setGPIOConfiguration(int channel, int debounce, int stopDeceleration)
Sets the GPIO configuration for the given channel.void
setGPIOLEDConfig(int channel, int config)
Configures the GPIO LED to be either turned off, turned on, blink in heartbeat mode or the GPIO state.void
setMotion(int acceleration, int deceleration)
Sets the acceleration and deceleration of the motor.void
setPWMFrequency(int frequency)
Sets the frequency of the PWM with which the motor is driven.void
setStatusLEDConfig(int config)
Sets the status LED configuration.void
setThermalShutdown(int temperature)
Sets a temperature threshold that is used for thermal shutdown.void
setVelocity(int velocity)
Sets the velocity of the motor.void
setVelocityReachedCallbackConfiguration(boolean enabled)
Enable/DisableBrickletPerformanceDC.VelocityReachedListener
listener.void
setWriteFirmwarePointer(long pointer)
Sets the firmware pointer forwriteFirmware(int[])
.int
writeFirmware(int[] data)
Writes 64 Bytes of firmware at the position as written bysetWriteFirmwarePointer(long)
before.void
writeUID(long uid)
Writes a new UID into flash.-
Methods inherited from class com.tinkerforge.DeviceBase
getAPIVersion, getResponseExpected, setResponseExpected, setResponseExpectedAll
-
-
-
-
Field Detail
-
DEVICE_IDENTIFIER
public static final int DEVICE_IDENTIFIER
- See Also:
- Constant Field Values
-
DEVICE_DISPLAY_NAME
public static final java.lang.String DEVICE_DISPLAY_NAME
- See Also:
- Constant Field Values
-
FUNCTION_SET_ENABLED
public static final byte FUNCTION_SET_ENABLED
- See Also:
- Constant Field Values
-
FUNCTION_GET_ENABLED
public static final byte FUNCTION_GET_ENABLED
- See Also:
- Constant Field Values
-
FUNCTION_SET_VELOCITY
public static final byte FUNCTION_SET_VELOCITY
- See Also:
- Constant Field Values
-
FUNCTION_GET_VELOCITY
public static final byte FUNCTION_GET_VELOCITY
- See Also:
- Constant Field Values
-
FUNCTION_GET_CURRENT_VELOCITY
public static final byte FUNCTION_GET_CURRENT_VELOCITY
- See Also:
- Constant Field Values
-
FUNCTION_SET_MOTION
public static final byte FUNCTION_SET_MOTION
- See Also:
- Constant Field Values
-
FUNCTION_GET_MOTION
public static final byte FUNCTION_GET_MOTION
- See Also:
- Constant Field Values
-
FUNCTION_FULL_BRAKE
public static final byte FUNCTION_FULL_BRAKE
- See Also:
- Constant Field Values
-
FUNCTION_SET_DRIVE_MODE
public static final byte FUNCTION_SET_DRIVE_MODE
- See Also:
- Constant Field Values
-
FUNCTION_GET_DRIVE_MODE
public static final byte FUNCTION_GET_DRIVE_MODE
- See Also:
- Constant Field Values
-
FUNCTION_SET_PWM_FREQUENCY
public static final byte FUNCTION_SET_PWM_FREQUENCY
- See Also:
- Constant Field Values
-
FUNCTION_GET_PWM_FREQUENCY
public static final byte FUNCTION_GET_PWM_FREQUENCY
- See Also:
- Constant Field Values
-
FUNCTION_GET_POWER_STATISTICS
public static final byte FUNCTION_GET_POWER_STATISTICS
- See Also:
- Constant Field Values
-
FUNCTION_SET_THERMAL_SHUTDOWN
public static final byte FUNCTION_SET_THERMAL_SHUTDOWN
- See Also:
- Constant Field Values
-
FUNCTION_GET_THERMAL_SHUTDOWN
public static final byte FUNCTION_GET_THERMAL_SHUTDOWN
- See Also:
- Constant Field Values
-
FUNCTION_SET_GPIO_CONFIGURATION
public static final byte FUNCTION_SET_GPIO_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_GET_GPIO_CONFIGURATION
public static final byte FUNCTION_GET_GPIO_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_SET_GPIO_ACTION
public static final byte FUNCTION_SET_GPIO_ACTION
- See Also:
- Constant Field Values
-
FUNCTION_GET_GPIO_ACTION
public static final byte FUNCTION_GET_GPIO_ACTION
- See Also:
- Constant Field Values
-
FUNCTION_GET_GPIO_STATE
public static final byte FUNCTION_GET_GPIO_STATE
- See Also:
- Constant Field Values
-
FUNCTION_SET_ERROR_LED_CONFIG
public static final byte FUNCTION_SET_ERROR_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_GET_ERROR_LED_CONFIG
public static final byte FUNCTION_GET_ERROR_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_SET_CW_LED_CONFIG
public static final byte FUNCTION_SET_CW_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_GET_CW_LED_CONFIG
public static final byte FUNCTION_GET_CW_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_SET_CCW_LED_CONFIG
public static final byte FUNCTION_SET_CCW_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_GET_CCW_LED_CONFIG
public static final byte FUNCTION_GET_CCW_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_SET_GPIO_LED_CONFIG
public static final byte FUNCTION_SET_GPIO_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_GET_GPIO_LED_CONFIG
public static final byte FUNCTION_GET_GPIO_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_SET_EMERGENCY_SHUTDOWN_CALLBACK_CONFIGURATION
public static final byte FUNCTION_SET_EMERGENCY_SHUTDOWN_CALLBACK_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_GET_EMERGENCY_SHUTDOWN_CALLBACK_CONFIGURATION
public static final byte FUNCTION_GET_EMERGENCY_SHUTDOWN_CALLBACK_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_SET_VELOCITY_REACHED_CALLBACK_CONFIGURATION
public static final byte FUNCTION_SET_VELOCITY_REACHED_CALLBACK_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_GET_VELOCITY_REACHED_CALLBACK_CONFIGURATION
public static final byte FUNCTION_GET_VELOCITY_REACHED_CALLBACK_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_SET_CURRENT_VELOCITY_CALLBACK_CONFIGURATION
public static final byte FUNCTION_SET_CURRENT_VELOCITY_CALLBACK_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_GET_CURRENT_VELOCITY_CALLBACK_CONFIGURATION
public static final byte FUNCTION_GET_CURRENT_VELOCITY_CALLBACK_CONFIGURATION
- See Also:
- Constant Field Values
-
FUNCTION_GET_SPITFP_ERROR_COUNT
public static final byte FUNCTION_GET_SPITFP_ERROR_COUNT
- See Also:
- Constant Field Values
-
FUNCTION_SET_BOOTLOADER_MODE
public static final byte FUNCTION_SET_BOOTLOADER_MODE
- See Also:
- Constant Field Values
-
FUNCTION_GET_BOOTLOADER_MODE
public static final byte FUNCTION_GET_BOOTLOADER_MODE
- See Also:
- Constant Field Values
-
FUNCTION_SET_WRITE_FIRMWARE_POINTER
public static final byte FUNCTION_SET_WRITE_FIRMWARE_POINTER
- See Also:
- Constant Field Values
-
FUNCTION_WRITE_FIRMWARE
public static final byte FUNCTION_WRITE_FIRMWARE
- See Also:
- Constant Field Values
-
FUNCTION_SET_STATUS_LED_CONFIG
public static final byte FUNCTION_SET_STATUS_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_GET_STATUS_LED_CONFIG
public static final byte FUNCTION_GET_STATUS_LED_CONFIG
- See Also:
- Constant Field Values
-
FUNCTION_GET_CHIP_TEMPERATURE
public static final byte FUNCTION_GET_CHIP_TEMPERATURE
- See Also:
- Constant Field Values
-
FUNCTION_RESET
public static final byte FUNCTION_RESET
- See Also:
- Constant Field Values
-
FUNCTION_WRITE_UID
public static final byte FUNCTION_WRITE_UID
- See Also:
- Constant Field Values
-
FUNCTION_READ_UID
public static final byte FUNCTION_READ_UID
- See Also:
- Constant Field Values
-
FUNCTION_GET_IDENTITY
public static final byte FUNCTION_GET_IDENTITY
- See Also:
- Constant Field Values
-
DRIVE_MODE_DRIVE_BRAKE
public static final int DRIVE_MODE_DRIVE_BRAKE
- See Also:
- Constant Field Values
-
DRIVE_MODE_DRIVE_COAST
public static final int DRIVE_MODE_DRIVE_COAST
- See Also:
- Constant Field Values
-
GPIO_ACTION_NONE
public static final long GPIO_ACTION_NONE
- See Also:
- Constant Field Values
-
GPIO_ACTION_NORMAL_STOP_RISING_EDGE
public static final long GPIO_ACTION_NORMAL_STOP_RISING_EDGE
- See Also:
- Constant Field Values
-
GPIO_ACTION_NORMAL_STOP_FALLING_EDGE
public static final long GPIO_ACTION_NORMAL_STOP_FALLING_EDGE
- See Also:
- Constant Field Values
-
GPIO_ACTION_FULL_BRAKE_RISING_EDGE
public static final long GPIO_ACTION_FULL_BRAKE_RISING_EDGE
- See Also:
- Constant Field Values
-
GPIO_ACTION_FULL_BRAKE_FALLING_EDGE
public static final long GPIO_ACTION_FULL_BRAKE_FALLING_EDGE
- See Also:
- Constant Field Values
-
GPIO_ACTION_CALLBACK_RISING_EDGE
public static final long GPIO_ACTION_CALLBACK_RISING_EDGE
- See Also:
- Constant Field Values
-
GPIO_ACTION_CALLBACK_FALLING_EDGE
public static final long GPIO_ACTION_CALLBACK_FALLING_EDGE
- See Also:
- Constant Field Values
-
ERROR_LED_CONFIG_OFF
public static final int ERROR_LED_CONFIG_OFF
- See Also:
- Constant Field Values
-
ERROR_LED_CONFIG_ON
public static final int ERROR_LED_CONFIG_ON
- See Also:
- Constant Field Values
-
ERROR_LED_CONFIG_SHOW_HEARTBEAT
public static final int ERROR_LED_CONFIG_SHOW_HEARTBEAT
- See Also:
- Constant Field Values
-
ERROR_LED_CONFIG_SHOW_ERROR
public static final int ERROR_LED_CONFIG_SHOW_ERROR
- See Also:
- Constant Field Values
-
CW_LED_CONFIG_OFF
public static final int CW_LED_CONFIG_OFF
- See Also:
- Constant Field Values
-
CW_LED_CONFIG_ON
public static final int CW_LED_CONFIG_ON
- See Also:
- Constant Field Values
-
CW_LED_CONFIG_SHOW_HEARTBEAT
public static final int CW_LED_CONFIG_SHOW_HEARTBEAT
- See Also:
- Constant Field Values
-
CW_LED_CONFIG_SHOW_CW_AS_FORWARD
public static final int CW_LED_CONFIG_SHOW_CW_AS_FORWARD
- See Also:
- Constant Field Values
-
CW_LED_CONFIG_SHOW_CW_AS_BACKWARD
public static final int CW_LED_CONFIG_SHOW_CW_AS_BACKWARD
- See Also:
- Constant Field Values
-
CCW_LED_CONFIG_OFF
public static final int CCW_LED_CONFIG_OFF
- See Also:
- Constant Field Values
-
CCW_LED_CONFIG_ON
public static final int CCW_LED_CONFIG_ON
- See Also:
- Constant Field Values
-
CCW_LED_CONFIG_SHOW_HEARTBEAT
public static final int CCW_LED_CONFIG_SHOW_HEARTBEAT
- See Also:
- Constant Field Values
-
CCW_LED_CONFIG_SHOW_CCW_AS_FORWARD
public static final int CCW_LED_CONFIG_SHOW_CCW_AS_FORWARD
- See Also:
- Constant Field Values
-
CCW_LED_CONFIG_SHOW_CCW_AS_BACKWARD
public static final int CCW_LED_CONFIG_SHOW_CCW_AS_BACKWARD
- See Also:
- Constant Field Values
-
GPIO_LED_CONFIG_OFF
public static final int GPIO_LED_CONFIG_OFF
- See Also:
- Constant Field Values
-
GPIO_LED_CONFIG_ON
public static final int GPIO_LED_CONFIG_ON
- See Also:
- Constant Field Values
-
GPIO_LED_CONFIG_SHOW_HEARTBEAT
public static final int GPIO_LED_CONFIG_SHOW_HEARTBEAT
- See Also:
- Constant Field Values
-
GPIO_LED_CONFIG_SHOW_GPIO_ACTIVE_HIGH
public static final int GPIO_LED_CONFIG_SHOW_GPIO_ACTIVE_HIGH
- See Also:
- Constant Field Values
-
GPIO_LED_CONFIG_SHOW_GPIO_ACTIVE_LOW
public static final int GPIO_LED_CONFIG_SHOW_GPIO_ACTIVE_LOW
- See Also:
- Constant Field Values
-
BOOTLOADER_MODE_BOOTLOADER
public static final int BOOTLOADER_MODE_BOOTLOADER
- See Also:
- Constant Field Values
-
BOOTLOADER_MODE_FIRMWARE
public static final int BOOTLOADER_MODE_FIRMWARE
- See Also:
- Constant Field Values
-
BOOTLOADER_MODE_BOOTLOADER_WAIT_FOR_REBOOT
public static final int BOOTLOADER_MODE_BOOTLOADER_WAIT_FOR_REBOOT
- See Also:
- Constant Field Values
-
BOOTLOADER_MODE_FIRMWARE_WAIT_FOR_REBOOT
public static final int BOOTLOADER_MODE_FIRMWARE_WAIT_FOR_REBOOT
- See Also:
- Constant Field Values
-
BOOTLOADER_MODE_FIRMWARE_WAIT_FOR_ERASE_AND_REBOOT
public static final int BOOTLOADER_MODE_FIRMWARE_WAIT_FOR_ERASE_AND_REBOOT
- See Also:
- Constant Field Values
-
BOOTLOADER_STATUS_OK
public static final int BOOTLOADER_STATUS_OK
- See Also:
- Constant Field Values
-
BOOTLOADER_STATUS_INVALID_MODE
public static final int BOOTLOADER_STATUS_INVALID_MODE
- See Also:
- Constant Field Values
-
BOOTLOADER_STATUS_NO_CHANGE
public static final int BOOTLOADER_STATUS_NO_CHANGE
- See Also:
- Constant Field Values
-
BOOTLOADER_STATUS_ENTRY_FUNCTION_NOT_PRESENT
public static final int BOOTLOADER_STATUS_ENTRY_FUNCTION_NOT_PRESENT
- See Also:
- Constant Field Values
-
BOOTLOADER_STATUS_DEVICE_IDENTIFIER_INCORRECT
public static final int BOOTLOADER_STATUS_DEVICE_IDENTIFIER_INCORRECT
- See Also:
- Constant Field Values
-
BOOTLOADER_STATUS_CRC_MISMATCH
public static final int BOOTLOADER_STATUS_CRC_MISMATCH
- See Also:
- Constant Field Values
-
STATUS_LED_CONFIG_OFF
public static final int STATUS_LED_CONFIG_OFF
- See Also:
- Constant Field Values
-
STATUS_LED_CONFIG_ON
public static final int STATUS_LED_CONFIG_ON
- See Also:
- Constant Field Values
-
STATUS_LED_CONFIG_SHOW_HEARTBEAT
public static final int STATUS_LED_CONFIG_SHOW_HEARTBEAT
- See Also:
- Constant Field Values
-
STATUS_LED_CONFIG_SHOW_STATUS
public static final int STATUS_LED_CONFIG_SHOW_STATUS
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BrickletPerformanceDC
public BrickletPerformanceDC(java.lang.String uid, IPConnection ipcon)
Creates an object with the unique device ID \c uid. and adds it to the IP Connection \c ipcon.
-
-
Method Detail
-
setEnabled
public void setEnabled(boolean enabled) throws TinkerforgeException
Enables/Disables the driver chip. The driver parameters can be configured (velocity, acceleration, etc) before it is enabled.- Throws:
TinkerforgeException
-
getEnabled
public boolean getEnabled() throws TinkerforgeException
Returns *true* if the driver chip is enabled, *false* otherwise.- Throws:
TinkerforgeException
-
setVelocity
public void setVelocity(int velocity) throws TinkerforgeException
Sets the velocity of the motor. Whereas -32767 is full speed backward, 0 is stop and 32767 is full speed forward. Depending on the acceleration (seesetMotion(int, int)
), the motor is not immediately brought to the velocity but smoothly accelerated. The velocity describes the duty cycle of the PWM with which the motor is controlled, e.g. a velocity of 3277 sets a PWM with a 10% duty cycle. You can not only control the duty cycle of the PWM but also the frequency, seesetPWMFrequency(int)
.- Throws:
TinkerforgeException
-
getVelocity
public int getVelocity() throws TinkerforgeException
Returns the velocity as set bysetVelocity(int)
.- Throws:
TinkerforgeException
-
getCurrentVelocity
public int getCurrentVelocity() throws TinkerforgeException
Returns the *current* velocity of the motor. This value is different fromgetVelocity()
whenever the motor is currently accelerating to a goal set bysetVelocity(int)
.- Throws:
TinkerforgeException
-
setMotion
public void setMotion(int acceleration, int deceleration) throws TinkerforgeException
Sets the acceleration and deceleration of the motor. It is given in *velocity/s*. An acceleration of 10000 means, that every second the velocity is increased by 10000 (or about 30% duty cycle). For example: If the current velocity is 0 and you want to accelerate to a velocity of 16000 (about 50% duty cycle) in 10 seconds, you should set an acceleration of 1600. If acceleration and deceleration is set to 0, there is no speed ramping, i.e. a new velocity is immediately given to the motor.- Throws:
TinkerforgeException
-
getMotion
public BrickletPerformanceDC.Motion getMotion() throws TinkerforgeException
Returns the acceleration/deceleration as set bysetMotion(int, int)
.- Throws:
TinkerforgeException
-
fullBrake
public void fullBrake() throws TinkerforgeException
Executes an active full brake. \warning This function is for emergency purposes, where an immediate brake is necessary. Depending on the current velocity and the strength of the motor, a full brake can be quite violent. CallsetVelocity(int)
with 0 if you just want to stop the motor.- Throws:
TinkerforgeException
-
setDriveMode
public void setDriveMode(int mode) throws TinkerforgeException
Sets the drive mode. Possible modes are: * 0 = Drive/Brake * 1 = Drive/Coast These modes are different kinds of motor controls. In Drive/Brake mode, the motor is always either driving or braking. There is no freewheeling. Advantages are: A more linear correlation between PWM and velocity, more exact accelerations and the possibility to drive with slower velocities. In Drive/Coast mode, the motor is always either driving or freewheeling. Advantages are: Less current consumption and less demands on the motor and driver chip.- Throws:
TinkerforgeException
-
getDriveMode
public int getDriveMode() throws TinkerforgeException
Returns the drive mode, as set bysetDriveMode(int)
.- Throws:
TinkerforgeException
-
setPWMFrequency
public void setPWMFrequency(int frequency) throws TinkerforgeException
Sets the frequency of the PWM with which the motor is driven. Often a high frequency is less noisy and the motor runs smoother. However, with a low frequency there are less switches and therefore fewer switching losses. Also with most motors lower frequencies enable higher torque. If you have no idea what all this means, just ignore this function and use the default frequency, it will very likely work fine.- Throws:
TinkerforgeException
-
getPWMFrequency
public int getPWMFrequency() throws TinkerforgeException
Returns the PWM frequency as set bysetPWMFrequency(int)
.- Throws:
TinkerforgeException
-
getPowerStatistics
public BrickletPerformanceDC.PowerStatistics getPowerStatistics() throws TinkerforgeException
Returns input voltage, current usage and temperature of the driver.- Throws:
TinkerforgeException
-
setThermalShutdown
public void setThermalShutdown(int temperature) throws TinkerforgeException
Sets a temperature threshold that is used for thermal shutdown. Additionally to this user defined threshold the driver chip will shut down at a temperature of 150°C. If a thermal shutdown is triggered the driver is disabled and has to be explicitly re-enabled withsetEnabled(boolean)
.- Throws:
TinkerforgeException
-
getThermalShutdown
public int getThermalShutdown() throws TinkerforgeException
Returns the thermal shutdown temperature as set bysetThermalShutdown(int)
.- Throws:
TinkerforgeException
-
setGPIOConfiguration
public void setGPIOConfiguration(int channel, int debounce, int stopDeceleration) throws TinkerforgeException
Sets the GPIO configuration for the given channel. You can configure a debounce and the deceleration that is used if the action is configured as ``normal stop``. SeesetGPIOAction(int, long)
.- Throws:
TinkerforgeException
-
getGPIOConfiguration
public BrickletPerformanceDC.GPIOConfiguration getGPIOConfiguration(int channel) throws TinkerforgeException
Returns the GPIO configuration for a channel as set bysetGPIOConfiguration(int, int, int)
.- Throws:
TinkerforgeException
-
setGPIOAction
public void setGPIOAction(int channel, long action) throws TinkerforgeException
Sets the GPIO action for the given channel. The action can be a normal stop, a full brake or a listener. Each for a rising edge or falling edge. The actions are a bitmask they can be used at the same time. You can for example trigger a full brake and a listener at the same time or for rising and falling edge. The deceleration speed for the normal stop can be configured withsetGPIOConfiguration(int, int, int)
.- Throws:
TinkerforgeException
-
getGPIOAction
public long getGPIOAction(int channel) throws TinkerforgeException
Returns the GPIO action for a channel as set bysetGPIOAction(int, long)
.- Throws:
TinkerforgeException
-
getGPIOState
public boolean[] getGPIOState() throws TinkerforgeException
Returns the GPIO state for both channels. True if the state is ``high`` and false if the state is ``low``.- Throws:
TinkerforgeException
-
setErrorLEDConfig
public void setErrorLEDConfig(int config) throws TinkerforgeException
Configures the error LED to be either turned off, turned on, blink in heartbeat mode or show an error. If the LED is configured to show errors it has three different states: * Off: No error present. * 1s interval blinking: Input voltage too low (below 6V). * 250ms interval blinking: Overtemperature or overcurrent.- Throws:
TinkerforgeException
-
getErrorLEDConfig
public int getErrorLEDConfig() throws TinkerforgeException
Returns the LED configuration as set bysetErrorLEDConfig(int)
- Throws:
TinkerforgeException
-
setCWLEDConfig
public void setCWLEDConfig(int config) throws TinkerforgeException
Configures the CW LED to be either turned off, turned on, blink in heartbeat mode or if the motor turn clockwise.- Throws:
TinkerforgeException
-
getCWLEDConfig
public int getCWLEDConfig() throws TinkerforgeException
Returns the LED configuration as set bysetCWLEDConfig(int)
- Throws:
TinkerforgeException
-
setCCWLEDConfig
public void setCCWLEDConfig(int config) throws TinkerforgeException
Configures the CCW LED to be either turned off, turned on, blink in heartbeat mode or if the motor turn counter-clockwise.- Throws:
TinkerforgeException
-
getCCWLEDConfig
public int getCCWLEDConfig() throws TinkerforgeException
Returns the LED configuration as set bysetCCWLEDConfig(int)
- Throws:
TinkerforgeException
-
setGPIOLEDConfig
public void setGPIOLEDConfig(int channel, int config) throws TinkerforgeException
Configures the GPIO LED to be either turned off, turned on, blink in heartbeat mode or the GPIO state. The GPIO LED can be configured for both channels.- Throws:
TinkerforgeException
-
getGPIOLEDConfig
public int getGPIOLEDConfig(int channel) throws TinkerforgeException
Returns the LED configuration as set bysetGPIOLEDConfig(int, int)
- Throws:
TinkerforgeException
-
setEmergencyShutdownCallbackConfiguration
public void setEmergencyShutdownCallbackConfiguration(boolean enabled) throws TinkerforgeException
Enable/DisableBrickletPerformanceDC.EmergencyShutdownListener
listener.- Throws:
TinkerforgeException
-
getEmergencyShutdownCallbackConfiguration
public boolean getEmergencyShutdownCallbackConfiguration() throws TinkerforgeException
Returns the listener configuration as set bysetEmergencyShutdownCallbackConfiguration(boolean)
.- Throws:
TinkerforgeException
-
setVelocityReachedCallbackConfiguration
public void setVelocityReachedCallbackConfiguration(boolean enabled) throws TinkerforgeException
Enable/DisableBrickletPerformanceDC.VelocityReachedListener
listener.- Throws:
TinkerforgeException
-
getVelocityReachedCallbackConfiguration
public boolean getVelocityReachedCallbackConfiguration() throws TinkerforgeException
Returns the listener configuration as set bysetVelocityReachedCallbackConfiguration(boolean)
.- Throws:
TinkerforgeException
-
setCurrentVelocityCallbackConfiguration
public void setCurrentVelocityCallbackConfiguration(long period, boolean valueHasToChange) throws TinkerforgeException
The period is the period with which theBrickletPerformanceDC.CurrentVelocityListener
listener is triggered periodically. A value of 0 turns the listener off. If the `value has to change`-parameter is set to true, the listener is only triggered after the value has changed. If the value didn't change within the period, the listener is triggered immediately on change. If it is set to false, the listener is continuously triggered with the period, independent of the value.- Throws:
TinkerforgeException
-
getCurrentVelocityCallbackConfiguration
public BrickletPerformanceDC.CurrentVelocityCallbackConfiguration getCurrentVelocityCallbackConfiguration() throws TinkerforgeException
Returns the listener configuration as set bysetCurrentVelocityCallbackConfiguration(long, boolean)
.- Throws:
TinkerforgeException
-
getSPITFPErrorCount
public BrickletPerformanceDC.SPITFPErrorCount getSPITFPErrorCount() throws TinkerforgeException
Returns the error count for the communication between Brick and Bricklet. The errors are divided into * ACK checksum errors, * message checksum errors, * framing errors and * overflow errors. The errors counts are for errors that occur on the Bricklet side. All Bricks have a similar function that returns the errors on the Brick side.- Throws:
TinkerforgeException
-
setBootloaderMode
public int setBootloaderMode(int mode) throws TinkerforgeException
Sets the bootloader mode and returns the status after the requested mode change was instigated. You can change from bootloader mode to firmware mode and vice versa. A change from bootloader mode to firmware mode will only take place if the entry function, device identifier and CRC are present and correct. This function is used by Brick Viewer during flashing. It should not be necessary to call it in a normal user program.- Throws:
TinkerforgeException
-
getBootloaderMode
public int getBootloaderMode() throws TinkerforgeException
Returns the current bootloader mode, seesetBootloaderMode(int)
.- Throws:
TinkerforgeException
-
setWriteFirmwarePointer
public void setWriteFirmwarePointer(long pointer) throws TinkerforgeException
Sets the firmware pointer forwriteFirmware(int[])
. The pointer has to be increased by chunks of size 64. The data is written to flash every 4 chunks (which equals to one page of size 256). This function is used by Brick Viewer during flashing. It should not be necessary to call it in a normal user program.- Throws:
TinkerforgeException
-
writeFirmware
public int writeFirmware(int[] data) throws TinkerforgeException
Writes 64 Bytes of firmware at the position as written bysetWriteFirmwarePointer(long)
before. The firmware is written to flash every 4 chunks. You can only write firmware in bootloader mode. This function is used by Brick Viewer during flashing. It should not be necessary to call it in a normal user program.- Throws:
TinkerforgeException
-
setStatusLEDConfig
public void setStatusLEDConfig(int config) throws TinkerforgeException
Sets the status LED configuration. By default the LED shows communication traffic between Brick and Bricklet, it flickers once for every 10 received data packets. You can also turn the LED permanently on/off or show a heartbeat. If the Bricklet is in bootloader mode, the LED is will show heartbeat by default.- Throws:
TinkerforgeException
-
getStatusLEDConfig
public int getStatusLEDConfig() throws TinkerforgeException
Returns the configuration as set bysetStatusLEDConfig(int)
- Throws:
TinkerforgeException
-
getChipTemperature
public int getChipTemperature() throws TinkerforgeException
Returns the temperature as measured inside the microcontroller. The value returned is not the ambient temperature! The temperature is only proportional to the real temperature and it has bad accuracy. Practically it is only useful as an indicator for temperature changes.- Throws:
TinkerforgeException
-
reset
public void reset() throws TinkerforgeException
Calling this function will reset the Bricklet. All configurations will be lost. After a reset you have to create new device objects, calling functions on the existing ones will result in undefined behavior!- Throws:
TinkerforgeException
-
writeUID
public void writeUID(long uid) throws TinkerforgeException
Writes a new UID into flash. If you want to set a new UID you have to decode the Base58 encoded UID string into an integer first. We recommend that you use Brick Viewer to change the UID.- Throws:
TinkerforgeException
-
readUID
public long readUID() throws TinkerforgeException
Returns the current UID as an integer. Encode as Base58 to get the usual string version.- Throws:
TinkerforgeException
-
getIdentity
public Device.Identity getIdentity() throws TinkerforgeException
Returns the UID, the UID where the Bricklet is connected to, the position, the hardware and firmware version as well as the device identifier. The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port). A Bricklet connected to an :ref:`Isolator Bricklet <isolator_bricklet>` is always at position 'z'. The device identifier numbers can be found :ref:`here <device_identifier>`. |device_identifier_constant|- Specified by:
getIdentity
in classDevice
- Throws:
TinkerforgeException
-
addEmergencyShutdownListener
public void addEmergencyShutdownListener(BrickletPerformanceDC.EmergencyShutdownListener listener)
Adds a EmergencyShutdown listener.
-
removeEmergencyShutdownListener
public void removeEmergencyShutdownListener(BrickletPerformanceDC.EmergencyShutdownListener listener)
Removes a EmergencyShutdown listener.
-
addVelocityReachedListener
public void addVelocityReachedListener(BrickletPerformanceDC.VelocityReachedListener listener)
Adds a VelocityReached listener.
-
removeVelocityReachedListener
public void removeVelocityReachedListener(BrickletPerformanceDC.VelocityReachedListener listener)
Removes a VelocityReached listener.
-
addCurrentVelocityListener
public void addCurrentVelocityListener(BrickletPerformanceDC.CurrentVelocityListener listener)
Adds a CurrentVelocity listener.
-
removeCurrentVelocityListener
public void removeCurrentVelocityListener(BrickletPerformanceDC.CurrentVelocityListener listener)
Removes a CurrentVelocity listener.
-
addGPIOStateListener
public void addGPIOStateListener(BrickletPerformanceDC.GPIOStateListener listener)
Adds a GPIOState listener.
-
removeGPIOStateListener
public void removeGPIOStateListener(BrickletPerformanceDC.GPIOStateListener listener)
Removes a GPIOState listener.
-
-