如何在Simulink中开发DC-DC变换器控制,第5部分:监控逻辑设计与测试
从系列中:如何在Simulink中实现DC-DC变换器的控制
学习如何通过使用Stateflow实现和测试DC-DC数字控制的监控逻辑®和Simulink Test™。电力电子控制中越来越重要的任务是对各种运行模式的管理,如故障检测、故障反应和主动控制。在Simulink中集成了状态机建模®感谢Stateflow™。工程师可以使用直观的图形界面来创建复杂的逻辑架构,而高级模拟控件允许开发人员在调试过程中进行精细控制,可以一次模拟一个步骤,设置断点,并可视化地识别监督逻辑活动转换和状态的流程。
在本例中,查看监控逻辑如何没有按照预期的方式运行,以及需要采取纠正措施以获得所需的SEPIC操作。使用Simulink Test™来自动测试Simulink®模型。根据逻辑事件序列创建测试,并使用“测试序列”块生成测试结果。
现在,在我们想要设计一些监督逻辑的时候,我们将进行测试,开始对我们的设计非常有信心。让我们回到工具上来。我在这里准备了一个模型来表示我的工作模式和错误逻辑。
因此,设计功率转换器软件不仅仅是PI调优,而是其中的一部分。要获得一个非常稳定的系统,需要实现一系列的软件结构,例如状态机监视逻辑。您需要处理错误以及向系统报告错误时发生的情况。有一个非常强大的工具可以做到这一点,叫做Stateflow,用于状态机建模和开发。
在这里,我准备了一个例子。这个子图表被称为“运营模式管理”,我们可以实时模拟和观察。所以,在开始的时候,我们希望我们的系统什么都不输出。然后,我们有两个平行的图表,这是关于操作模式的。我们简要地强调了它们。
所以你可能想要使用开环。你可能想用电流电压开环但是电流闭环或者反过来,电压闭环,开环电流,所有的都是闭环,或者在某种自动操作中,首先,你是开环,然后,你等待电压稳定下来。当你与电压的误差作用时,你实际上进入了闭环模式。
这是一种用功率转换器来建模状态机的常见技术。同样,我们有我们的检查故障子系统,它与另一个子系统并行运行,所以总是检查我们的系统是否正常。为了测试这个状态机,我再次使用Simulink test创建了一个独特的测试。
我使用了其中一个提供的逻辑,我不打算在这上面花太多时间,因为这是一个主要针对Simulink测试的主题。但是我用单位延时来打破循环,我可以这样做,因为这是一个离散系统,而不是连续系统。
就像我之前说的,对于离散系统,使用单位延时来打破循环是可以的。我有一个测试序列,它允许我写相当复杂的测试序列来刺激我的图表。例如,我可以让我的输入发生变化,然后我可以对这个变化做出反应,通过某种验证或资产陈述来验证我的设计。
我们可以在这里看到。我们有输入和输出。我可以指定过渡,我可以添加描述我想在这个时间步骤中做什么。然后我就可以用这个验证语句来验证,好吧,我想在一秒钟后进入这个理想的工作模式,我要验证两个输出是否符合这个工作模式的要求。
如果我现在在这里模拟,我们会看到有一些减速,如果我看我的诊断,我会看到我已经有了一些警告。其中之一就是速度变慢了
因为测试验证在4.2秒左右失败,在5.3秒和6.4秒,7.5秒再次失败。因为这一步,我所有这些测试验证都失败了。
点击这里,验证这一步失败的原因。它未能验证零输出使能应该为假。但在现实中,它可能仍然是正确的。如果我看我的数据检查器,我可以直接检索这个verify语句的结果。
我有,举个例子,这个,我看到当我试着快速做的时候,都没问题。但在这种情况下,有些人实际上是错的。这里可以看到4.2,我让这个零输出使能应该是假的,但它实际上是错的。这意味着我的零输出使能保持为真,而不是为假。我可以从我的数据检查器自动生成一个报告来记录这类过程。
让我们进入操作逻辑,我看到,我的检查错误,它总是真,它永远不会为假。这是因为我没有一个实际的东西告诉我这个系统是可以的。我在点击确定时加上过渡。
当标记错误为0时,我应该点击OK,所以没有错误。这里我写了个注释,标记故障存在应该是零。然后在一个系统中,它启用了OK,禁用了输出。这使得0,只有0作为输出。所以我想要一些别的东西,而不是0。
这里,我应该加上条件如果标志重新打开,我们实际上可以像这样,因为它是一个布尔值。所以我不需要做任何转换。如果是真的,就是这个错误。所以我现在可以重复我的测试。看看这些时候会发生什么。
我可以打开我的步骤,我可以看到它是如何在我的测试的不同步骤中做所有事情的,非常方便,非常类似于Stateflow本身。如果我现在没有诊断,如果我看我的数据检查器,我看到我所有的结果,所有的东西不是没有测试就是通过了。但我已经没有失败了,有很多绿色。对此我很高兴。
让我们回到我们的演示。我们看到的是第三种图形化建模的方法,称为Stateflow。您可以使用它来建模状态机,它非常强大。而在Simulink和Simscape的公司中又有很好的补充,Simscape是Simulink世界中图形化建模的三大平台,可以说。
我们还发现,我们提供了Simulink测试,允许您创建这种独特的测试。您在这里看到一些我没有显示的东西,测试管理器。然后你可以——你提供给不同子系统的所有这些工具,可以减少模型级别,或者可以放在一个测试套件中,以便通过自动报告自动完成。
你通过测试,得到结果,记录下来,然后提供一个例子,说,看,我完成了工程师的工作。这是一份证明我尽我所能测试的报告。您可以添加覆盖率度量,并开始真正进行这些验证和验证工作流。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。