- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何使用eel来管理数据对象.doc
如何使用excel来管理数据对象
1、使用mat文件也好m文件也好对数据对象的处理都不够直观,也
不够方便
有人使用excel来管理数据对象,在excel里面做好了配置直接调入
matlab里面生成相应的数据对象
具体是如何做到的,哪位高人能给小弟指点下迷津
前段时间比较忙,花了近两天按照老胡说的做了一个,己经基本实现
了所说功能
本人对M语言并不熟悉,现学现买,所以写的有些粗糙,还望大家指
点指点,帮忙改进。尽管提意见,看看还怎么才能实现的更好
发表于2014-2-1313:56:20| |此回复为最佳答案
工程上使用Excel管理数据的用户很多,具体实现要注意一下两点:
Excel表格中,数据的各类属性冇严格的格式限制;
比如,第一列是信号名,第二列是数据类型,第三列是数据范闱,第
四列是存储类型等等
然后写一段m脚本解析数据表格,当然也可以在Excel里用VBA实
现。
这个脚本的内容,就是读Excel表格的数据名,以及其后的各类属性,
然后将其写到另外一个m文件屮,也就是文本打印的方式,这个m文件
的内容大概如下:varl=mpt.Signal;
varl.DataType=#39;Uint8#39;;
varl.MaxMin=#39;2,100#39;;
当然,上述代码中各类可能不准确,只是示例。
老胡发表于2014-2-1313:56
工程上使用Excel管理数据的用户很多,具体实现要注意一下两点:
l.Excel表格中,数据的各类属性有严格的格...
老胡能否给出脚木的实例代码看一看供学习参考。这个功能大家都知
道有,但从来没能见过真相。。。
我想初学者们都明白这个脚本的原理,例如对于基于模型的嵌入式开
发,定义了系统一个‘DataDic.xlx’的excel文档,文档结构大概是这样
VarNameValueDatatypeUnitsMinimumMaximumStorageClass
Li m it Vo ItageOu i nt 16 V
916Custom
一溜变量这么排下來
脚本的功能就是读取这个excel,然后根据每个标题生成一列等式
LimitVoltage=MPT.PARAMETER
LimitVoltage.Value=0
……这样下来就像
但是就是不知道实现这个过程的代码长什么样啊!什么语句,什么函
数来实现这个过程啊!
本帖最后由老胡于2014-2-1315:46编辑
代码挺简单的,假如你从Excel读到一些字符申如下:
str_var=#39;LimitVoltage#39;;
str_value=#39;0#39;;
str_datatype=#39;uintl6#39;;
? ?參?
然后,你就可以组合这些信息并写到一个文本文件屮,当然这个文本
文件需要把扩展名定义为.m。
比如:
fid=fopen(#39;datafile.m#39;/#39;w#39;);
str_tmp=strcat(str_var,#39;=#39;z#39;mpt.Signal#39;);
fprintf(fid,str_tmp);
fprintf(fid,#39;\n#39;);
str_tmp=strcat(str_var,#39;.#39;,#39;Value#39;,#39;=#39;,str_value)
e
/
fprintf(fid,str_tmp);
fprintf(fid,#39;\n#39;);
參??參
fclose(fid);
大致如此吧。
工程上使用Excel管理数裾的用户很多,具体实现要注意一下两点:
l.Excel表格中,数据的各类属性有严格的格...
为何不直接从Excel中读取数据,直接用eval之炎的函数在workspace
中直接生成信号对象,而要引入先printf—个m文件这种中间过程呢?
是基于每次读取花费的时间考虑还是基于什?
发表于 2014-2-1409:01:511 mengzhihu2 发表于 2014-2-1322:11 为何不直接从Excel中读取数据,直接用eval之类的函数在workspace
屮直接生成信号对象,而要引入先printf —
直接Eval产生数据对象也不错,但可能每次读取Exce相比每次读.m
文件,速度可能会慢些。
DefiningDataStoreswithSignalObjects
Onthispage...
CreatingtheDataStore
LocalandGlobalDataStores
CreatingtheDataStore
TouseaSimulink.Signalobjecttodefineadatastore,createtheobjectinaworkspacet
hatisvisibletoever
原创力文档


文档评论(0)