将多个状态紧凑成单个字符串以供输入使用
-- 输入控件 --
- Multiple States: CSM状态字符串数组
-- 输出控件 --
- States: 包含多行CSM状态字符串的字符串
将包含多行CSM状态字符串的字符串切割成CSM状态字符串数组
-- 输入控件 --
- States: 包含多行CSM状态字符串的字符串
-- 输出控件 --
- Multiple States: CSM状态字符串数组
输入CSM模块名称,拼接生成退出消息("Macro: Exit")。
Ref: 消息拼接API
-- 输入控件 --
- CSMs: CSM模块名称数组
- State with Arguments("Macro: Exit“): 退出消息
-- 输出控件 --
- States: 拼接生成的CSM消息字符串
过滤重复的消息,只保留最新的消息。
Ref: 消息拼接API
-- 输入控件 --
- States: 输入的消息字符串
- Whole Messages in Check?(T): 是否检查整个消息字符串。如果是 FALSE,则只检查消息名称。
-- 输出控件 --
- Filtered States: 过滤后的消息字符串
过滤发送给不存在的模块的消息。 这个VI中会使用 CSM - List Modules.vi 获取所有活动的CSM模块,然后过滤掉发送给不存在模块的消息。
-- 输入控件 --
- States: 输入的消息字符串
-- 输出控件 --
- Filtered States: 过滤后的消息字符串
-- 输入控件 --
- Current State:
- Remaining States:
-- 输出控件 --
- Remaining States Left:
-- 输入控件 --
- Data:
-- 输出控件 --
- Data Type String:
-- 输入控件 --
- Enum:
- replace string:
- single-line text:
-- 输出控件 --
- States:
-- 输入控件 --
- Data Type String:
-- 输出控件 --
- Array Dim:
- Secondary Type:
- Primary Type:
-- 输入控件 --
- Data Type String:
-- 输出控件 --
- Array Dim:
- Secondary Type String:
- Primary Type:
-- 输入控件 --
- Data Type String:
-- 输出控件 --
- Array Dim:
- Secondary Type:
- Primary Type:
创建一个错误簇(error cluster),以标准 LabVIEW 的方式从调用 VI 的调用链中构建源字符串。构建的源字符串形式为: "调用的 VI 在 调用 VI 的调用者->调用 VI 的调用者的调用者->等等...->等等..." 可选的 'String to Prepend to source ("")' 字符串输入可用于在源字符串中添加额外的描述信息。如果存在这个字符串,它将用括号括起来,并添加到源字符串之前。
-- 输入控件 --
- code: 错误码
- String to Prepend to source (""): 错误信息字符串
构建包含 JKI 状态机状态、参数等信息的字符串。
-- 输入控件 --s
- State: 状态字符串
- Arguments (""): State的参数
- Arg-State (""): 发送此消息的模块在发送此消息时处于的状态
- Source (""): 发送此消息的模块名称
-- 输出控件 --
- CSM Message String: 拼接生成的 CSM 消息字符串
保存当前输入的字符串到缓存,缓存的历史字符串,当超出最大长度限制时,最先进入的缓存字符串将被覆盖。用于调试CSM的历史状态。
-- 输入控件 --
- String: 待缓存字符串
- length: 缓存的历史字符串最大字符串长度
- Include Timestamp(F): 是否在每行开头包含时间戳。
-- 输出控件 --
- String Cache: 缓存的历史字符串
开头、结尾或两者同时移除所有 ASCII 空白字符(空格、制表符、回车和换行)。
-- 输入控件 --
- string: 待处理字符串
-- 输出控件 --
- trimmed string: 处理后的字符串
根据标准方法生成 Universally Unique Identifier(UUID)。 例如:
- 59703F3AD837
- 106A470BA5EC
- 9B781DB313AF
-- 输出控件 --
- UUID: 生成的 UUID
生成一个随机的数值,用于标记状态的变化,CSM中为了提高效率,有些地方的缓存(cache)利用这个标记来判断是否需要更新。
-- 输出控件 --
- Random Change Flag: 生成的随机数值
全局日志(Global Log)数据簇转换为字符串。
-- 输入控件 --
- Log: 全局日志数据簇
-- 输出控件 --
- Log String: 全局日志字符串
-- 输入控件 --
- u8 Data[]:
-- 输出控件 --
- HEX String (0-9,A-F):