- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.Simulink查表数据导入加密
1.Simulink数据导入
由于我的matlab版本比较低,导入excel会出现错误,excel中有些代码不支持什么的,装高一点matlab就不会了,我以前弄过。和导入txt的方法是一样的,我就用导入txt的方法来说明一下哈。
首先建一个txt(我是把txt建在桌面上的)
这个matlab的当前目录必须和你建的txt位置一样(我的在桌面上),这个当前目录可以在图标中设置。
然后你可以通过在命令窗口上输入:
你定义的变量名=load(带后缀的文件名);
通过旁边的edit就可以看到自己导入的数据了
还有一种就是先将数据在matlab工作空间输入,得到结果后用
reshape([1,2,3,4,2,1,2,3,4,2,2,4],3,4)
其中3,4代表行列(note:中括号后面的数字有个‘,’号):
效果图:
和导入txt的方法一样,(不过是用的xlsread来读取数据)
Excel表格数据如下:
在matlab工作空间中导入数据:
这里是2行12列,lookup table 编辑的参数如下:
下面是结果图;
2.Simulink查表模块
三维表格的使用,假设定义为三维表格。
用如下变量定义断点和表格数据
表格数据使用Simulink标准格式进行定义。
table3d_map(:,:,1) =
1 2 3 4
5 6 7 8
table3d_map(:,:,2) =
11 12 13 14
15 16 17 18
table3d_map(:,:,3) =
111 112 113 114
115 116 117 118
bp3d_y =
400 6400
bp3d_x =
0 10 20 30
bp3d_z =
0 10 20
当你点击编辑表格和断点的时候,数据如下:
当你更改已一个数据的时候
当你选择File Update Block Data时,可以改变table3d_map,工作空间中的变量就包含了已经更改的表格数据,点击确认即可覆盖工作空间中的变量。
关于查表的方法:
U1表示列,U2表示行,U3表示第几页数据,U3必须与定义的输入数据相符,否则差值输出。
遵循的顺序:列,行,页。
Reload Block data 将从工作空间重新加载数据到表格。Update Block data将把表格数据写到工作空间中以便生成MAT文件。
M文件中表示矩阵
fd=[46 56 56 65
78 78 8 78
79 7 7 8
8 9 9 9 ]
空格活着回车符号隔开即可。
3.封装子系统,禁止编辑
1.操作方便,不允许look under mask
子系统封装好后,就想让它成为一个块一样。不能用look under mask进入并修改右击模块-sub parameters-main标签页-Read/write permissions??选择NoReadOrWriteGenerate Protected Model。
2.封装、加密
在Simulink中,可以将模型进行封装,就想C语言中的编译一样,以防自己的算法被人抄袭或者修改算法一个黑匣子,只有输入输出,不表现具体的算法和过程.算法使用C Mex S function编写,编译为mexw文件提供给用户;.右键子系统,C/C++ 代码生成-生成S函数,编译之后生成内容不可见的S function模块替换原来内容可见的子系统。生成S函数,是否需要在系统中安装C的compilers?如果没有的话,是否就无法生成呢?32位Matlab自带LCC编译器。64位的话,你可以安装一个VC的IDE。直接可以右键build哪位大虾能指点一下如何进行封装加密,别的公司要逆变器仿真,只要输入、输出即可,我要进行封装加密,还请大虾指点,谢谢把你的模型编译成s函数需要安装real time workshop然后到你的模型上面,右键点击,选择real time workshop,然后generate s function封装是不可逆的对搭建的simulink模型进行加密,就是对子系统封装后,只能看到输入输出与一些中间参数设置,而不能看到里面的具体内容。封装是不行的,因为还可以看到下一级的模块。matlab公司的例程是用s函数写的,好像可以加密,不知道怎么做的?我这里主要想问的是非s函数写的,而是纯模块搭建的,能否加密,如何加密,谢谢!支持加密,版权是辛苦的。用fonction builder 模块,生成文件后,把源文件删除。具体没用过。我只知道点皮毛各位大侠,我想对搭建的simulink模块进行加密,看到有帖子说用:C/C++ code -Generate S-Function的方法完成。我测试了一下,用简单的subsystem是可以的,但是编译我的模块后出现下面
文档评论(0)