Vai al contenuto
PLC Forum


Wsystem, ovvero nascita di un sistema domotico.


walterword

Messaggi consigliati


  • Risposte 247
  • Created
  • Ultima risposta

Top Posters In This Topic

  • walterword

    149

  • Livio Orsini

    48

  • Falconetel

    16

  • accacca

    13

Top Posters In This Topic

Posted Images

Modifca nella activity delle tapperelle.

Adesso quando cambia l'item , cioe' la tapparella selezionata, viene informato Imemdiatamente Arduino sul evento di change 

Non c'e' più bisogno di premere il pulsante OK , che ho tolto.

ciao

Link al commento
Condividi su altri siti

Sto facendo degli studi sulla programmazione dinamica , flexible I/O 

In pratica si può scegliere la funzionalità di un ingresso , l'indirizzo e il link sulle uscite in modo dinamico 

Dai primi test sembrerebbe una bella cosa.

In questo modo , l'utente può collegare ingressi ed uscite dove vuole ed usarli solo se vuole senza dover programmare niente

Link al commento
Condividi su altri siti

in anteprima alcune schermate curate nei dettagli grafici 

La pagina iniziale 

c0de2a97f05b44f2cf1e55c4392e06a0.png

 

Il menu pricipale 

d71a8b27df5fdf9480aff1ae1cd47e10.png

 

La pagina delle luci

6f40f93a231a9244a2da095f16c27ae9.png

 

 

 

 

 

 

 

Modificato: da walterword
Link al commento
Condividi su altri siti

Sto vedendo la programmazione dinamica con liste dinamiche , template , in C++

Micidiale.Ho gia implementato l'oggetto rele' passo-passo con 3 istanze.

Il pilotaggio è dinamico da 3 ingressi che si pososno scegliere a piacere a run-time, le uscite idem

Dopo aver modellato ed implementato tutti gli oggetti si potra' dire che il sistema e' dinamico 

Con un configuratore di impianto si potrà aggiugere e togliere vari oggetti dall'impianto e soprattutto decidere quali ingressi ed uscite associare 

SI creano dei files che vengono memorizzati nella micro SD di arduino , al setup vengono create le strutture , i nodi , e le liste e poi navigate per impostare e per leggere

E' una figata , mi piace sta cosa.....

Link al commento
Condividi su altri siti

Bello  il  progetto c è tanto  lavoro  dietro ... strano  che  ancora  non  ti  hanno  censurato... :-)  scherzo io  sto  facendo  un  lavoro  simile con  cubieboard però non  voglio  fare domotica  ma  giusto qualche  comando e  allarme  integrato  con  centrale  telefonica asterisk ... comunque  complimenti molto  bravo

Link al commento
Condividi su altri siti

ciao , il concetto di domotico deriva da un senso logico di quello che sto facendo

Allarmistica o altro ...e' tutto incluso , sono oggetti a se stanti ma che lavorano in un certo ambiente , per cui non ci sono limiti 

tutti qui ....;) 

Link al commento
Condividi su altri siti

Si c e' tanta roba ...... ormai altro che domotica possiamo parlare di integrazione ..... :-)  Secondo me dovresti oltre a fare un interfaccia android molto semplice lato utente riuscire a fare un bella app anche lato installatore cioe dividere le  due cose propio perche l utente molte volte si spaventa a vedere troppe opzioni mentre al contrario l installatore a piacere a trovare tante opzioni propio perche puo personalizzare l impianto per i vari impianti e scenari .... io sono un po indietro su queste cose infatti il mio sistema lato installatore viene configurato con dei semplici file di testo puo sembrare un po spartano ma in realta per il fine va piu che bene

Link al commento
Condividi su altri siti

si ,il concetto che sto sviluppando è che l'impianto deve essere configurato esternamente

Lato Android , la cosa e' gia molto impegnativa ma comunque molto stabile .Lo studio che sto facendo ora , oltre a sviluppare oggetti come cronotermostato , centrale allarme integrata, gestione cancelli integrata, gestione luci integrata,centrale irrigazione integrata, scenari integrati ect ...è quello di creare un sistema dinamico che in fase di setup del microcontrollore crea tutte le strutture dati e comportamentali dei vari oggetti definiti. Si tratta di collezioni di classi.Lato android è prevista una serie di settaggi di sistema come per esempio la definizione di quanti e quali oggetti usare nell'impianto , il link agli eventuali ingressi , uscite , configurazione hardware ect ect .

Solo che le schermate sono piccole e rischio di fare 4 milioni di activity , cosa poco seria , per niente friendly e fallimentare da un punto di vista tecnico .

Per l'installatore ho previsto un app per tablet che pur essendo scritta in java per android comporta una renderizzazione molto diversa , pagine divrse ect 

E' prevista anche un'applicazione alternativa in java o C# lato pc

comunque adesso devo ancora finire di sviluppare gli oggetti funzionali

La scheda che menzioni sopra e' molto buona ed interessante.Per queste funzionalità di estensione si possono anche usare scehde tipo Raspberry , Beaglebone, NetDuino e UDOO. L'ultima incorpora un arduino due pin to pin compatibile che in seriale comunica con ubuntu , pero ' essendoci porte hw di ogni sorta è necessario anche implementare un'applicazione   che sfrutta un video ect, ma questo esula dal progetto attuale .:)

Link al commento
Condividi su altri siti

Per esempio nel tuo sistema se dopo un apertura cancello voglio accendere una luce per 20 secondi  solo tra le 17:00  Alle 06:00

Come inserisce questi dati un installatore che non sa programmare 

Se riesci a fare questo con un sistema semplice e intuitivo allora avrai raggiunto l obbiettivo che tutt ora molte aziende non sanno fare....

Link al commento
Condividi su altri siti

questa funzionalità lho gia implementata. Ho creato degli oggetti rele passo passo , timer ritardo attivazione , timer ritardo disattivazione , sequenziatori 

Ho scritto un oggetto sequenziatore che esegue N passi , la transizione da un passo all'altro puo' dipendere da due condizioni tra loro in serie , AND logico; 

1 Condizione un tempo impostabile e piacere 

2 Condizione uno stato logico booleano che puo' essere un pulsante o il frutto di un'elaborazione piu complessa.

Da un punto di vista di logiche di questo tipo ma anche piu complessa non ho nessun problema , ma proprio nessuno perche dopo 15 anni di automazione plc di un certo livello .... se devo scrivere un proramma statico non ho alcun problema

ORa ho scoperto e sto facendo delle prove su come gestire un programma dinamico e sta funzionando.Man mano che navigo i nodi di una lista o di un albero porto avanti quello che si chiama RLC , risultato logico combinatorio , e in base a quello faccio quello che devo fare .La cosa che devo terminare e' la modellazione e l'implemetnazione degli oggetti a basso livello che mi mancano come il cronotermostato settimanale dove l'unico problema non è la logica ma la parte grafica in android .La gestione tapparelle l'ho fatta , le luci dirette, con rele passo-passo. con timer di ritardo tipo luci scale , l'acquisizione dei segnali analogici ect li ho gia implementati

La comunicazione ....ho scritto un protocollo binario da entrambe i lati , android e arduino , e funziona che e' una meraviglia 

Sono messo abbastanza bene 

Link al commento
Condividi su altri siti

 a livello grafico non ho ancora implemetnato niente per l'installatore.

Attualmente sto riprogettando tutti gli oggetti base , rele, timer ect .Poi devo fare il cronotermostato ed altri aggeggi

comunque le scehrmate lato android per il settaggio degli inrgessi per esempio ...dove voglio collegare questo pulsante con ID=3 ? 

Bene lo collego dove voglio per esempio sul morsetto 12 della scheda , idem per le uscite 

Questo lo si puo' fare nelle activity dove ci sono le lampadine per esempio , se ne seleziona una e si ricava l'id e poi dal menu si effettuano i settaggi

Io pero sto progettando un'applicazione PC per fare queste cose, per l'installatore . Si tratta di una classica applicazione MDI con classico albero gerarchico dove si trovano i seguenti nodi :

1- Configurazione hardware

2- Cartella ingressi , pulsanti ect 

3- Cartella lampadine

4- Cartella motori e pompe

5- Cartella cronotermostato

6- Cartella tapparelle

7- Cartella antiintrusione

ect ect 

Tasto destro del mouse -> aggiungi nuovo oggetto -> si apre la paginetta per la configurazione che acquisisce tutti i parametri dell'oggetto ocn i relativi controlli .Alla fine si compila tutot in un file che viene scritto nella micro SD card che e' ospitata su arduino

Al setup Arduino legge tutti i dati , funzioni gia implemetnate e testate, e riempie una tabella tramite la quale inizializza tutti gli oggetti dinamici usati nel programma .

Il programma non sa a priori quali e quanti oggetti dovrà far girare e soprattutto i link tra di loro 

I link sono gestiti nel software PC tramite drag&drop

Ho gia tutto in mente e su carta e molte cose , parziali o complete , le ho gia scritte ed implementate 

La differenza è che il sistema deve essere dinamico senza che l'installatore sia obbligato a collegare i fili su certi morsetti 

Per gli analogici idem .....ci sono tabelle per ospitare i dati di scalatura dei segnali analogici ect 

Lato android non voglio troppa roba di settaggi , meglio un table o meglio ancora un software per PC studiato ad hoc

 

 

Link al commento
Condividi su altri siti

Poi ti serve un sistema per proteggere il tuo lavoro io ho inventato un codice da inserire in un file che cambia naturalmente per ogni cubieboard.. 

Link al commento
Condividi su altri siti

per quanto riguarda android posso crera una app che acquisisce il numero seriale dello smart phone o altro e poi tramite un sw codifico un codice ect ...ma per adesso non devo ancora proteggere niente perche non ho finito ....

 

Link al commento
Condividi su altri siti

  • Livio Orsini pinned this discussione

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora

×
×
  • Crea nuovo/a...