This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28P550SJ:什么&'s 表示 AFCI 演示代码中的 Result.buf0[0]&Result.buf0[1]

Guru**** 2866460 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1637064/tms320f28p550sj-what-s-means-about-result-buf0-0-result-buf0-1-in-afci-demo-code

器件型号: TMS320F28P550SJ

对于提供的 AFCI 演示程序 ml_arc_detction_F28P55X、在 arc_detection.c 文件中、两个变量 result.buf0[0]和 result.buf0[1]表示什么?
 
image.png
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alfred:

    感谢您的到来。

    `re` sult.buf0[0]`re和` sult.buf0[1]`m在 AFCI 演示代码的上下文中代表的含义(特别是` l_arc_dection_F28P55X `和` arc_detection.c<eps>)。

    了解环境:AFCI 和阈值

    AFCI(电弧故障断路器)演示使用机器学习算法(特别是电弧检测算法)来识别电路中的电弧故障。 该算法会分析电压和电流波形、将正常运行与电弧故障的特征“特征“区分开来。

    AFCI 检测的核心依赖于将计算的特征与阈值进行比较。 这些阈值定义了正常运行和电弧故障条件之间的边界。

    `result.buf0[0]`和`result.buf0[1]`是:

    • Result.buf0[0]`:该变量保存由电弧检测算法生成的*input feature*。 通常、这是表示最新样本的电弧故障特性的值。 这是电压/电流数据的某种计算指标。
    • result.buf0[1]`:该变量保存一个*threshold value*。 这是输入特性的预定义上限。 如果`result.buf0[0]`超过此阈值、则表示可能存在电弧故障。

    “比较“与“逻辑“

    代码`如果 (result.buf0[0]<= result.buf0[1])`至关重要。

    • Result.buf0[0]<= Result.buf0[1]`(`reArc detected):如果计算的功能值 (` sult.buf0[0]`re)*小于或等于*阈值 (` sult.buf0[1])、则代码将认为是*检测到*的电弧故障。 乍一看、这似乎违反直觉。
    • 重要说明:在这种特定实现方案中、较低的特性值表示较高的电弧故障可能性。 当存在圆弧时、算法可能会提取一个*降低*值的特征。
    • `else`(No Arc):**如果计算的特征值 (`result.buf0[0]`)*大于阈值 (`result.buf0[1]`)、则代码得出的结论是此时不存在弧。

    进一步说明:

    `result.buf0[0]`和`result.buf0[1]`变量以及条件语句构成了用于检测电弧故障的基本阈值机制。 该算法的工作原理是监控输入特性并将其与固定阈值进行比较。 当特性值降至阈值以下时、表示发生了电弧故障。

    总之、代码使用阈值化方法、根据计算特征 (`result.buf0[0]`) 和预定义阈值 (`result.buf0[1]`) 检测电弧故障。 由于其实现方式、较低的特性值表示较高的故障可能性。

    此致、

    Zackary Fleenor