Rail Entity

group RailEntity

Provides power rail functionality on certain modules. This entity is only available on certain modules. The RailClass can be used to control power to downstream devices, I has the ability to take current and voltage measurements, and depending on hardware, may have additional modes and capabilities.

void rail_getCurrent(unsigned int *id, struct Result *result, int railNum)

Get the rail current.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the current in micro amps (1e-6A) or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_getCurrentLimit(unsigned int *id, struct Result *result, int railNum)

Get the rail current limit setting.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the current limit in micro amps (1e-6A) or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_setCurrentLimit(unsigned int *id, struct Result *result, int railNum, int currentLimit)

Set the rail current limit setting.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR or a non zero Error code.

  • railNum: The index of the Rail entity.

  • currentLimit: The new current limit to be set.

void rail_getTemperature(unsigned int *id, struct Result *result, int railNum)

Get the rail temperature.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the temperature in micro celsius (1e-6C) or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_getEnable(unsigned int *id, struct Result *result, int railNum)

Get the state of the external rail switch. Not all rails can be switched on and off.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the current enable state or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_setEnable(unsigned int *id, struct Result *result, int railNum, int enable)

Set the state of the external rail switch. Not all rails can be switched on and off.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR or a non zero Error code.

  • railNum: The index of the Rail entity.

  • enable: The state to be set. 0 = Disabled; 1 = Enabled.

void rail_getVoltage(unsigned int *id, struct Result *result, int railNum)

Get the rail supply voltage. Rail voltage control capabilities vary between modules.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the voltage in micro volts (1e-6V) or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_setVoltage(unsigned int *id, struct Result *result, int railNum, int voltage)

Set the rail supply voltage. Rail voltage control capabilities vary between modules.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR or a non zero Error code.

  • railNum: The index of the Rail entity.

  • voltage: The voltage to be set

void rail_getVoltageSetpoint(unsigned int *id, struct Result *result, int railNum)

Get the rail setpoint voltage. Rail voltage control capabilities vary between modules.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the voltage setpoint in micro volts or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_getKelvinSenseEnable(unsigned int *id, struct Result *result, int railNum)

Determine whether kelvin sensing is enabled or disabled.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and whether kelvin sensing is enabled or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_setKelvinSenseEnable(unsigned int *id, struct Result *result, int railNum, int enable)

Enable or Disable kelvin sensing on the module.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR or a non zero Error code.

  • railNum: The index of the Rail entity.

  • enable: The state to be set. 0 = Disabled; 1 = Enabled.

void rail_getKelvinSenseState(unsigned int *id, struct Result *result, int railNum)

Determine whether kelvin sensing has been disabled by the system.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the state of kelvin sensing circuitry or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_getOperationalMode(unsigned int *id, struct Result *result, int railNum)

Determine the current operational mode of the system.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the kelvin sensing operational mode or a non zero Error code.

  • railNum: The index of the Rail entity.

void rail_setOperationalMode(unsigned int *id, struct Result *result, int railNum, int mode)

Set the operational mode of the rail.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR or a non zero Error code.

  • railNum: The index of the Rail entity.

  • mode: The mode to be set.

void rail_getOperationalState(unsigned int *id, struct Result *result, int railNum)

Determine the current operational state of the system.

Parameters
  • id: The id assigned by the create stem vi.

  • result: object, containing NO_ERROR and the kelvin sensing operational state or a non zero Error code.

  • railNum: The index of the Rail entity.