我有一个控制实时机器人的.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和脚本是否有办法在单独的文件中工作? 提前谢谢!
答案 0 :(得分:0)
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功能都可以满足您的需求。如果您需要更具体的解决方案,则需要向我提供有关您的问题的更多具体信息。祝你好运,我希望这会有所帮助。