Funkcia raz za 10 minút do existujúceho kódu

Sekcia určená pre Arduino nadšencov

Moderátor: Moderátori

martinius96

Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa martinius96 » 12 Sep 2017, 18:02

Ahojte, mám kód, ktorý vykonáva HTTP requesty na stránku v pravidelných intervaloch. Potreboval by som radu ako efektívne a či je možné dať do existujúceho kódu funkciu, ktorá by sa vykonala raz za 10 minút. Bude to posielať referenčnú hodnotu na server.

Kód: Vybrať všetko

#include "HX711.h"
#include <Ethernet.h>
#include <SPI.h>                    
#define Hostname "Arduino"            //Meno arduina v siti
byte mac[] = { 0xAA, 0xBB, 0xAA, 0xBB, 0xAA, 0xBB };            //MAC ADRESA ARDUINA --> VOLITELNA
char server[] = "www.server.php5.cz";      //ADRESA WEBSERVERA (MOZE BYT AJ IP ADRESA)
IPAddress ip(10, 0, 0, 151);                               //IP ADRESA ZARIADENIA V SIETI V LOKALNEJ SIETI
EthernetClient client;                                          //SPUSTENIE ETHERNETU AKO CLIENTA
HX711 scale (A2, A3); //definovane piny pre cip HX711

int led1 = 5;
int led2 = 4;
int led3 = 3;
int led4 = 2;
int PRETIZENI = 4000;
int PRAZDNY = 10;
double momentalnahodnota=0;
double predchadzajucahodnota=0;
int rozdiel=0; 
unsigned long pocitadlo= 0;
void setup()
{
Serial.begin(9600);

scale.set_scale(300.f); 
scale.tare(); // NASTAVI VAHU NA 0
pinMode (led1, OUTPUT);
pinMode (led2, OUTPUT);
pinMode (led3, OUTPUT);
pinMode (led4, OUTPUT);



  }
  void resetdiod(){ 
  digitalWrite (led1, LOW);
  digitalWrite (led2, LOW);
  digitalWrite (led3, LOW);
  digitalWrite (led4, LOW);
  }
void loop()
{  
  if(pocitadlo < 1){
 momentalnahodnota = scale.get_units(); 
 if(0<= momentalnahodnota && momentalnahodnota <= 5 || 0>= momentalnahodnota && momentalnahodnota >= -5){
 scale.tare();
 momentalnahodnota=0;}
  predchadzajucahodnota = scale.get_units();
 
  pocitadlo++;
  delay(3000);
  }else{
    if (Ethernet.begin(mac) == 0) {                 
    Serial.println("Chyba konfiguracie cez DHCP"); //SERIOVY VYPIS CHYBY KONFIGURACIE DHCP
    Ethernet.begin(mac, ip);                       //NASTAVENIE IP A MAC ADRESY PRE ETHERNET MODUL
  }
momentalnahodnota = scale.get_units(); 
if(0<= momentalnahodnota && momentalnahodnota <= 5 || 0>= momentalnahodnota && momentalnahodnota >= -5){
 scale.tare();
 momentalnahodnota=0;}

 
rozdiel =  (momentalnahodnota - predchadzajucahodnota);
   if (rozdiel > 30){
  Serial.println("Pridani polozky");
   if (client.connect(server, 80)) {
    client.print("GET /pridanipolozky.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
     client.print("&stav=Pridani%20polozky");                                   
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } else {                                           
    Serial.println("Pripojenie zlyhalo");            //SERIOVY VYPIS O NEUSPESNOSTI PRIPOJENIA
  }
  }
  if (rozdiel < -30){
  Serial.println("Odebrani polozky");
  digitalWrite (led3, HIGH);
    if (client.connect(server, 80)) {
    client.print("GET /odebranipolozky.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
      client.print("&stav=Odebrani%20polozky");                                 
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } else {                                         
    Serial.println("Pripojenie zlyhalo");            //SERIOVY VYPIS O NEUSPESNOSTI PRIPOJENIA
  }
  }
  
   if (rozdiel > 50){
  Serial.println("Pridani vice polozek");
    if (client.connect(server, 80)) {
    client.print("GET /pridanivicepolozek.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
  client.print("&stav=Pridani%20vice%20polozek");                             
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } else {                                        
    Serial.println("Pripojenie zlyhalo");            //SERIOVY VYPIS O NEUSPESNOSTI PRIPOJENIA
  }
  }
   if (rozdiel < -50){
   digitalWrite (led4, HIGH);
  Serial.println("Pozor - odebrání více položek");
    if (client.connect(server, 80)) {
    client.print("GET /odebranivicepolozek.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
    client.print("&stav=Pozor%20odebrani%20vice%20polozek");                                
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } else {                                          
    Serial.println("Pripojenie zlyhalo");            //SERIOVY VYPIS O NEUSPESNOSTI PRIPOJENIA 
  }
  }
if (momentalnahodnota < PRAZDNY) {
  Serial.println("Prazdny regal");

  digitalWrite (led1, HIGH);
  delay(350);
  digitalWrite (led1, LOW);
  delay(350);
      if (client.connect(server, 80)) {
    client.print("GET /prazdnyregal.php?momentalnahodnota=");  
    client.print(momentalnahodnota);
    client.print("&predchadzajucahodnota="); 
   client.print(predchadzajucahodnota);
   client.print("&rozdiel="); 
   client.print(rozdiel);
    client.print("&stav=Prazdny%20regal");                                   
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } else {                                       
    Serial.println("Pripojenie zlyhalo");            //SERIOVY VYPIS O NEUSPESNOSTI PRIPOJENIA 
  }
}
if (momentalnahodnota > PRETIZENI) {
  Serial.println("Pretizeny regal");
  digitalWrite (led2, HIGH);
        if (client.connect(server, 80)) {
    client.print("GET /pretizenyregal.php?momentalnahodnota=");  
   client.print(momentalnahodnota);
   client.print("&predchadzajucahodnota="); 
   client.print(predchadzajucahodnota);
   client.print("&rozdiel="); 
   client.print(rozdiel);
    client.print("&stav=Pretizeny%20regal");                               
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } else {                                    
    Serial.println("Pripojenie zlyhalo");            //SERIOVY VYPIS O NEUSPESNOSTI PRIPOJENIA
  }
}





predchadzajucahodnota = scale.get_units();
if(0<= predchadzajucahodnota && predchadzajucahodnota <= 5 || 0>= predchadzajucahodnota && predchadzajucahodnota >= -5){
 scale.tare();
 predchadzajucahodnota=0;}
delay(4000); //pockame 6 sekund pred novym meranim vahy
resetdiod(); //vypneme vsetky ledky pred novym meranim, aby bol ich stav aktualny
  pocitadlo++;
  }
}
Ide mi najmä aj o to, že tam mám delay a čo ak nastavím napr cez millis hodnotu 360000 a delay pozdrží čas na 361000 (príklad) tak sa to už zrejme nevykoná, druhá vec je to, že millis nemôžem resetovať a potrebujem to pravidelne raz za 10 min. Nemusí to byť na sekundu presne. Obsahom funkcie bude podobný HTTP request GET metódou. Vďaka za rady/pomoc.

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa peterple » 12 Sep 2017, 18:17

martinius96 napísal:Ide mi najmä aj o to, že tam mám delay a čo ak nastavím napr cez millis hodnotu 360000 a delay pozdrží čas na 361000 (príklad) tak sa to už zrejme nevykoná,
To čo je za blbost? Ako to máš v pláne testovať?
Skús v tom tvojom kóde zrušiť všetky delay(....) a pôjde ti to na desatinu sekundy

Celé je to o tom že programuješ úplne chybne, takto sa veci s realnym časom nerobia.
Prečo otváraš nové a nové otázky na tú istú tému. Pri hasičských stopkách ide o to isté a nenamáhal si sa odpovedať.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa alidedko » 12 Sep 2017, 18:22

Aj v prvej teme by sa dalo pokracovat.

https://svetelektro.com/modules.php?nam ... 275959278d

Kdesi sme ti uz pisali, pozri si interrupt, pozri si timer. S touto dvojicou dokazes vykuzlit ovela viac, nez s delayom. Nemusis tomu dopodrobna chapat.

Ale mozno pride niekto, kto povie, ze sa to da inak.
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

martinius96

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa martinius96 » 12 Sep 2017, 18:22

Pretože tomu nerozumiem.

Používateľov profilový obrázok
Kado
Power user
Power user
Príspevky: 1625
Dátum registrácie: 02 Sep 2007, 00:00
Bydlisko: PB
Vek: 40

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa Kado » 12 Sep 2017, 18:48

mam ti napisat kod v C? prerusovaci system procesora, krasna vec..ved gugli abo studuj datasheet procesora, to je zaklad, ak chces realne nieco robit s mcu...ked toto zvladnes, nebudes mat problem so ziadnym mcu, bude ti stacit DOBRY datashit a tvoja hlava
0
Návrh zapojení s jednočipovými mikropočítačmi, tvorba programového vybavenia pre mikropočítače
http://www.jk-elektronika.info/index.html

predaj !!
http://svetelektro.com/modules.php?name ... 54#p549154

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa alidedko » 12 Sep 2017, 18:51

... a jedna "kostra" kodu, ktoru budes pouzivat dookola. Myslene v dobrom.
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

martinius96

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa martinius96 » 12 Sep 2017, 20:00

Okej, takže while, iterácia i do 100 a potom následne if funkcia s nulovaním indexu.

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa peterple » 12 Sep 2017, 20:06

martinius96 napísal:Pretože tomu nerozumiem.
To je jasné od úplného začiatku. Úplne až na kosť sa to ukázalo na tých hasičských stopkách. Tam som ti položil tri jednoduché otázky. Odpovedz mi na ne a môžeme pokračovať v debate. Prerušenia študovať zatiaľ nemusíš. To odmakali maníci od arduina - urobili milis(). Je to urobené dobre a dá sa to použiť na všetky tvoje doteraz tu nahodené problémy bez znalosti prerušenia.
  1. debouncing - meranie oneskorenia okolo 50ms bez blokovania hlavného programu
  2. spúštanie niečoho raz (alebo opakovane) za 1ms až 50 dní (s presnosťou na 1ms)
  3. meranie času s presnosťou na ms (hasičské stopky)
Zatiaľ si predviedol iba manažérske schopnosti:
  1. používať Ctrl+C Ctrl+V
  2. používať inžinierske riešenie bez toho aby si mu rozumel.
  3. keď si v koncoch nájsť niekoho kto to urobí za teba (buď za ďakujem, alebo za z pohľadu manažéra smiešne peniaze)
  4. vypýtať si neodpovedajúcu odmenu za polorozrobenú vec.
  5. .. ďalej pokračovať nebudem lebo už aj toto asi bude dosť veľká nálož na to aby si to uniesol
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa alidedko » 12 Sep 2017, 20:20

martinius96 napísal:Okej, takže while, iterácia i do 100 a potom následne if funkcia s nulovaním indexu.
Inkrementacia. To je to slovo. Kludne pouzivaj "zvysovanie" alebo "pripocitavanie", ved ta nevysmejeme.

Podla mna na to aj tak ides zle.
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

martinius96

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa martinius96 » 13 Sep 2017, 15:30

Funguje mi to báječne. :)

alidedko
Ultimate člen
Ultimate člen
Príspevky: 3963
Dátum registrácie: 04 Feb 2013, 22:04
Bydlisko: U alibabky v Poprade
Vek: 32

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa alidedko » 13 Sep 2017, 16:54

No, ukaz, ako si to dorobil.
0
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.

martinius96

Re: Funkcia raz za 10 minút do existujúceho kódu

Príspevok od používateľa martinius96 » 13 Sep 2017, 17:24

Takto. Je mi ale taktiež jasné, že presne na 10 min na sekundu to nebude.

Kód: Vybrať všetko

#include "HX711.h"
#include <Ethernet.h>
#include <SPI.h>                    
#define Hostname "Arduino"            //Meno arduina v siti
byte mac[] = { 0xAA, 0xBB, 0xAA, 0xBB, 0xAA, 0xBB };            //MAC ADRESA ARDUINA --> VOLITELNA
char server[] = "www.server.php5.cz";      //ADRESA WEBSERVERA (MOZE BYT AJ IP ADRESA)
IPAddress ip(10, 0, 0, 151);                               //IP ADRESA ZARIADENIA V SIETI V LOKALNEJ SIETI
EthernetClient client;                                          //SPUSTENIE ETHERNETU AKO CLIENTA
HX711 scale (A2, A3); //definovane piny pre cip HX711

int led1 = 5;
int led2 = 4;
int led3 = 3;
int led4 = 2;
int PRETIZENI = 4000;
int PRAZDNY = 10;
double momentalnahodnota=0;
double predchadzajucahodnota=0;
int rozdiel=0; 
unsigned long pocitadlo= 0;
void setup()
{
Serial.begin(9600);

scale.set_scale(300.f); 
scale.tare(); // NASTAVI VAHU NA 0
pinMode (led1, OUTPUT);
pinMode (led2, OUTPUT);
pinMode (led3, OUTPUT);
pinMode (led4, OUTPUT);



  }
  void resetdiod(){ 
  digitalWrite (led1, LOW);
  digitalWrite (led2, LOW);
  digitalWrite (led3, LOW);
  digitalWrite (led4, LOW);
  }
void loop()
{  
  if(pocitadlo < 1){
 momentalnahodnota = scale.get_units(); 
 if(0<= momentalnahodnota && momentalnahodnota <= 5 || 0>= momentalnahodnota && momentalnahodnota >= -5){
scale.tare();
 momentalnahodnota=0;}
  predchadzajucahodnota = scale.get_units();
 
  pocitadlo++;
  delay(3000);
  }else{
    if (Ethernet.begin(mac) == 0) {                 
    Serial.println("Chyba konfiguracie cez DHCP"); //SERIOVY VYPIS CHYBY KONFIGURACIE DHCP
    Ethernet.begin(mac, ip);                       //NASTAVENIE IP A MAC ADRESY PRE ETHERNET MODUL
  }
momentalnahodnota = scale.get_units(); 
if(0<= momentalnahodnota && momentalnahodnota <= 5 || 0>= momentalnahodnota && momentalnahodnota >= -5){
 scale.tare();
 momentalnahodnota=0;}

 
rozdiel =  (momentalnahodnota - predchadzajucahodnota);
   if (rozdiel > 30){
if (rozdiel > 50){
  Serial.println("Pridani vice polozek");
    if (client.connect(server, 80)) {
    client.print("GET /pridanivicepolozek.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
  client.print("&stav=Pridani%20vice%20polozek");                             
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } 
  }
  else{
  Serial.println("Pridani polozky");
   if (client.connect(server, 80)) {
    client.print("GET /pridanipolozky.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
     client.print("&stav=Pridani%20polozky");                                   
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } 
  }}
  if (rozdiel < -30){
if (rozdiel < -50){
   digitalWrite (led4, HIGH);
  Serial.println("Pozor - odebrání více položek");
    if (client.connect(server, 80)) {
    client.print("GET /odebranivicepolozek.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
    client.print("&stav=Pozor%20odebrani%20vice%20polozek");                                
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } 
  }else{
  Serial.println("Odebrani polozky");
  digitalWrite (led3, HIGH);
    if (client.connect(server, 80)) {
    client.print("GET /odebranipolozky.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&predchadzajucahodnota=");      
    client.print(predchadzajucahodnota); 
    client.print("&rozdiel=");              
    client.print(rozdiel); 
      client.print("&stav=Odebrani%20polozky");                                 
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  }} 
  }
  
   
   
if (momentalnahodnota < PRAZDNY) {
  Serial.println("Prazdny regal");

  digitalWrite (led1, HIGH);
  delay(350);
  digitalWrite (led1, LOW);
  delay(350);
      if (client.connect(server, 80)) {
    client.print("GET /prazdnyregal.php?momentalnahodnota=");  
    client.print(momentalnahodnota);
    client.print("&predchadzajucahodnota="); 
   client.print(predchadzajucahodnota);
   client.print("&rozdiel="); 
   client.print(rozdiel);
    client.print("&stav=Prazdny%20regal");                                   
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  }
}
if (momentalnahodnota > PRETIZENI) {
  Serial.println("Pretizeny regal");
  digitalWrite (led2, HIGH);
        if (client.connect(server, 80)) {
    client.print("GET /pretizenyregal.php?momentalnahodnota=");  
   client.print(momentalnahodnota);
   client.print("&predchadzajucahodnota="); 
   client.print(predchadzajucahodnota);
   client.print("&rozdiel="); 
   client.print(rozdiel);
    client.print("&stav=Pretizeny%20regal");                               
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } else {                                    
    Serial.println("Pripojenie zlyhalo");            //SERIOVY VYPIS O NEUSPESNOSTI PRIPOJENIA
  }
}

  if(pocitadlo>=150){
if (momentalnahodnota > PRETIZENI) {

       if (client.connect(server, 80)) {
    client.print("GET /reference.php?momentalnahodnota=");  
   client.print(momentalnahodnota);
    client.print("&stav=Pretizeny%20regal");                               
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  }

  
  
  }
 if (momentalnahodnota < PRAZDNY) {
  Serial.println("Prazdny regal");

  digitalWrite (led1, HIGH);
  delay(350);
  digitalWrite (led1, LOW);
  delay(350);
      if (client.connect(server, 80)) {
    client.print("GET /reference.php?momentalnahodnota=");  
    client.print(momentalnahodnota);
    client.print("&stav=Prazdny%20regal");                                   
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  }
}
  
if (rozdiel < -30){
if (rozdiel < -50){
   digitalWrite (led4, HIGH);
  Serial.println("Pozor - odebrání více položek");
    if (client.connect(server, 80)) {
    client.print("GET /reference.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
    client.print("&stav=Pozor%20odebrani%20vice%20polozek");                                
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } 
  }else{
  Serial.println("Odebrani polozky");
  digitalWrite (led3, HIGH);
    if (client.connect(server, 80)) {
    client.print("GET /reference.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
      client.print("&stav=Odebrani%20polozky");                                 
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  }} 
  }
    if (rozdiel > 30){
if (rozdiel > 50){
  Serial.println("Pridani vice polozek");
    if (client.connect(server, 80)) {
    client.print("GET /reference.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
  client.print("&stav=Pridani%20vice%20polozek");                             
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } 
  }
  else{
  Serial.println("Pridani polozky");
   if (client.connect(server, 80)) {
    client.print("GET /reference.php?momentalnahodnota=");  
    client.print(momentalnahodnota);  
     client.print("&stav=Pridani%20polozky");                                   
    client.println(" HTTP/1.1");               
    client.println("Host: www.server.php5.cz");
    client.println("Connection: close");         
    client.println();                           
    client.stop();                                 

  } 
  }}
      
    pocitadlo=1;
    }
   
predchadzajucahodnota = scale.get_units();
if(0<= predchadzajucahodnota && predchadzajucahodnota <= 5 || 0>= predchadzajucahodnota && predchadzajucahodnota >= -5){
 scale.tare();
 predchadzajucahodnota=0;}
delay(4000); //pockame 6 sekund pred novym meranim vahy
resetdiod(); //vypneme vsetky ledky pred novym meranim, aby bol ich stav aktualny
  pocitadlo++;
 
  }
}}
Dalo by sa to aj efektívnejšie napríklad pri odobraní/pridaní položiek aj cez &&

Napísať odpoveď