www-thermferm/units.php

changeset 362
c92651a54969
parent 349
1f89da6511a9
child 364
2f9bbbcd2407
equal deleted inserted replaced
361:308f6a436779 362:c92651a54969
104 $cmd[] = "LIGHT_DELAY,".$_POST['LightDelay']; 104 $cmd[] = "LIGHT_DELAY,".$_POST['LightDelay'];
105 $cmd[] = "DOOR_ADDRESS,".$_POST['DoorAddress']; 105 $cmd[] = "DOOR_ADDRESS,".$_POST['DoorAddress'];
106 $cmd[] = "PSU_ADDRESS,".$_POST['PSUAddress']; 106 $cmd[] = "PSU_ADDRESS,".$_POST['PSUAddress'];
107 $cmd[] = "TEMP_SET_MIN,".$_POST['TempSetMin']; 107 $cmd[] = "TEMP_SET_MIN,".$_POST['TempSetMin'];
108 $cmd[] = "TEMP_SET_MAX,".$_POST['TempSetMax']; 108 $cmd[] = "TEMP_SET_MAX,".$_POST['TempSetMax'];
109 $cmd[] = "IDLE_RANGE_L,".$_POST['IdleRangeL']; 109 $cmd[] = "PIDC_IMAX,".$_POST['PIDC_iMax'];
110 $cmd[] = "IDLE_RANGE_H,".$_POST['IdleRangeH']; 110 $cmd[] = "PIDC_PGAIN,".$_POST['PIDC_pGain'];
111 $cmd[] = "PID_KP,".$_POST['PID_Kp']; 111 $cmd[] = "PIDC_DGAIN,".$_POST['PIDC_dGain'];
112 $cmd[] = "PID_KD,".$_POST['PID_Kd']; 112 $cmd[] = "PIDC_IGAIN,".$_POST['PIDC_iGain'];
113 $cmd[] = "PID_KI,".$_POST['PID_Ki']; 113 $cmd[] = "PIDC_IDLERANGE,".$_POST['PIDC_idleRange'];
114 $cmd[] = "PIDH_IMAX,".$_POST['PIDC_iMax'];
115 $cmd[] = "PIDH_PGAIN,".$_POST['PIDH_pGain'];
116 $cmd[] = "PIDH_DGAIN,".$_POST['PIDH_dGain'];
117 $cmd[] = "PIDH_IGAIN,".$_POST['PIDH_iGain'];
118 $cmd[] = "PIDH_IDLERANGE,".$_POST['PIDH_idleRange'];
114 $cmd[] = "."; 119 $cmd[] = ".";
115 send_array($cmd); 120 send_array($cmd);
116 } 121 }
117 122
118 unset($_POST['UUID']); 123 unset($_POST['UUID']);
132 unset($_POST['FanDelay']); 137 unset($_POST['FanDelay']);
133 unset($_POST['DoorAddress']); 138 unset($_POST['DoorAddress']);
134 unset($_POST['PSUAddress']); 139 unset($_POST['PSUAddress']);
135 unset($_POST['TempSetMin']); 140 unset($_POST['TempSetMin']);
136 unset($_POST['TempSetMax']); 141 unset($_POST['TempSetMax']);
137 unset($_POST['IdleRangeL']); 142 unset($_POST['PIDC_iMax']);
138 unset($_POST['IdleRangeH']); 143 unset($_POST['PIDC_pGain']);
139 unset($_POST['PID_Kp']); 144 unset($_POST['PIDC_dGain']);
140 unset($_POST['PID_Kd']); 145 unset($_POST['PIDC_iGain']);
141 unset($_POST['PID_Ki']); 146 unset($_POST['PIDC_idleRange']);
147 unset($_POST['PIDH_iMax']);
148 unset($_POST['PIDH_pGain']);
149 unset($_POST['PIDH_dGain']);
150 unset($_POST['PIDH_iGain']);
151 unset($_POST['PIDH_idleRange']);
142 load('units.php'); 152 load('units.php');
143 } 153 }
144 154
145 155
146 156
159 * 4 = TempSetMax <= TempSetMin 169 * 4 = TempSetMax <= TempSetMin
160 * 5 = TempSetMax < 25 or > 35 170 * 5 = TempSetMax < 25 or > 35
161 * 6 = TempSetMin < -5 or > 15 171 * 6 = TempSetMin < -5 or > 15
162 * 7 = HeaterDelay out of range 172 * 7 = HeaterDelay out of range
163 * 8 = CoolerDelay out of range 173 * 8 = CoolerDelay out of range
164 * 9 = IdleRangeL out of range 174 * 9 = PIDC idleRange out of range
165 * 10 = IdleRangeH out of range 175 * 10 = PIDH idleRange out of range
166 * 11 = LightDelay out of range 176 * 11 = LightDelay out of range
167 * 12 = FanDelay out of range 177 * 12 = FanDelay out of range
168 * 99 = Cancel key 178 * 99 = Cancel key
169 */ 179 */
170 function test_thedata() { 180 function test_thedata() {
173 183
174 if (isset($_POST['UUID']) && isset($_POST['Name']) && isset($_POST['Volume']) && isset($_POST['AirAddress']) && 184 if (isset($_POST['UUID']) && isset($_POST['Name']) && isset($_POST['Volume']) && isset($_POST['AirAddress']) &&
175 isset($_POST['BeerAddress']) && isset($_POST['HeaterAddress']) && isset($_POST['CoolerAddress']) && isset($_POST['LightAddress']) && 185 isset($_POST['BeerAddress']) && isset($_POST['HeaterAddress']) && isset($_POST['CoolerAddress']) && isset($_POST['LightAddress']) &&
176 isset($_POST['HeaterDelay']) && isset($_POST['CoolerDelay']) && isset($_POST['LightDelay']) && isset($_POST['PSUAddress']) && 186 isset($_POST['HeaterDelay']) && isset($_POST['CoolerDelay']) && isset($_POST['LightDelay']) && isset($_POST['PSUAddress']) &&
177 isset($_POST['FanAddress']) && isset($_POST['DoorAddress']) && isset($_POST['TempSetMin']) && isset($_POST['TempSetMax']) && 187 isset($_POST['FanAddress']) && isset($_POST['DoorAddress']) && isset($_POST['TempSetMin']) && isset($_POST['TempSetMax']) &&
178 isset($_POST['PID_Kp']) && isset($_POST['PID_Kd']) && isset($_POST['PID_Ki']) && isset($_POST['FanDelay']) && 188 isset($_POST['PIDC_pGain']) && isset($_POST['PIDC_iGain']) && isset($_POST['PIDC_dGain']) && isset($_POST['PIDC_idleRange']) &&
179 isset($_POST['IdleRangeL']) && isset($_POST['IdleRangeH']) && isset($_POST['key']) && isset($_POST['command'])) { 189 isset($_POST['PIDH_pGain']) && isset($_POST['PIDH_iGain']) && isset($_POST['PIDH_dGain']) && isset($_POST['PIDH_idleRange']) &&
190 isset($_POST['PIDC_iMax']) && isset($_POST['PIDH_iMax']) &&
191 isset($_POST['FanDelay']) && isset($_POST['key']) && isset($_POST['command'])) {
180 192
181 if ($_POST['key'] == 'Cancel') 193 if ($_POST['key'] == 'Cancel')
182 return 99; 194 return 99;
183 195
184 if (strlen($_POST['Name']) < 2) 196 if (strlen($_POST['Name']) < 2)
210 return 7; 222 return 7;
211 223
212 if (($_POST['CoolerDelay'] < 0) || ($_POST['CoolerDelay'] > 720)) 224 if (($_POST['CoolerDelay'] < 0) || ($_POST['CoolerDelay'] > 720))
213 return 8; 225 return 8;
214 226
215 if (($_POST['IdleRangeL'] > 0) || ($_POST['IdleRangeL'] < -5)) 227 if (($_POST['PIDC_idleRange'] < 0) || ($_POST['PIDC_idleRange'] > 5))
216 return 9; 228 return 9;
217 229
218 if (($_POST['IdleRangeH'] < 0) || ($_POST['IdleRangeH'] > 5)) 230 if (($_POST['PIDH_idleRange'] < 0) || ($_POST['PIDH_idleRange'] > 5))
219 return 10; 231 return 10;
220 232
221 if (($_POST['LightDelay'] < 0) || ($_POST['LightDelay'] > 720)) 233 if (($_POST['LightDelay'] < 0) || ($_POST['LightDelay'] > 720))
222 return 11; 234 return 11;
223 235
264 break; 276 break;
265 case 7: $error = 'Heater Delay must be bewteen 0 and 720 seconds'; 277 case 7: $error = 'Heater Delay must be bewteen 0 and 720 seconds';
266 break; 278 break;
267 case 8: $error = 'Cooler Delay must be bewteen 0 and 720 seconds'; 279 case 8: $error = 'Cooler Delay must be bewteen 0 and 720 seconds';
268 break; 280 break;
269 case 9: $error = 'Idle Range Low must be between -5 en 0'; 281 case 9: $error = 'PID cool Idle Range must be between 0 en 5';
270 break; 282 break;
271 case 10: $error = 'Idle Range High must be between 0 and 5'; 283 case 10: $error = 'PID heat Idle Range must be between 0 and 5';
272 break; 284 break;
273 case 11: $error = 'Light Delay must be bewteen 0 and 720 seconds'; 285 case 11: $error = 'Light Delay must be bewteen 0 and 720 seconds';
274 break; 286 break;
275 case 12: $error = 'Fan Delay must be bewteen 0 and 720 seconds'; 287 case 12: $error = 'Fan Delay must be bewteen 0 and 720 seconds';
276 break; 288 break;
406 $outstr .= ' <tr class="editor">'.PHP_EOL; 418 $outstr .= ' <tr class="editor">'.PHP_EOL;
407 $outstr .= ' <td class="editname">Heater Switch Delay</td>'.PHP_EOL; 419 $outstr .= ' <td class="editname">Heater Switch Delay</td>'.PHP_EOL;
408 $outstr .= ' <td class="editfield"><input type="text" name="HeaterDelay" size="5" value="'.$f[1].'"> seconds (0..720)</td>'.PHP_EOL; 420 $outstr .= ' <td class="editfield"><input type="text" name="HeaterDelay" size="5" value="'.$f[1].'"> seconds (0..720)</td>'.PHP_EOL;
409 $outstr .= ' </tr>'.PHP_EOL; 421 $outstr .= ' </tr>'.PHP_EOL;
410 } 422 }
423 if ($f[0] == "PIDH_IMAX") {
424 $outstr .= ' <tr class="editor">'.PHP_EOL;
425 $outstr .= ' <td class="editname">PID Heat Maximum</td>'.PHP_EOL;
426 $outstr .= ' <td class="editfield"><input type="text" name="PIDH_iMax" size="6" value="'.$f[1].'"> % (1..100)</td>'.PHP_EOL;
427 $outstr .= ' </tr>'.PHP_EOL;
428 }
429 if ($f[0] == "PIDH_PGAIN") {
430 $outstr .= ' <tr class="editor">'.PHP_EOL;
431 $outstr .= ' <td class="editname">PID Heat pGain</td>'.PHP_EOL;
432 $outstr .= ' <td class="editfield"><input type="text" name="PIDH_pGain" size="6" value="'.$f[1].'"> Proportional</td>'.PHP_EOL;
433 $outstr .= ' </tr>'.PHP_EOL;
434 }
435 if ($f[0] == "PIDH_IGAIN") {
436 $outstr .= ' <tr class="editor">'.PHP_EOL;
437 $outstr .= ' <td class="editname">PID Heat iGain</td>'.PHP_EOL;
438 $outstr .= ' <td class="editfield"><input type="text" name="PIDH_iGain" size="6" value="'.$f[1].'"> Intergral</td>'.PHP_EOL;
439 $outstr .= ' </tr>'.PHP_EOL;
440 }
441 if ($f[0] == "PIDH_DGAIN") {
442 $outstr .= ' <tr class="editor">'.PHP_EOL;
443 $outstr .= ' <td class="editname">PID Heat dGain</td>'.PHP_EOL;
444 $outstr .= ' <td class="editfield"><input type="text" name="PIDH_dGain" size="6" value="'.$f[1].'"> Derivative</td>'.PHP_EOL;
445 $outstr .= ' </tr>'.PHP_EOL;
446 }
447 if ($f[0] == "PIDH_IDLERANGE") {
448 $outstr .= ' <tr class="editor">'.PHP_EOL;
449 $outstr .= ' <td class="editname">PID Heat Idle Range</td>'.PHP_EOL;
450 $outstr .= ' <td class="editfield"><input type="text" name="PIDH_idleRange" size="6" value="'.$f[1].'"> &deg;C (Heater margin)</td>'.PHP_EOL;
451 $outstr .= ' </tr>'.PHP_EOL;
452 }
411 if ($f[0] == "COOLER_ADDRESS") { 453 if ($f[0] == "COOLER_ADDRESS") {
412 $outstr .= ' <tr class="editor">'.PHP_EOL; 454 $outstr .= ' <tr class="editor">'.PHP_EOL;
413 $outstr .= ' <td class="editname">Cooler Switch Address</td>'.PHP_EOL; 455 $outstr .= ' <td class="editname">Cooler Switch Address</td>'.PHP_EOL;
414 $outstr .= ' <td class="editfield"><select name="CoolerAddress">'.PHP_EOL; 456 $outstr .= ' <td class="editfield"><select name="CoolerAddress">'.PHP_EOL;
415 $outstr .= ' <option value="">Not Assigned</option>'.PHP_EOL; 457 $outstr .= ' <option value="">Not Assigned</option>'.PHP_EOL;
433 $outstr .= ' <tr class="editor">'.PHP_EOL; 475 $outstr .= ' <tr class="editor">'.PHP_EOL;
434 $outstr .= ' <td class="editname">Cooler Switch Delay</td>'.PHP_EOL; 476 $outstr .= ' <td class="editname">Cooler Switch Delay</td>'.PHP_EOL;
435 $outstr .= ' <td class="editfield"><input type="text" name="CoolerDelay" size="5" value="'.$f[1].'"> seconds (0..720)</td>'.PHP_EOL; 477 $outstr .= ' <td class="editfield"><input type="text" name="CoolerDelay" size="5" value="'.$f[1].'"> seconds (0..720)</td>'.PHP_EOL;
436 $outstr .= ' </tr>'.PHP_EOL; 478 $outstr .= ' </tr>'.PHP_EOL;
437 } 479 }
480 if ($f[0] == "PIDC_IMAX") {
481 $outstr .= ' <tr class="editor">'.PHP_EOL;
482 $outstr .= ' <td class="editname">PID Cool Maximum</td>'.PHP_EOL;
483 $outstr .= ' <td class="editfield"><input type="text" name="PIDC_iMax" size="6" value="'.$f[1].'"> % (1..100)</td>'.PHP_EOL;
484 $outstr .= ' </tr>'.PHP_EOL;
485 }
486 if ($f[0] == "PIDC_PGAIN") {
487 $outstr .= ' <tr class="editor">'.PHP_EOL;
488 $outstr .= ' <td class="editname">PID Cool pGain</td>'.PHP_EOL;
489 $outstr .= ' <td class="editfield"><input type="text" name="PIDC_pGain" size="6" value="'.$f[1].'"> Proportional</td>'.PHP_EOL;
490 $outstr .= ' </tr>'.PHP_EOL;
491 }
492 if ($f[0] == "PIDC_IGAIN") {
493 $outstr .= ' <tr class="editor">'.PHP_EOL;
494 $outstr .= ' <td class="editname">PID Cool iGain</td>'.PHP_EOL;
495 $outstr .= ' <td class="editfield"><input type="text" name="PIDC_iGain" size="6" value="'.$f[1].'"> Intergral</td>'.PHP_EOL;
496 $outstr .= ' </tr>'.PHP_EOL;
497 }
498 if ($f[0] == "PIDC_DGAIN") {
499 $outstr .= ' <tr class="editor">'.PHP_EOL;
500 $outstr .= ' <td class="editname">PID Cool dGain</td>'.PHP_EOL;
501 $outstr .= ' <td class="editfield"><input type="text" name="PIDC_dGain" size="6" value="'.$f[1].'"> Derivative</td>'.PHP_EOL;
502 $outstr .= ' </tr>'.PHP_EOL;
503 }
504 if ($f[0] == "PIDC_IDLERANGE") {
505 $outstr .= ' <tr class="editor">'.PHP_EOL;
506 $outstr .= ' <td class="editname">PID Cool Idle Range</td>'.PHP_EOL;
507 $outstr .= ' <td class="editfield"><input type="text" name="PIDC_idleRange" size="6" value="'.$f[1].'"> &deg;C (Cooler margin)</td>'.PHP_EOL;
508 $outstr .= ' </tr>'.PHP_EOL;
509 }
438 if ($f[0] == "FAN_ADDRESS") { 510 if ($f[0] == "FAN_ADDRESS") {
439 $outstr .= ' <tr class="editor">'.PHP_EOL; 511 $outstr .= ' <tr class="editor">'.PHP_EOL;
440 $outstr .= ' <td class="editname">Fan Switch Address</td>'.PHP_EOL; 512 $outstr .= ' <td class="editname">Fan Switch Address</td>'.PHP_EOL;
441 $outstr .= ' <td class="editfield"><select name="FanAddress">'.PHP_EOL; 513 $outstr .= ' <td class="editfield"><select name="FanAddress">'.PHP_EOL;
442 $outstr .= ' <option value="">Not Assigned</option>'.PHP_EOL; 514 $outstr .= ' <option value="">Not Assigned</option>'.PHP_EOL;
539 } 611 }
540 if ($f[0] == "TEMP_SET_MAX") { 612 if ($f[0] == "TEMP_SET_MAX") {
541 $outstr .= ' <tr class="editor">'.PHP_EOL; 613 $outstr .= ' <tr class="editor">'.PHP_EOL;
542 $outstr .= ' <td class="editname">Max. temp setting</td>'.PHP_EOL; 614 $outstr .= ' <td class="editname">Max. temp setting</td>'.PHP_EOL;
543 $outstr .= ' <td class="editfield"><input type="text" name="TempSetMax" size="5" value="'.$f[1].'"> &deg;C</td>'.PHP_EOL; 615 $outstr .= ' <td class="editfield"><input type="text" name="TempSetMax" size="5" value="'.$f[1].'"> &deg;C</td>'.PHP_EOL;
544 $outstr .= ' </tr>'.PHP_EOL;
545 }
546 if ($f[0] == "IDLE_RANGE_L") {
547 $outstr .= ' <tr class="editor">'.PHP_EOL;
548 $outstr .= ' <td class="editname">Idle Range Low</td>'.PHP_EOL;
549 $outstr .= ' <td class="editfield"><input type="text" name="IdleRangeL" size="6" value="'.$f[1].'"> &deg;C (Cooler margin)</td>'.PHP_EOL;
550 $outstr .= ' </tr>'.PHP_EOL;
551 }
552 if ($f[0] == "IDLE_RANGE_H") {
553 $outstr .= ' <tr class="editor">'.PHP_EOL;
554 $outstr .= ' <td class="editname">Idle Range High</td>'.PHP_EOL;
555 $outstr .= ' <td class="editfield"><input type="text" name="IdleRangeH" size="6" value="'.$f[1].'"> &deg;C (Heater margin)</td>'.PHP_EOL;
556 $outstr .= ' </tr>'.PHP_EOL;
557 }
558 if ($f[0] == "PID_KP") {
559 $outstr .= ' <tr class="editor">'.PHP_EOL;
560 $outstr .= ' <td class="editname">PID Kp</td>'.PHP_EOL;
561 $outstr .= ' <td class="editfield"><input type="text" name="PID_Kp" size="6" value="'.$f[1].'"> Proportional</td>'.PHP_EOL;
562 $outstr .= ' </tr>'.PHP_EOL;
563 }
564 if ($f[0] == "PID_KI") {
565 $outstr .= ' <tr class="editor">'.PHP_EOL;
566 $outstr .= ' <td class="editname">PID Ki</td>'.PHP_EOL;
567 $outstr .= ' <td class="editfield"><input type="text" name="PID_Ki" size="6" value="'.$f[1].'"> Intergral</td>'.PHP_EOL;
568 $outstr .= ' </tr>'.PHP_EOL;
569 }
570 if ($f[0] == "PID_KD") {
571 $outstr .= ' <tr class="editor">'.PHP_EOL;
572 $outstr .= ' <td class="editname">PID Kd</td>'.PHP_EOL;
573 $outstr .= ' <td class="editfield"><input type="text" name="PID_Kd" size="6" value="'.$f[1].'"> Derivative</td>'.PHP_EOL;
574 $outstr .= ' </tr>'.PHP_EOL; 616 $outstr .= ' </tr>'.PHP_EOL;
575 } 617 }
576 $i++; 618 $i++;
577 } 619 }
578 } 620 }
673 $outstr .= '<input type="hidden" value="1" name="LightDelay">'; 715 $outstr .= '<input type="hidden" value="1" name="LightDelay">';
674 $outstr .= '<input type="hidden" value="" name="DoorAddress">'; 716 $outstr .= '<input type="hidden" value="" name="DoorAddress">';
675 $outstr .= '<input type="hidden" value="" name="PSUAdress">'; 717 $outstr .= '<input type="hidden" value="" name="PSUAdress">';
676 $outstr .= '<input type="hidden" value="1.0" name="TempSetMin">'; 718 $outstr .= '<input type="hidden" value="1.0" name="TempSetMin">';
677 $outstr .= '<input type="hidden" value="30.0" name="TempSetMax">'; 719 $outstr .= '<input type="hidden" value="30.0" name="TempSetMax">';
678 $outstr .= '<input type="hidden" value="-1.0" name="IdleRangeL">'; 720 $outstr .= '<input type="hidden" value="100" name="PIDC_iMax">';
679 $outstr .= '<input type="hidden" value="1.0" name="IdleRangeH">'; 721 $outstr .= '<input type="hidden" value="4.0" name="PIDC_pGain">';
680 $outstr .= '<input type="hidden" value="4.0" name="PID_Kp">'; 722 $outstr .= '<input type="hidden" value="0.2" name="PIDC_dGain">';
681 $outstr .= '<input type="hidden" value="0.2" name="PID_Kd">'; 723 $outstr .= '<input type="hidden" value="1.0" name="PIDC_iGain">';
682 $outstr .= '<input type="hidden" value="1.0" name="PID_Ki">'; 724 $outstr .= '<input type="hidden" value="1.0" name="PIDC_idleRange">';
725 $outstr .= '<input type="hidden" value="100" name="PIDH_iMax">';
726 $outstr .= '<input type="hidden" value="4.0" name="PIDH_pGain">';
727 $outstr .= '<input type="hidden" value="0.2" name="PIDH_dGain">';
728 $outstr .= '<input type="hidden" value="1.0" name="PIDH_iGain">';
729 $outstr .= '<input type="hidden" value="1.0" name="PIDH_idleRange">';
683 $outstr .= '<input type="hidden" value="testdata" name="action">'; 730 $outstr .= '<input type="hidden" value="testdata" name="action">';
684 $outstr .= '<input type="hidden" value="add" name="command">'; 731 $outstr .= '<input type="hidden" value="add" name="command">';
685 $outstr .= '<input type="hidden" value="00000000-0000-0000-0000-000000000000" name="UUID">'; 732 $outstr .= '<input type="hidden" value="00000000-0000-0000-0000-000000000000" name="UUID">';
686 $outstr .= ' </tr>'.PHP_EOL; 733 $outstr .= ' </tr>'.PHP_EOL;
687 $outstr .= ' </table>'.PHP_EOL; 734 $outstr .= ' </table>'.PHP_EOL;

mercurial