Hier den Code bewerten:Matlab wird keine Bedingung
clear;
channel = ddeinit('view','tagname');
temperature = ddereq(channel,'temperature');
poistka = 0;
time = 0;
kvas = 0;
ohrev= 1;
steam=300;
pressure=100;
steam2= 50;
tempom = 1;
pom = 0;
while time<3600
ventil = ddereq(channel,'ventil');
pause(0.1);
time= time+1;
pom = pom+1;
if (kvas<=100)
kvas = kvas+1;
end;
if (kvas>=100 && temperature<95 && ohrev==1)
temperature = temperature+1;
tempom=0;
end;
if (temperature==95)
ohrev=0;
end;
if (ohrev==0)
temperature = temperature -0.1;
tempom = 1;
end;
if (temperature==70)
ohrev=1;
end;
end;
Ich comunnicating mit Matlab und tun Visualisierung in intouch aber ich kann nicht herausfinden, warum die Variable ohrev
nicht 1
wurde, als temperature
erreicht 70
Wert. Es geht auf die 95
, dann geht es bis 0
aber es sollte bei 70
stoppen und wieder gehen zu 95
und so weiter, aber es funktioniert nicht. Irgendwelche Ratschläge? Vielen Dank
Ihr Code ist unvollständig - die variable Temperatur wurde nicht gestartet. – 16per9
Meine Vermutung: [führen Sie keine genauen Übereinstimmungen mit Fließkommazahlen] (http://stackoverflow.com/questions/686439/why-is-24-0000-not-equal-to-24-0000-in-matlab), vor allem, wenn sie berechnet nicht zugewiesen sind. – TroyHaskin
Ich führe deinen Code und wenn Kvas 100 wird, erhöht sich die variable Temperatur auf 70 und erreicht ihren Wert. – 16per9