Advertisement
Siklosi_Csapda

Untitled

Jan 14th, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.47 KB | None | 0 0
  1. #define BLYNK_PRINT Serial
  2.  
  3. #include "EEPROM.h"
  4. #include <ESP8266WiFi.h>
  5. #include <BlynkSimpleEsp8266.h>
  6. #include <DHT.h>
  7.  
  8. #include <TimeLib.h>
  9. #include <WidgetRTC.h>
  10. #include <SPI.h>
  11.  
  12. // You should get Auth Token in the Blynk App.
  13. // Go to the Project Settings (nut icon).
  14. char auth[] = "db1c8b0eb5354042b03bafea955cbe06";
  15.  
  16. // Your WiFi credentials.
  17. // Set password to "" for open networks.
  18. char ssid[] = "DIGI-01061597";
  19. char pass[] = "PMzvSJDW";
  20.  
  21.  
  22.  
  23. #define DHTPIN 2          // What digital pin we're connected to
  24.  
  25. // Uncomment whatever type you're using!
  26. #define DHTTYPE DHT11     // DHT 11
  27. //#define DHTTYPE DHT22   // DHT 22, AM2302, AM2321
  28. //#define DHTTYPE DHT21   // DHT 21, AM2301
  29.  
  30. DHT dht(DHTPIN, DHTTYPE);
  31. BlynkTimer timer;
  32. WidgetRTC rtc;
  33.  
  34. long ido;
  35. void clockDisplay()
  36. {
  37.        ido = long(hour())*3600 + minute()*60 + second();
  38.   //Serial.print("mért idő:");
  39. //  Serial.print(ido);
  40. //  Serial.println();
  41. }
  42.  
  43.  BLYNK_CONNECTED() {
  44.   // Synchronize time on connection
  45.   rtc.begin();
  46. }
  47.  
  48. long a;
  49. long b;
  50. long c;
  51. long d;
  52. long e;
  53. long f;
  54. // időprogram érték lekérdezés
  55. BLYNK_WRITE(V2) {
  56.   a = param[0].asLong();
  57.   b = param[1].asLong();
  58.   c = param[2].asLong();
  59.   d = param[3].asLong();
  60.   e = param[4].asLong();
  61.   f = param[5].asLong();
  62. //  Serial.print("kezdet: ");
  63. //  Serial.print(a);
  64. //  Serial.println();
  65.  
  66. /*  Serial.print("ontosidő: ");
  67.   Serial.print(ido);
  68.   Serial.println();
  69.  
  70. Serial.print("vég: ");
  71.   Serial.print(b);
  72.   Serial.println();*/
  73.  
  74. }
  75. // időprogram érték lekérdezés!
  76.  
  77. int beallit; // a szbályzott hőmérséklet beállított értéke -slide-
  78. //globális változók
  79. float tE; //ehhez nézzük, hogy változott e a hőmérséklet
  80. int beallitE; // változott e a beállított érték
  81. float h;
  82. float t;
  83. int uzemmod;
  84. int ejjel;
  85. int nappal;
  86.  
  87.  
  88.  
  89.  
  90. // sensor adatok lekérdezése
  91. void sendSensor()
  92. {
  93.   h = dht.readHumidity();
  94.   t = dht.readTemperature();
  95.   if (isnan(h) || isnan(t)) {
  96.  //   Serial.println("Failed to read from DHT sensor!");
  97.     return;
  98.  
  99.    
  100.   }
  101.   // You can send any value at any time.
  102.   // Please don't send more that 10 values per second.
  103.   Blynk.virtualWrite(V5, h);
  104.   Blynk.virtualWrite(V6, t);
  105. }
  106. // sensor adatok lekérdezése!
  107.  
  108. // éjszakai beállítás
  109. BLYNK_WRITE(3)
  110. {
  111.   ejjel=param.asInt();
  112.  
  113.  // Serial.println(param.asStr());
  114.   }
  115. //éjszakai beállítás!
  116.  
  117. // nappali beállítás
  118. BLYNK_WRITE(4)
  119. {
  120.   nappal=param.asInt();
  121.  
  122.   //Serial.println(param.asStr());
  123.   }
  124.   // nappali beállítás!
  125.  
  126.   // üzemmód váltás
  127.   BLYNK_WRITE(7)
  128.   {
  129.     uzemmod=param.asInt();
  130.   //  Serial.println(param.asStr());
  131.     }
  132.     // üzemmód váltás!
  133.  
  134.      
  135. //termosztát
  136.  
  137.  
  138. void termosz(){
  139.  
  140. //érték adás
  141. // idő program
  142. if (b > ido and ido > a )
  143.   {
  144. //    Serial.println(a);
  145. //    Serial.println(ido);
  146. //    Serial.println(b);
  147.     beallit=nappal;
  148.   }
  149.   else{
  150.     beallit = ejjel;
  151.     }
  152.   //  Serial.print("időprogram értéke: ");
  153.   //  Serial.println(beallit);
  154. //időprogram
  155.    
  156.  if (uzemmod==1)
  157.  {
  158.   beallit=ejjel;
  159.   }
  160.   if (uzemmod==2)
  161.   {
  162.     beallit=nappal;
  163.     }
  164.     else
  165.     {}
  166.       //értékadás!
  167.  
  168.  
  169.   if (t==tE and beallit==beallitE)
  170. {
  171.   valt_3();
  172.   }
  173.   else {
  174.     if (t<beallit-0.25){
  175.       valt_1();
  176.       delay(100);
  177.       valt_3();
  178.       }
  179.     if (t>beallit+0.25){
  180.       valt_2();
  181.       delay(100);
  182.       valt_3();
  183.       }
  184.     }
  185.  
  186.   }
  187.  
  188.   void valt_1(){
  189.     digitalWrite(D8,HIGH);
  190.     digitalWrite(D6,LOW);
  191.     }
  192. void valt_2(){
  193.   digitalWrite(D8,LOW);
  194.   digitalWrite(D6,HIGH);
  195.   }
  196.   void valt_3(){
  197.     digitalWrite(D8,LOW);
  198.     digitalWrite(D6,LOW);
  199.     }
  200. void setup()
  201. {
  202.   //eepromba írás
  203.  ejjel = EEPROM.read(2);
  204.  nappal = EEPROM.read(1);
  205.  
  206.  
  207. EEPROM.write(1,nappal);
  208. EEPROM.write(2,nappal);
  209. nappal = EEPROM.read(1);
  210. ejjel = EEPROM.read(2);
  211. //eepromba írás!
  212.  
  213.   pinMode(D6, OUTPUT);
  214.   pinMode(D8, OUTPUT); //relé kimenet
  215.  
  216.   // Debug console
  217.   Serial.begin(9600);
  218.  
  219.   Blynk.begin(auth, ssid, pass);
  220.   // You can also specify server:
  221.   //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80);
  222.   //Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080);
  223.  
  224.   dht.begin();
  225.  
  226.   // Setup a function to be called every second
  227.   timer.setInterval(10000L, sendSensor);
  228.    
  229.   timer.setInterval(10000L, clockDisplay);
  230. }
  231.  
  232.  
  233.  
  234.  
  235. void loop()
  236. {
  237.   tE=t;
  238.   beallitE=beallit;
  239.   Blynk.run();
  240.   timer.run();
  241.  // clockDisplay();
  242.   termosz();
  243.  
  244.  // Serial.println(t);
  245.   delay(1000);
  246. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement