Contatore di accessi con Arduino

Il corso di Arduino organizzato dal GULLi è stato un successo. La soddisfazione sui risultati ottenuti ci fa pensare ad un seguito. Ecco quindi la proposta di un piccolo progetto basato su Arduino, dove ognuno può contribuire in base alle proprie possibilità.

L’idea è nata su una considerazione maturata dopo gli ultimi Linux Day. Ogni anno riteniamo di avere un numero maggiore di visitatori, ma non abbiamo mai potuto contarli. Abbiamo quindi pensato ad una soluzione tecnologica: un CONTATORE DI ACCESSI.

Una volta realizzato vorremmo installare il dispositivo vicino alla porta di  ingresso del prossimo Linux Day. Un Arduino dovrà contare le persone che entrano e quelle che escono. Il conteggio dei presenti, del più alto numero di visitatori ed altro verrà mostrato su un monitor nella sala e pubblicato on-line.

Per il conteggio pensavamo di utilizzare dei pinger ad ultrasuoni del tipo HC-SR04, già visti in azione in un Linux Day passato insieme a Daniele, che in pratica ritornano la distanza dell’ ostacolo che ha davanti, come un piccolo radar. Il passaggio di un visitatore farà diminuire la distanza per un certo periodo di campioni. Nel nostro caso non saremo interessati al valore di distanza, ma al cambiamento di tale valore generato dal passaggio di una persona davanti ai sensori. Per semplificare la presentazione del concetto, i segnali di uscita della figura seguente indicano quando la distanza misurata con Arduino ed il software che verrà sviluppato hanno rilevato una variazione.

La sequenza di cambiamenti fra due sensori posti nel verso di ingresso uscita dará la direzione del movimento.

Arduino Contatore Presenze - Sequenza segnali

Una persona che attraverserà la soglia di ingresso  farà generare un segnale su uno dei due sensori (#1 OR #2). Se il segnale successivo sarà sul sensore #2, vorrà dire che la persona sta entrando. Se il segnale successivo sarà sul sensore #1, vorrà dire che la persona sta uscendo.

I conteggi verranno quindi inviati ad un PC per la visualizzazione e l’invio alla pagina web.

Chi fosse interessato a seguire il progetto può inviare una mail ad “infoATlinux.livorno.it”.

Il software libero parla italiano

Oppure in altre parole:

  • Voglio che il mio programma preferito parli italiano come lo parlo io
  • GNU/Linux in italiano
  • Linux parla italiano (e tutte le lingue del mondo)
  • Insegniamo l’italiano al software libero

almeno è quello che il Gruppo Utenti Linux di Livorno vuole supportare con una serie di attività ed incontri. La traduzione dei programmi che troviamo nelle nostre distribuzioni preferite sono frutto non solo delle capacità linguistiche di più contributori, ma anche dei processi organizzativi che includono la revisione dei lavori, la corretta formattazione ed infine l’inserimento del lavoro nelle distribuzioni finali.

Ci sono inoltre le documentazioni e le notizie, spesso in lingua inglese. La loro traduzione in italiano è un l’elemento basilare per aumentare la diffusione del Software Libero nel nostro paese.

I processi per tradurre i software sono vari, spesso differenti. Il GULLi ne sta selezionando alcuni che verranno discussi e supportati nelle prossime attività. Presenteremo gli strumenti che supportano i traduttori nel loro lavoro, dove trovarli (gratuitamente e legalmente, ovvio) e come usarli.

Ovviamente speriamo di trovare dei volontari interessati a questo argomento. Questa volta non ci rivolgiamo solo a persone interessate all’informatica, ma anche a persone interessate agli aspetti linguistici con conoscenza dell’inglese. Per questo vi invitiamo a diffondere l’iniziativa a persone che potrebbero essere interessate.

Riteniamo che l’attività di traduzione del software libero sia un ottimo esercizio per chi studia o per chi si approccia ad una attività in cui l’inglese, o comunque una lingua straniera, è un elemento chiave. La menzione dei risultati sarebbe un elemento sicuramente interessante per il proprio curriculum.

Chiunque, incluse scuole, istituti ed insegnanti, possono contattarci qui.

 

Tradurre il Software Libero: NOOBS in italiano

Per chi non lo conoscesse, NOOBS è il primo applicativo che incontriamo quando iniziamo ad usare il Raspberry PI, il famoso piccolo computer a basso costo. NOOBS (New Out Of the Box Software) permette di scegliere ed installare sul Raspberry uno dei sistemi operativi elencati. Viene eseguito automaticamente alla prima accensione, ma può essere richiamato manualmente tenendo premuto il tasto Maiusc durante l’avvio, pronto a permetterci una nuova installazione.

NOOBS è naturalmente software libero e possiamo trovare i sorgenti su https://github.com/raspberrypi/noobs. Quando abbiamo scaricato i sorgenti abbiamo notato che l’interfaccia utente era disponibile in diverse lingue ma non in italiano. Abbiamo quindi deciso di fare noi la traduzione partendo dalla lingua inglese. Vediamo i passi che sono stati seguiti.

I sorgenti di NOOBS ed il file della lingua

I sorgenti di NOOBS sono mantenuti su un server ‘git’. Possiamo installare il client per git e trasferire i sorgenti sulla nostra macchina con questi comandi:

cd
sudo apt-get install git
git clone https://github.com/raspberrypi/noobs

Il modulo di NOOBS che ci interessa tradurre si chiama ‘recovery’ e si trova nella sottocartella ‘noobs/recovery’. Nella cartella troviamo appunto diversi file ‘.ts’ uno per ogni lingua supportata. I file .ts sono file che vengono gestiti dal framework di sviluppo multipiattaforma QT.

Il file nella nostra lingua non esiste e per crearlo abbiamo bisogno di un pacchetto di programmi che scarichiamo con:

sudo apt-get install qt4-linguist-tools

Per prima cosa dobbiamo modificare il file ‘recovery/recovery.pro’ ed aggiungere la riga “translation_it.ts” alla sezione TRANSLATIONS. Il file dovrebbe apparire cosi:

TRANSLATIONS += translation_nl.ts \
 translation_de.ts \
 translation_pt.ts \
 translation_ja.ts \
 translation_fr.ts \
 translation_hu.ts \
 translation_fi.ts \
 translation_it.ts

Quindi possiamo dare il comando

lupdate recovery/recovery.pro

e trovare il file translation_it.ts nella cartella ‘recovery’.

Tradurre il testo

Il file .ts è un file in formato XML e potrebbe essere editato con un qualsiasi editor di testo. Altrimenti possiamo usare “Virtaal“, un programma che ci propone tutte le stringhe da tradurre e ci guida verso una completa traduzione (singolari, plurali, etc…).

virtaal recovery/translation_it.ts

Creare una nuova versione di NOOBS

Per integrare la nuova traduzione è necessario compilare NOOBS. La prima compilazione può richiedere molto tempo. Assicuratevi di avere una connessione di rete stabile perché il processo scaricherà eventuali componenti mancanti.

sudo apt-get install build-essential rsync texinfo libncurses-dev whois unzip
./BUILDME.sh

A questo punto possiamo copiare il contenuto della cartella ‘output’ sulla SD card che inseriremo nel nostro Raspberry PI.

Versione di NOOBS già tradotta in italiano

Se volete solo installare la versione di NOOBS in italiano, potete scaricarla da qui.

Acknowledgments:

Daniele Forsi e Simone Caciagli con il loro “Talk About: Software in italiano” al GULLI-lab il 10 settembre 2015. La copia delle slide presentate è disponibile qui (CC-BY).