|
读研期间从研一开始就接触MATLAB/Simulink,我也看了非常多关于MATLAB/Simulink的书,但是总觉得不得要领。直到看到校长的大作《Simulink仿真及代码生成技术入门到精通》一书,在一开始看到这本书与配套课程时可以说是惊为天人,该书从如何打开Simulink一直到最后的MBD开发都非常符合我的个人需求。现在讲讲我如何将该书“翻烂”的故事: 第一阶段:在作为一名只用Simulink做过一些简单仿真的菜鸟,把该书的基础篇从头到尾阅读了一遍,能够让从未接触过Simulink的人能够了解基本模块的使用。而提升篇与高级篇才是让我心往的内容,其中包括如何在Simulink创建自定义库(不仅是封装子系统还有封装S Function)以及将嵌入式的代码集成到Simulink模块(目标芯片支持包的定制),因此我配合课程、书籍与MathWork官网提供的demo开始制作属于自己的快速控制原型包。 第二阶段:作为初入职场的新人,我需要利用Matlab编程去控制Simulink模型的生成,而在此之前版主也只会写一些简单的C语言程序(这里只是想告诉大家M语言编程比较简单)。在这个过程中,我了解到模块的句柄、各种各样的属性、自动化连线、控制A2L文件的生成等技能。而在该书的第一章,校长就会强调M语言与Simulink密不可分,其中包括利用get_param和set_param去认识模块的属性、Simulink的回调函数等内容。各位读者如有需要可以在下方进行回帖,我们可以利用github上的项目重新用AppDesigner设计人机交互界面,利用M语言去控制模型的生成。 第三阶段:在此后我继续从事创建Simulink的自定义库。间隔半年后再次从事自定义库的开发导致我对之前的技能已经生疏,因此我又捡起了书中的内容,包括C mex S Function的编写与封装,对应TLC文件的编写等。其实该书非常全面,包括模块端口数据类型的自定义,动态的输入输出端口,可惜的是当时读书做的TSP包比较简单,没有对应的经验,因此没有去深入研究这块的知识。 作者在这里想强调一下,旧版本的MATLAB对于面向对象的编程没有那么重视,而自新版本后MATLAB/Simulink很多东西都是以面向对象的编程方法展示给用户,希望各位读者还是需要了解下面向对象的MATLAB语言编程知识。 |