SlideShare uma empresa Scribd logo
1 de 10
Open hardware e Arduino
 Linux Day 2011
 Ing. Marco Cenerelli
 Nalug
Che cosa è l'hardware open source? 1/3
Hardware libero si riferisce ad hardware elettronici e di computer che
sono stati progettati con la stessa politica del software libero ed open
source (FOSS). L'hardware libero è parte della cultura dell'open source,
che espande quest’ideologia al di fuori dell’ambito del software.
Il termine viene principalmente usato per esprimere la libera divulgazione
di informazioni riguardanti il progetto stesso dell'hardware, comprendente
gli schemi, la lista dei materiali, il layout dei dati del circuito stampato,
solitamente insieme al FOSS per far girare l'hardware.
Wikipedia
Che cosa è l'hardware open source? 2/3
Openmoko
Piattaforma aperta per lo
sviluppo di uno smartphone
Che cosa è l'hardware open source? 3/3
Arduino
Piattaforma di prototipazione
rapida e l'apprendimento
veloce dei principi
fondamentali dell'elettronica
e della programmazione
in ambiente “embedded”
I microcontrollori: cosa sono e cosa possono fare 1/3
Il microcontrollore è un dispositivo elettronico di elaborazione integrato su
un solo chip, che permette di eseguire un programma ed interagire con
l'esterno attraverso delle “porte”, i pin.
Un microcontrollore si distingue da un microprocessore di pari potenza di
calcolo, perchè questo ha bisogno di risorse esterne per poter dialogare
con il mondo esterno.
Ad esempio, un microcontrollore possiede dei pin di ingresso/uscita
general purpose (General Purpose Input/Output), ha una memoria RAM
interna ed una memoria ROM per memorizzare il programma, ha
l'elettronica necessaria per utilizzare i protocolli I2C, SPI, UART, USB,
ETHERNET etc.
Al contrario, un microprocessore ha bisogno di hardware esterno per
poter realizzare queste funzioni, tipicamente connesso su di un bus.
I microcontrollori: cosa sono e cosa possono fare 2/3
Più in generale, i microprocessori tendono ad essere delle macchine
general purpose, i microcontrollori sono delle macchine specializzate per
un compito, mediante un programma fisso che è detto firmware.
Queste differenze oggi sono sempre più labili, esistono microcontrollori
molto potenti che possono utilizzare RAM esterna e memorizzare il loro
programma su di un supporto esterno.
Il concetto chiave è quello di poter specializzare una macchina per un
determinato compito.
Al limite, anche un microprocessore può essere utilizzato per realizzare
un sistema “embedded”.
Esempio: 486 embedded, AMD geode, etc.
I microcontrollori: cosa sono e cosa possono fare 3/3
Esistono infinite famiglie di microcontrollori, a 8, 16, 32 e anche 64
bit (DSP)
 M16C, R8C, R32C Renesas
 PIC, dsPIC Microchip
 AVR Atmel (Arduino si basa su questo)
 ARM7
 Cortex M0, M3, M4
 Intel 8051
 PowerPC
 M68000
Progetto di esempio: Loopback seriale
Specifiche:
Progettare un dispositivo da collegare ad una seriale RS232 (UART),
che effettui l'eco dei caratteri ricevuti.
Soluzione:
Si utilizza la libreria di Arduino per simulare una UART tramite il
connettore USB.
Hardware richiesto:
Nessuno
Progetto di esempio: Sensore di luminosità 1/2
Specifiche:
Progettare un dispositivo da collegare ad una seriale RS232 (UART),
che effettui una misurazione della luminosità ambientale ad intervalli di
10 secondi, inviando il dato in formato comprensibile via seriale.
Soluzione:
Si utilizza il sensore di luminosità TAOS TSL230R
Hardware richiesto:
TAOS TSL230R, fast prototyping breadboard, cavi
Progetto di esempio: Sensore di luminosità 2/2
Conversione da frequenza a luminosità:
l [uW/cm^2] = f [Hz] / (7,7 * sensibilità)
sensibilità = 1 => l = f / 7,7
sensibilità = 10 => l = f / 77
sensibilità = 100 => l = f / 770
Le divisioni si approssimano come:
sensibilità = 1 => l = (f * 133) / 1024
sensibilità = 10 => l = (f * 213) / 16384
sensibilità = 100 => l = (f * 85) / 65536

Mais conteúdo relacionado

Semelhante a OpenHardware : Arduino

Webinar porting e ottimizzazione per x86
Webinar   porting e ottimizzazione per x86Webinar   porting e ottimizzazione per x86
Webinar porting e ottimizzazione per x86Massimiliano Torregiani
 
Makers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry pi
Makers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry piMakers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry pi
Makers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry piRoberto Navoni
 
Concetti base di informatica
Concetti base di informaticaConcetti base di informatica
Concetti base di informaticaGianni Locatelli
 
Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...
Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...
Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...Roberto Navoni
 
Progettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computerProgettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computerAlessandro Mascherin
 
concetti base della tecnologia delle informazioni
concetti base della tecnologia delle informazioniconcetti base della tecnologia delle informazioni
concetti base della tecnologia delle informazioniPaolo Basilio
 
HEALTHCARE-FISIRAD-Informatica di Base
HEALTHCARE-FISIRAD-Informatica di BaseHEALTHCARE-FISIRAD-Informatica di Base
HEALTHCARE-FISIRAD-Informatica di BaseLeonardo Pergolini
 
Introduzione ad Arduino
Introduzione ad ArduinoIntroduzione ad Arduino
Introduzione ad ArduinoSimone Lusenti
 
LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...
LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...
LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...Maurizio Antonelli
 
ecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazione
ecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazioneecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazione
ecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazioneMatekanc
 
Free software & Open Source (FLOSS)
Free software & Open Source (FLOSS)Free software & Open Source (FLOSS)
Free software & Open Source (FLOSS)Piergiorgio Borgogno
 
Arduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincenteArduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincenteMirco Sbrollini
 
Data hiding - metodologie e strumenti open source
Data hiding - metodologie e strumenti open sourceData hiding - metodologie e strumenti open source
Data hiding - metodologie e strumenti open sourceMarco Ferrigno
 

Semelhante a OpenHardware : Arduino (20)

Webinar porting e ottimizzazione per x86
Webinar   porting e ottimizzazione per x86Webinar   porting e ottimizzazione per x86
Webinar porting e ottimizzazione per x86
 
Il personal computer
Il personal computerIl personal computer
Il personal computer
 
Makers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry pi
Makers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry piMakers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry pi
Makers Italy: VR Neuron la risposta italiana alla piattaforma Raspberry pi
 
Concetti base di informatica
Concetti base di informaticaConcetti base di informatica
Concetti base di informatica
 
Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...
Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...
Makers Italy: Virtual robotix e le piattaforme di prototipazione rapida vr br...
 
Ti 2021 22_new
Ti 2021 22_newTi 2021 22_new
Ti 2021 22_new
 
Progettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computerProgettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computer
 
concetti base della tecnologia delle informazioni
concetti base della tecnologia delle informazioniconcetti base della tecnologia delle informazioni
concetti base della tecnologia delle informazioni
 
HEALTHCARE-FISIRAD-Informatica di Base
HEALTHCARE-FISIRAD-Informatica di BaseHEALTHCARE-FISIRAD-Informatica di Base
HEALTHCARE-FISIRAD-Informatica di Base
 
Introduzione ad Arduino
Introduzione ad ArduinoIntroduzione ad Arduino
Introduzione ad Arduino
 
LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...
LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...
LinuxDay 2005 - Linux e FS - Storia e caratteristiche vincenti - versione rid...
 
Slide trentin
Slide trentinSlide trentin
Slide trentin
 
ecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazione
ecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazioneecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazione
ecdl-modulo-1-concetti-di-base-della-tecnologia-dell informazione
 
Ubuntu Linux
Ubuntu LinuxUbuntu Linux
Ubuntu Linux
 
Ubuntu Linux - Corso Base
Ubuntu Linux - Corso BaseUbuntu Linux - Corso Base
Ubuntu Linux - Corso Base
 
Modulo 1 ECDL
Modulo 1 ECDLModulo 1 ECDL
Modulo 1 ECDL
 
01 intro pc
01 intro pc01 intro pc
01 intro pc
 
Free software & Open Source (FLOSS)
Free software & Open Source (FLOSS)Free software & Open Source (FLOSS)
Free software & Open Source (FLOSS)
 
Arduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincenteArduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincente
 
Data hiding - metodologie e strumenti open source
Data hiding - metodologie e strumenti open sourceData hiding - metodologie e strumenti open source
Data hiding - metodologie e strumenti open source
 

Mais de NaLUG

Grid System
Grid SystemGrid System
Grid SystemNaLUG
 
Cyber Forensic
Cyber ForensicCyber Forensic
Cyber ForensicNaLUG
 
Digital Divide
Digital DivideDigital Divide
Digital DivideNaLUG
 
Drupal
DrupalDrupal
DrupalNaLUG
 
Digital Forensic
Digital ForensicDigital Forensic
Digital ForensicNaLUG
 
Open Source: strumento per l'e-democracy
Open Source: strumento per l'e-democracyOpen Source: strumento per l'e-democracy
Open Source: strumento per l'e-democracyNaLUG
 
Understanding Linux
Understanding LinuxUnderstanding Linux
Understanding LinuxNaLUG
 
Net Neutrality: HoBBIT
Net Neutrality: HoBBITNet Neutrality: HoBBIT
Net Neutrality: HoBBITNaLUG
 
Opensource per un Sistema Informativo Territoriale
Opensource per un Sistema Informativo TerritorialeOpensource per un Sistema Informativo Territoriale
Opensource per un Sistema Informativo TerritorialeNaLUG
 
Knomos
Knomos Knomos
Knomos NaLUG
 
App comunicazione comune di Napoli
App comunicazione comune di NapoliApp comunicazione comune di Napoli
App comunicazione comune di NapoliNaLUG
 
BISmark : the broadband internet service benchmark
BISmark : the broadband internet service benchmarkBISmark : the broadband internet service benchmark
BISmark : the broadband internet service benchmarkNaLUG
 
ClearOS
ClearOSClearOS
ClearOSNaLUG
 
Security and hacking Engineering
Security and hacking EngineeringSecurity and hacking Engineering
Security and hacking EngineeringNaLUG
 
Software libero at ENEA
Software libero at ENEASoftware libero at ENEA
Software libero at ENEANaLUG
 
Una nuova crittografia frattale: Crypt fna
Una nuova crittografia frattale: Crypt fnaUna nuova crittografia frattale: Crypt fna
Una nuova crittografia frattale: Crypt fnaNaLUG
 
ROS@Unina
ROS@Unina   ROS@Unina
ROS@Unina NaLUG
 
Python@Unina - Exercises
Python@Unina - ExercisesPython@Unina - Exercises
Python@Unina - ExercisesNaLUG
 
Python@Unina - Theory
Python@Unina - TheoryPython@Unina - Theory
Python@Unina - TheoryNaLUG
 
Linux@Unina
Linux@UninaLinux@Unina
Linux@UninaNaLUG
 

Mais de NaLUG (20)

Grid System
Grid SystemGrid System
Grid System
 
Cyber Forensic
Cyber ForensicCyber Forensic
Cyber Forensic
 
Digital Divide
Digital DivideDigital Divide
Digital Divide
 
Drupal
DrupalDrupal
Drupal
 
Digital Forensic
Digital ForensicDigital Forensic
Digital Forensic
 
Open Source: strumento per l'e-democracy
Open Source: strumento per l'e-democracyOpen Source: strumento per l'e-democracy
Open Source: strumento per l'e-democracy
 
Understanding Linux
Understanding LinuxUnderstanding Linux
Understanding Linux
 
Net Neutrality: HoBBIT
Net Neutrality: HoBBITNet Neutrality: HoBBIT
Net Neutrality: HoBBIT
 
Opensource per un Sistema Informativo Territoriale
Opensource per un Sistema Informativo TerritorialeOpensource per un Sistema Informativo Territoriale
Opensource per un Sistema Informativo Territoriale
 
Knomos
Knomos Knomos
Knomos
 
App comunicazione comune di Napoli
App comunicazione comune di NapoliApp comunicazione comune di Napoli
App comunicazione comune di Napoli
 
BISmark : the broadband internet service benchmark
BISmark : the broadband internet service benchmarkBISmark : the broadband internet service benchmark
BISmark : the broadband internet service benchmark
 
ClearOS
ClearOSClearOS
ClearOS
 
Security and hacking Engineering
Security and hacking EngineeringSecurity and hacking Engineering
Security and hacking Engineering
 
Software libero at ENEA
Software libero at ENEASoftware libero at ENEA
Software libero at ENEA
 
Una nuova crittografia frattale: Crypt fna
Una nuova crittografia frattale: Crypt fnaUna nuova crittografia frattale: Crypt fna
Una nuova crittografia frattale: Crypt fna
 
ROS@Unina
ROS@Unina   ROS@Unina
ROS@Unina
 
Python@Unina - Exercises
Python@Unina - ExercisesPython@Unina - Exercises
Python@Unina - Exercises
 
Python@Unina - Theory
Python@Unina - TheoryPython@Unina - Theory
Python@Unina - Theory
 
Linux@Unina
Linux@UninaLinux@Unina
Linux@Unina
 

OpenHardware : Arduino

  • 1. Open hardware e Arduino  Linux Day 2011  Ing. Marco Cenerelli  Nalug
  • 2. Che cosa è l'hardware open source? 1/3 Hardware libero si riferisce ad hardware elettronici e di computer che sono stati progettati con la stessa politica del software libero ed open source (FOSS). L'hardware libero è parte della cultura dell'open source, che espande quest’ideologia al di fuori dell’ambito del software. Il termine viene principalmente usato per esprimere la libera divulgazione di informazioni riguardanti il progetto stesso dell'hardware, comprendente gli schemi, la lista dei materiali, il layout dei dati del circuito stampato, solitamente insieme al FOSS per far girare l'hardware. Wikipedia
  • 3. Che cosa è l'hardware open source? 2/3 Openmoko Piattaforma aperta per lo sviluppo di uno smartphone
  • 4. Che cosa è l'hardware open source? 3/3 Arduino Piattaforma di prototipazione rapida e l'apprendimento veloce dei principi fondamentali dell'elettronica e della programmazione in ambiente “embedded”
  • 5. I microcontrollori: cosa sono e cosa possono fare 1/3 Il microcontrollore è un dispositivo elettronico di elaborazione integrato su un solo chip, che permette di eseguire un programma ed interagire con l'esterno attraverso delle “porte”, i pin. Un microcontrollore si distingue da un microprocessore di pari potenza di calcolo, perchè questo ha bisogno di risorse esterne per poter dialogare con il mondo esterno. Ad esempio, un microcontrollore possiede dei pin di ingresso/uscita general purpose (General Purpose Input/Output), ha una memoria RAM interna ed una memoria ROM per memorizzare il programma, ha l'elettronica necessaria per utilizzare i protocolli I2C, SPI, UART, USB, ETHERNET etc. Al contrario, un microprocessore ha bisogno di hardware esterno per poter realizzare queste funzioni, tipicamente connesso su di un bus.
  • 6. I microcontrollori: cosa sono e cosa possono fare 2/3 Più in generale, i microprocessori tendono ad essere delle macchine general purpose, i microcontrollori sono delle macchine specializzate per un compito, mediante un programma fisso che è detto firmware. Queste differenze oggi sono sempre più labili, esistono microcontrollori molto potenti che possono utilizzare RAM esterna e memorizzare il loro programma su di un supporto esterno. Il concetto chiave è quello di poter specializzare una macchina per un determinato compito. Al limite, anche un microprocessore può essere utilizzato per realizzare un sistema “embedded”. Esempio: 486 embedded, AMD geode, etc.
  • 7. I microcontrollori: cosa sono e cosa possono fare 3/3 Esistono infinite famiglie di microcontrollori, a 8, 16, 32 e anche 64 bit (DSP)  M16C, R8C, R32C Renesas  PIC, dsPIC Microchip  AVR Atmel (Arduino si basa su questo)  ARM7  Cortex M0, M3, M4  Intel 8051  PowerPC  M68000
  • 8. Progetto di esempio: Loopback seriale Specifiche: Progettare un dispositivo da collegare ad una seriale RS232 (UART), che effettui l'eco dei caratteri ricevuti. Soluzione: Si utilizza la libreria di Arduino per simulare una UART tramite il connettore USB. Hardware richiesto: Nessuno
  • 9. Progetto di esempio: Sensore di luminosità 1/2 Specifiche: Progettare un dispositivo da collegare ad una seriale RS232 (UART), che effettui una misurazione della luminosità ambientale ad intervalli di 10 secondi, inviando il dato in formato comprensibile via seriale. Soluzione: Si utilizza il sensore di luminosità TAOS TSL230R Hardware richiesto: TAOS TSL230R, fast prototyping breadboard, cavi
  • 10. Progetto di esempio: Sensore di luminosità 2/2 Conversione da frequenza a luminosità: l [uW/cm^2] = f [Hz] / (7,7 * sensibilità) sensibilità = 1 => l = f / 7,7 sensibilità = 10 => l = f / 77 sensibilità = 100 => l = f / 770 Le divisioni si approssimano come: sensibilità = 1 => l = (f * 133) / 1024 sensibilità = 10 => l = (f * 213) / 16384 sensibilità = 100 => l = (f * 85) / 65536