#include "max6675.h" int TEMPERATURA1 = 190; int TEMPERATURA2 = 190; int silownikglowny = A4; int silownikiboczne = A5; int czas_glowny = 6 * 2; int czasglowny = 0; int czas_boczne = 6 * 2; int czasboczne = 0; int przycisk = 3; int ktcCLK = 13; int ktcSO = 12; int ktcCS0 = 10; int ktcCS1 = 11; MAX6675 ktc0(ktcCLK, ktcCS0, ktcSO); MAX6675 ktc1(ktcCLK, ktcCS1, ktcSO); int timer = 1; byte relay0 = 8; byte relay1 = 9; int czekanie[2] = {0,0}; int grzanie[2] = {0,0}; float temppast0 = 0.00; float tempnow0 = 0.00; float temppast1 = 0.00; float tempnow1 = 0.00; void setup() { //SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP SETUP pinMode(przycisk, INPUT_PULLUP); pinMode(silownikglowny, OUTPUT); pinMode(silownikiboczne, OUTPUT); digitalWrite(silownikglowny, HIGH); digitalWrite(silownikiboczne, HIGH); pinMode(relay0, OUTPUT); pinMode(relay1, OUTPUT); Serial.begin(9600); digitalWrite(relay0, HIGH); digitalWrite(relay1, HIGH); delay(500); } void loop() { // put your main code here, to run repeatedly: temppast0 = tempnow0; temppast1 = tempnow1; tempnow0 = ktc0.readCelsius(); tempnow1 = ktc1.readCelsius(); if (tempnow0 == temppast0*2) {tempnow0 = temppast0;} if (tempnow1 == temppast1*2) {tempnow1 = temppast1;} int temp0 = static_cast(tempnow0); int temp1 = static_cast(tempnow1); Serial.print(" #0 C = "); Serial.print(tempnow0); Serial.print(" #1 C = "); Serial.println(tempnow1); if (digitalRead(przycisk) == LOW) { czasglowny = czas_glowny; } if (czasglowny > 1) {digitalWrite(silownikglowny, LOW); czasglowny--;} if (czasglowny == 1) {digitalWrite(silownikglowny, HIGH); czasboczne = czas_boczne; czasglowny = 0;} if (czasboczne > 1) {digitalWrite(silownikiboczne, LOW); czasboczne--;} if (czasboczne == 1) {digitalWrite(silownikiboczne, HIGH); czasboczne = 0;} if (czekanie[0]>0){ if (grzanie[0]>0){digitalWrite(relay0, LOW); grzanie[0]--; czekanie[0]--;} else {digitalWrite(relay0, HIGH); czekanie[0]--;}} if ((grzanie[0]==0)&&(czekanie[0]==0)){ if ((temppast0>tempnow0) && (TEMPERATURA1 > temp0)){grzanie[0] = 10; czekanie[0] = 30;} else if (TEMPERATURA1 <= temp0) {digitalWrite(relay0, HIGH);}} if (czekanie[1]>0){ if (grzanie[1]>0){digitalWrite(relay1, LOW); grzanie[1]--; czekanie[1]--;} else {digitalWrite(relay1, HIGH); czekanie[1]--;}} if ((grzanie[1]==0)&&(czekanie[1]==0)){ if ((temppast1>tempnow1) && (TEMPERATURA2 > temp1)){grzanie[1] = 10; czekanie[1] = 30;} else if (TEMPERATURA2 <= temp1) {digitalWrite(relay1, HIGH);}} delay(500); if (timer == 32000){timer = 1;} else {timer++;} }