寻找一个替代的matlab从文件中读()——多个计算机通信

4视图(30天)
我有2台电脑系统独立运行的matlab会话。原则上,我想发送一个“触发”(6字节双包),一台计算机就在其他电脑完成运行一些代码。我希望得到触发器在好的时间分辨率(< 100 ms)和能够测量的延迟。知道,我使用UDP通信具有以下方案:
电脑1 -异丙醇:
%发送触发
数据=时钟;
写入文件(调查、数据“双”);
与此同时,其他电脑扫描一个非空包:
电脑2 -调查:
%为触发创建计时器对象
触发= InitializeMyTimer (ipA);
triggertime = trigger.UserData;
当定时器具有以下结构:
函数[triggObj] = InitializeMyTimer (ipData)
% InitializeMyTimer()是一个函数的接待管理
%触发从电脑出来
triggObj =定时器;
triggObj。时间= 0.01;% 1 ms TimerFcn执行之间的时间
triggObj。ExecutionMode =“fixedRate”;
triggObj。TimerFcn = @mytimer_cb;
triggObj。BusyMode =“下降”;
triggObj。TasksToExecute = 1 e3;%,这决定了超时的运行gui
triggObj。用户数据= ipData;
开始(triggObj);
等待(triggObj);
结束
函数mytimer_cb (obj、事件)
% timerFunc当我们收到一个数据包时停止运行
clocktime =从文件中读(obj。用户数据6“双”);
如果~ isempty (clocktime)
obj。用户数据= clocktime;
停止(obj);
结束;
结束
“从文件中读”似乎是这个函数的瓶颈,因为至少需要1秒
clocktime =从文件中读(obj。用户数据6“双”);
此外,我并不真的找到了一个好方法测量发送/接收延迟。我对几个方向——尽管
(1)发送一个analogoutput镍板连接到从MATLAB调查和阅读它
(2)尝试同时运行多个执行“从文件中读”。
(3)零模式使用RS232串行计算机之间的通信电缆和触发这种方式阅读。
应该是最有前途的技术呢?你们有什么建议作为替代吗?
谢谢,诺姆

答案(0)

类别

找到更多的在启动和关闭帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!