EduRobot – versione 2 del kit di base

Ho apportato alcune modifiche alla versione EduRobt UNO a cui ho aggiunto ruote e sostituito i supporti di equilibrio il tutto realizzato in legno. Nella prima versione i supporti erano cotituiti da due viti.
Nella pagina di riferimento potete trovare i nuovi sorgenti grafici pronti per essere tagliati a laser.
Di seguito alcune foto che mostrano come ralizzare i supporti di equilibrio in legno.

Come richiesto da alcuni utenti ho aggiunto un link diretto alla pagina di EduRobot dalla colonna destra di questo sito.

edurobt-01

edurobt-05

Fissaggio delle ruote in legno mediante le due viti in dotazione al servomotore.

I fori aggiuntivi che mostrati nella foto sono un refuso di una versione precedente non più presente nella versione definitiva che trovate nel sorgente grafico.

edurobt-02

Sono stati utilizzati due listello di legno a base quadrata con lato 1 cm e lunghezza 45 mm a cui è stato fatto un foro da 2 mm con un invito da 3 mm in modo che la vite potesse entrare e avvitarsi bloccando in modo solidale il supporto di equilibrio alla base del robot.

Per il fissaggio dei supporti di equilibrio sono state utilizzate due viti da 20 mm.

edurobt-03

edurobt-04

Articoli simili:

Pubblicato in arduino, robotica | Contrassegnato , | Lascia un commento

Risorse didattiche: Il PLC S7-1200 – il libro di Giovanni Pirraglia

il-plc-s7-1200E’ da qualche tempo che mi occupo di programmazione di PLC a livello didattico in quanto nel percorso di studi dei mie allievi è previsto l’uso di questo strumento estremamente importante in ambito aziendale. Trovare testi validi con un’impronta pratica, spendibile immediatamente in attività di laboratorio non è, a mio avviso cosa semplice. Fortunatamente la rete di conoscenze di colleghi mi ha permesso di conoscere lo scorso 15 novembre a Brescia durante il mio corso Arduino, il collega Giovanni Pirraglia, docente di Elettrotecnica ed Automazione ed esperto formatore PLC che mi ha fatto dono del suo ultimo libro: IL PLC s7-1200 Programmazione BASE e AVANZATA con TIA Portal v11/12.

Il volume tratta il PLC S7-1200 SIEMENS e il software TIA Portal v11/12. E’ sia un libro di teoria che di pratica. Gli esercizi proposti sono sviluppati e risolti. Viene trattata sia la programmazione base che avanzata con la tecnica grafcet e ladder. I blocchi OB (blocchi organizzativi), FC (funzioni), FB (blocchi funzionali) e DB (blocchi dati) sono utilizzati nei progetti sviluppati nel testo. Tra gli argomenti anche l’orologio hardware e gli ingressi e uscite analogiche.

Nel volume vengono evidenziate tutte le novità apportate da “TIA Portal v11/12″, il nuovo software di gestione di tutti i dispositivi di automazione, dove non è più necessario conoscere il software specifico per ogni PLC, ma si programma tutto attraverso un’unica piattaforma che permette anche l’interazione tra i diversi PLC, gli HMI e i sistemi di controllo.

Il dettaglio degli argomenti trattati potete trovarlo direttamente sul suo sito: www.plcs7-1200.it con molte integrazioni, tra cui filmati visualizzabili via web che rendono ancor più agevole l’apprendimento. Moltissime le risorse messe a disposizione, tutte ottime per essere usate immediatamente in classe.

Per ulteriori informazioni vi invito a contattare il collega.

Articoli simili:

Pubblicato in i miei allievi, letture, news | Contrassegnato , , , , , , | Lascia un commento

Teachers for Teachers 2014

t4t

Anche quest’anno si svolgerà l’interessantissimo workshop T4T che coinvolge molti colleghi della scuola superiore in conferenze e attività laboratoriali organizzate dal Dipartimento di Informatica dell’Università di Torino.

Dal sito:

Il Dipartimento di Informatica dell’Università di Torino propone il workshop Teachers for Teachers (T4T) per insegnanti di ogni livello e tipo di scuola.

Quest’anno il workshop è alla sua terza edizione, dopo il successo delle precedenti svoltesi nel 2012 (T4T 2012) e 2013 (T4T 2013).
Il workshop è costituito da varie unità svolte interamente in laboratorio che possono essere seguite singolarmente oppure composte, secondo le esigenze di ciascun partecipante, in un percorso di piú unità. T4T è gratuito.

Destinatari

Il workshop si rivolge ad insegnanti di ogni livello e tipo di scuola, e ha il riconoscimento e il sostegno della Direzione regionale del Ministero dell’Istruzione, dell’Università e della Ricerca. Il workshop costituisce per gli insegnanti partecipanti uno stage di aggiornamento, per il quale può essere richiesto il riconoscimento dei 5 giorni per attività di formazione di cui all’art.64 CCNL scuola 2009. Verrà rilasciato attestato di partecipazione.

Scopi del workshop T4T

Lo scopo primario dei workshop T4T è di favorire la presenza dell’Informatica come scienza nella scuola italiana, seguendo le raccomandazioni espresse nel “Manifesto per l’Informatica nella Scuola Secondaria” dell’Associazione dei ricercatori e professori di Informatica delle università italiane (GRIN Gruppo Ricercatori di Informatica Nazionale) insieme con CINI e GII (Consorzio interuniversitario per l’Informatica e Gruppo Ingegneri Informatici). Le attività proposte, basate sulle esperienze sviluppate congiuntamente negli ultimi anni dal Dipartimento di Informatica dell’Università degli Studi di Torino e da un gruppo di insegnanti attivi in varie scuole, sono finalizzate al raggiungimento di questo scopo.
In linea con la precedente questa nuova edizione si propone di coinvolgere anche insegnanti che operano in scuole secondarie che non prevedono l’informatica come disciplina curricolare.
Obiettivo finale è che gli insegnanti riescano ad integrare nei curricula di cui sono responsabili le attività svolte durante T4T e le facciano conoscere ad altri insegnanti nelle varie scuole, col supporto dei responsabili del workshop che saranno a disposizione durante l’anno scolastico attraverso un ambiente virtuale specifico e in alcuni incontri le cui modalità e date saranno decise al termine del workshop stesso.

Maggiori informazioni sul programma ed iscrizioni potete trovarle sul sito di riferimento.

Articoli simili:

Pubblicato in news | Contrassegnato , , , , , , | Lascia un commento

Borsa di studio presso: I3P – Incubatore Politecnico di Torino

i3p

Vi segnalo questa interessantissima opportunità che mi è stata comunicata oggi dall’amico e collega Fabio Carruccio.

3 posti disponibili – Grant: 3000€ per una durata di 6 mesi
Deadline 9 dicembre

Incontra l’ecosistema dell’innovazione del territorio torinese e impara a raccontarlo. Sarà un’esperienza importante per il tuo percorso di innovatore. All’I3P troverai storie esemplari di startup, persone supercompententi, un ambiente tecnologicamente molto avanzato.

I tuoi mentor ti daranno indicazioni sulle storie da cercare. E la redazione di Nòva ti indicherà come pubblicarle. Comincerai con un programma di massima, anche in relazione al tuo progetto. E poi aggiusterai il programma in base a quello che troverai, all’esperienza che farai e alle notizie di attualità.

Cosa si fa:

Durante i sei mesi del grant potrai incontrare gli innovatori del territorio, imparare da loro e descrivere quello che fanno. La possibilità di scrivere o pubblicare video su Nòva ti aprirà molte porte interessanti per chi voglia fare innovazione. Dovrai usare con molto senso di responsabilità questa opportunità. I tuoi mentor ti daranno indicazioni sulle storie da cercare. E la redazione di Nòva ti indicherà come pubblicarle. Comincerai con un programma di massima, anche in relazione al tuo progetto. E poi aggiusterai il programma in base a quello che troverai, all’esperienza che farai e alle notizie di attualità.

Maggiori informazioni sul sito di riferimento.

Articoli simili:

Pubblicato in corsi | Contrassegnato , , , | Lascia un commento

EduRobot UNO – Come costruire il vostro primo Arduino Robot – Lezione 3

banner-edurobot-uno-lezione3 Diamo movimento al nostro robot Se siete arrivati fino a questo punto avete aggiunto alle vostre competenze l’uso dei servomotori e dei sensori ad ultrasuoni. Combiniamo queste due abilità sarete in grado di movimentare il vostro robot facendogli evitare ostacoli. Incominciamo con unire il codice per governare i servomotori e il sensore ad ultrasuoni che avete utilizzato:

#include <Servo.h>

// creazione degli oggetti servo
Servo MotoreSinistro;
Servo MotoreDestro;

const int periodoStampaSuSeriale = 250;       // stampa sulla Serial Monitor ogni 1/4 di secondo
unsigned long ritardoSuSeriale = 0;

const int periodoLoop = 20;          // un periodo di 20 ms = una frequenza di 50Hz
unsigned long ritardoLoop = 0;

// specifica i pin di trig e echo usati per il sensore ad ultrasuoni
const int TrigPin = 8;
const int EchoPin = 9;

int distanza;
int durata;

void setup()
{
  Serial.begin(9600);     // configurazione dei pin Arduino a cui colleghiamo il sensore
  pinMode(TrigPin, OUTPUT);
  pinMode(EchoPin, INPUT);

  MotoreSinistro.attach(11);
  MotoreDestro.attach(10);
}

void loop()
{
    printOutput(); // stampa un messaggio di debug sulla Serial Monitor
    if(millis() - ritardoLoop >= periodoLoop)
    {
        letturaSensoreUltrasuoni(); // legge e memorizza la distanza misurata
        ritardoLoop = millis();
    }
}

void letturaSensoreUltrasuoni()
{
    digitalWrite(TrigPin, HIGH);
    delayMicroseconds(10);                  // mantiene alto il trigger per almeno 10us
    digitalWrite(TrigPin, LOW);
    durata = pulseIn(EchoPin, HIGH);
    distanza = (durata/2)/29;
}

void printOutput()
{
    if((millis() - ritardoSuSeriale) > periodoStampaSuSeriale)
    {
        Serial.print("distanza: ");
        Serial.print(distanza);
        Serial.print("cm: ");
        Serial.println();
        ritardoSuSeriale = millis();
    }
}

Continua a leggere

Articoli simili:

Pubblicato in arduino | Contrassegnato , , , , , | 4 commenti

EduRobot UNO – Come costruire il vostro primo Arduino Robot – Lezione 2

banner-edurobot-uno-lezione2

Collegamenti elettrici

Colleghiamo il sensore ad ultrasuoni sulla basetta

Inseriamo il sensore sulla breadboard in una posizione centrale sul fronte dell’EduRobot UNO. Collegate GND e Vcc come nell’immagine alle rispettive linee di alimentazioni sulla breadboard, da questi poi effettuate un collegamento al GND e a +5V sulla scheda Arduino.

21-edurobot-uno

22-edurobot-uno

Collegate con altri due fili i punti Trig e Echo rispettivamente ai pin 8 e 9 di Arduino.

23-edurobot-uno

Colleghiamo i motori

Utilizzando i 3 pin come mostrato nell’immagine che segue, spostate la parte plastica isolante a metà dei connettori metallici.

24-edurobot-uno

Inserite i pin sulla breadboard e collegate ad essi i motori.

25-edurobot-uno

I motori hanno ciascuno 3 file: GND (nero), segnale (bianco), Vcc (rosso). Il filo del segnale potrebbe presentarsi anche di altri colori (ad es. giallo).
Collegate GND e Vcc di ogni motore alle linee di alimentazioni presenti sulla breadboard.

27-edurobot-uno

Collegate il segnale del motore sinistro al pin 11 e il segnale del motore destro al pin 10 entrambi pin di tipo PWM.

26-edurobot-uno

Continua a leggere

Articoli simili:

Pubblicato in arduino | Contrassegnato , , , , , | 2 commenti

EduRobot UNO – Come costruire il vostro primo Arduino Robot – Lezione 1

banner-edurobot-uno-lezione1

La maniera migliore per applicare quanto si è appreso con Arduino è quella di realizzare un robot, in quanto in esso sono racchiuse moltissime delle funzionalità di cui avrete necessità per i vostri progetti futuri.
Se siete utenti esperti nell’uso di Arduino potrete ritrovare in questo breve corso iniziale concetti già conosciuti, ma per mia scelta desidero affrontare ogni passo in modo graduale, anche a costo di ripetere argomenti già conosciuti, in questo modo si avrà modo di perfezionare il proprio apprendimento e rivedere concetti di base anche da altri punti di vista.
Quindi i prerequisiti necessari sono quelli che avete ottenuto leggendo le mie prime quattro lezioni delle mie slide pubbliche oppure aver eseguito le lezioni su questo sito.

Questa lezione ha una durata di circa 4/5 ore in aula per utenti che hanno una conoscenza di base e quindi è da intendersi di primo livello nell’uso di Arduino e vuole essere un percorso alternativo per apprendere in maniera più coinvolgente (almeno spero) l’uso di Arduino, ponendo le basi per un percorso di robotica con Arduino di livelli via via crescenti.

All’interno di questa lezione troverete link a istruzioni e spiegazioni in modo che questa lezione possa essere un’ulteriore punto di accesso al mondo Arduino.

Faremo un piccolo passo in dietro ripetendo alcuni concetti di base e poi un balzo in avanti per imparare nuovi argomenti utilizzando le competenze ottenute nelle lezioni che avete fino a questo punto studiato, tutto in maniera graduale senza dare nulla per scontato.

Come sempre la mia speranza è che questa lezione possa essere utilizzata come approccio iniziale all’insegnamento dell’informatica e dell’elettronica.

Per rendere più agevole lo sviluppo dei propri progetti, ho realizzato una struttura in compensato su cui sono fissate: scheda Arduino UNO R3 e Breadboard. Una piccola stazione di lavoro, facilmente trasportabile, che si trasforma poi successivamente in un piccolo robot, il kit sviluppato ha il nome di EduRobot UNO, ad esso ho associato un’area sul mio sito, www.maffucci.it/edurobot ed un sito di riferimento che rimanda per ora alla medesima pagina: www.edurobot.cc, su cui inserirò i sorgenti grafici per realizzare la struttura, ma anche i primi sketch di programmazione con esercizi. L’idea quindi è quella di andare oltre e costruire una didattica della robotica con Arduino.

Il nome scelto non è casuale: EduRobot UNO

  • EduRobot perché il desiderio e che sia utilizzato per imparare;
  • UNO perché è il primo della famiglia, ad esso si sta aggiungendo il fratello maggiore EduRobot DUE costituito da una struttura più elaborata che consentirà di realizzare progetti più complessi, ma che potrà utilizzare fin da subito elementi già usati per la versione UNO.

Tutte le strutture robotiche che sto progettando sono pensate per non fare uso di collanti e quindi adatte per essere usate anche con giovani studenti, tutto compensato tagliato a laser, viti e bulloni, nulla di più, se poi desiderate, potrete voi apportare le migliorie  direttamente su quanto da me proposto.

E quindi non posso che augurarvi: buona sperimentazione! :-)

Descritto l’idea di progetto partiamo con la classica lista dei componenti usati.

Se avete già acquistato un Arduino Starter Kit a questo dovrete aggiungere un paio di servomotori a rotazione continua (360°) ed un sensore ad ultrasuoni, ma se state seguendo uno dei miei corsi nessun problema, questi dispositivi fanno parte della dotazione che utilizzo per insegnare.

Continua a leggere

Articoli simili:

Pubblicato in arduino | Contrassegnato , , , , , | 4 commenti

La PirateBox in classe su la Buona Scuola

L’amico Roberto Marcolin, colui che ha ispirato la mia curiosità nell’uso della PirateBox, con successiva sperimentazione in classe, mi segnala che il progetto “La PirateBox in classe”, lanciato da Andreas Formiconi, è sbarcato nel sito de La Buona Scuola, https://labuonascuola.gov.it/area/m/8980/ che vi invito a sostenere.

Su link segnalatomi da Roberto, ho localizzato su una mappa geografica dinamica la mia esperienza, ma come la mia ne potrete trovare anche altre in diverse località italiane.

So per certo che altri colleghi hanno sperimentato, o sono in procinto di sperimentare questo interessante strumento di condivisione della conoscenza e vi invito a compilare la mappa che trovate in allegato, Roberto si sta occupando di gestire il censimento di queste sperimentazioni.

Nota interessante di cui mi preme darvi comunicazione.
Venerdi’ scorso mi trovavo presso il FabLab di Copenaghen ed un associato del FabLab, in occasione di un corso per studenti (13/14 anni) stava configurando proprio una PirateBox su cui stava depositando i contenuti didattici del corso.

Articoli simili:

Pubblicato in news | Contrassegnato , | Lascia un commento

Livelli logici TTL e CMOS – cosa si nasconde dietro un HIGH o LOW di una digitalWrite di Arduino?

ttl-cmos-atmega328-bannerSpesso, durante i miei corsi su Arduino ricorrono le domande sui livelli logici in elettronica digitale, il tutto nasce quando è indispensabile introdurre la differenza tra segnali analogici e digitali o quando si parla di livelli logici 1 o 0. Mi preme quindi fare un’estensione agli appunti che utilizzo durante le lezioni con un breve post, nulla di complicato, spiegato per chi si avvicina per la prima volta all’uso di Arduino. Vediamo di capire cosa si nasconde, dal punto di vista elettronico dietro le parole HIGH e LOW che si utilizzano sempre nei nostri sketch Arduino.

Viviamo in un mondo pieno di segnali analogici, si pensi ad esempio alla temperatura, alla pressione atmosferica al suono emessa da un flauto e mille di questi esempi si potrebbero fare. Come ben sapete in elettronica digitale vengono utilizzati due stati logici ON e OFF, ACCESO e SPENTO, o in altro modo 1 e 0. Con questi due livelli logici potete codificare e trasportare una grande quantità di informazioni e far colloquiare tra loro dispositivi elettronici.
Per fare un esempio per chi ha incominciato con il classico “Blink”, provate a pensare cosa si può fare con sequenze ACCESO e SPENTO di LED, potete comunicare ad esempio informazione con il codice morse.

Cos’è un livello logico

In estrema sintesi possiamo dire che un livello logico è una tensione specifica o uno stato in cui un segnale può esistere.
Spesso, come detto nell’introduzione di questo post, ci riferiamo a due stati logici ON e OFF dove traduciamo ON con il numero binario 1 e OFF si traduce in uno 0 binario. In Arduino noi identifichiamo lo 0 binario in LOW e 1 binario in HIGH.
I livelli di tensione elettrica che definiscono l’1 binario o lo 0 binario possono differire in funzione della tecnologia utilizzata per la costruzione dei dispositivi elettronici digitali.

Attivo alto e attivo basso

Dal punto di vista elettrico a cosa corrisponde un HIGH o un LOW?
Se avete incominciato a lavorare con circuiti integrati e microcontrollori è molto probabile che troverete pin che sono attivi bassi o attivi alti, ciò indica quando il pin è attivo. Spesso capita che un circuito integrato per poter funzionare o per abilitare alcune sue funzionalità necessita che su un pin prestabilito vi sia un livello logico basso o alto si dice quindi quindi che quel particolare pin è attivo basso o alto ovvero deve esserci un livello logico 1 (tensione di 5V o 3,3V) o un livello logico 0 (tensione di 0V o poco più).

Per fare un esempio è come se paragonassimo la vostra automobile ad un circuito integrato (vedi ad esempio il microcotrollore su Arduino) e la chiave di accensione ad un pin dell’integrato, allora diciamo che: “l’automobile si avvia se giriamo la chiave, il circuito integrato fa quello che desideriamo se su un particolare pin abbiamo un livello logico stabilito (alto o basso)”.

Ad esempio, per chi ha già fatto qualche sperimentazione con gli shift register avrà notato che questo integrato possiede un pin Enable identificato con CE. Se sul data datasheet notate che sulla lettere CE è presente una linea, vuol dire che il pin è attivo basso ovvero lo shift register può funzionare se su CE è presente una tensione di 0V, in altro modo il pin deve essere collegato a GND. Se invece sulle lettere CE non è presente una linea allora vuol dire che il pin CE è attivo alto e quindi l’integrato potrà funzionare solo se il pin è portato ad un livello logico 1 (5V o 3,3V).

I dispositivi elettronici digitali vengono suddivisi in famiglie logiche le quali differiscono le una dalle altre per la tecnologia usata per costruirli e per la tipologia di circuiti di base (componenti elettronici usati) su cui si basa il loro funzionamento.
Inoltre capita che nell’ambito di una stessa famiglia logica vi siano alcune serie di componenti che hanno caratteristiche migliori, ad esempio temperature limite di funzionamento.

Le famiglie logiche più utilizzate sono la TTL (Transistor Transistor Logic) e la CMOS (Complementary MOS).
La prima prende il nome da TTL in quanto sono costituiti da transito sia nello stadio di ingresso che di uscita. La seconda detta CMOS perché usa dei MOSFET (Transistor ad Effetto di Campo MOS, Metallo Ossido Semiconduttore).

Per chi affronta per la prima volta questo argomento consideri questi due acronimi, TTL e CMOS, come il nome per specificare la tecnologia usata per realizzare il dispositivo elettronico digitale, per fare un’analogia e come dire: “l’automobile ci serve per spostarci, ma l’automobile può essere a GASOLIO (ad es. TTL) o a BENZINA (ad es. CMOS) entrambe comunque ci consentiranno di spostarci”.
Sappiamo però che le auto a gasolio hanno certe problematiche/pregi e quelle a benzina allo stesso modo hanno problematiche/pregi è in funzione delle performance che ci interessano: consumi, potenza, velocità, ecc… si deciderà quale automobile acquistare.

Esistono alcune convenzioni che sarà utile conoscere per meglio districarsi ad esempio nella lettura dei manuali tecnici dei componenti elettronici digitali.

Per convenzione, le correnti e le tensioni di qualsiasi terminale di un dispositivo logico hanno due suffissi come pedice:

  • il primo indica se il terminale è di ingresso (I=input) o di uscita (O=output)
  • il secondo indica lo stato logico alto (H=high) o basso (L=low)

Inoltre ogni terminale di ciascuna porta logica assorbe o eroga corrente.

Logica TTL

I circuiti elettronici digitali della famiglia TTL sono alimentati (funzionano con…) con una Vcc=+5V. Come già accennato sono basati su circuiti costituiti da transistor bipolari utilizzati per ottenere variazioni (commutazioni di livelli) e mantenere stati logici (memorizzare), possiamo definirli come dei microinterruttori. Sono caratterizzati da una serie (numeri identificativi) che ha come cifra iniziali, 74, serie commerciale che funziona tra 0°C e 70 °C e la serie 54 che costituisce la serie militare che funziona tra -55°C e +125°C.

Esistono  sottofamiglie della TTL:

  • L – serie a basso consumo (L indica Low power), ormai obsoleta
  • S – serie che utilizza i transito veloci Schottly
  • LS – serie che riunisce le caratteristiche delle due precedenti
  • AS – serie S con prestazioni avanzate
  • ALS – serie LS con prestazioni avanzate

Ad ogni famiglia logica (TTL e CMOS) è associata una serie di tensioni che identificano quando si ha 0 logico e quando l’1 logico.

I livelli di tensione da applicare in ingresso sono:

  • VIL – compreso tra 0 e VILmax =+0,8V per il riconoscimento del livello logico basso (LOW), quindi una tensione tra 0V e +0,8V sarà identificata come un LOW
  • VIH – tensione compresa tra VIHmin=+2V e +5V per il riconoscimento del livello logico alto (HIGH), quindi una tensione tra +2V e +5V sarà identificata come un HIGH

I livelli di tensione che si ottengono in uscita sono:

  • VOL – compreso tra 0 e VOLmax =+0,4V purchè la corrente entrante sia IOL<16mA
  • VOH – compreso tra VOHmin=2,7V e circa 4V purché la corrente di ingresso sia IOH<400uA

Il disegno chiarisce meglio questi intervalli di tensione:

ttl-small

I valori di tensione compresi tra +0,8V e +2V individuano una zona di indeterminazione che non è da utilizzare.

Consideriamo ad esempio una porta NOT, l’intervallo dei segnali di input e output accettabili per avere un livello alto o basso sono quelli indicati in figura:

livelli-in-out-ttl

Logica CMOS

Tutti i circuiti integrati della famiglia logica CMOS utilizzano al loro interno MOSFET di tipo P o di tipo N e caratteristica principale di un CMOS è la ridottissima potenza dissipata e ampio intervallo di tensioni di alimentazione: da +3V a +15V.
Come per la famiglia TTL anche la CMOS ha delle sottofomiglie:

  • CD4000 ormai obsoleta
  • 74C compatibile, nella piedinatura (posizione funzionalità) ai corrispondenti integrati della famiglia TTL
  • 74HC e 74HCT come la serie precedenti, ma con tempi di propagazione (del segnale) ridotti e valori di tensione compresi tra +2V e +6V (HC) e +5V (HCT)
  • 74 AHC simile alla HC ma con prestazioni avanzate

Se si usano dispositivi in tecnologia CMOS bisogna tener conto di alcune regole:

  • la tensione applicata in ingresso deve essere compresa tra 0V e Vcc
  • a differenza della famiglia TTL tutti i piedini di ingresso devono essere utilizzati collegandoli a livello alto o basso
  • il terminale di uscita può essere collegato a massa o all’alimentazione senza pericolo di avarie
  • le tensioni di commutazioni di soglia (le tensioni che identificano il passaggio dallo 0 a 1 o viceversa) sono circa la metà della tensione di alimentazione applicata al dispositivo

Considerando dispositivi CMOS alimentati a tensione di +3,3V i livelli di tensione da considerare sono quelli rappresentati nel disegno che segue:

cmos-small

Si noti come, al fine di garantire la compatibilità generale, che la maggior parte dei livelli di tensione sono uguali ai dispositivi alimentati a +5V. Un dispositivo alimentato a +3,3V potrà in generale, con alcune cautele, essere interfacciato ad un dispositivo a +5V senza componenti aggiuntivi. Ad esempio, un 1 logico (HIGH) per un dispositivo a +3,3 V sarà almeno +2,4 V e tale tensione sarà ancora interpretato come un 1 logico (HIGH) in un sistema a+5V perché è sopra la VIG di 2 V.

Quando bisogna interfacciare (in senso opposto) un dispositivo a 5V con uno a 3,3V bisogna verificare che il dispositivo a 3,3V possa funzionare a 5V, cioè che la tensione massima di ingresso sia di 5V. Su alcuni dispositivi 3,3 V, tensioni superiori a 3,6 V causeranno danni permanenti al componente. Sarà sufficiente utilizzare un semplice partitore di tensione (ad esempio una resistenze da 1kOhm ed una da 2kOhm) per abbattere segnali da 5V a 3,3V.

Livelli logici in Arduino

Guardando il datasheet dell’ATMega328, (microcontrollore presente nell’Arduino UNO) i livelli di tensione sono leggermente diversi da quelli indicati per le famiglie TTL e CMOS:

atmega328-small

La differenza più evidente è che la regione di interdizione (da non usare) di tensioni è tra 1,5 V e 3,0 V. Il margine di rumore è maggiore sul Arduino ed ha una soglia più elevata per l’identificazione di una tensione che indica un segnale basso (LOW) ed una soglia minima per l’identificazione di un segnale alto (HIGH) più elevata. In altro modo i livelli di tensione massima di identificazione dello 0 logico e di tensione minima di identificazione dell’1 logico rientrano all’interno degli intervalli di diverse tipologie di famiglie logiche, sia TTL che CMOS, in questo modo la costruzione di interfacce risulta più semplice.

Paragonado i grafici dei livelli di tensione per TTL, CMOS e ATMega328 abbiamo:

ttl-cmos-atmega328

Articoli simili:

Pubblicato in arduino, elettronica | Contrassegnato , , , , | 4 commenti