基于模型的嵌入式PID控制器设计
时间:10-29
来源:互联网
点击:
下进行正确编译,添加主函数后,代码即可直接运行。此处,在主函数内添加clock 函数,用以计算程序执行一定步数所消耗的时间。主函数如下:
![](../img/eep-analog/analog-34504vz3o52deqvj.jpg)
![](../img/eep-analog/analog-34505us5na3yvuar.jpg)
对代码进行编译运行,在相同环境下,将生成的代码与手写代码进行比较,得到结果如表1所示:
![](../img/eep-analog/analog-34506anjmvqkovjx.jpg)
通过表1可以看出,SCADE生成的代码与手写代码在运行相同步数的情况下,所耗费的时间基本一致,代码执行效率略高。
通过分析SCADE生成代码发现,代码中每个变量在作用域内仅赋值一次,代码内无递归调用,无死循环,无动态指针,无动态内存分配。因此,在同样的测试标准下,SCADE生成的代码失效率比手写代码要小很多,相应安全性也更高。
5 结论
本文研究了基于模型的软件开发环境SCADE的技术特点和开发流程,在SCADE下完成了PID控制系统的设计、仿真、测试。通过案例研究表明,采用SCADE进行嵌入式软件开发,将软件开发流程的重点由编码阶段提前到设计阶段,这样更易于在设计早期发现不足。模型设计完成后,通过代码生成器自动生成代码,可在很大程度上减少开发时间和可发成本,提高开发效率。而且,SCADE生成的代码满足一系列的安全特性,可读性良好,和手写代码效率相当。因此,SCADE在高可靠性的嵌入式软件设计领域,应用前景广泛。
- 基于Qt 及OpenCASCADE的建模技术研究(01-25)
- 12位串行A/D转换器MAX187的应用(10-06)
- AGC中频放大器设计(下)(10-07)
- 低功耗、3V工作电压、精度0.05% 的A/D变换器(10-09)
- PIC16C5X单片机睡眠状态的键唤醒方法(11-16)
- 用简化方法对高可用性系统中的电源进行数字化管理(10-02)