Show Posts
Pages: 1 ... 11 12 [13] 14 15 ... 24
181  International / Megatopic / Re: Souliss, Domotica e IoT on: December 26, 2012, 07:50:26 pm
Che non tutti gli utenti contribuiscano è normale, io sono utente di vari progetti open-source ai quali non contribuisco, giusto per citarne alcuni Notepad++ ed Inkscape.

Non sono d'accordo nel generalizzare, perché ci sono tanti esempi di comunità che funzionano, tra cui c'è sicuramente quella di Arduino che forse si caratterizza rispetto alle altre per una maggiore influenza anarchica, ma non è detto che sia un difetto.

Saluti,
Dario.
182  International / Generale / Re: Ricezione UDP da scheda di rete Netman Plus on: December 26, 2012, 07:46:27 pm
Ciao,

come ti è stato consigliato devi capire quale sia il flusso delle informazioni, ci sono due possibilità: 1) il PC richiede i dati all'inverter; 2) l'inverter fa broadcast dei dati.

Nel primo caso troverai pacchetti con indirizzi IP sorgente e destinazione pari a quelli del PC e dell'inverter, nel secondo ci sarà solo quello dell'inverter.

L'aspetto più importante è un'altro, UDP è un protocollo di trasporto, ovvero non definisce alcuna struttura dati il che significa che pur riuscendo a ricevere non avrai qualcosa di automaticamente intellegibile.
Nel tuo caso, con buona probabilità, l'inverter utilizza un protocollo Modbus (anche se normalmente non viaggia su UDP), se inserisci la parte "Data" dei pacchetti visti in WireShark posso dirti se il protocollo sia o meno quello.

Saluti,
Dario.
183  International / Megatopic / Re: Souliss, Domotica e IoT on: December 26, 2012, 04:25:11 pm
Il codice sia lato AVR, sia lato Android, usa la licenza GPLv3. Altre librerie open source utilizzate possono avere licenze diverse, ma si tratta sempre di codice open-source.

Ho iniziato a lavorare su questo progetto perché avevo visto una grande partecipazione attorno gli argomenti inerenti la domotica, senza che ci fosse un progetto ben strutturato attorno. Non nascondo, che dopo il primo rilascio del codice l'anno scorso, immagginavo una partecipazione maggiore di quanto, lecitamente, avvenuto sia da parte della comunità e di Arduino stessa.
Fino ad oggi il progetto è andato avanti perché in due abbiamo avuto una passione ed un obiettivo comune, ed abbiamo portato avanti lo sviluppo pensado ad un lavoro pubblico e ci piacerebbe che divenisse maggiormente un progetto di comunità.

Questo per dire che non c'è un progetto di monetizzazione, l'attuale obiettivo è quello di rendere il framework utilizzato, perché crediamo che ci sarà margine per l'IoT e la customizzazione elettronica, non solo a livello didattico/prototipazione, ma a livello di prodotto.

Saluti,
Dario.
184  International / Generale / Re: Arduino nano, Web server e Wake on lan on: December 26, 2012, 11:01:28 am
Ciao, come molti altri ti hanno detto si può fare, la gestione dei Magic Packet non è in linea generale un problema, mentre per capire se un PC è acceso o meno potresti semplicemente effettuare un PING (se hai gli indirizzi IP statici).

Quello a cui devi fare attenzione è invece la parte Android ed il controller Ethernet utilizzato. Se utilizzi ENC28J60 dovrai utilizzare lo stack IP in software, non è un grosso problema, ma utilizzerai più RAM e di conseguenza potrebbero starci stretti protocolli ASCII per la comunicazione Arduino-Android.
Se scegli questa soluzione, posso consigliarti il porting di uIP per AVR (non ho il link sotto mano) che ho utilizzato con buoni risultati.

Se usi W5100 con stack IP in hardware, avrai più RAM a disposizione e potresti pensare anche all'uso di protocolli ASCII (come HTTP/JSON) per la comunicazione Arduino-Android.

Io ad esempio, visto che utilizzo entrambi le tipologie, taglio la testa al toro utilizzando un protocollo binario.

Saluti,
Dario.
185  International / Megatopic / Re: Souliss, Domotica e IoT on: December 26, 2012, 10:00:59 am
Buongiorno e Buone Feste Forum,

dopo qualche mese di sviluppo è stata rilasciata la nuova versione (A4) di Souliss, con molte novità ed una struttura di base rinnovata e pensata per i prossimi sviluppi.

Ormai è passato più di un anno dalla prima versione di Souliss e le linee guida dello sviluppo sono parzialmente cambiate, pur rimanendo all'interno dell'idea originale.

Il passo in avanti più significativo è nell'adozione di protocolli binari per tutte le funzionalità, lasciando i protocolli ASCII ad un ruolo secondario. Fino alla versione precedente la comunicazione utilizzava un protocollo binario solo se intercorreva tra schede, non verso le interfacce utente, ora invece anche l'interfaccia Android usa MaCaco su vNet e per tutte le altre c'è Modbus in versione RTU e TCP.

Il perché di questa scelta ha dietro due aspetti, il primo era nella gestione di protocolli ASCII e contemporaneamente dello stack IP in software, pur funzionando il numero di iterazioni per processare i dati era eccessivo e le prestazioni di conseguenza non erano all'altezza, cosa che non accadeva usando lo stack IP in hardware.
L'utilizzo di protocolli binari permette di gestire tutte le informazioni senza frammentazione su diversi pacchetti, con il risultato di un'interazione immediata. Ottenendo anche una riduzione dell'uso di RAM, dovuta anche ad una nuova gestione dei buffer dati.

Ora l'interazione è immediata e ad un comando si ottiene in risposta lo stato in pochi istanti, anche se le informazioni devono passare tra più nodi, questo indipendentemente dal controller utilizzato (W5100, ENC28J60).

Un ulteriore vantaggio è nella iterazione basata su eventi, quindi lo smartphone non effettua più delle richieste periodiche a scadenze brevi, ma viene aggiornato direttamente dalla scheda solo se c'è variazione dei dati. Questo ha un impatto positivo in termini di batteria e carico.

Fino a qui, non si è fatto altro che dare vita ad idee nate da subito, ma implementate in modo graduale.

Una novità è invece nell'uso di Modbus ed in futuro di altri protocolli binari. Che Modbus non sia una novità in senso assoluto è noto, ma è un protocollo che all'inizio era stato scartato perché nato per l'automazione industriale e di conseguenza non sempre presente nelle interfacce per la domotica, sopratutto in quelle moderne.

Cosa è cambiato? Per la domotica ad oggi non esistono protocolli "liberi" e Modbus sta iniziando ad essere supportato da diversi progetti di domotica come openHAB o Freedomotic, inoltre le interfacce SCADA basate su Modbus sono tantissime.

Da oggi le schede possono essere viste come degli slave Modbus, resta sempre il concetto di aggregatore, si accede dunque ad un nodo per raccogliere i dati di tutte le schede. In pratica Modbus è un protocollo di front-end e sostituisce HTTP/JSON (che non è stato dismesso).

L'utilizzo di Modbus ha portato al supporto da parte di IntegraXor, uno SCADA basato su web e grafica sviluppata in Inkscape (SVG), quindi è possibile creare il proprio disegno di interfaccia e gestirlo come pagina web da cellullare o computer, andando ad interagire direttamente con i propri Arduino che montano Souliss.
Per ora non abbiamo ancora rilasciato un'interfaccia basata su Inkscape, ma chiunque può disegnarsi la propria.

Altre modifiche minori sono presenti, come la gestione IR e Climatizzatore; siamo passati alla IDE1 e l'applicazione Android è disponibile anche direttamente dal market Play Store.

Questo anno di lavoro credo abbia portato ad un progetto ben strutturato, con ancora margini di sviluppo, su cui è arrivato il momento di tirare le somme.
Sicuramente per l'inizio dell'anno ridurremmo il tempo speso nello sviluppo per dedicarci alla diffusione e l'uso di Souliss, provando a capire quanto sia effettivamente considerato valido. Inoltre cercheremo di impegnarci sugli aspetti di documentazione, ad oggi parziali e non sempre aggiornati.

L'appello è dunque a chi sia interessato agli argomenti della domotica ed Internet of Things, perché possa contribuire, si può partire dal semplice uso (commento e consigliando), passando per la pubblicizzazione fino ad arrivare allo sviluppo. Giusto per dare un'idea, riporto alcune attività in programma:
- Integrazione via Modbus in sistemi di domotica per l'IoT come openHAB e di supervisione come Freedomotic;
- Realizzazione di un'interfaccia grafica in Inkscape;
- Introduzione di soluzioni in broadcasting;
- Introduzione di soluzioni per l'autoconfigurazione.

Lato hardware ci stiamo muovendo su diversi fronti, il più probabile sarà quello di utilizzare l'hardware di Olimex, che attualmente offre dei blocchi funzionali da comporre per realizzare soluzioni wireless e wired.

Il prossimo anno sarà decisivo per il progretto, perché dall'uso che si determinerà andrà a dipendere come verrà supportato in futuro, se continuerà ad essere un progetto aperto o se si rinchiuderà nelle esigenze specifiche di pochi.

Buone feste.

Saluti,
Dario.
186  Topics / Home Automation and Networked Objects / Re: Souliss, Home Automation and IoT on: December 26, 2012, 07:20:42 am
Hi Forum,

is from long time back that I don't include there updates about the Souliss project. We spent more than four months in rebuilding some features to get a better user interaction and now we are ready with the new release A4.

The biggest change is in the communication side, now the whole project is based on binary protocols, up to release A3 only the communication between the board was in binary rather the communication to user interface was based on ASCII protocol (HTTP/JSON).
It was working but when we included support for software IP stack (used in case of ENC28J60 controller) there were a slow down of the performances and too many use of RAM, so we moved to a binary protocol that for the Android interface is Macaco over vNet like for the boards.
Of course MaCaco is not a standard, so we looked into binary protocols available without license fee and we decided to include Modbus RTU and TCP.

Now the performances are really increased and there is a better use of RAM, where some efficiency was get modifying the buffer handling and introducing the oFrame data structure.
There is also a one more, the IP part is moved from TCP to UDP in order to support broadcasting (not yet released).

If we look to these modification in terms of user benefit, we have that now Android does no longer poll Souliss boards for data, because MaCaco is event based; there is more RAM available on the application side (for the boards). Then Modbus is a new starting point, because is supported by many interfaces and let build an own in a simple way.

On the Modbus side, we get the support from IntegraXor that is offering it's SVG SCADA User Interface for Souliss, so now people can drawn their own interface in Inkscape and then control over it their home.

This release is a new starting point for the project.

As usual, more information on our website and now also on twitter @soulissteam.

Please consider to contribute to the project, there are many ways: use Souliss and report improvement and bugs, be a Souliss evangelist, write documentation or tutorial or examples, write code or improve actual features.

Regards,
Dario.
187  Topics / Home Automation and Networked Objects / Re: Home automation WiFi Controlled en Monitored with smartphone on: December 26, 2012, 07:06:33 am
Yes there are many, I'm working on one of these project called Souliss. You can find more on the link in the signature.

Regards,
Dario.
188  International / Hardware / Re: Domotica, dati e lista della spesa on: December 18, 2012, 05:40:30 pm
Ciao a tutti. Sono nuovo del forum e sto cercando di capire se è fattibile (ho competenze elettroniche e informatiche) progettare un impianto domotico per la mia futura casa (comincerò a costruirla a febbraio in prefabbricato di legno). Mi piacerebbe sapere se esistono progetti più o meno definiti in rete, anche a pagamento, sui componenti da acquistare, programmi in parte già scritti e interfacce già pensate, giusto per non partire da zero. Ovviamente metto in conto che tutto questo sia anche a pagamento, ma mi costerebbe sicuramente meno di un impianto domotico tradizionale!

Ciao,

in rete abbonda di progetti in stati più o meno avanzati, con caratteristiche più o meno diverse, dipende da cosa vuoi realizzare e come deve essere scalato.

Come riferimento posso citare alcuni progetti che conosco e reputo interessanti, parto dai sistemi di supervisione/server, posso o meno essere obbligatori in base all'architettura e le soluzioni scelte: openHAB, Freedomotic, openRemote e svariati altri basati sui protocolli più disparati.

Lato Arduino, alcuni dei progetti citati hanno degli sketch dedicati, oppure si possono usare dei progetti a se stanti che eventualmente possono essere integrati con progetti di supervisione. Nel forum ne trovi diversi, in stati di avanzamento diversi, uno che sicuramente è degno di nota è panStamp perché completo di hardware e software ma con la pecca di basarsi su un server per collettare i dati verso un'interfaccia utente. Io lavoro ad un progetto presentato in passato anche su questo forum, Souliss.

In rete c'è molto di più di quanto ho riportato in questo post, molto poi dipende da cosa e come si vuol realizzare.

Saluti,
Dario.

189  International / Hardware / Re: Domotica, dati e lista della spesa on: December 18, 2012, 05:28:55 pm
Credo che le criticità siano quelle di interfacciarmi con i vari dispositivi(es. per la gestione del riscaldamento freddo caldo) e la gestione remota. A questo proposito, ma Arduino gestisce qualche DB sequenziale? Es. SQLite o solo file? Perchè per effettuare alcune statistiche sarebbe comodo che Arduino mi garantisse almeno una storia di 5 giorni con acquisizioni di 30min.
Per il webserver ho visto un video interessante su un TinyWebServer. Che ne pensate? Arduino DUE è in grado di creare grafici con le librerie jQuery di Google? Infine, tutti leggono i dati via ethernet tramite JSON ma questo è buono se hai pochi dati. Io invece vorrei fare un parsing di file XML, è possibile? Arduino li genera, io li scarico sul dispositivo remoto, li leggo e li cancello da Arduino.

Ciao,

le risposte ai tuoi dubbi non sono univoche, perché molto dipende dall'architettura e dalla scalabilità di cui necessiti. In linea generale, le schede (una o più) sparse per la casa vanno considerati per quello che sono, dispositivi embeeded con capacità di elaborazione e calcolo limitati.

Il limite principale con cui si rischia di scontrarsi è quello della quantità di dati gestibili dai dispositivi. Prendiamo ad esempio il Wiznet W5100, che gestisce in hardware la comunicazione TCP/UP disponendo di circa 4 kByte di area dati per socket (condivisa per trasmissione e ricezione), dovendo i gestire la comunicazione per una pagina web e per una struttura dati XML, il rischio di dover frammentare le informazioni (va fatto lato software, in hardware non viene gestito) diventa elevato.
Una elevata frammentazione dei dati che vuoi trasmettere può risultare in tempi di risposta lunghi, rendendo il risultato meno entusiasmante, se pur funzionante.

Il discorso assume maggiore peso se si sceglie un architettura con più nodi, nel quale per economia ed ingombri si ricade sui classici microcontrollori ad 8 bit, dove nel caso del ATMega328 usato dalla maggior parte delle schede Arduino (e compatibili) si scende a 2kByte di RAM complessivi.

Un'altra domanda da porsi è fino a che punto le tecnologie utilizzate nell'informatica siano adatte alla domotica o altri casi in cui si vuole lavorare con dispositivi embedded.
Consideriamo il caso di un'interfaccia web gestita direttamente lato scheda, fatta bene, quindi usando AJAX per ottenere la parte dinamica (stato dei dispositivi da controllare nella casa), lo scenario che si presenta vedrà il web-browser interrogare la scheda periodicamente (consideriamo ogni 500 ms) per ottenere lo stato di una luce che nell'arco della giornata verrà accesa mediamente 4 o 5 volte.
Funzionerebbe, ma la scheda resterebbe impegnata a trasmettere inutilmente dati.

In linea generale, quello che hai proposto può essere realizzabile e funzionerebbe, magari con qualche limite. Ma se si vuole pensare ad usare le tecnologie giuste per il caso in esame, conviene utilizzare protocolli di comunicazione binari, basati su eventi.
In pratica, si trasmette solo quando serve (concetto simile al pushing di un server mail verso un'applicazione mobile) includendo dei polling periodi a bassa frequenza.
L'uso di protocolli binari riduce il carico di trasmissione e rende il sistema reattivo.

Per l'interfaccia grafica, al posto di metterla a bordo scheda, conviene spostarla in un'applicazione dedicata in grado di fare il parsing del protocollo di comunicazione.

In rete c'è tanto materiale da cui prendere spunto, se ti interessa ne parliamo.

In bocca al lupo.

Saluti,
Dario.


190  Topics / Home Automation and Networked Objects / Re: Zigbee and arduino communications on: December 12, 2012, 05:34:20 pm
Forget it.
It was a bit on ebay. FInal Price was 250 $. (It is cheaper than original).

I think the best way for doing my project will be using x10.
Or do you know a way how to control the electric outlets using ZigBee?

If you like soldering, you can use wireless boards and relays (mechanics or solid state) to control you electric appliance. We have done somenthing like this using Chibiduino boards, that has a radio in 2.4 GHz like ZigBee, but running over it a simpler stack.

Regards,
Dario.
191  Using Arduino / Networking, Protocols, and Devices / Re: Modbus ASCII Implementation on: December 12, 2012, 05:26:43 pm
Hi,

Modbus ASCII is not often used like RTU or TCP version of Modbus, you can found on the Modbus website the specs to build your own Modbus or migrate an RTU build in ASCII.

My question is why you need ASCII rather than RTU or TCP? The ASCII protocols require more RAM and execution time, so for a small uC like an ATmega a binary Modbus RTU or TCP will perform better.

There are several SCADA that allows you to control a Modbus Slave device, one that I like is IntegraXor. It should be not so hard find a Modbus RTU or TCP Master for you PC.

Regards,
Dario.

192  International / Generale / Re: Collegare diversi arduini con wi fi shield a un singolo pc on: December 12, 2012, 03:32:40 am
Ottimo, se ho tempo guardo il firmware e vedo se hanno risolto i problemi del precedente. Mi sembra strano però che non abbiano fatto un annuncio un pò più visibile al riguardo.

Saluti,
Dario.
193  International / Generale / Re: Collegare diversi arduini con wi fi shield a un singolo pc on: December 11, 2012, 11:23:00 am
Guardando velocemente non trovo nulla di documentato sul cambio di firmware, almeno non nella pagina del prodotto.
194  International / Generale / Re: Collegare diversi arduini con wi fi shield a un singolo pc on: December 11, 2012, 09:51:49 am
Non puoi farlo con la shield WiFi ufficiale, perché funziona solo in DHCP e non supporta il broadcast, quindi non saprai mai gli indirizzi delle schede a cui il tuo PC dovrà collegarsi. Questo a meno che non abbiano rilasciato un firmware aggiornato.

Puoi farlo utilizzando i moduli WiFi non ufficiali, di cui però, non tutti supportano TCP/IP in hardware. Quindi va valutata la RAM necessaria.

Saluti,
Dario.
195  Topics / Home Automation and Networked Objects / Re: i want to control the lights in my house on: December 11, 2012, 09:47:03 am
You may use wireless (not Wifi) boards mixed with Ethernet one to have a distributed network, this will allow you to cover different areas of your home.

Regards,
Dario.
Pages: 1 ... 11 12 [13] 14 15 ... 24