CANopen Slave Protocol Stack 
Version 7.08.00
Loading...
Searching...
No Matches
cos453.h File Reference

Detailed Description

This device profile covers programmable and non-programmable power-supply devices with single or multiple outputs that are voltage-, current-, or power-controlled. It applies to AC/AC, DC/DC, AC/DC, and DC/AC converters, including switched-mode and linear-regulated units.

Each device manages its global input circuitry and up to 8 independent outputs. The device and every output are governed by a three-state FSA (Disabled, Enabled, Fault). Programmable devices additionally support static mode (driven by set values in the active bank) and dynamic mode (autonomous bank-sequence execution).

Object dictionary

The module adds the following objects to the object dictionary:

Index Description Configuration Symbol
6000h SI unit and prefix -
6010h General device commands -
6011h Device status -
6012h Device failure status -
6013h Device status delay time -
6014h Device failure status delay time -
6020h Temperature actual value -
6021h Temperature threshold 1 -
6022h Temperature threshold 2 -
6025h Temperature threshold 1 return value -
6026h Temperature threshold 2 return value -
6030h Operating hours -
6031h Digital input configuration -
6032h Digital output configuration -
6100h Input command -
6111h Input status -
6112h Input failure status -
6113h Input actual values -
6114h Input threshold 1 parameters -
6115h Input threshold 2 parameters -
6118h Input status delay time -
6119h Input failure status delay time -
611Ah Input threshold 1 return parameters -
611Bh Input threshold 2 return parameters -
6200h Output 1 commands COS_DS453
6201h Output 1 status COS_DS453
6202h Output 1 failure status COS_DS453
6203h Output 1 ranges COS_DS453
6204h Output 1 actual values COS_DS453
6205h Output 1 set values COS_DS453
6206h Output 1 sequence COS_DS453
6207h Output 1 temperature thresholds COS_DS453
6210h Output 2 objects COS_DS453
.. to ..
6277h Output 8 objects COS_DS453
Include dependency graph for cos453.h:

Data Structures

struct  Cos453_Bank_s
struct  Cos453_InputValues_s
struct  Cos453_OutputRanges_s
struct  Cos453_OutputActualValues_s
struct  Cos453_OutputTempThresholds_s
struct  Cos453_SI_Unit_s
struct  Cos453_DeviceCmd_s
struct  Cos453_DeviceStatus_s
struct  Cos453_DeviceFailureStatus_s
struct  Cos453_DeviceStatusDelay_s
struct  Cos453_DeviceFailureStatusDelay_s
struct  Cos453_DigitalInputConfig_s
struct  Cos453_DigitalOutputConfig_s
struct  Cos453_InputCmd_s
struct  Cos453_InputFailureStatus_s
struct  Cos453_InputFailureStatusDelay_s
struct  Cos453_InputStatus_s
struct  Cos453_InputStatusDelay_s
struct  Cos453_OutputCmd_s
struct  Cos453_OutputStatus_s
struct  Cos453_OutputFailureStatus_s
struct  Cos453_OutputSequence_s

Macros

#define COS_DS453_VERSION_MAJOR   1
#define COS_DS453_VERSION_MINOR   0
#define COS_DS453_DT_UNSIGNED8_MIN   ((uint8_t) 0x00)
#define COS_DS453_DT_UNSIGNED8_MAX   ((uint8_t) 0xFA)
#define COS_DS453_DT_UNSIGNED8_INV   ((uint8_t) 0xFE)
#define COS_DS453_DT_UNSIGNED8_VNA   ((uint8_t) 0xFF)
#define COS_DS453_DT_UNSIGNED16_MIN   ((uint16_t) 0x0000)
#define COS_DS453_DT_UNSIGNED16_MAX   ((uint16_t) 0xFFFA)
#define COS_DS453_DT_UNSIGNED16_INV   ((uint16_t) 0xFFFE)
#define COS_DS453_DT_UNSIGNED16_VNA   ((uint16_t) 0xFFFF)
#define COS_DS453_DT_UNSIGNED32_MIN   ((uint32_t) 0x00000000)
#define COS_DS453_DT_UNSIGNED32_MAX   ((uint32_t) 0xFAFFFFFFU)
#define COS_DS453_DT_UNSIGNED32_INV   ((uint32_t) 0xFE000000U)
#define COS_DS453_DT_UNSIGNED32_VNA   ((uint32_t) 0xFF000000U)
#define COS_DS453_DT_INTEGER8_MIN   ((int8_t) 0x83)
#define COS_DS453_DT_INTEGER8_MAX   ((int8_t) 0x7D)
#define COS_DS453_DT_INTEGER8_INV   ((int8_t) 0x7E)
#define COS_DS453_DT_INTEGER8_VNA   ((int8_t) 0x7F)
#define COS_DS453_DT_INTEGER16_MIN   ((int16_t) 0x8003)
#define COS_DS453_DT_INTEGER16_MAX   ((int16_t) 0x7FFD)
#define COS_DS453_DT_INTEGER16_INV   ((int16_t) 0x7FFE)
#define COS_DS453_DT_INTEGER16_VNA   ((int16_t) 0x7FFF)
#define COS_DS453_DT_INTEGER32_MIN   ((int32_t) 0x80000003)
#define COS_DS453_DT_INTEGER32_MAX   ((int32_t) 0x7FFFFFFD)
#define COS_DS453_DT_INTEGER32_INV   ((int32_t) 0x7FFFFFFE)
#define COS_DS453_DT_INTEGER32_VNA   ((int32_t) 0x7FFFFFFF)
#define COS_DS453_DT_DISCRETE_OFF   ((uint8_t) 0x00)
#define COS_DS453_DT_DISCRETE_ON   ((uint8_t) 0x01)
#define COS_DS453_DT_DISCRETE_INV   ((uint8_t) 0x02)
#define COS_DS453_DT_DISCRETE_VNA   ((uint8_t) 0x03)
#define EMCY_ERR_453_DEVICE_STATUS   ((uint16_t) 0xFF01)
#define EMCY_ERR_453_DEVICE_FAILURE_STATUS   ((uint16_t) 0xFF02)
#define EMCY_ERR_453_INPUT_STATUS   ((uint16_t) 0xFF03)
#define EMCY_ERR_453_INPUT_FAILURE_STATUS   ((uint16_t) 0xFF04)
#define EMCY_ERR_453_OUTPUT1_STATUS   ((uint16_t) 0xFF05)
#define EMCY_ERR_453_OUTPUT1_FAILURE_STATUS   ((uint16_t) 0xFF06)
#define EMCY_ERR_453_OUTPUT2_STATUS   ((uint16_t) 0xFF07)
#define EMCY_ERR_453_OUTPUT2_FAILURE_STATUS   ((uint16_t) 0xFF08)
#define EMCY_ERR_453_OUTPUT3_STATUS   ((uint16_t) 0xFF09)
#define EMCY_ERR_453_OUTPUT3_FAILURE_STATUS   ((uint16_t) 0xFF0A)
#define EMCY_ERR_453_OUTPUT4_STATUS   ((uint16_t) 0xFF0B)
#define EMCY_ERR_453_OUTPUT4_FAILURE_STATUS   ((uint16_t) 0xFF0C)
#define EMCY_ERR_453_OUTPUT5_STATUS   ((uint16_t) 0xFF0D)
#define EMCY_ERR_453_OUTPUT5_FAILURE_STATUS   ((uint16_t) 0xFF0E)
#define EMCY_ERR_453_OUTPUT6_STATUS   ((uint16_t) 0xFF0F)
#define EMCY_ERR_453_OUTPUT6_FAILURE_STATUS   ((uint16_t) 0xFF10)
#define EMCY_ERR_453_OUTPUT7_STATUS   ((uint16_t) 0xFF11)
#define EMCY_ERR_453_OUTPUT7_FAILURE_STATUS   ((uint16_t) 0xFF12)
#define EMCY_ERR_453_OUTPUT8_STATUS   ((uint16_t) 0xFF13)
#define EMCY_ERR_453_OUTPUT8_FAILURE_STATUS   ((uint16_t) 0xFF14)

Functions

uint8_t Cos453_ActivateBank (uint8_t ubOutputV, uint8_t ubBankV)
const Cos453_Bank_tsCos453_GetBank (uint8_t ubOutputV)
const Cos453_DeviceCmd_tsCos453_GetDeviceCmd (void)
const Cos453_DeviceFailureStatus_tsCos453_GetDeviceFailureStatus (void)
const Cos453_DeviceFailureStatusDelay_tsCos453_GetDeviceFailureStatusDelay (void)
const Cos453_DeviceStatus_tsCos453_GetDeviceStatus (void)
const Cos453_DeviceStatusDelay_tsCos453_GetDeviceStatusDelay (void)
const Cos453_DigitalInputConfig_tsCos453_GetDigitalInputConfig (void)
const Cos453_DigitalOutputConfig_tsCos453_GetDigitalOutputConfig (void)
const Cos453_InputCmd_tsCos453_GetInputCmd (void)
const Cos453_InputFailureStatus_tsCos453_GetInputFailureStatus (void)
const Cos453_InputFailureStatusDelay_tsCos453_GetInputFailureStatusDelay (void)
const Cos453_InputStatus_tsCos453_GetInputStatus (void)
const Cos453_InputStatusDelay_tsCos453_GetInputStatusDelay (void)
int16_t Cos453_GetDeviceTempThreshold1 (void)
int16_t Cos453_GetDeviceTempThreshold2 (void)
int16_t Cos453_GetDeviceTempThresholdReturn1 (void)
int16_t Cos453_GetDeviceTempThresholdReturn2 (void)
const Cos453_InputValues_tsCos453_GetInputValues (void)
const Cos453_InputValues_tsCos453_GetInputThreshold1 (void)
const Cos453_InputValues_tsCos453_GetInputThreshold2 (void)
const Cos453_InputValues_tsCos453_GetInputThresholdReturn1 (void)
const Cos453_InputValues_tsCos453_GetInputThresholdReturn2 (void)
const Cos453_OutputActualValues_tsCos453_GetOutputActualValues (uint8_t ubOutputV)
const Cos453_OutputCmd_tsCos453_GetOutputCmd (uint8_t ubOutputV)
const Cos453_OutputFailureStatus_tsCos453_GetOutputFailureStatus (uint8_t ubOutputV)
const Cos453_OutputRanges_tsCos453_GetOutputRanges (uint8_t ubOutputV)
const Cos453_OutputSequence_tsCos453_GetOutputSequence (uint8_t ubOutputV)
const Cos453_OutputStatus_tsCos453_GetOutputStatus (uint8_t ubOutputV)
const Cos453_OutputTempThresholds_tsCos453_GetOutputTempThresholds (uint8_t ubOutputV)
void Cos453_RcvPdoHandler_Idx6200 (uint32_t ulMapEntryV)
void Cos453_RcvPdoHandler_Idx6205 (uint32_t ulMapEntryV)
void Cos453_SetBank (uint8_t ubOutputV, const Cos453_Bank_ts *ptsBankV)
void Cos453_SetDeviceCmd (const Cos453_DeviceCmd_ts *ptsDeviceCmdV)
void Cos453_SetDeviceFailureStatus (const Cos453_DeviceFailureStatus_ts *ptsDeviceFailureStatusV)
void Cos453_SetDeviceFailureStatusDelay (const Cos453_DeviceFailureStatusDelay_ts *ptsDeviceFailureStatusDelayV)
void Cos453_SetDeviceStatus (const Cos453_DeviceStatus_ts *ptsDeviceStatusV)
void Cos453_SetDeviceStatusDelay (const Cos453_DeviceStatusDelay_ts *ptsDeviceStatusDelayV)
void Cos453_SetDigitalInputConfig (const Cos453_DigitalInputConfig_ts *ptsDigitalInputConfigV)
void Cos453_SetDigitalOutputConfig (const Cos453_DigitalOutputConfig_ts *ptsDigitalOutputConfigV)
void Cos453_SetInputCmd (const Cos453_InputCmd_ts *ptsInputCmdV)
void Cos453_SetInputFailureStatus (const Cos453_InputFailureStatus_ts *ptsInputFailureStatusV)
void Cos453_SetInputFailureStatusDelay (const Cos453_InputFailureStatusDelay_ts *ptsInputFailureStatusDelayV)
void Cos453_SetInputStatusDelay (const Cos453_InputStatusDelay_ts *ptsInputStatusDelayV)
void Cos453_SetInputStatus (const Cos453_InputStatus_ts *ptsInputStatusV)
void Cos453_SetInputValues (const Cos453_InputValues_ts *ptsInputValuesV)
void Cos453_SetInputThreshold1 (const Cos453_InputValues_ts *ptsInputThresholdV)
void Cos453_SetInputThreshold2 (const Cos453_InputValues_ts *ptsInputThresholdV)
void Cos453_SetInputThresholdReturn1 (const Cos453_InputValues_ts *ptsInputThresholdV)
void Cos453_SetInputThresholdReturn2 (const Cos453_InputValues_ts *ptsInputThresholdV)
void Cos453_SetDeviceTemperature (int16_t swTemperatureV)
void Cos453_SetDeviceTempThreshold1 (int16_t swThresholdV)
void Cos453_SetDeviceTempThreshold2 (int16_t swThresholdV)
void Cos453_SetDeviceTempThresholdReturn1 (int16_t swReturnValueV)
void Cos453_SetDeviceTempThresholdReturn2 (int16_t swReturnValueV)
void Cos453_SetOperatingHours (uint32_t ulOperatingHoursV)
void Cos453_SetOutputActualValues (uint8_t ubOutputV, const Cos453_OutputActualValues_ts *ptsOutputActualValuesV)
void Cos453_SetOutputCmd (uint8_t ubOutputV, const Cos453_OutputCmd_ts *ptsOutputCmdV)
void Cos453_SetOutputFailureStatus (uint8_t ubOutputV, const Cos453_OutputFailureStatus_ts *ptsOutputFailureStatusV)
void Cos453_SetOutputRanges (uint8_t ubOutputV, const Cos453_OutputRanges_ts *ptsOutputRangesV)
void Cos453_SetOutputSequence (uint8_t ubOutputV, const Cos453_OutputSequence_ts *ptsOutputSequenceV)
void Cos453_SetOutputStatus (uint8_t ubOutputV, const Cos453_OutputStatus_ts *ptsOutputStatusV)
void Cos453_SetOutputTempThresholds (uint8_t ubOutputV, const Cos453_OutputTempThresholds_ts *ptsOutputTempThresholdsV)
void Cos453_SetSiUnits (const Cos453_SI_Unit_ts *ptsSiUnitV)

Variables

uint32_t ulDevStatus6011_TrmPdoCondG
uint32_t ulDevFailStatus6012_TrmPdoCondG

Function Documentation

◆ Cos453_ActivateBank()

uint8_t Cos453_ActivateBank ( uint8_t ubOutputV,
uint8_t ubBankV )

The stack calls this function whenever the ubBank field of an output command object (6200h..6270h) changes — either written by a controller via SDO/PDO or advanced by the sequence engine in dynamic mode. Parameter ubOutputV is the affected output (1..COS_DS453) and ubBankV is the newly selected bank index (0 = bank 1).

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ubBankVbank number
Returns
Error code defined by enumeration CosSdo_e
See also
Cos453_SetBank()
Note
The code located in the file cos453_app.c provides an example and has to be adopted to the application.
uint8_t Cos453_ActivateBank(uint8_t ubOutputV, uint8_t ubBankV)
{
uint8_t ubResultT = (uint8_t) eCosSdo_ERR_VALUE_RANGE;
if (ubBankV < (uint8_t) MAX_BANKS)
{
Cos453_SetBank(ubOutputV, &atsBankTableS[ubOutputV - 1U][ubBankV]);
ubResultT = (uint8_t) eCosSdo_WRITE_OK;
}
return (ubResultT);
}

◆ Cos453_GetBank()

const Cos453_Bank_ts * Cos453_GetBank ( uint8_t ubOutputV)

Retrieve the current output set values for output N from object 62N5h.

Returns a pointer to the internal Cos453_Bank_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetBank() to update all fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output actual values structure, or NULL if ubOutputV is out of range
See also
Cos453_SetBank()

◆ Cos453_GetDeviceCmd()

const Cos453_DeviceCmd_ts * Cos453_GetDeviceCmd ( void )

Retrieve the current device command values from object 6010h.

Returns a pointer to the internal Cos453_DeviceCmd_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetDeviceCmd() to update the fields.

Returns
pointer to the internal device command structure, never NULL
See also
Cos453_SetDeviceCmd()

◆ Cos453_GetDeviceFailureStatus()

const Cos453_DeviceFailureStatus_ts * Cos453_GetDeviceFailureStatus ( void )

Retrieve the current device failure status values from object 6012h.

Returns a pointer to the internal Cos453_DeviceFailureStatus_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetDeviceFailureStatus() to update the writable fields (logic, fault state).

Returns
pointer to the internal device failure status structure, never NULL
See also
Cos453_SetDeviceFailureStatus()

◆ Cos453_GetDeviceFailureStatusDelay()

const Cos453_DeviceFailureStatusDelay_ts * Cos453_GetDeviceFailureStatusDelay ( void )

Retrieve the current device failure status delay time values from object 6014h.

Returns a pointer to the internal Cos453_DeviceFailureStatusDelay_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetDeviceFailureStatusDelay() to update the fields.

Returns
pointer to the internal device failure status delay time structure, never NULL
See also
Cos453_SetDeviceFailureStatusDelay()

◆ Cos453_GetDeviceStatus()

const Cos453_DeviceStatus_ts * Cos453_GetDeviceStatus ( void )

Retrieve the current device status values from object 6011h.

Returns a pointer to the internal Cos453_DeviceStatus_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetDeviceStatus() to update the writable fields (logic, fault state).

Returns
pointer to the internal device status structure, never NULL
See also
Cos453_SetDeviceStatus()

◆ Cos453_GetDeviceStatusDelay()

const Cos453_DeviceStatusDelay_ts * Cos453_GetDeviceStatusDelay ( void )

Retrieve the current device status delay time values from object 6013h.

Returns a pointer to the internal Cos453_DeviceStatusDelay_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetDeviceStatusDelay() to update the fields.

Returns
pointer to the internal device status delay time structure, never NULL
See also
Cos453_SetDeviceStatusDelay()

◆ Cos453_GetDeviceTempThreshold1()

int16_t Cos453_GetDeviceTempThreshold1 ( void )

Return the configured device temperature threshold 1 from object 6021h.

Returns
threshold value (INTEGER16), in the unit configured by object 6000h
See also
Cos453_SetDeviceTempThreshold1()

◆ Cos453_GetDeviceTempThreshold2()

int16_t Cos453_GetDeviceTempThreshold2 ( void )

Return the configured device temperature threshold 2 from object 6022h.

Returns
threshold value (INTEGER16), in the unit configured by object 6000h
See also
Cos453_SetDeviceTempThreshold2()

◆ Cos453_GetDeviceTempThresholdReturn1()

int16_t Cos453_GetDeviceTempThresholdReturn1 ( void )

Return the configured device temperature threshold 1 return value from object 6025h.

Returns
return value (INTEGER16), in the unit configured by object 6000h
See also
Cos453_SetDeviceTempThresholdReturn1()

◆ Cos453_GetDeviceTempThresholdReturn2()

int16_t Cos453_GetDeviceTempThresholdReturn2 ( void )

Return the configured device temperature threshold 2 return value from object 6026h.

Returns
return value (INTEGER16), in the unit configured by object 6000h
See also
Cos453_SetDeviceTempThresholdReturn2()

◆ Cos453_GetDigitalInputConfig()

const Cos453_DigitalInputConfig_ts * Cos453_GetDigitalInputConfig ( void )

Retrieve the current digital input configuration values from object 6031h.

Returns a pointer to the internal Cos453_DigitalInputConfig_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetDigitalInputConfig() to update the fields.

Returns
pointer to the internal digital input configuration structure, never NULL
See also
Cos453_SetDigitalInputConfig()

◆ Cos453_GetDigitalOutputConfig()

const Cos453_DigitalOutputConfig_ts * Cos453_GetDigitalOutputConfig ( void )

Retrieve the current digital output configuration values from object 6032h.

Returns a pointer to the internal Cos453_DigitalOutputConfig_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetDigitalOutputConfig() to update the fields.

Returns
pointer to the internal digital output configuration structure, never NULL
See also
Cos453_SetDigitalOutputConfig()

◆ Cos453_GetInputCmd()

const Cos453_InputCmd_ts * Cos453_GetInputCmd ( void )

Retrieve the current input command values from object 6100h.

Returns a pointer to the internal Cos453_InputCmd_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputCmd() to update the fields.

Returns
pointer to the internal input command structure, never NULL
See also
Cos453_SetInputCmd()

◆ Cos453_GetInputFailureStatus()

const Cos453_InputFailureStatus_ts * Cos453_GetInputFailureStatus ( void )

Retrieve the current input failure status values from object 6112h.

Returns a pointer to the internal Cos453_InputFailureStatus_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputFailureStatus() to update the fields.

Returns
pointer to the internal input failure status structure, never NULL
See also
Cos453_SetInputFailureStatus()

◆ Cos453_GetInputFailureStatusDelay()

const Cos453_InputFailureStatusDelay_ts * Cos453_GetInputFailureStatusDelay ( void )

Retrieve the current input failure status delay time parameters from object 6119h.

Returns a pointer to the internal Cos453_InputFailureStatusDelay_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputFailureStatusDelay() to update the fields.

Returns
pointer to the internal input failure status delay time structure, never NULL
See also
Cos453_SetInputFailureStatusDelay()

◆ Cos453_GetInputStatus()

const Cos453_InputStatus_ts * Cos453_GetInputStatus ( void )

Retrieve the current input status values from object 6111h.

Returns a pointer to the internal Cos453_InputStatus_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputStatus() to update the fields.

Returns
pointer to the internal input status structure, never NULL
See also
Cos453_SetInputStatus()

◆ Cos453_GetInputStatusDelay()

const Cos453_InputStatusDelay_ts * Cos453_GetInputStatusDelay ( void )

Retrieve the current input status delay time parameters from object 6118h.

Returns a pointer to the internal Cos453_InputStatusDelay_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputStatusDelay() to update the fields.

Returns
pointer to the internal input status delay time structure, never NULL
See also
Cos453_SetInputStatusDelay()

◆ Cos453_GetInputThreshold1()

const Cos453_InputValues_ts * Cos453_GetInputThreshold1 ( void )

Retrieve the current input threshold 1 parameters from object 6114h.

Returns a pointer to the internal Cos453_InputValues_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputThreshold1() to update the fields.

Returns
pointer to the internal input threshold 1 structure, never NULL
See also
Cos453_SetInputThreshold1()

◆ Cos453_GetInputThreshold2()

const Cos453_InputValues_ts * Cos453_GetInputThreshold2 ( void )

Retrieve the current input threshold 2 parameters from object 6115h.

Returns a pointer to the internal Cos453_InputValues_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputThreshold2() to update the fields.

Returns
pointer to the internal input threshold 2 structure, never NULL
See also
Cos453_SetInputThreshold2()

◆ Cos453_GetInputThresholdReturn1()

const Cos453_InputValues_ts * Cos453_GetInputThresholdReturn1 ( void )

Retrieve the current input threshold 1 return parameters from object 611Ah.

Returns a pointer to the internal Cos453_InputValues_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputThresholdReturn1() to update the fields.

Returns
pointer to the internal input threshold 1 return structure, never NULL
See also
Cos453_SetInputThresholdReturn1()

◆ Cos453_GetInputThresholdReturn2()

const Cos453_InputValues_ts * Cos453_GetInputThresholdReturn2 ( void )

Retrieve the current input threshold 2 return parameters from object 611Bh.

Returns a pointer to the internal Cos453_InputValues_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputThresholdReturn2() to update the fields.

Returns
pointer to the internal input threshold 2 return structure, never NULL
See also
Cos453_SetInputThresholdReturn2()

◆ Cos453_GetInputValues()

const Cos453_InputValues_ts * Cos453_GetInputValues ( void )

Retrieve the current input actual values from object 6113h.

Returns a pointer to the internal Cos453_InputValues_ts data store. The caller must not modify the structure through this pointer; use Cos453_SetInputValues() to update all fields.

Returns
pointer to the internal input actual values structure, never NULL
See also
Cos453_SetInputValues()

◆ Cos453_GetOutputActualValues()

const Cos453_OutputActualValues_ts * Cos453_GetOutputActualValues ( uint8_t ubOutputV)

Retrieve the current output actual values for output N from object 62N4h.

Returns a pointer to the internal Cos453_OutputActualValues_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetOutputActualValues() to update all fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output actual values structure, or NULL if ubOutputV is out of range
See also
Cos453_SetOutputActualValues()

◆ Cos453_GetOutputCmd()

const Cos453_OutputCmd_ts * Cos453_GetOutputCmd ( uint8_t ubOutputV)

Retrieve the current output command values for output N from object 62N0h.

Returns a pointer to the internal Cos453_OutputCmd_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetOutputCmd() to update the fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output command structure, or NULL if ubOutputV is out of range
See also
Cos453_SetOutputCmd()

◆ Cos453_GetOutputFailureStatus()

const Cos453_OutputFailureStatus_ts * Cos453_GetOutputFailureStatus ( uint8_t ubOutputV)

Retrieve the current output failure status values for output N from object 62N2h.

Returns a pointer to the internal Cos453_OutputFailureStatus_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetOutputFailureStatus() to update all fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output failure status structure, or NULL if ubOutputV is out of range
See also
Cos453_SetOutputFailureStatus()

◆ Cos453_GetOutputRanges()

const Cos453_OutputRanges_ts * Cos453_GetOutputRanges ( uint8_t ubOutputV)

Retrieve the current output ranges for output N from object 62N3h.

Returns a pointer to the internal Cos453_OutputRanges_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetOutputRanges() to update all fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output ranges structure, or NULL if ubOutputV is out of range
See also
Cos453_SetOutputRanges()

◆ Cos453_GetOutputSequence()

const Cos453_OutputSequence_ts * Cos453_GetOutputSequence ( uint8_t ubOutputV)

Retrieve the current sequence configuration for output N from object 62N6h.

Returns a pointer to the internal Cos453_OutputSequence_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetOutputSequence() to update all fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output sequence structure, or NULL if ubOutputV is out of range
See also
Cos453_SetOutputSequence()

◆ Cos453_GetOutputStatus()

const Cos453_OutputStatus_ts * Cos453_GetOutputStatus ( uint8_t ubOutputV)

Retrieve the current output status values for output N from object 62N1h.

Returns a pointer to the internal Cos453_OutputStatus_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetOutputStatus() to update all fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output status structure, or NULL if ubOutputV is out of range
See also
Cos453_SetOutputStatus()

◆ Cos453_GetOutputTempThresholds()

const Cos453_OutputTempThresholds_ts * Cos453_GetOutputTempThresholds ( uint8_t ubOutputV)

Retrieve the current temperature threshold configuration for output N from object 62N7h.

Returns a pointer to the internal Cos453_OutputTempThresholds_ts data store for the specified output. The caller must not modify the structure through this pointer; use Cos453_SetOutputTempThresholds() to update all fields.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
Returns
pointer to the internal output temperature thresholds structure, or NULL if ubOutputV is out of range
See also
Cos453_SetOutputTempThresholds()

◆ Cos453_RcvPdoHandler_Idx6200()

void Cos453_RcvPdoHandler_Idx6200 ( uint32_t ulMapEntryV)

RPDO handler for output command objects (6200h / 621xh / … / 627xh), sub-indices 01h–05h. Called by the PDO engine after reception. Copies the received value from the RPDO receive buffer into the internal output command store and notifies the profile via CosMgrProfileUpdate().

Parameters
[in]ulMapEntryVPDO mapping entry (CiA 301 encoding: index | sub-index | bit-length)

◆ Cos453_RcvPdoHandler_Idx6205()

void Cos453_RcvPdoHandler_Idx6205 ( uint32_t ulMapEntryV)

RPDO handler for output set value objects (6205h / 621xh / … / 627xh), sub-indices 01h/08h/0Fh/16h. Called by the PDO engine after reception. Copies the received value from the RPDO receive buffer into the internal output set value store and notifies the profile via CosMgrProfileUpdate().

Parameters
[in]ulMapEntryVPDO mapping entry (CiA 301 encoding: index | sub-index | bit-length)

◆ Cos453_SetBank()

void Cos453_SetBank ( uint8_t ubOutputV,
const Cos453_Bank_ts * ptsBankV )

Set output set values for all sub-parameters of object 62N5h.

The function copies the provided values into the internal output set values data store for the specified output. The set values are defined by the Cos453_Bank_ts structure.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsBankVpointer to a Cos453_Bank_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetBank(), Cos453_ActivateBank()

◆ Cos453_SetDeviceCmd()

void Cos453_SetDeviceCmd ( const Cos453_DeviceCmd_ts * ptsDeviceCmdV)

Set device command values for all sub-parameters of object 6010h.

The function copies the provided values into the internal object 6010h data store, making the written commands readable by the application. To reset all fields to their power-on default (take no action), set all members to COS_DS453_DT_UNSIGNED8_VNA.

Parameters
[in]ptsDeviceCmdVpointer to a Cos453_DeviceCmd_ts structure holding the new values; the caller retains ownership of the structure
See also
Cos453_GetDeviceCmd()

◆ Cos453_SetDeviceFailureStatus()

void Cos453_SetDeviceFailureStatus ( const Cos453_DeviceFailureStatus_ts * ptsDeviceFailureStatusV)

Set device failure status values for all sub-parameters of object 6012h.

The function copies the provided values into the internal object 6012h data store. The caller is responsible for populating all read-only fields (condition, event, fault indication) before calling this function; the read-write fields (logic, fault state) are also copied and become accessible to a CANopen controller.

Parameters
[in]ptsDeviceFailureStatusVpointer to a Cos453_DeviceFailureStatus_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetDeviceFailureStatus()

◆ Cos453_SetDeviceFailureStatusDelay()

void Cos453_SetDeviceFailureStatusDelay ( const Cos453_DeviceFailureStatusDelay_ts * ptsDeviceFailureStatusDelayV)

Set device failure status delay time values for all sub-parameters of object 6014h.

The function copies the provided values into the internal object 6014h data store. Sub-indices 0Dh..10h are not supported and are not written.

Parameters
[in]ptsDeviceFailureStatusDelayVpointer to a Cos453_DeviceFailureStatusDelay_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetDeviceFailureStatusDelay()

◆ Cos453_SetDeviceStatus()

void Cos453_SetDeviceStatus ( const Cos453_DeviceStatus_ts * ptsDeviceStatusV)

Set device status values for all sub-parameters of object 6011h.

The function copies the provided values into the internal object 6011h data store. The caller is responsible for populating all read-only fields (condition, event, fault indication) before calling this function; the read-write fields (logic, fault state) are also copied and become accessible to a CANopen controller.

Parameters
[in]ptsDeviceStatusVpointer to a Cos453_DeviceStatus_ts structure holding the new values; the caller retains ownership of the structure
See also
Cos453_GetDeviceStatus()

◆ Cos453_SetDeviceStatusDelay()

void Cos453_SetDeviceStatusDelay ( const Cos453_DeviceStatusDelay_ts * ptsDeviceStatusDelayV)

Set device status delay time values for all sub-parameters of object 6013h.

The function copies the provided values into the internal object 6013h data store. Sub-indices 0Dh..10h are not supported and are not written.

Parameters
[in]ptsDeviceStatusDelayVpointer to a Cos453_DeviceStatusDelay_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetDeviceStatusDelay()

◆ Cos453_SetDeviceTemperature()

void Cos453_SetDeviceTemperature ( int16_t swTemperatureV)

Set the measured device temperature for object 6020h.

The value is read-only over SDO; the application provides the measured temperature via this function. The value shall be given as configured in the SI unit and prefix object 6000h.

Parameters
[in]swTemperatureVmeasured temperature (INTEGER16)

◆ Cos453_SetDeviceTempThreshold1()

void Cos453_SetDeviceTempThreshold1 ( int16_t swThresholdV)

Set the configured device temperature threshold 1 for object 6021h.

The value is also writable over SDO. The value shall be given as configured in the SI unit and prefix object 6000h.

Parameters
[in]swThresholdVthreshold value (INTEGER16)
See also
Cos453_GetDeviceTempThreshold1()

◆ Cos453_SetDeviceTempThreshold2()

void Cos453_SetDeviceTempThreshold2 ( int16_t swThresholdV)

Set the configured device temperature threshold 2 for object 6022h.

The value is also writable over SDO. The value shall be given as configured in the SI unit and prefix object 6000h.

Parameters
[in]swThresholdVthreshold value (INTEGER16)
See also
Cos453_GetDeviceTempThreshold2()

◆ Cos453_SetDeviceTempThresholdReturn1()

void Cos453_SetDeviceTempThresholdReturn1 ( int16_t swReturnValueV)

Set the configured device temperature threshold 1 return value for object 6025h.

If the actual temperature falls below this value, the corresponding failure state is reset. The value is also writable over SDO. The value shall be given as configured in the SI unit and prefix object 6000h.

Parameters
[in]swReturnValueVreturn value (INTEGER16)
See also
Cos453_GetDeviceTempThresholdReturn1()

◆ Cos453_SetDeviceTempThresholdReturn2()

void Cos453_SetDeviceTempThresholdReturn2 ( int16_t swReturnValueV)

Set the configured device temperature threshold 2 return value for object 6026h.

If the actual temperature falls below this value, the corresponding failure state is reset. The value is also writable over SDO. The value shall be given as configured in the SI unit and prefix object 6000h.

Parameters
[in]swReturnValueVreturn value (INTEGER16)
See also
Cos453_GetDeviceTempThresholdReturn2()

◆ Cos453_SetDigitalInputConfig()

void Cos453_SetDigitalInputConfig ( const Cos453_DigitalInputConfig_ts * ptsDigitalInputConfigV)

Set digital input configuration for object 6031h.

The function copies the provided values into the internal digital input configuration data store. All sub-indices 01h..03h are read-write over SDO; the application may also write them via this function. The application is responsible for providing a valid configuration; no default is applied by the stack.

Parameters
[in]ptsDigitalInputConfigVpointer to a Cos453_DigitalInputConfig_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetDigitalInputConfig()

◆ Cos453_SetDigitalOutputConfig()

void Cos453_SetDigitalOutputConfig ( const Cos453_DigitalOutputConfig_ts * ptsDigitalOutputConfigV)

Set digital output configuration for object 6032h.

The function copies the provided values into the internal digital output configuration data store. All sub-indices 01h..06h are read-write over SDO; the application may also write them via this function. The application is responsible for providing a valid configuration; no default is applied by the stack.

Parameters
[in]ptsDigitalOutputConfigVpointer to a Cos453_DigitalOutputConfig_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetDigitalOutputConfig()

◆ Cos453_SetInputCmd()

void Cos453_SetInputCmd ( const Cos453_InputCmd_ts * ptsInputCmdV)

Set input command for object 6100h.

The function copies the provided values into the internal input command data store. All sub-indices are read-write over SDO; the application may also write them via this function. Both fields default to FFh (take no action) on stack initialization.

Parameters
[in]ptsInputCmdVpointer to a Cos453_InputCmd_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetInputCmd()

◆ Cos453_SetInputFailureStatus()

void Cos453_SetInputFailureStatus ( const Cos453_InputFailureStatus_ts * ptsInputFailureStatusV)

Set input failure status for object 6112h.

The function copies all five sub-parameters into the internal input failure status data store. Sub-indices 01h (Condition) and 03h (Event) are read-only over SDO and are provided exclusively by the application via this function. Sub-indices 02h (Logic) and 04h (Fault state) are additionally writeable over SDO.

Parameters
[in]ptsInputFailureStatusVpointer to a Cos453_InputFailureStatus_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetInputFailureStatus()

◆ Cos453_SetInputFailureStatusDelay()

void Cos453_SetInputFailureStatusDelay ( const Cos453_InputFailureStatusDelay_ts * ptsInputFailureStatusDelayV)

Set input failure status delay time parameters for object 6119h.

The function copies the provided values into the internal input failure status delay time data store. All fields are read-write over SDO; the application may also write them via this function. Sub-indices 05h..10h are not supported by this implementation.

Parameters
[in]ptsInputFailureStatusDelayVpointer to a Cos453_InputFailureStatusDelay_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetInputFailureStatusDelay()

◆ Cos453_SetInputStatus()

void Cos453_SetInputStatus ( const Cos453_InputStatus_ts * ptsInputStatusV)

Set input status for object 6111h.

The function copies all five sub-parameters into the internal input status data store. Sub-indices 01h (Condition) and 03h (Event) are read-only over SDO and are provided exclusively by the application via this function. Sub-indices 02h (Logic) and 04h (Fault state) are additionally writeable over SDO.

Parameters
[in]ptsInputStatusVpointer to a Cos453_InputStatus_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetInputStatus()

◆ Cos453_SetInputStatusDelay()

void Cos453_SetInputStatusDelay ( const Cos453_InputStatusDelay_ts * ptsInputStatusDelayV)

Set input status delay time parameters for object 6118h.

The function copies the provided values into the internal input status delay time data store. All fields are read-write over SDO; the application may also write them via this function. Sub-indices 05h..10h are not supported by this implementation.

Parameters
[in]ptsInputStatusDelayVpointer to a Cos453_InputStatusDelay_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetInputStatusDelay()

◆ Cos453_SetInputThreshold1()

void Cos453_SetInputThreshold1 ( const Cos453_InputValues_ts * ptsInputThresholdV)

Set input threshold 1 parameters for all sub-parameters of object 6114h.

The function copies the provided values into the internal input threshold 1 data store. All fields are read-write over SDO; the application may also write them directly via this function.

Parameters
[in]ptsInputThresholdVpointer to a Cos453_InputValues_ts structure holding the new threshold values; the caller retains ownership
See also
Cos453_GetInputThreshold1()

◆ Cos453_SetInputThreshold2()

void Cos453_SetInputThreshold2 ( const Cos453_InputValues_ts * ptsInputThresholdV)

Set input threshold 2 parameters for all sub-parameters of object 6115h.

The function copies the provided values into the internal input threshold 2 data store. All fields are read-write over SDO; the application may also write them directly via this function.

Parameters
[in]ptsInputThresholdVpointer to a Cos453_InputValues_ts structure holding the new threshold values; the caller retains ownership
See also
Cos453_GetInputThreshold2()

◆ Cos453_SetInputThresholdReturn1()

void Cos453_SetInputThresholdReturn1 ( const Cos453_InputValues_ts * ptsInputThresholdV)

Set input threshold 1 return parameters for all sub-parameters of object 611Ah.

The function copies the provided values into the internal input threshold 1 return data store. All fields are read-write over SDO; the application may also write them via this function.

Parameters
[in]ptsInputThresholdVpointer to a Cos453_InputValues_ts structure holding the new return values; the caller retains ownership
See also
Cos453_GetInputThresholdReturn1()

◆ Cos453_SetInputThresholdReturn2()

void Cos453_SetInputThresholdReturn2 ( const Cos453_InputValues_ts * ptsInputThresholdV)

Set input threshold 2 return parameters for all sub-parameters of object 611Bh.

The function copies the provided values into the internal input threshold 2 return data store. All fields are read-write over SDO; the application may also write them via this function.

Parameters
[in]ptsInputThresholdVpointer to a Cos453_InputValues_ts structure holding the new return values; the caller retains ownership
See also
Cos453_GetInputThresholdReturn2()

◆ Cos453_SetInputValues()

void Cos453_SetInputValues ( const Cos453_InputValues_ts * ptsInputValuesV)

Set input actual values for all sub-parameters of object 6113h.

The function copies the provided values into the internal input actual values data store. All fields are read-only over SDO; the application writes them via this function.

Parameters
[in]ptsInputValuesVpointer to a Cos453_InputValues_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetInputValues()

◆ Cos453_SetOperatingHours()

void Cos453_SetOperatingHours ( uint32_t ulOperatingHoursV)

Set the operating hours counter for object 6030h.

The value is read-only over SDO; the application updates the counter periodically via this function. The value shall be given in hours (h).

Parameters
[in]ulOperatingHoursVoperating hours (UNSIGNED32)

◆ Cos453_SetOutputActualValues()

void Cos453_SetOutputActualValues ( uint8_t ubOutputV,
const Cos453_OutputActualValues_ts * ptsOutputActualValuesV )

Set output actual values for all sub-parameters of object 62N4h.

The function copies the provided values into the internal output actual values data store for the specified output. All fields are read-only over SDO; the application writes them via this function.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsOutputActualValuesVpointer to a Cos453_OutputActualValues_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetOutputActualValues()

◆ Cos453_SetOutputCmd()

void Cos453_SetOutputCmd ( uint8_t ubOutputV,
const Cos453_OutputCmd_ts * ptsOutputCmdV )

Set output command values for output number 1..COS_DS453.

The function copies the provided values into the internal output command data store for the specified output. To reset all fields to their power-on default, set all members to COS_DS453_DT_UNSIGNED8_VNA, except ubBank which defaults to 00h (bank 1).

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsOutputCmdVpointer to a Cos453_OutputCmd_ts structure holding the new values; the caller retains ownership of the structure
See also
Cos453_GetOutputCmd()

◆ Cos453_SetOutputFailureStatus()

void Cos453_SetOutputFailureStatus ( uint8_t ubOutputV,
const Cos453_OutputFailureStatus_ts * ptsOutputFailureStatusV )

Set output failure status values for all sub-parameters of object 62N2h.

The function copies the provided values into the internal output failure status data store for the specified output. The caller is responsible for populating all read-only fields (condition, event, fault indication) before calling; the read-write fields (logic, fault state) are also copied and become accessible to a CANopen controller.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsOutputFailureStatusVpointer to a Cos453_OutputFailureStatus_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetOutputFailureStatus()

◆ Cos453_SetOutputRanges()

void Cos453_SetOutputRanges ( uint8_t ubOutputV,
const Cos453_OutputRanges_ts * ptsOutputRangesV )

Set output ranges for all sub-parameters of object 62N3h.

The function copies the provided hardware capability limits into the internal output ranges data store for the specified output. All fields are read-only over SDO; the application provides the values at start-up.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsOutputRangesVpointer to a Cos453_OutputRanges_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetOutputRanges()

◆ Cos453_SetOutputSequence()

void Cos453_SetOutputSequence ( uint8_t ubOutputV,
const Cos453_OutputSequence_ts * ptsOutputSequenceV )

Set sequence configuration for output N (object 62N6h).

The function copies all fields of the provided structure into the internal data store. Read-only fields (actual loop, actual step, actual step time) are also accepted so the application can reflect the current execution state over SDO.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsOutputSequenceVpointer to a Cos453_OutputSequence_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetOutputSequence()

◆ Cos453_SetOutputStatus()

void Cos453_SetOutputStatus ( uint8_t ubOutputV,
const Cos453_OutputStatus_ts * ptsOutputStatusV )

Set output status values for all sub-parameters of object 62N1h.

The function copies the provided values into the internal output status data store for the specified output. The caller is responsible for populating all read-only fields (condition, event, fault indication) before calling; the read-write fields (logic, fault state) are also copied and become accessible to a CANopen controller.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsOutputStatusVpointer to a Cos453_OutputStatus_ts structure holding the new values; the caller retains ownership of the structure
See also
Cos453_GetOutputStatus()

◆ Cos453_SetOutputTempThresholds()

void Cos453_SetOutputTempThresholds ( uint8_t ubOutputV,
const Cos453_OutputTempThresholds_ts * ptsOutputTempThresholdsV )

Set temperature threshold configuration for output N (object 62N7h).

The function copies all fields into the internal data store. All sub-parameters are configurable (rw/const); the application provides initial values at start-up via this function.

Parameters
[in]ubOutputVoutput number (1..COS_DS453)
[in]ptsOutputTempThresholdsVpointer to a Cos453_OutputTempThresholds_ts structure holding the new values; the caller retains ownership
See also
Cos453_GetOutputTempThresholds()

◆ Cos453_SetSiUnits()

void Cos453_SetSiUnits ( const Cos453_SI_Unit_ts * ptsSiUnitV)

Set SI units and prefix values for all measured quantities.

The function copies the provided values into the internal object 6000h data store.

Parameters
[in]ptsSiUnitVpointer to a Cos453_SI_Unit_ts structure holding the new values; the caller retains ownership of the structure

Variable Documentation

◆ ulDevFailStatus6012_TrmPdoCondG

uint32_t ulDevFailStatus6012_TrmPdoCondG
extern

6012h:01h device failure status condition

◆ ulDevStatus6011_TrmPdoCondG

uint32_t ulDevStatus6011_TrmPdoCondG
extern

6011h:01h device status condition