Sending a danger message on email or phone Number.

조회 수: 1 (최근 30일)
Aditya
Aditya 2024년 3월 15일
답변: Christopher Stapels 2024년 4월 3일
I Have a live modbus data which once reached trip value i want it to send me a mail or message on phone as danger or machine under trip level. Is it possible in matlab to write a code where i can recive a mail or message. Can anyone guide me with the code of how i can send a mail from matlab to email/Phone. I have attached my code as well as the app.
i = 1;
data1A=[];
data1T=[];
data1Al=[];
while strcmp(app.Switch.Value, 'On')
clear m
m = modbus('serialrtu','COM5',BaudRate=9600);
m.Timeout = 0.5;
% Rack 1 Slot 1 Module 1
serverId1 = 2;
tripM1A = read(m,"holdingregs",1,1,serverId1,"uint16");
alarmM1A = read(m,"holdingregs",6,1,serverId1,"uint16");
fullscaleM1A = read(m,"holdingregs",11,1,serverId1,"uint16");
processM1A = read(m,"holdingregs",44,1,serverId1,"uint16");
tripM1B = read(m,"holdingregs",21,1,serverId1,"uint16");
alarm1B = read(m,"holdingregs",26,1,serverId1,"uint16");
fullscaleM1B = read(m,"holdingregs",31,1,serverId1,"uint16");
processM1B = read(m,"holdingregs",45,1,serverId1,"uint16");
% To plot data in UI Axes
data1A(i) = processM1A;
data1T(i) = tripM1A;
data1Al(i) = alarmM1A;
if i <= 60
plotRange = 1:i;
else
plotRange = (i-59):i;
end
% Ensure previous plots are not erased
hold(app.UIAxes, 'on');
plot(app.UIAxes, plotRange, data1A(plotRange), 'LineWidth', 1.5, 'Color', 'b'); % Process data
plot(app.UIAxes, plotRange, data1T(plotRange), 'LineWidth', 1.5, 'Color', 'r'); % Trip line
plot(app.UIAxes, plotRange, data1Al(plotRange), 'LineWidth', 1.5, 'Color', 'g'); % Alarm line
% Release hold after plotting
hold(app.UIAxes, 'off');
title(app.UIAxes, 'Simulated Live Trend');
xlabel(app.UIAxes, 'Time in seconds', 'Color', 'k');
ylabel(app.UIAxes, 'Amplitude', 'Color', 'k');
ylim(app.UIAxes, [0 fullscaleM1A]);
grid(app.UIAxes, "on");
pause(0.1);
i = i + 1;
end
Thanks & Regards.

답변 (1개)

Christopher Stapels
Christopher Stapels 2024년 4월 3일
Sure, there are several ways to do that using ThingSpeak. The best way is using the alerts API. Jsut set up the alert in ThingSpeak and call the api endpoint in your code when you want to trigger the event. This will only send an email to you, but you can use a forwarding rule in you inbox to send it on. Or you can use an api call in MATLAB analysis (called by the alerts API) that calls an external service like Twilio that will distribute your email.

카테고리

Help CenterFile Exchange에서 ThingSpeak에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by