Stránka 3 z 4

Re: Arduino klient - ovládanie z webu

Napsal: 16 úno 2019, 05:42
od seta1J
Zdravím. Těsně za loop() OK. Proč je v tom kódu wdt_reset(); ještě na konci ? Je to kvůli delay ?
Díky za info.

Re: Arduino klient - ovládanie z webu

Napsal: 16 úno 2019, 12:26
od martinius96
Je to kvôli tomu, aby sa vynulovalo počítadlo watchdogu, aby nepresiahlo prednastavených 8s.

Re: Arduino klient - ovládanie z webu

Napsal: 08 kvě 2020, 13:57
od Kony
Já se dle zmíněného návodu snažím přijít jak na to, abych na ww stránce měl 3 možnosti ovládání LEd diod...
Každou zvlášť a potom všechny naráz.
Ale nemůžu přijít na php kód, který by mi měnil hodnoty v MySQL správně u každého zvlášť.

Re: Arduino klient - ovládanie z webu

Napsal: 08 kvě 2020, 18:41
od KamilV
Jako vždy, ukaž co máš.
Jaká je struktura mysql tabulky? Ukaž třeba export nebo přilož screen.

Re: Arduino klient - ovládanie z webu

Napsal: 08 kvě 2020, 19:29
od pavel1tu
Kony píše:
08 kvě 2020, 13:57
Já se dle zmíněného návodu snažím přijít jak na to, abych na ww stránce měl 3 možnosti ovládání LEd diod...
Každou zvlášť a potom všechny naráz.
Ale nemůžu přijít na php kód, který by mi měnil hodnoty v MySQL správně u každého zvlášť.
Těžko poradit, když nevíme jak to řešíš v databázi.
Já mám u alarmu pro každou místnost v databázi položku, kam ukládám 0/1 jestli je zona hlidana nebo ne.
Je i jiná možnost, kdy se mi do jiného políčka ukládá číslo 0-8, kdy bitová váha tohoto čísla znamená jaký typ alarmu vzniknul.
A těch možností je více.

Je to o SQL dotazu, od tlačítka na 1 LED spustíš SQL dotaz aby změnil jen hodnotu/položku/buňku tabulky té 1 LED,
u ovládání více LED spustíš SQL dotaz který zapíše změnu do položek/buněk/chlívečků tabulky všech LED,
jen musíš pořád zapisovat a číst jen z prvního řádku tabulky ....

Re: Arduino klient - ovládanie z webu

Napsal: 08 kvě 2020, 20:08
od KamilV
pavel1tu píše:
08 kvě 2020, 19:29
Je to o SQL dotazu, od tlačítka na 1 LED spustíš SQL dotaz aby změnil jen hodnotu/položku/buňku tabulky té 1 LED,
u ovládání více LED spustíš SQL dotaz který zapíše změnu do položek/buněk/chlívečků tabulky všech LED,
jen musíš pořád zapisovat a číst jen z prvního řádku tabulky ....
To by předpokládalo, že má strukturu tabulky

Kód: Vybrat vše

LED1 | LED2 | LED3
-----------------------
  0  |   0  |  1
a to trochu doufám, že nemá.
Spíše bych čekal strukturu

Kód: Vybrat vše

ID | value
-------------
1  | 0
-------------
2  | 0
-------------
3  | 1
ale kdo ví, počkáme si, až bude jasné, jaká je struktura...

Re: Arduino klient - ovládanie z webu

Napsal: 08 kvě 2020, 20:11
od Kony
Ne, mam strukturu :
Jmeno = svetlo1
hodnota = 0(1)

Re: Arduino klient - ovládanie z webu

Napsal: 08 kvě 2020, 21:11
od KamilV
No tak potom je to snadné.

Dotaz pro switchnutí konkrétního světla "svetlo1":

Kód: Vybrat vše

UPDATE tabulka SET hodnota = ABS(hodnota - 1) WHERE jmeno = "svetlo1"
Dotaz pro switchnutí všech světel:

Kód: Vybrat vše

UPDATE tabulka SET hodnota = ABS(hodnota - 1)
pokud v tabulce není nic jiného, než světa.

Dotaz na switchnutí je univerzál, nemusíš zjišťovat, v jakém stavu světlo bylo.
Ale samozřejmě můžeš mít na zapnutí samostatný dotaz:

Kód: Vybrat vše

UPDATE tabulka SET hodnota = 1 WHERE jmeno = "svetlo1"
a na vypnutí samostatný dotaz:

Kód: Vybrat vše

UPDATE tabulka SET hodnota = 0 WHERE jmeno = "svetlo1"

Re: Arduino klient - ovládanie z webu

Napsal: 09 kvě 2020, 09:55
od Kony
Super, tohle chapu, jen se trapim primo s tim formularem (obsahem) php stranky, pres ktery menim ty hodnoty v DB.
Dle clanku, me krasne meni hodnoty u jedne polozky, ale nejak nemuzu prijit jak na jednu php stranku dostat vic jak jednu hodnotu to menilo.

Abych mel :

Svetlo1--------Svetlo2-------Svetlo3
--Stav.-----------Stav.----------Stav
zapnout-------Zapnout------Zapnout
vypnout-------Vypnout------Vypnout

Odeslat


Nyní to mám takto a samozřejmě nefunguje :

Kód: Vybrat vše

<!DOCTYPE HTML>
<html>
        <head>
                <title>Statusy</title>
                <meta charset="utf-8" />
                <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
                <link rel="stylesheet" href="assets/css/main.css" />
                <noscript><link rel="stylesheet" href="assets/css/noscript.css" /></noscript>
        </head>
        <body class="is-preload">
        <p>
        </p>
<?php
        $server = "localhost";
        $user = "kony";
        $pass = "xxxxxxxxxxx";
        $db = "Domacnost";
        $mysqli = mysqli_connect($server, $user, $pass, $db); //připojení k MySQL
?>
                                <table width="480" height="116" border="0">
                                  <tbody>
                                    <tr>
                                      <td width="95"><input type="submit" name="submit" id="svetlo1ON" value="Odeslat"></td>
                                      <? $sql = "UPDATE arduino_data SET hodnota = ABS(hodnota - 1) WHERE modul = "svetlo1""; ?>
                                      <td width="95"><input type="submit" name="submit" id="svetlo1OFF" value="Odeslat"></td>
                                      <? $sql = "UPDATE arduino_data SET hodnota = ABS(hodnota - 0) WHERE modul = "svetlo1""; ?>
                                </tr>
                              </tbody>
    </table>
        </body>
</html>

Re: Arduino klient - ovládanie z webu

Napsal: 09 kvě 2020, 10:36
od kiRRow
Na odesilání více hodnot typu ano/ne se používá checkbox https://www.w3schools.com/tags/att_inpu ... eckbox.asp. Pokud to budeš dělat pomocí buttonů, nebo jiných html prvků, tak budeš muset použít javascript. Ten běží na straně prohlížeče a dovolí ti manipulovat se stránkou "online" ... po nastavení požadovaných parametrů se výsledek odešle k zpracování na php server.