Internet of Things: necessario superare le reti locali

La spina dorsale del nostro mondo interconnesso sono i sensori. Perchè gli esseri umani (per aumentare il loro livello di comfort, di sicurezza, di comprensione) non possono più prescindere dal bisogno di analizzare i fenomeni fisici e quindi costruiscono ogni giorno oggetti capaci di leggere in modo sempre più fedele il reale. Con l’avvento della microelettronica analizzare è diventato sinonimo di digitalizzare ed i sensori sono diventati molto precisi e molto economici. La diffusione dei sensori digitali è esponenziale ma attualmente è ancora limitata da due fattori non trascurabili: la necessità di alimentazione elettrica e la connettività.

Molto è stato fatto sul fronte dell’alimentazione, per slegare i sensori dalla rete elettrica e renderne più facile l’installazione: energie rinnovabili, energy harvesting, batterie sempre più performanti, ecc.. E non siamo di certo carenti in quanto a tecnologie in grado di fornire connettività. Il problema è la relazione tra questi due fattori: i dispositivi devono poter mandare informazioni il più lontano possibile col minor dispendio energetico possibile. Banale, ma non scontato: nonostante gli enormi sviluppi tecnologici in questo senso i risultati sono ancora scarsi.

Abbiamo assistito nello scorso decennio al consolidarsi di tecnologie radio a corto raggio sempre più performanti in termini di consumo energetico (Es. Bluetooth, ZigBee, ecc) ma con una portata scarsa (30 – 100 m).  Negli ultimi anni infine abbiamo visto l’evoluzione di radio a bassa potenza ma in grado di effettuare comunicazioni su distanze maggiori. Queste reti a lungo raggio LPWAN sono il futuro degli oggetti connessi alimentati a batteria.

Le 5 principali tecnologie LPWAN

  • LoRa – LoRaWAN è considerata la rete delle persone e su di essa sono stati sviluppati dei progetti che si ispirano all’idea di Open Data (https://www.thethingsnetwork.org/)
  • SigFox – Rispetto al sistema LoRa ha delle grosse limitazioni relative alla dimensione e alla frequenza del trasferimento dati. Offre però una copertura estesissima.
  • Link Labs
  • Nwave
  • Ingenu

Keep Reading

Iperammortamento 2017, un’occasione da non perdere!

Negli scorsi mesi abbiamo assistito con piacere alle iniziative del Governo per delineare un piano Industria 4.0 . Siamo partiti in leggero ritardo rispetto a Stati Uniti (Manifacturing USA) e Francia (che ha investito direttamente 10 Mld di Euro nel progetto Industrue Du Futur) ma siamo in linea con il progetto tedesco Industrie 4.0.

Tutto è migliorabile, ma per una volta l’impegno c’è stato e le opportunità legate agli  incentivi sono concrete. E’ una occasione da non perdere per chi  lavora per far interagire in modo intelligente le cose in rete perché l’incentivo fiscale è un vantaggio molto importante per i nostri clienti nella misura in cui il bene connesso diventa molto più competitivo sia in termini di funzioni offerte che dal punto di vista fiscale .

Il piano Industria 4.0 è stato spesso definito “Bonus Digitale” o “Bonus Innovazione” e mira nel medio periodo a rendere le aziende italiane più flessibili, veloci, produttive ed i loro prodotti più competitivi.

A chi è rivolto e a che cosa serve

E’ un incentivo riservato alle imprese con sede in Italia che vogliono investire in beni strumentali nuovi funzionali alla trasformazione tecnologica in ottica digitale dei processi produttivi. Inoltre sono incentivate le tecnologie utili a minimizzare i consumi energetici delle aziende.

Quale è il vantaggio

Il bene subisce una supervalutazione del 250% ai fini dell’ammortamento. Un esempio concreto: per un investimento in beni che rientrano tra quelli identificati come Industria 4.0 pari a Euro 1.000.000 si otterrà una riduzione effettiva delle tasse pagate in 5 anni circa pari ad Euro 360.000 . E il beneficio fiscale è cumulabile con altre agevolazioni.

Keep Reading

Using RaspBerry GPIO Serial port ttyAMA0

STEP 1 – Disable Console

You can use this simple tool: RpiSerialConsole (https://github.com/lurch/rpi-serial-console)

sudo wget https://raw.github.com/lurch/rpi-serial-console/master/rpi-serial-console -O /usr/bin/rpi-serial-console && sudo chmod +x /usr/bin/rpi-serial-console 

To display whether the serial console is currently enabled or not, simply run:

rpi-serial-console status

To enable the serial console, simply run:

sudo rpi-serial-console enable 

To disable the serial console, simply run:

sudo rpi-serial-console disable 

STEP 2 – Install and use Minicom

sudo apt-get install minicom

Now run up minicom on the Raspberry Pi using

sudo minicom -b 9600 -o -D /dev/ttyAMA0

STEP 3 – Test your serial port

If you can test your port connect Pin8 to Pin10 and write with your keyboard

STEP 4 – Connect your device

Connect your device to the Raspberry Pi serial port using an appropriate wiring on Pin8 (TXD) and Pin10 (RXD). Setup a connection using the serial port at 9600 baud.

Use ModBus with Raspberry Pi

The best lib for ModBus over RS485: libmodbus (Link)

Installation:

Search already-done package for raspbian

sudo apt-cache search libmodbus

Install your favorite version. Dev if you want .h file:

sudo apt-get install libmodbus-dev

or standard for end-user

sudo apt-get install libmodbus5

Code Example

  //ModBusRequest Example
  #include <modbus.h>  

  modbus_t *mb;
  uint16_t tab_reg[32];

  mb = modbus_new_tcp("127.0.0.1", 1502);
  modbus_connect(mb);

  /* Read 5 registers from the address 0 */
  modbus_read_registers(mb, 0, 5, tab_reg);

  modbus_close(mb);
  modbus_free(mb);

Call WCF Web Service from Rasberry PI (Raspbian)

Install Gsoap on Rasberry PI running Raspbian

sudo apt-get install gSoap

Check installed gSoap version (May 1,2014 version is 2.8.7)

Download the correspondent toolchain (class generator) from sourgeforce (Installed library and toolchain must have SAME VERSION!)

Open console as Administrator and go to the tools folder. For Example:

cd C:\gsoap\gsoap-2.8.7\gsoap\bin\win32

Then use toolchain to build file as follow for c++:

wsdl2h -o test.h http://yourws.net/yourWCF/Service1.svc?wsdl
soapcpp2 -I"C:\gsoap\gsoap-2.8.7\gsoap\import" test.h

Import all generated files in your project (Exclude test.h , soapClientLib.cpp and soapServerLib.cpp)

Add stdsoap2.cpp and stdsoap2.h from toolchain directory.

Include *.nsmap and *Proxy.h in header.

Code Example

#include "Soap/BasicHttpBinding_USCOREIService1.nsmap"
#include "Soap/soapBasicHttpBinding_USCOREIService1Proxy.h"

int main(int argc, char *argv[])
{

BasicHttpBinding_USCOREIService1 s;
_ns1__GetData req;
_ns1__GetDataResponse resp;

int i = 29;
req.value = &i;

int err = s.__ns1__GetData(&req,&resp);

if (SOAP_OK == err)
cout << "WCF Response: " << *resp.GetDataResult << endl;
else
cout << "Error: " << err << endl;

}

Now you can see result in your console:

WCF Response: You entered: 29

If you receive Error 415 (Bad request) you have to change SOAP operation mode (WCF use an unusual charset for SOAP 1.1).

For removing soap 1.2 namespace from the your web-service client project you should to change strings

{"SOAP-ENV", "http://www.w3.org/2003/05/soap-envelope", "http://www.w3.org/2003/05/soap-envelope", NULL},
 {"SOAP-ENC", "http://www.w3.org/2003/05/soap-encoding", "http://www.w3.org/2003/05/soap-encoding", NULL},
 {"xsi", "http://www.w3.org/2001/XMLSchema-instance", "http://www.w3.org/*/XMLSchema-instance", NULL},
 {"xsd", "http://www.w3.org/2001/XMLSchema", "http://www.w3.org/*/XMLSchema", NULL},

to

{"SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/", NULL, NULL},
 {"SOAP-ENC", "http://schemas.xmlsoap.org/soap/encoding/", NULL, NULL},
 {"xsi", "http://www.w3.org/2001/XMLSchema-instance", NULL, NULL},
 {"xsd", "http://www.w3.org/2001/XMLSchema", NULL, NULL},

in all your .nsmap file and *Proxy.cpp file.

Far lampeggiare un led con Rasberry PI

Il modo più rapido per far lampeggiare un led tramite Raspberry Pi è utilizzando il connettore e l’interfaccia GPIO.

Collegare il led (dopo averlo protetto con una deguata resistenza) al connettore (In questo esempio utilizziamo le porte 13 e 14)

Importare la libreria WiringPI (la più completa per la gestione dell’interfaccia GPIO del Raspberry PI. Leggi come importarla).

Il codice

#include <wiringPi.h>
#include "stdio.h"

int main(int argc, char *argv[])
{
    wiringPiSetup();
    const int pinNumber = 2;

    pinMode(pinNumber, OUTPUT);

    for (int i=1; i<=1000;i++)
    {
        digitalWrite(pinNumber, HIGH);
        delay(100);
        digitalWrite(pinNumber, LOW);
        delay(100);
    }
    return 0;
}

Installare WiringPI su Rasberry PI (Raspbian)

WiringPI è la libreria più completa per la gestione dell’interfaccia GPIO del Raspberry PI.
E’ distribuita tramite GIT e la via più facile per scaricare ed installare la libreria è quindi tramite git-core.

Per installare GIT accedere alla console e dare il comando:

sudo apt-get install git-core

Se si verificano degli errori verificare di avere Raspbian aggiornato. E’ possibile aggiornare il sistema operativo tramite i comandi:

sudo apt-get update
sudo apt-get upgrade

Per ottenere WiringPI tramite GIT:

git clone git://git.drogon.net/wiringPi
cd wiringPi
git pull origin

Per compilare ed installare la libreria non rimane altro che fare il build:

cd wiringPi
./build

Ora potete usare la libreria per comandare le porte del rasberry PI (Esempi di utilizzo)

Per testare la corretta installazione e vedere lo stato della GPIO

gpio -v
gpio readall

Joomla e Aruba: un rapporto difficile. Errore 404 “No input file specified”

PROBLEMA RISCONTRATO: Errore 404 o “No input file specified”

VERSIONE JOOMLA: tutte le versioni

SOLUZIONE 1:

  • Accedere al pannello di controllo di joomla
  • Portarsi nella pagina System > Global Configuration
  • Disattivare l’impostazione Search Engine Friendly URLs

SOLUZIONE 2:

Aprire il file htaccess presente nella root principale di joomla.

  • Accedere tramite FTP alla root del sito web
  • Individuare ed aprire il file  htaccess
  • Cercare la riga  “Options +FollowSymLinks” e modificarla in questo modo : ” #Options +FollowSymLinks ” ( commentare l’istrizione aggiungendo  il cancelletto all’inizio della riga)

SOLUZIONE 3:

  • Accedere al pannello di controllo Aruba (https://admin.aruba.it/)
  • Entrare nel pannello gestione Hosting Linux
  • Si aprirà un pannello con diverse sezioni, cliccare sulla voce ” Personalizzazione del file PHP.INI
  • Cercare e spuntare la voce ” cgi.fix_pathinfo ” e dare OK.

IVAR SPA ha scelto la gestione remota iKliMatic PRO

IVAR SPA  ha scelto il nostro iKlimatic PRO per gestire il riscaldamento ed il raffrescamento dei propri locali produttivi.

 

IVAR produce una completa gamma di articoli per il riscaldamento e per impianti sanitari ed è impegnata nell’individuazione di soluzioni relative alla massimizzazione del confort, al risparmio delle fonti energetiche ed alla riduzione dei costi di impianto. L’insediamento di Prevalle (Brescia), dove trovano già impiego più di centoquaranta addetti, attualmente occupa un’area di 40.000mq dove sorge un complesso di 20.000mq coperti progettati in modo da razionalizzare e unificare le diverse fasi produttive e operative. L’insediamento industriale, in sintonia con il contesto circostante, garantisce l’assenza di processi produttivi di impatto negativo sull’ambiente ed è dotato di un campo fotovoltaico capace di una potenza di 400KW e di un impianto geotermico.

La personalizzazione del sistema è ha richiesto circa 350 ore lavorative. Rispetto alla versione classica sono state aggiunte le seguenti funzionalità:

  • Gestione intelligente del pozzo geotermico
  • Gestione intelligente di pompe di calore
  • Gestione degli errori di sistema
  • Gestione di finestre e ventole sia in modalità automatica che manuale
  • Integrazione con l’anemometro ed il sensore pioggia esistenti
  • Automatizzazione del processi di lavaggio dell’aria
  • Visualizzazione, salvataggio ed elaborazione dei dati relativi al consumo energetico dell’impianto (Energia assorbita, capacitiva, induttiva ed apparente)

E’ stato inoltre indispensabile riconfigurare secondo specifica richiesta del cliente l’architettura di rete, riprogrammare i due PLC che gestivano precedentemente il sistema e personalizzare l’interfaccia grafica.

 

Il sistema iKliMatic regolando in modo efficace l’impianto  ha ridotto il consumo energetico del 15-20% mantenendo inalterata la resa.

Analisi dei consumi energetici in una settimana tipo

 

IKliMatic si è quindi dimostrato perfetto anche per la gestione remota un sistema molto complesso costituito da oltre 30 sensori e circa 100 dispositivi  input/output suddivisi in 12 zone autonome.

Architettura di rete
Interfaccia grafica: particolare relativo alla gestione di una singola zona