Advertisement
Siklosi_Csapda

Untitled

Jan 15th, 2019
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.45 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. // időprogram érték lekérdezés
  51. BLYNK_WRITE(V2) {
  52.   a = param[0].asLong();
  53.   b = param[1].asLong();
  54. //  Serial.print("kezdet: ");
  55. //  Serial.print(a);
  56. //  Serial.println();
  57.  
  58. /*  Serial.print("ontosidő: ");
  59.   Serial.print(ido);
  60.   Serial.println();
  61.  
  62. Serial.print("vég: ");
  63.   Serial.print(b);
  64.   Serial.println();*/
  65.  
  66. }
  67. // időprogram érték lekérdezés!
  68.  
  69. int beallit; // a szbályzott hőmérséklet beállított értéke -slide-
  70. //globális változók
  71. float tE; //ehhez nézzük, hogy változott e a hőmérséklet
  72. int beallitE; // változott e a beállított érték
  73. float h;
  74. float t;
  75. int uzemmod;
  76. int ejjel;
  77. int nappal;
  78.  
  79.  
  80.  
  81.  
  82. // sensor adatok lekérdezése
  83. void sendSensor()
  84. {
  85.   h = dht.readHumidity();
  86.   t = dht.readTemperature();
  87.   if (isnan(h) || isnan(t)) {
  88.  //   Serial.println("Failed to read from DHT sensor!");
  89.     return;
  90.  
  91.    
  92.   }
  93.   // You can send any value at any time.
  94.   // Please don't send more that 10 values per second.
  95.   Blynk.virtualWrite(V5, h);
  96.   Blynk.virtualWrite(V6, t);
  97. }
  98. // sensor adatok lekérdezése!
  99.  
  100. // éjszakai beállítás
  101. BLYNK_WRITE(3)
  102. {
  103.   ejjel=param.asInt();
  104.  
  105.  // Serial.println(param.asStr());
  106.   }
  107. //éjszakai beállítás!
  108.  
  109. // nappali beállítás
  110. BLYNK_WRITE(4)
  111. {
  112.   nappal=param.asInt();
  113.   //Serial.println(param.asStr());
  114.   }
  115.  
  116.   // nappali beállítás!
  117.  
  118.   // üzemmód váltás
  119.   BLYNK_WRITE(7)
  120.   {
  121.     uzemmod=param.asInt();
  122.   //  Serial.println(param.asStr());
  123.     }
  124.     // üzemmód váltás!
  125.  
  126.      
  127. //termosztát
  128.  
  129.  
  130. void termosz(){
  131.  
  132. //érték adás
  133. // idő program
  134. if (b > ido and ido > a )
  135.   {
  136. //    Serial.println(a);
  137. //    Serial.println(ido);
  138. //    Serial.println(b);
  139.     beallit=nappal;
  140.   }
  141.   else{
  142.     beallit = ejjel;
  143.     }
  144.   //  Serial.print("időprogram értéke: ");
  145.   //  Serial.println(beallit);
  146. //időprogram
  147.    
  148.  if (uzemmod==1)
  149.  {
  150.   beallit=ejjel;
  151.   }
  152.   if (uzemmod==2)
  153.   {
  154.     beallit=nappal;
  155.     }
  156.     else
  157.     {}
  158.       //értékadás!
  159.  
  160.  
  161.   if (t==tE and beallit==beallitE)
  162. {
  163.   valt_3();
  164.   }
  165.   else {
  166.     if (t<beallit-0.25){
  167.       valt_1();
  168.       delay(100);
  169.       valt_3();
  170.       }
  171.     if (t>beallit+0.25){
  172.       valt_2();
  173.       delay(100);
  174.       valt_3();
  175.       }
  176.     }
  177.  
  178.   }
  179.  
  180.   void valt_1(){
  181.     digitalWrite(D8,HIGH);
  182.     digitalWrite(D6,LOW);
  183.     }
  184. void valt_2(){
  185.   digitalWrite(D8,LOW);
  186.   digitalWrite(D6,HIGH);
  187.   }
  188.   void valt_3(){
  189.     digitalWrite(D8,LOW);
  190.     digitalWrite(D6,LOW);
  191.     }
  192. void setup()
  193. {
  194.   //eepromból kiolvasás
  195.    EEPROM.begin(512);
  196.   //eepromba írás
  197. nappal = EEPROM.read(2);
  198. ejjel = EEPROM.read(1);
  199.  
  200. //eepromból kiolvasás!
  201.  
  202.   pinMode(D6, OUTPUT);
  203.   pinMode(D8, OUTPUT); //relé kimenet
  204.  
  205.   // Debug console
  206.   Serial.begin(9600);
  207.  
  208.   Blynk.begin(auth, ssid, pass);
  209.   // You can also specify server:
  210.   //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80);
  211.   //Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080);
  212.  
  213.   dht.begin();
  214.  
  215.   // Setup a function to be called every second
  216.   timer.setInterval(10000L, sendSensor);
  217.    
  218.   timer.setInterval(10000L, clockDisplay);
  219. }
  220.  
  221.  
  222.  
  223.  
  224. void loop()
  225. {
  226.   tE=t;
  227.   beallitE=beallit;
  228.   Blynk.run();
  229.   timer.run();
  230.  // clockDisplay();
  231.   termosz();
  232.   // eepromba írás
  233.   EEPROM.write(1,ejjel);
  234.   EEPROM.write(2,nappal);
  235.   EEPROM.commit();
  236.   Serial.println(ejjel);
  237.   Serial.println(nappal);
  238.   // eepromba írás!
  239.  // Serial.println(t);
  240.  // delay(1000);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement