DebugMessage

传送 KINGSTAR 记录讯息至 KINGSTAR 记录检视

语法

KsError DebugMessage(
     int Category,
     KsLogSeverity Severity,
     wchar_t* Message,
     BOOL AppendValues,
     long long Value0,
     long long Value1,
     double Value2,
     double Value3
);

参数

Category:纪录讯息之 ID,使用者自订义。字串可使用 SetCategoryName 法关联至各 Category,此 ID 不需从零开始或按顺序排列。

Severity:纪录讯息之严重程度。请见 KsLogSeverity 类型。

Message:说明记录数据的讯息,最多 128 个字母。

AppendValues:TRUE:值添加在 Message 末端;FALSE:值未添加在 Message 末端。

Value0:第一个显示在纪录的值。

Value1:第二个显示在纪录的值。

Value2:第三个显示在纪录的值。

Value3:第四个显示在纪录的值。

回传值

如果此函式执行成功,会回传 errNoError,否则会传回错误码。如需更多有关错误码的资讯,请参阅 KsError 清单。

备注

可用的 EtherCAT 状态

ecatOffline, ecatInit, ecatBoot, ecatPreOP, ecatSafeOP, ecatOP

范例

复制
/*
*    Assume an user-defined enumeration:
*
*    typedef enum
*    {
*        userMain = 0,
*        userCommander,
*        userObserver,
*        END_USERMODULE
*    } userModule;
*/

long long errorCode = KsError::errWrongParameter;
double watchValue1 = 360.0, watchValue2 = 720.0;
// Scenario 1: Print plain messages
// Expected message: "Fatal error in the main loop"
nRet = DebugMessage(userMain, logFatal, L"Fatal error in the main loop", FALSE,
                    0, 0, 0.0, 0.0);

// Scenario 2: Append values behind
// Expected message: "Calling JogAxis() failed, error code returned: 4097, 0, 0.0, 0.0"
nRet = DebugMessage(userCommander, logError, L"Calling JogAxis() failed, error code returned",
                    TRUE, errorCode, 0, 0.0, 0.0);

// Scenario 3: Insert values in the message
// Expected message: "Before: watchValue1: 360.0, watchValue2: 720.0"
nRet = DebugMessage(userObserver, logDebug, L"Before: watchValue1: {2}, watchValue2: {3},",
                    FALSE, 0, 0, watchValue1, watchValue2);
watchValue2 = watchValue1;
// Expected message: "After: watchValue1: 360.0, watchValue2: 360.0"
nRet = DebugMessage(userObserver, logDebug, L"After: watchValue1: {2}, watchValue2: {3},",
                    FALSE, 0, 0, watchValue1, watchValue2);

使用需求

  RT Win32
最低支援版本 4.1 4.1
标头档 ksapi.h ksapi.h
程式库 KsApi_Rtss.lib KsApi.lib

参见

GetCategoryName

SetCategoryName