A co třeba todle http://ksystems.cz/Kotelna/
Je to komplet SDS řídí mi to jak teplotu vody do topného systému, tak teplotu v mistnosti. Jeste k tomu budu dodelavat ekvitermni krivku, aby si to samo urcilo teplotu media v zavislosti na venkovni teplote, ale cekam na vetsi mrazy, abych si to necucal z prstu. Stacilo mi jenom nastavení časů pro PWM regulaci serva. KdYž se koukneš do grafů tak uvidíž že teplota v mísnosti plochá. Myslím že samotným čerpadlem se to takto uřídit nedá. Jo na prohlížení raděj Firefox. Chrome mi zatím neobrazuje gradienty. Tady je kus kódu na řízení PWM regulace serva
zapni_cerpadlo_2 //cerpadlo topneho okruhu zapnuto
{
CERPADLO_2 = 1;
echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''cerpadlo 2 zapnuto');
pwm = 7000;
pwmregulace:
if (POKOJ_TERMOSTAT != 0 && CERPADLO_2 != 0) return; // vyp. cerp. topneho okruhu, pokud vypne pokoj. termostat
if (WEB_TERMOSTAT + HYSTEREZE < DOMA && CERPADLO_2 != 0) return; // vyp. cerp. topneho okruhu, pokud vypne web. termostat
if (KOTEL < 7000 && AKUM1 < 4000 && CERPADLO_2 != 0) return; // vyp. cerp. topneho okruhu, pokud nehori kotel a jsou vybite nadrze
if (KOTEL >= 9800) return; //prehrati kotle
if (KOTEL > 8000 && CERPADLO_1 == 0) return; //zacal topit kotel - navrat do main, aby seplo primarni cerpadlo - prepinam z aku na kotel
if (STOUPACKA < SERVO && pwm > 1100) { pwm--; }; //pokud je chladnejsi, otvirame
if (STOUPACKA > SERVO && pwm < 7000) { pwm++; }; //pokud je teplejsi, zavirame
if (pwm != old_pwm) { PWM_CYKLE = pwm; }; //pri rozdilu nastavit novou hodnotu
if (pwm == 1101) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 100%'); };
if (pwm == 1690) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 90%'); };
if (pwm == 2280) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 80%'); };
if (pwm == 2870) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 70%'); };
if (pwm == 3640) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 60%'); };
if (pwm == 4050) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 50%'); };
if (pwm == 4640) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 40%'); };
if (pwm == 5230) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 30%'); };
if (pwm == 5820) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 20%'); };
if (pwm == 6410) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 10%'); };
if (pwm == 6999) { echo(sys[5]'-'sys[6]'-'sys[7]' 'sys[8]':'sys[9]':'sys[10]' ''servo 0%'); };
wait(100); //pockame 100 msec, protoze teplota se meni jen pomalu, tak at se projevi vliv zmeny pwm
goto pwmregulace;
}