我有一个非常大的simulink输入文件(* .csv),它太大而无法在单个节点中处理......
我想知道在模拟开始时是否有可能不会读取整个文件,而是根据模拟需要实时流式传输数据。
我的第一个想法是在JAVA或C#(发送者)中实现自定义脚本,逐行读取输入csv文件, STREAM 数据通过TCP进行simulink。 Simulink将使用TCP块接收器接收数据。
我的问题是两个:
答案 0 :(得分:1)
我怀疑使用顺序数据块运行模拟会更容易,在每个块的末尾保存模型状态,并从上一个块末尾保存的状态开始模拟。描述如何执行此操作的文档是Save and Restore Simulation State as SimState。
答案 1 :(得分:1)
您可以尝试在C中编写一个S函数来打开文件并逐行传输数据。最简单的方法是使用S-Function Builder block。您仍然需要在C中解析您的文件(对于CSV文件,这应该不难)