setparam
{
// sys[140-7]
_sys=140;
_ramd=330;
_ramh=340;
label setparam_1:
_pom=sys[_sys]/1000;
if (_pom<200) {
ram[_ramh]=_pom-100;
ram[_ramh]=-1*ram[_ramh];
} else {
ram[_ramh]=_pom-200;
}
_pom=sys[_sys] % 1000;
if (_pom<200) {
ram[_ramd]=_pom-100;
ram[_ramd]=-1*ram[_ramd];
} else {
ram[_ramd]=_pom-200;
}
_sys++;
_ramd++;
_ramh++;
if (_sys<148) goto setparam_1;
}
savetopm
{
_pom=0;
_memo=100;
_web=140;
label savetopm_1:
if (sys[_memo]!=sys[_web]) {
sys[_memo]=sys[_web];
echo('Hodnota ', sys[_web], ' ulozena do permanentni pameti');
_pom=1;
}
_memo++;
_web++;
if (_memo<108) goto savetopm_1;
if (_pom==1) setparam(); //nastaveni parametru z web promennych
}
nactitemp
{
_sys=310;
_ram=300;
label nactitemp_1:
if (sys[_sys]>0 && sys[_sys]<20000) {
ram[_ram]=sys[_sys];
_pom=_ram+10;
if (ram[_ram]<ram[_pom]){
ram[_pom]=ram[_ram];
}
_pom=_ram+20;
if (ram[_ram]>ram[_pom]){
ram[_pom]=ram[_ram];
}
}
_sys++;
_ram++;
if (_sys<318) goto nactitemp_1;
}
kontrtemp
{
_ram=300;
_ramd=330;
_ramh=340;
_rame=350;
label kontrtemp_1:
_pom=_ram-299+390;
_tep=ram[_ram]/100; //akt.teplota ve stupnich
if (_tep<ram[_ramd] && ram[_rame]<sys[3]){
echo('Teplota cidla ', sys[_pom],' (',_tep,' st.C)', ' je nizsi nez nastavena (', ram[_ramd], ' st.C)');
smtp_send('xxxxxx@', 'SDS panel teplot', 'Teplota cidla ', sys[_pom],' (',_tep,' st.C)', ' je nizsi nez nastavena (', ram[_ramd], ' st.C)');
ram[_rame]=sys[3]+8640000; //az za 24h se odesle dalsi email pokud se teplota nevrati
}
if (_tep>ram[_ramh] && ram[_rame]<sys[3]){
echo('Teplota cidla ', sys[_pom],' (',_tep,' st.C)', ' je vyssi nez nastavena (', ram[_ramh], ' st.C)');
smtp_send('xxxxxx@', 'SDS panel teplot', 'Teplota cidla ', sys[_pom],' (',_tep,' st.C)', ' je vyssi nez nastavena (', ram[_ramh], ' st.C)');
ram[_rame]=sys[3]+8640000; //az za 24h se odesle dalsi email pokud se teplota nevrati
}
if (_tep>ram[_ramd] && _tep<ram[_ramh]){
_pom=_tmo*100;
ram[_rame]=sys[3]+_pom; //timeout
}
_ram++;
_ramd++;
_ramh++;
_rame++;
if (_ram<308) goto kontrtemp_1;