同时使用GUI和脚本



我有一个.m文件(脚本)来控制一个实时机器人。

我在这个文件中做的是:

1- find a trajectory
2-infinite loop:
    read from robot
    update robot
    plot some stuff (basically I'm drawing a new point in each iteration that represents the position of the robot in a previously opened map, it's updating the map)
end of loop

我想做的是创建一个GUI,让我可以绘制图形,并看到机器人同时返回的一些值,实时的。

从我读到的,MATLAB不能同时运行脚本和GUI ..我可以在GUI中实时绘制,但我似乎无法更新GUI中文本框中机器人返回的值。

我是否必须把它全部放在同一个文件中,或者是否有一种方法可以让GUI和脚本在单独的文件中工作?提前感谢!

MATLAB运行两者都没有问题。我不知道你们是从哪里读到的,但这不是真的;MATLAB不是解决这个问题的最佳工具,但它可以做到。

首先,我要用代码来描述你的问题,使它更容易解决。你的问题既模糊又笼统,所以我的回答也必须笼统。我对你的函数结构做了一些假设,但它实际上应该看起来像这样:

endflag = 0;
while ~endflag
    robotData = getRobotData(robotHandel);
    derivedData = doStuffWithData(robotData);
    updateRobot(derivedData);
    showData(robotData, derivedData)      
    endflag = checkEndFlag(robotData, derivedData)
end 

所以,你的问题是showData功能。它应该做的是确定需要从它的输入中显示哪些值,并将这些值传递给GUI。像这样:

function showData(robotData, derivedData)
    guiInputData = dataParser(robotData, derivedData)
    YourGUIFunctionName(guiInputData)
end
然后,GUI函数应该使用这些输入构建自己。任何以这种方式工作的GUI函数,都将做您想要它做的事情。如果你想要一个更具体的解决方案,你需要给我关于你的问题更具体的信息。祝你好运,我希望这对你有帮助。

相关内容

  • 没有找到相关文章