Как я могу создать постоянно обновляемый график из данных подписки MQTT в MATLAB? - PullRequest
0 голосов
/ 25 сентября 2019

Я пытаюсь создать график зависимости времени от температуры.Значение температуры будет получено от брокера данных MQTT, который получает данные каждые 15 секунд.Я создал функцию для отображения полученного сообщения, однако данные MQTT извлекаются в виде строки, а не числового значения.Мне не удалось найти способ вывести данные, на которые я подписан, с сервера MQTT.

Ниже описана функция подписки с сервера MQTT.Я попытался использовать команду str2num для изменения данных, и это работает.Однако тогда я не могу использовать это значение для построения графика внутри функции, так как функция распознает только строковые аргументы.И я не могу получить команду plot вне функции, потому что сообщение извлекается только внутри функции.

% code to connect to an MQTT broker
myMQTT = mqtt('tcp://broker.hivemq.com');

%subscribe to a topic with QoS 0, and tell MATLAB to run myMQTT_Callback
%when a new value is published.
AvgTemp = subscribe(myMQTT,'Average Temperature','QoS',0,'Callback',@myMQTT_Callback);

% This function is automatically called by MATLAB until you close MATLAB,
% unsubscribe, or the connection times out.
function myMQTT_Callback(topic, msg)
fprintf('MQTT callback topic "%s": "%s"\n', topic, msg)
%
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...