mega2560 web i2cLCD16x4 termostat vyvoj
Úvodní stránka › Fórum › Vaše projekty › Arduino › mega2560 web i2cLCD16x4 termostat vyvoj
- Toto téma obsahuje celkem 6 odpovědí. Do diskuze (2 diskutující) se naposledy zapojil uživatel
jurda23 a poslední změna proběhla před 9 roky.
-
AutorPříspěvky
-
29.8.2015 v 11:16 #4265
jurda23
ÚčastníkZatím ještě s chybami,nefunguji tlačítka na webu pro ovládání rele zastavuje se mi běh programu.
[code]
#include <Dhcp.h>
#include <Dns.h>
#include <Ethernet.h>
#include <EthernetClient.h>
#include <EthernetServer.h>
#include <EthernetUdp.h>#include <SoftwareSerial.h>
#include <MemoryFree.h>
#include <LCD.h>
#include <LiquidCrystal.h>
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <Wire.h>
#include <DallasTemperature.h>
#include <SPI.h>float T00;
float T01;
float T02;
//float T03;
// zde si upravte podle sebe
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0F, 0xC4, 0x36 };
// IP adresa
IPAddress ip(192, 168, 99, 150);
// port
EthernetServer server(80);
//RGBLED
int bluePin1 = 10; //Digital Pin für Blaue LED1 in RGB-LED
int greenPin1 = 11; //Digital Pin für Grüne LED1 in RGB-LED
int redPin1 = 13; //Digital Pin für Rote LED1 in RGB-LEDint redIn1 = 0;
int greenIn1 = 1;
int blueIn1 = 2;int redVal1;
int greenVal1;
int blueVal1;int bluePin2 = 4; //Digital Pin für Blaue LED2 in RGB-LED
int greenPin2 = 5; //Digital Pin für Grüne LED2 in RGB-LED
int redPin2 = 6; //Digital Pin für Rote LED2 in RGB-LEDint redIn2 = 3;
int greenIn2 = 4;
int blueIn2 = 5;int redVal2;
int greenVal2;
int blueVal2;//Relays
int relPin1 = 2; //Digital Pin für Relay1
int relPin2 = 3; //Digital Pin für Relay2
int relPin3 = 8; //Digital Pin für Relay3
int relPin10 = 22; //Digital Pin für Relay22
int relPin11 = 24; //Digital Pin für Relay24int relPin1In = 3;
int relPin2In = 4;
int relPin3In = 5;int relPin1Val;
int relPin2Val;
int relPin3Val;
int relPin10Val;
int relPin11Val;
//Heizungs Status
int heiz1Val;
int heiz2Val;
#define BACKLIGHT_PIN 13
#define ONE_WIRE_BUS 12
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Set the LCD I2C address
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
//Adresy CIDEL
DeviceAddress C = { 0x28, 0xC0, 0x97, 0x8A, 0x06, 0x00, 0x00, 0x74 };
DeviceAddress Cc = { 0x28, 0x3E, 0x11, 0x8A, 0x06, 0x00, 0x00, 0x42 };
DeviceAddress Ccc = { 0x28, 0x73, 0x9B, 0x89, 0x06, 0x00, 0x00, 0x83 };
//DeviceAddress C03 = { 0x28, 0x73, 0x9B, 0x89, 0x06, 0x00, 0x00, 0x83 };
int backLight = 13; // pin 13 will control the backlight
int LEDbrightness; //void setup() {
// inicalizace sítě
Ethernet.begin(mac, ip);
// inicializace serveru
server.begin();
sensors.begin();
Serial.begin(9600);sensors.requestTemperatures();
Serial.print(„server is at „);
Serial.println(Ethernet.localIP());pinMode(22, OUTPUT);
pinMode(24, OUTPUT);
digitalWrite(22, HIGH);
digitalWrite(24, HIGH);
Serial.print(„Locating devices…“);
Serial.print(„Found „);
Serial.print(sensors.getDeviceCount(), DEC);
Serial.println(“ devices.“);
Serial.print(„Free Memory = „);
Serial.println(getFreeMemory());sensors.setResolution(C, 10);
sensors.setResolution(Cc, 10);
sensors.setResolution(Ccc, 10);
//sensors.setResolution(C03, 10);
lcd.begin(16, 4);
lcd.clear(); // initialize the lcd
lcd.backlight();//T03 = sensors.getTempC(C03); //teplota solaru
pinMode(relPin1, OUTPUT); //Output Mode for Relay1
pinMode(relPin2, OUTPUT); //Output Mode for Relay2
pinMode(relPin3, OUTPUT); //Output Mode for Relay3
pinMode(relPin10, OUTPUT); //Output Mode for Relay2
pinMode(relPin11, OUTPUT); //Output Mode for Relay3
}void loop() {
sensors.requestTemperatures();
T00 = sensors.getTempC(C); //teplota bazenu
T01 = sensors.getTempC(Cc); //teplota panelu
T02 = sensors.getTempC(Ccc); //teplota solaru
//T03 = sensors.getTempC(C03); //teplota solaru
lcd.setCursor(0, 0);
lcd.print(„Bazen: „);
lcd.print(T00); //teplota venku
lcd.print(„C“);
lcd.setCursor(0, 2);
lcd.print(„Ohrev: „);
lcd.print(T01); //teplota solaru
lcd.print(„C“);
// Serial.println();
// Serial.print(„T0 „);
// Serial.print(T00);
// Serial.println();
// Serial.print(„T1 „);
// Serial.print(T01);
// Serial.println();
// Serial.print(„T2 „);
// Serial.print(T02);//Je nach Temperatur Farbe der RGB-LED anpassen und Rel 1 schalten
if(T01 <= 27)
{
redVal1 = 0;
greenVal1 = 0;
blueVal1 = 150;
relPin1Val = LOW;
relPin3Val = LOW;
lcd.setCursor(0, 1);
lcd.print(„Topeni: Vyp „);
}
else if(T01 > 27 && T01 < 29)
{
redVal1 = 0;
greenVal1 = 150;
blueVal1 = 0;
relPin1Val = HIGH;
relPin3Val = LOW;
lcd.setCursor(0, 1);
lcd.print(„Topeni: Zap „);
}
else if(T01 > 29)
{
redVal1 = 150;
greenVal1 = 0;
blueVal1 = 0;
relPin1Val = HIGH;
relPin3Val = HIGH;
lcd.setCursor(0, 1);
lcd.print(„Lueftung: Vyp „);
}//Je nach Temperatur Farbe der RGB-LED anpassen und Rel 2 schalten
if(T02 <= 27)
{
redVal2 = 0;
greenVal2 = 0;
blueVal2 = 255;
relPin2Val = LOW;
lcd.setCursor(0, 3);
lcd.print(„Topeni: Vyp „);
}
else if(T02 > 27 && T02 < 29)
{
redVal2 = 0;
greenVal2 = 255;
blueVal2 = 0;
relPin2Val = HIGH;
lcd.setCursor(0, 3);
lcd.print(„Topeni: Zap „);
}
else if(T02 > 29)
{
redVal2 = 255;
greenVal2 = 0;
blueVal2 = 0;
relPin2Val = HIGH;
lcd.setCursor(0, 3);
lcd.print(„Topeni: Vyp „);
}
{
analogWrite(redPin1, redVal1);
analogWrite(greenPin1, greenVal1);
analogWrite(bluePin1, blueVal1);
analogWrite(redPin2, redVal2);
analogWrite(greenPin2, greenVal2);
analogWrite(bluePin2, blueVal2);
digitalWrite(relPin1, relPin1Val);
digitalWrite(relPin2, relPin2Val);
digitalWrite(relPin3, relPin3Val);
digitalWrite(relPin10, relPin10Val);
digitalWrite(relPin11, relPin11Val);
// když je připojen klient, zjistíme, zda jsou odeslána data
// od klienta směrem k nám
EthernetClient client = server.available();
String buffer = „“;// dokud je klient připojen
while (client.connected()) {
// čti data od něj dokud nenarazíš na znak nového řádkuif (client.available()) {
char c = client.read();
buffer = buffer + c;
if (c == ‚\n‘) {if(buffer.indexOf(„rele1=1“)>=0)
digitalWrite(2,HIGH);else if(buffer.indexOf(„rele1=0“)>=0)
digitalWrite(2,LOW);if (buffer.indexOf(„rele2=1“) >= 0)
digitalWrite(3, HIGH);else if (buffer.indexOf(„rele2=0“) >= 0)
digitalWrite(3, LOW);if (buffer.indexOf(„rele3=1“) >= 0)
digitalWrite(22, HIGH);else if (buffer.indexOf(„rele3=0“) >= 0)
digitalWrite(22, LOW);if (buffer.indexOf(„rele4=1“) >= 0)
digitalWrite(24, HIGH);else if (buffer.indexOf(„rele4=0“) >= 0)
digitalWrite(24, LOW);
Serial.println();
Serial.print(„Free Memory = „);
Serial.println(getFreeMemory());// odešle klasickou hlavičku HTML stránky
client.println („HTTP/1.1 200 OK“);
client.println („Content-Type: text/html“);
client.println („Connection: close“);
client.println ();
client.println („<!DOCTYPE HTML>“);// zde již klasická html data
client.println („<html>“);
client.println („<head>“);
// Název stránky
client.println („<title>Arduinio Server – Rele control</title>“);
client.println („</head>“);
client.println („<body>“);
client.print („<h3 align=center>Program pro ovladani rele</h3>“);
client.println F((„</br>“));// vygeneruje formulář
if (digitalRead(2)) {
client.print („<button style=’background:red;width:20%;height:30px‘>RELE 1 VYPNUTO</button>“);
} else {
client.print („<button style=’background:green;width:20%;height:30px‘>RELE 1</button>“);
}
client.println (“ test“);
client.println („</br>“);if (digitalRead(3)) {
client.print („<button style=’background:red;width:20%;height:30px‘>RELE 2 VYPNUTO</button>“);
} else {
client.print („<button style=’background:green;width:20%;height:30px‘>RELE 2</button>“);
}
client.println (“ svetlo“);
client.println F((„</br>“));if (digitalRead(4)) {
client.print („<button style=’background:red;width:20%;height:30px‘>RELE 3 VYPNUTO</button>“);
} else {
client.print („<button style=’background:green;width:20%;height:30px‘>RELE 3</button>“);
}
client.println (“ filtrace“);
client.println („</br>“);if (digitalRead(5)) {
client.print („<button style=’background:red;width:20%;height:30px‘>RELE 4 VYPNUTO</button>“);
} else {
client.print („<button style=’background:green;width:20%;height:30px‘>RELE 4</button>“);
}
client.println (“ tlacitko pro kotel 4″);
client.println („</br>“);
client.println („</br>“);
client.println („</br>“);
client.println („Teplota0“);client.println (T00);
client.println („</br>“);
client.println („Teplota1:“);client.println (T01);
client.println („</br>“);
client.println („Teplota2:“);client.println (T02);
client.println („</br>“);
client.print („<meta http-equiv=\“refresh\“ content=\“5\“>“); //stránka se načte automaticky jednou za 3 s
client.println („</body>“);
client.println („</html>“);//ukončí přenos
client.stop();
Serial.println(buffer);
}
}
} }}
[/code]
29.8.2015 v 23:09 #4276jurda23
ÚčastníkNašel by se někdo hodný kdo mi pomuže?
30.8.2015 v 9:40 #4284Zbyšek Voda
SprávceDobrý den,
můžete prosím popsat, co konkrétně vám nefunguje?
Taky by se hodil popis projektu – co to má dělat, jak to funguje…
30.8.2015 v 10:25 #4286jurda23
Účastníkno momentalně vše zkouším metodou pokus-omyl potřebuji aby to fungovalo jako termostat na třech zavislostech,spinalo dvě rele, vše nastavitelné přes web
1.pokud je čas který nasavím (cca 9:00-17:00hod) bude seple rele1
2.teplota čidla1 dle nasavení ovlada rele2 za podmínky že teplota čidla2 neni menší než ktera bude nastavena
3.I2C displejna kterem budou rotovat dokola teploty z cca 6čidel a stavy relatek topení,oběh
Jedná se mi o to vytvořit automatiku která bude hlídat ohřev bazenu přes tep.vyměník ze zasobníku tepelného čerpadla ve kterem nesmí poklesnout teplota pod cca 40stupnu jinak se spustí příhřev topnou spirálou cca9KW čemuž chci zabránit,muj sen je aby to časem vypadalo stejně jako zde https://www.youtube.com/watch?v=ef9fpolMtxAjsem na začátku a potýkám se s tím že se nerozjede webserver ping na adresu jde,když už se rozjede občas tak mi nefunguji stavy rele a ovladaní. a netuším jak udělat podmínku na bod 1a2,modul realneho času je na cestě a nevímjak sinchronizovat čas přes NTP vše chci něák velmi jednoduše. Ještě tvořím jeden system,naplatformě cubieboard ten již funguje na adrese teblomer.juricekpavel.net:81
na arduinu jsem nováček tak se snažím lepit kod z toho co najdu na netu.30.8.2015 v 10:31 #4287jurda23
Účastníkno momentalně vše zkouším metodou pokus-omyl potřebuji aby to fungovalo jako termostat na třech zavislostech,spinalo dvě rele, vše nastavitelné přes web
1.pokud je čas který nasavím (cca 9:00-17:00hod) bude seple rele1
2.teplota čidla1 dle nasavení ovlada rele2 za podmínky že teplota čidla2 neni menší než ktera bude nastavena
3.I2C displejna kterem budou rotovat dokola teploty z cca 6čidel a stavy relatek topení,oběh
Jedná se mi o to vytvořit automatiku která bude hlídat ohřev bazenu přes tep.vyměník ze zasobníku tepelného čerpadla ve kterem nesmí poklesnout teplota pod cca 40stupnu jinak se spustí příhřev topnou spirálou cca9KW čemuž chci zabránit,muj sen je aby to časem vypadalo stejně jako zde https://www.youtube.com/watch?v=ef9fpolMtxAjsem na začátku a potýkám se s tím že se nerozjede webserver ping na adresu jde,když už se rozjede občas tak mi nefunguji stavy rele a ovladaní. a netuším jak udělat podmínku na bod 1a2,modul realneho času je na cestě a nevímjak sinchronizovat čas přes NTP vše chci něák velmi jednoduše. Ještě tvořím jeden system,naplatformě cubieboard ten již funguje na adrese teblomer.juricekpavel.net:81
na arduinu jsem nováček tak se snažím lepit kod z toho co najdu na netu.30.8.2015 v 11:11 #4288Zbyšek Voda
SprávcePokud jsem kód dobře pochopil, přijde mi, že sice máte zobrazená tlačítka, ale nemáte k nim obslužný kód.
Předpokládám, že chcete, aby po kliknutí na tlačítko program odeslal požadavek s informacemi o stavu relé.Dalo by se to udělat třeba tak, že z tlačítek uděláte odkazy vedoucí na určitou URL s přidanými parametry za url. Jak přidat URL ke tlačítku řeší třeba zde.
Arduino pak bude zpracovávat HTTP požadavek, ze kterého si vybere požadované informace z parametru.
31.8.2015 v 23:21 #4308jurda23
Účastníkproblem s web byl vyřešen nevšimnul jsem si že používám porty 10, 11, 12, 13 ktere potřebuje ethernet shild
[code]
#include <SD.h>
#include <Ethernet.h>
#include <SPI.h>
#include <SoftwareSerial.h>
#include <MemoryFree.h>
#include <LCD.h>
#include <LiquidCrystal.h>
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <Wire.h>
#include <DallasTemperature.h>float T00;
float T01;
float T02;
//float T03;
// zde si upravte podle sebe
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0F, 0xC4, 0x36 };
// IP adresabyte ip[] = { 192, 168, 99, 150 };
byte gateway[] = { 192, 168, 99, 1 };
byte subnet[] = { 255, 255, 255, 0 };
String readString;
// port
EthernetServer server(80);
//RGBLED
int bluePin1 = 40; //Digital Pin fĂĽr Blaue LED1 in RGB-LED
int greenPin1 = 41; //Digital Pin fĂĽr GrĂĽne LED1 in RGB-LED
int redPin1 = 42; //Digital Pin fĂĽr Rote LED1 in RGB-LEDint redIn1 = 0;
int greenIn1 = 1;
int blueIn1 = 2;int redVal1;
int greenVal1;
int blueVal1;int bluePin2 = 4; //Digital Pin fĂĽr Blaue LED2 in RGB-LED
int greenPin2 = 5; //Digital Pin fĂĽr GrĂĽne LED2 in RGB-LED
int redPin2 = 6; //Digital Pin fĂĽr Rote LED2 in RGB-LEDint redIn2 = 3;
int greenIn2 = 4;
int blueIn2 = 5;int redVal2;
int greenVal2;
int blueVal2;//Relays
int relPin1 = 2; //Digital Pin fĂĽr Relay1
int relPin2 = 3; //Digital Pin fĂĽr Relay2
int relPin3 = 8; //Digital Pin fĂĽr Relay3
int relPin10 = 22; //Digital Pin fĂĽr Relay22
int relPin11 = 24; //Digital Pin fĂĽr Relay24int relPin1In = 22;
int relPin2In = 1;
int relPin3In = 5;
int relPin10In = 23;
int relPin11In = 25;int relPin1Val;
int relPin2Val;
int relPin3Val;
int relPin10Val;
int relPin11Val;
//Heater Status
int heiz1Val;
int heiz2Val;
//#define WS5200_CS 10
//#define SDCARD_CS 4
#define BACKLIGHT_PIN 13
#define ONE_WIRE_BUS 32
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Set the LCD I2C address
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
//Adresy CIDEL
DeviceAddress C = { 0x28, 0xC0, 0x97, 0x8A, 0x06, 0x00, 0x00, 0x74 };
DeviceAddress Cc = { 0x28, 0x3E, 0x11, 0x8A, 0x06, 0x00, 0x00, 0x42 };
DeviceAddress Ccc = { 0x28, 0x73, 0x9B, 0x89, 0x06, 0x00, 0x00, 0x83 };
//DeviceAddress C03 = { 0x28, 0x73, 0x9B, 0x89, 0x06, 0x00, 0x00, 0x83 };
int backLight = 13; // pin 13 will control the backlight
int LEDbrightness; //void setup() {
sensors.begin();
Serial.begin(9600);Ethernet.begin(mac, ip, gateway, subnet);
server.begin();
sensors.requestTemperatures();
Serial.print(„server is at „);
Serial.println(Ethernet.localIP());// Velikost slova (bit) 9 10 11 12
//Rozlišenà (°C) 0.5 0.25 0.125 0.0625
//Doba převodu (ms) 93,75 187,5 375 750
sensors.setResolution(C, 9);
sensors.setResolution(Cc, 9);
sensors.setResolution(Ccc, 9);
//sensors.setResolution(C03, 9);
lcd.begin(16, 4);
lcd.clear(); // initialize the lcd
lcd.backlight();//T03 = sensors.getTempC(C03); //teplota solaru
pinMode(relPin1, OUTPUT); //Output Mode for Relay1
pinMode(relPin2, OUTPUT); //Output Mode for Relay2
pinMode(relPin3, OUTPUT); //Output Mode for Relay3
pinMode(relPin10, OUTPUT); //Output Mode for Relay2
pinMode(relPin11, OUTPUT); //Output Mode for Relay3
// digitalWrite(relPin1, HIGH);
// digitalWrite(relPin2, HIGH);
// digitalWrite(relPin3, HIGH);
// digitalWrite(relPin10, HIGH);
// digitalWrite(relPin11, HIGH);}
void loop() {
sensors.requestTemperatures();
T00 = sensors.getTempC(C); //teplota bazenu
T01 = sensors.getTempC(Cc); //teplota panelu
T02 = sensors.getTempC(Ccc); //teplota solaru
//T03 = sensors.getTempC(C03); //teplota solarulcd.setCursor(0, 0);
lcd.print(„Bazen: „);
lcd.print(T00); //teplota venku
lcd.print(„C“);
lcd.setCursor(0, 2);
lcd.print(„Ohrev: „);
lcd.print(T01); //teplota solaru
lcd.print(„C“);
// Serial.println();
// Serial.print(„T0 „);
// Serial.print(T00);
// Serial.println();
// Serial.print(„T1 „);
// Serial.print(T01);
// Serial.println();
// Serial.print(„T2 „);
// Serial.print(T02);//Je nach Temperatur Farbe der RGB-LED anpassen und Rel 1 schalten
if(T01 <= 27)
{
redVal1 = 0;
greenVal1 = 0;
blueVal1 = 150;
relPin1Val = LOW;
relPin3Val = LOW;
lcd.setCursor(0, 1);
lcd.print(„Topeni: Zap „);
}
else if(T01 > 27 && T01 < 29)
{
redVal1 = 0;
greenVal1 = 150;
blueVal1 = 0;
relPin1Val = HIGH;
relPin3Val = LOW;
lcd.setCursor(0, 1);
lcd.print(„Topeni: Vyp „);
}
else if(T01 > 29)
{
redVal1 = 150;
greenVal1 = 0;
blueVal1 = 0;
relPin1Val = HIGH;
relPin3Val = HIGH;
lcd.setCursor(0, 1);
lcd.print(„VÄ›tránĂ: Vyp „);
}//Je nach Temperatur Farbe der RGB-LED anpassen und Rel 2 schalten
if(T02 <= 27)
{
redVal2 = 0;
greenVal2 = 0;
blueVal2 = 255;
relPin2Val = LOW;
lcd.setCursor(0, 3);
lcd.print(„Topeni: Zap „);
}
else if(T02 > 27 && T02 < 29)
{
redVal2 = 0;
greenVal2 = 255;
blueVal2 = 0;
relPin2Val = HIGH;
lcd.setCursor(0, 3);
lcd.print(„Topeni: Vyp „);
}
else if(T02 > 29)
{
redVal2 = 255;
greenVal2 = 0;
blueVal2 = 0;
relPin2Val = HIGH;
lcd.setCursor(0, 3);
lcd.print(„Topeni: Vyp „);
}
{analogWrite(redPin1, redVal1);
analogWrite(greenPin1, greenVal1);
analogWrite(bluePin1, blueVal1);
analogWrite(redPin2, redVal2);
analogWrite(greenPin2, greenVal2);
analogWrite(bluePin2, blueVal2);
digitalWrite(relPin1, relPin1Val);
digitalWrite(relPin2, relPin2Val);
digitalWrite(relPin3, relPin3Val);
digitalWrite(relPin10, relPin10Val);
digitalWrite(relPin11, relPin11Val);}
Serial.println();
Serial.print(„Locating devices…“);
Serial.print(„Found „);
Serial.print(sensors.getDeviceCount(), DEC);
Serial.println(“ devices.“);
//Serial.print(„Free Memory = „);
//Serial.println(getFreeMemory());
// kdyĹľ je pĹ™ipojen klient, zjistĂme, zda jsou odeslána data
// od klienta směrem k nám
EthernetClient client = server.available();
String buffer = „“;// dokud je klient pĹ™ipojen
while (client.connected()) {
// ÄŤti data od nÄ›j dokud nenarazĂš na znak novĂ©ho řádkuif (client.available()) {
char c = client.read();
buffer = buffer + c;
if (c == ‚\n‘) {if(buffer.indexOf(„rele1=1“)>=0)
digitalWrite(2,HIGH);else if(buffer.indexOf(„rele1=0“)>=0)
digitalWrite(2,LOW);if (buffer.indexOf(„rele2=1“) >= 0)
digitalWrite(3, HIGH);
else if (buffer.indexOf(„rele2=0“) >= 0)
digitalWrite(3, LOW);if (buffer.indexOf(„rele10=1“) >= 0)
digitalWrite(22, HIGH);else if (buffer.indexOf(„rele10=0“) >= 0)
digitalWrite(22, LOW);if (buffer.indexOf(„rele11=1“) >= 0)
digitalWrite(24, HIGH);else if (buffer.indexOf(„rele11=0“) >= 0)
digitalWrite(24, LOW);// delay(1);
// odešle klasickou hlavičku HTML stránky
client.println F ((„HTTP/1.1 200 OK“));
client.println F ((„Content-Type: text/html“));
client.println F ((„Connection: close“));client.println ();
client.println F ((„<!DOCTYPE HTML>“));// zde jiĹľ klasická html data
client.println F ((„<html>“));
client.println F ((„<head>“));
// Název stránky
client.println F ((„<title>Arduinio Server – Rele control</title>“));
client.println F ((„</head>“));
client.println F ((„<body>“));
client.print F ((„<h3 align=center>Program pro ovladani rele</h3>“));
client.println F ((„</br>“));// vygeneruje formulář
if (digitalRead(2)) {
client.print F ((„<button style=’background:red;width:20%;height:30px‘>RELE 1 VYPNUTO</button>“));
} else {
client.print F ((„<button style=’background:green;width:20%;height:30px‘>RELE 1</button>“));
}
client.println F ( (“ test“));
client.println F ((„</br>“));if (digitalRead(3)) {
client.print F ((„<button style=’background:red;width:20%;height:30px‘>RELE 2 VYPNUTO</button>“));
} else {
client.print F ((„<button style=’background:green;width:20%;height:30px‘>RELE 2</button>“));
}
client.println F ((“ svetlo“));
client.println F ((„</br>“));if (digitalRead(22)) {
client.print F ((„<button style=’background:red;width:20%;height:30px‘>RELE 3 VYPNUTO</button>“));
} else {
client.print F ((„<button style=’background:green;width:20%;height:30px‘>RELE 3</button>“));client.println F ((“ filtrace“));
client.println F ((„</br>“));if (digitalRead(24)) {
client.print F ((„<button style=’background:red;width:20%;height:30px‘>RELE 4 VYPNUTO</button>“));
} else {
client.print F ((„<button style=’background:green;width:20%;height:30px‘>RELE 4</button>“));
}
client.println F ((“ tlacitko pro kotel 4″));client.println F ((„</br>“));
client.println F ((„</br>“));
client.println („</br>“);client.println („Teplota0“);
client.println (T00);
client.println („</br>“);
client.println („Teplota1:“);client.println (T01);
client.println („</br>“);
client.println („Teplota2:“);client.println (T02);
client.println („</br>“);client.print („<meta http-equiv=\“refresh\“ content=\“5\“>“); //stránka se naÄŤte automaticky jednou za 3 s
client.println („</body>“);
client.println („</html>“);Serial.println(buffer);
delay(1); //dáme klientovi čas na zpracování
//ukončà přenos
client.stop();
} }
}
} }[/code]
-
AutorPříspěvky
- Pro reakci na toto téma se musíte přihlásit.