Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Programma per centralina irrigazione!!

    Ciao a tutti ragazzi, mi sto imbattendo in un nuovo progetto, cioè domotizzare casa, allora per prima cosa volevo usare il raspy come server locale e tramite una pagina web su di esso comandare un arduino tramite seriale per irrigare il giradino di casa mia, qui sta la domanda, siccome vorrei gestire per comodità tutto da web non voglio usare il modulo RTC di arduino. Mi hanno consigliato di creare un programma demone che girasse sempre in background sul mio raspy, voi avevte qualche idea su come risolvere questo problema? Io pensavo di creare un programmino in java, ma poi non saprei come gestire la questione demone!! Please aiutoo!!

  2. #2
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551
    Un demone è un processo sempre attivo che attende richieste. Un tuo programma server avviato all' avvio della scheda e che aspetta richieste sulla porta 80, é un demone. Di conseguenza il tuo problema è solo creare il server.
    Tecnologia

  3. #3
    Ciao Grazie mille per la risposta, solo che in ralt� ora sono un po' confuso, come dovrei fare quindi? Il programma in se e semplice, ma ora non capisco come dovrei farlo e in che linguaggio?! Scusa per le domande stupide ma vorrei capire!

  4. #4
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551

    Ciao

    Ciao, non sono molto esperto, e quindi ti propongo un modo da principiante, il modo che seguirei io.

    Abbiamo bisogno di creare un web server? No, ne esistono già che girano su raspberry, Apache + php.

    http://www.antoniosaladini.it/raspbe...server-apache/

    Creo una pagina php, che sarà la mia interfaccia di comando del sistema domotico, tramite la funzione php exec(), richiamo uno script phyton che comunichera i comandi ad arduino.
    http://it2.php.net/manual/en/function.exec.php

    lo scrpt python è ritrovabile in rete, essendo poche righe è facilmente modificabile.

    http://www.allafinedelpalo.it/arduino-e-python/

    TUTTO QUESTO con GOOGLE
    Tecnologia

  5. #5
    Ciao, allora fino a mettere un server locale su linux so farlo e anche creare un programma php e il sito web che gestisca la comunicazione con arduino, ma il mio problema e' far processare i dati anche quando io non sono nel sito, non so se mi spiego!! come faccio? io volevo accedere ad arduino tramite php, phyton sinceramente non lo conosco!

    La mia idea era sito, programmino php che a una certa ora manda un comando ad arduno e arduino attiva la porta, passati i minuti spegne tutto!
    come faccio?

  6. #6
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551
    Il problema non � spiegato bene, non so cosa vuoi fare esattamente.
    Comunque, da web vuoi modificare-impostare dei dati, serve comunque un web server in attesa sulla porta 80.
    Se sai programmare in java, in questo caso potresti fare un unico programma che ti risolve tutti i problemi.

    Soluzione da principiante � invece, uso apache e php, php scrive i dati ricevuti su un file di testo.

    Un programma nel linguaggio di programmazione che conosci, resta sempre in esecuzione, legge i dati da file e si comporter� di conseguenza inviando per seriale ordini ad arduino.

    Esempio vuoi modificare gli orari e attivare il sistema da web, verr� modificato il file dati, il programma in esecuzione a intervalli di tempo prestabiliti, controlla le informazioni leggendo il file, nel caso invia un comando a arduino.

    Ora puoi suddividere i compiti tra computer e arduino, puoi ad esempio inviare un semplice comando ad arduino "accendi" e lui provveder� a calcolare il tempo, oppure puoi fare calcolare il tempo al programma su computer, che invier� due comandi accendi-spegni.

    Esistono forum specializzati in domotica "parlano solo di quello" oppure il forum arduino, Certamente in questi forum potresti trovare soluzioni pi� sofisticate e "professionali" che ti possono fornire idee interessanti, poi tu sceglierai quella pi� adatta a te, quella che riesci a realizzare pi� facilmente e che ti soddisfa.
    Tecnologia

  7. #7
    Quote Originariamente inviata da torn24 Visualizza il messaggio
    Il problema non � spiegato bene, non so cosa vuoi fare esattamente.
    Comunque, da web vuoi modificare-impostare dei dati, serve comunque un web server in attesa sulla porta 80.
    Se sai programmare in java, in questo caso potresti fare un unico programma che ti risolve tutti i problemi.

    Soluzione da principiante � invece, uso apache e php, php scrive i dati ricevuti su un file di testo.

    Un programma nel linguaggio di programmazione che conosci, resta sempre in esecuzione, legge i dati da file e si comporter� di conseguenza inviando per seriale ordini ad arduino.

    Esempio vuoi modificare gli orari e attivare il sistema da web, verr� modificato il file dati, il programma in esecuzione a intervalli di tempo prestabiliti, controlla le informazioni leggendo il file, nel caso invia un comando a arduino.

    Ora puoi suddividere i compiti tra computer e arduino, puoi ad esempio inviare un semplice comando ad arduino "accendi" e lui provveder� a calcolare il tempo, oppure puoi fare calcolare il tempo al programma su computer, che invier� due comandi accendi-spegni.

    Esistono forum specializzati in domotica "parlano solo di quello" oppure il forum arduino, Certamente in questi forum potresti trovare soluzioni pi� sofisticate e "professionali" che ti possono fornire idee interessanti, poi tu sceglierai quella pi� adatta a te, quella che riesci a realizzare pi� facilmente e che ti soddisfa.

    Quello che devo fare e' esatta mente quello che hai detto tu un programma sempre in esecuzione che mi faccia da timer e che controlla se dal web sono stati combiati dei valori, la seconda soluzione da principianti appunto e quella che potrei riuscire meglio a gestire, quella del web server con la porta 80 sempre un esecuzione sinceramente non ho proprio capito cosa dovrei fare, se avessi voglia di spiegarmi o di linkarmi una guida sarei molto felice, se no inizioero a implementare il modo da principianti

  8. #8
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551
    Premettiamo che vuoi soluzioni da me, che per molti programmatori sono un deficiente, comunque visto che nessun programmatore ti darà soluzioni elementari ti devi accontentare

    1) installo apache e php
    2) Creo una pagina php, con un form dove inserire orari di accensione, valore attivo sistema o spento sistema domotico
    3) Il web server è sempre attivo, apache rimarrà sempre in attesa di richieste sulla porta 80, in pratica ogni volta che ti connetti
    ti invierà la pagina php, ma questo lo fa semplicemente "tenendolo acceso"
    4) compilato il form della pagina php o html, richiami una pagina php che provvederà a sovrascrivere il file dati, cancella e mette i nuovi dati

    5) avrai creato un programma con un processo sempre in esecuzione nel linguaggio che tu conosci, che a intervalli regolari legge il file e reagisce di conseguenza inviando dati a arduino per porta seriale.

    6) E' possibile che mentre il programma vuole tentare di leggere il file, tu stavi scrivendo tramite web, in questo caso, dovresti gestire l'eccezione, ossia il programma tenta di aprire il file e non è possibile, in java try{} catch{ attendo un intervallo di tempo e riprovo}


    NON POSSO FARE DI PIU', DOVRESTI TROVARE UNA PERSONA INTELLIGENTE che ti spieghi meglio e ti dia soluzioni migliori, CIAO.
    Tecnologia

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2016
    Messaggi
    18
    Perché non vuoi usare un modulo rtc?
    Poi se cerchi bene arduino può fare tutto quello che dici.

    Piccolo consiglio. Alla tua scheda arduino aggiungerei un piccolo sensore di umidità ,così che a prescindere da tutto può irrigare il giardino nel caso i valori di umidità del terreno siano bassi.
    usa la porta seriale di arduino per testare le connessioni.
    Un altro piccolo consiglio. Con funzioni timer che si possono tranquillamente implementare su arduino, potresti far si che sia arduino a chiedere al "server",al programma o raspberry il refresch dei valori che tu imposti.
    Cmq bisognerebbe vedere lo schema delle connessioni prima di poterti dare un'ulteriore aiuto

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.