CORSO DI FORMAZIONE AS 2010/11. I MICROCONTROLLORI e ARDUINO. DOCENTE: Prof. Francesco Contalbi



Documenti analoghi
CORSO DI FORMAZIONE INTRODUZIONE E GENERALITA. Testi di alcune 2 Prove agli ultimi Esami di Stato. Perché i Microcontrollori?

introduzione I MICROCONTROLLORI

Architettura hardware

Dispensa di Informatica I.1

Informatica - A.A. 2010/11

CORSO SERALE ( TDP ) DEMOBOARD FN1Z PER PIC 16F877/16F877A

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

C. P. U. MEMORIA CENTRALE

Elettronica dei Sistemi Programmabili

Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi

Architettura del calcolatore

Esame di INFORMATICA

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Corso PLC - Manuale Pratico 1

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Ing. Paolo Domenici PREFAZIONE

Il Processore: i registri

Si compone di: SI-Prog supporta: Le tre principali famiglie di..

Il computer: primi elementi

Arduino UNO. Single board microcontroller

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

Collegamento al sistema

Introduzione ai microcontrollori PIC

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

Prof. Capuzzimati Mario - ITIS Magistri Cumacini - Como LOGICA DI CONTROLLO

Esame di Stato Materia: SISTEMI AUTOMATICI PRIMA PARTE

Breve storia del calcolo automatico

IL PLC 1/9. permanente, la memoria volatile e i pin di I/O, oltre ad eventuali altri blocchi specializzati.

LABORATORIO DI SISTEMI

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

Corso di Informatica

Laboratorio di Informatica

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

COORDINAMENTO PER MATERIE SETTEMBRE 2014 MATERIA DI NUOVA INTRODUZIONE PER EFFETTO DELLA RIFORMA

8 Microcontrollori PIC

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

I componenti di un Sistema di elaborazione. CPU (central process unit)

Sistemi Elettronici #1. Sistemi Elettronici. Definizioni e concetti generali. Sistemi Elettronici Laurea Triennale in Elettronica A.A.

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Linguaggi di programmazione

PLC Programmable Logic Controller

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Alfabetizzazione Informatica. Prof. Giuseppe Patti

L HARDWARE parte 1 ICTECFOP@GMAIL.COM

Informatica per la Storia dell Arte. Anno Accademico 2014/2015

Architetture Applicative

FONDAMENTI di INFORMATICA L. Mezzalira

IL COMPUTER APPUNTI PER LEZIONI NELLE 3 CLASSI LA MACCHINA DELLA 3 RIVOLUZIONE INDUSTRIALE. A CURA DEL Prof. Giuseppe Capuano

Introduzione a Dev-C++

Il database management system Access

Architettura dei computer

Piano Nazionale di Formazione degli Insegnanti sulle Tecnologie dell'informazione e della Comunicazione. Percorso Formativo C1.

NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE

INFORMATICA 1 L. Mezzalira

Struttura del calcolatore

Scienze della Comunicazione Università di Salerno. UD 3.2a: Introduzione alla Programmazione

Informatica. Scopo della lezione

PLC Sistemi a Logica Programmabile Il linguaggi di programmazione

Linguaggi e Paradigmi di Programmazione

CONTROLLO NUMERICO Z32

CONTROLLO NUMERICO Z32

CPU. Maurizio Palesi

RETI E SISTEMI INFORMATIVI

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

Lezione n.19 Processori RISC e CISC

Introduzione al sistema operativo Il file system: file, directory,...

Corso di Sistemi di Elaborazione A.A. 2008/2009

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

I dischi ottici. Fondamenti di Informatica -- Rossano Gaeta 43

Vari tipi di computer

Architettura di un calcolatore

Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai

Fondamenti di Informatica. Allievi Automatici A.A Nozioni di Base

INFORMATICA GENERALE. Prof Alberto Postiglione Dipartim. Scienze della Comunicazione Univ. Salerno. Università degli Studi di Salerno

Hardware di un Computer

Informatica 1 Lezione 1

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

Laboratorio di Informatica

La memoria centrale (RAM)

Tecnologia dell Informazione

MODULO 02. Iniziamo a usare il computer

CORSO DI LAUREA IN SCIENZE ERBORISTICHE E DEI PRODOTTI NUTRACEUTICI

CALCOLATORI ELETTRONICI A cura di Luca Orrù

Il Microcontrollore. Microcontrollore PIC

Approccio stratificato

Informatica. Teoria. L architettura dei PC Storia dell informatica Periferiche Reti - Software. Marco Brama

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

PLC - Linguaggi. I linguaggi di programmazione dei PLC sono orientati ai problemi di automazione e utilizzano soprattutto:

ARCHITETTURE MICROPROGRAMMATE. 1. Necessità di un architettura microprogrammata 1. Cos è un architettura microprogrammata? 4

CORSO DI INFORMATICA. Docente: Erick Baldi Classi: 1AP, 1BP, 2AP, 3AP Sito del corso:

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

CORSO PER L USO DEL COMPUTER

PREMESSA AUTOMAZIONE E FLESSIBILITA'

Gestione delle Linee di Ingresso Optoisolate.

Memoria Secondaria o di Massa

Origini e caratteristiche dei calcolatori elettronici

INTRODUZIONE ALL' INFORMATICA

Transcript:

CORSO DI FORMAZIONE IPSIA CASTIGLIANO AS 2010/11 I MICROCONTROLLORI e ARDUINO DOCENTE: Prof. Francesco Contalbi

INTRODUZIONE E GENERALITA prof. Francesco Contalbi 2

Perché i Microcontrollori? Sono usatissimi nell Industria e occorre formare gli studenti alla realtà che troveranno nel lavoro Si possono realizzare esercitazioni SIGNIFICATIVE che altrimenti richiederebbero troppi componenti, troppo tempo, troppa complessità realizzativa Con essi si insegna la programmazione, e quindi si sviluppano capacità logiche e il pensiero Algoritmico degli allievi COMPAIONO SEMPRE nei temi di Sistemi agli esami di Stato prof. Francesco Contalbi 3

Testi di alcune 2 Prove agli ultimi Esami di Stato (visualizza) prof. Francesco Contalbi 4

Tipologie dell Elettronica Digitale (e non solo digitale ) Logica Cablata Logica Microprogrammata Logica Custom Logica Programmata Oggigiorno solamente le ultime due trovano riscontro nel mondo del lavoro: sono lo stato dell arte dell Elettronica Digitale prof. Francesco Contalbi 5

Logica Cablata La funzione logica viene realizzata dai collegamenti (cablaggio) tra le diverse porte (che si trovano negli IC) che costituiscono il circuito Per cambiare la funzione occorre cambiare il cablaggio di fatto occorre riprogettare il Circuito Stampato e ricostruire il circuito. Il circuito è molto complesso, occupa molto spazio sul Circuito Stampato ma per contro la velocità è molto elevata, la più elevata possibile!!! prof. Francesco Contalbi 6

Logica Microprogrammata (anche con Microprocessori Bit Slice) La funzione logica viene realizzata utilizzando, in genere, circuiti aritmetico/logici universali (le ALU) e inserendo opportune sequenze di bit di controllo (il microprogramma) in una ROM. Il circuito risultante è complesso, occupa ancora parecchio spazio sul Circuito Stampato e la microprogrammazione è molto difficile. Sono però circuiti veloci, anche se non più usati prof. Francesco Contalbi 7

Logica Custom Fa uso di appositi IC, chiamati genericamente PLD (Programmable Logic Devices) che in base all architettura (e alla complessità) interna si distinguono in: Pal / Gal Standard Cell Gate Array ecc.. Un intero dispositivo, anche un microprocessore, può essere integrato in un solo PLD. In pratica ci si costruisce in casa un IC su misura. Oggi con circa 300 è possibile realizzare PLD in un laboratorio mediamente attrezzato Per grandi volumi si possono usare gli ASIC (Application Specific Integrated Circuits) = IC commissionati alle ditte specializzate prof. Francesco Contalbi 8

Logica Programmata Sistemi a Microprocessore (up) (link) Sistemi a Microcontrollore (uc) (link) PLC (Programmable Logic Controller) (link) prof. Francesco Contalbi 9

Fa uso di IC ( Microprocessori e Microcontrollori) che comprendono al loro interno sia la ALU, che dei Registri e una ROM contenente l insieme dei microprogrammi. Ogni microprogramma realizza una istruzione in linguaggio macchina. L insieme di tutte queste ultime realizza il Set di Istruzioni che il Microprocessore è in grado di eseguire. La sequenza di quelle usate è memorizzata in una ROM o RAM esterna al processore. Per cambiare la funzione logica è sufficiente (quasi sempre ) cambiare solo le istruzioni nella ROM/RAM esterna e non l intera scheda prof. Francesco Contalbi 10

Sistemi a Microprocessore (up) Richiedono: il up della RAM e ROM esterne su cui risiede il Programma e i risultati delle elaborazioni degli appositi IC: le unità di Input/Output (I/O) che realizzano l interfacciamento col mondo esterno Un sofisticato Circuito Stampato con incise le piste che realizzano i 3 BUS (Indirizzi, dati, controlli) Un generatore di Clock e varia Logica Glue prof. Francesco Contalbi 11

Unità di I/O Logica GLUE SITEMA MINIMO A up CON Z80 - N 6 IC DI CUI UNO A 40 PIN prof. Francesco Contalbi 12

Sistemi a Microcontrollore (uc) Un uc è un IC che racchiude al suo interno un intero Sistema a up con in più (dipende dal tipo): Della RAM e Rom (Flash in genere per il programma e EEPROM per i dati) Un gruppo di Pin di I/O a direzione programmabile Un generatore di Clock programmabile In vari modi Uno o più ADC in genere multiplexati Un Counter / Timer con Prescaler Uno o più Comparatori di tensione Circuiti PWM, CCP, ECCP (ad es. per il controllo motori) Una USART per la comunicazione seriale Un controller per i bus SPI, I 2 C, CAN, USB e altri Ecc ecc prof. Francesco Contalbi 13

PLC Sono sostanzialmente dei sistemi a up o uc ma con Relè, BJT, Optoisolatori ecc.. Già impacchettati in un robusto contenitore, spesso in formato a Guida DIN, e pronti per essere collegati al Campo. Sono più adatti ad essere usati dagli elettricisti e sono nati per sostituire Teleruttori, Temporizzatori meccanici ecc Si programmano nel loro Assembly oppure in: Ladder (simile a uno schema elettrico funzionale) Grafcet Basic Ecc... prof. Francesco Contalbi 14

Il produttore forse più noto di PLC è la SIEMENS, ma vi è anche la Telemecanique, la SAIA ecc.. Recentemente è apparsa una serie di PLC a BASSO COSTO e ingombro che si presta bene a realizzare PLC minuscoli ed economici, il CUBLOC, prodotto dalla COMFILE Technology. (vedi il Sito). Programmabile in Ladder e/o Basic, è dotato di più ADC, di RS232 per la programmazione ma anche per il colloquio col PC. prof. Francesco Contalbi 15

Quale usare? up Sistemi di calcolo di elevata potenza, che richiedono programmi complessi e di uso generale: Elaboratori, Sistemi di controllo di Impianti importanti ecc uc Sistemi di controllo di dispositivi e macchine: li troviamo in giocattoli, fotocamere, TV, cellulari, termostati, regolatori di motori, robot, guide di missili ecc.. Spesso si interfacciano a sistemi a up che funzionano da supervisori prof. Francesco Contalbi 16

Tipi di uc Sul mercato c è una varietà enorme di uc: di fatto ogni ditta produttrice di IC ha il suo. Non solo Ogni ditta specializza poi la produzione in molti tipi diversi a partire da un ceppo comune, così da realizzare delle FAMIGLIE (o Serie ). Ognuno differisce per quantità di RAM/ROM, per il numero e tipo di unità controllo periferiche ecc. Scegliere dunque un uc richiede quindi una lunga, attenta e difficile comparazione tra Ditte, Famiglie e tipi!!! prof. Francesco Contalbi 17

I PIC http://www.microchip.com/ Wikipedia Sono dei uc prodotti dalla ARIZONA MICROCHIP e risultano molto diffusi e usati, soprattutto in Italia. Uno dei motivi della loro diffusione è la loro estrema SCALABILITA, ossia la possibilità di scegliere il tipo adatto alla particolare applicazione (in termini di quantità di RAM / ROM, di unità periferiche, di velocità.. e quindi di costo) mantenendo però una certa uniformità, in particolare lo stesso Set base di istruzioni come anche il poter riutilizzare gli strumenti Hardware e Software per lo sviluppo e il Testing prof. Francesco Contalbi 18

Famiglie (.. o serie) di PIC Il produttore suddivide i PIC nelle seguenti Serie, tenendo conto della dimensione (in bit) dei Registri interni. Le Serie più alte corrispondono in genere a più elementi integrati (ADC, Timer ecc.), più prestazioni, più memoria, più PIN e ovviamente un ingombro e un costo maggiore prof. Francesco Contalbi 19

32 Bits 16 Bits dspic30f 8 Bits PIC18FXXX PIC12F6XX,PIC16FXX PIC12F4XX,PIC16F5XX PIC10F2XX Enhanced Mid-range Base-line 4 Bits prof. Francesco Contalbi 20

Gli AVR Sono dei uc prodotti dalla ATMEL http://www2.atmel.com/ Wikipedia Poco diffusi in Italia ma potenti e versatili, costituiscono il cuore del sistema ARDUINO. Sono molto meno SCALABILI dei PIC, avendo le serie: TinyAVR: a 8 Bit, economici e piccoli (8-14 pin) MegaAVR: a 8 Bit, con molte periferiche XMEGA: a 8 / 16 Bit, potenti ma complessi AVR-UC3: 32 bit sofisticati e potenti prof. Francesco Contalbi 21

Progettare con i uc / up Come con qualunque sistema programmabile occorre confrontarsi coi suoi due aspetti: L Hardware (la circuiteria elettronica, la meccanica) scelta del tipo di uc / up e del suo interfacciamento con il Campo, cioè il sistema da controllare Il Software (Programmi e loro scrittura) scelta del linguaggio di programmazione e del programma per la compilazione e il caricamento dell eseguibile nella memoria programma del uc prof. Francesco Contalbi 22

Il Software varie componenti Programma = serie di istruzioni scritte in un linguaggio di programmazione: Assembly cioe` in pratica, il linguaggio della macchina solo reso un po più umano alto livello, ossia linguaggi di programmazione più simili al linguaggio comune (Inglese): Basic, Fortran, C, C++, Java, LISP... PROCESSING in Arduino ( ne esistono 200 e più!) Sistema Operativo (SO) : e` il programma che sovraintende al funzionamento di base del computer, e` memorizzato sul disco rigido e viene copiato nellla RAM al momento dell accensione. Esistono vari tipi di SO : Windows, Unix, Linux, MacOs, DOS... alcuni di questi liberi alcuni a pagamento... SW di Base : Compilatori, Assembler, Linker, Loader, Bakup ecc.. Programmi applicativi : Word, Excell, StarOffice, Access, Telnet... e Programmi scritti da noi prof. Francesco Contalbi 23

Fasi del Progetto SW Studiare le azioni da compiersi in un N finito di passi per ottenere quanto voluto, ossia l ALGORITMO Descrivere su carta l algoritmo tramite: FLOW CHART (più adatto per l Assembly) Pseudolinguaggio (più adatto ai linguaggi di alto livello) Scrivere il programma nel linguaggio di programmazione scelto, tramite un TEXT EDITOR (PROGRAMMA SORGENTE) Compilare e Linkare il programma sorgente per ottenere rispettivamente il PROGRAMMA OGGETTO e ESEGUIBILE (tramite il COMPILATORE e il LINKER) Caricare l eseguibile nella MEMORIA PROGRAMMA del uc / up tramite il LOADER (o programmatore nei uc), Trovare eventuali errori tramite il DEBUGGER prof. Francesco Contalbi 24

FILE SORGENTE L HEX è detto Formato INTEL e di fatto contiene in ESADECIMALE il codice macchina da inserire nella memoria programmi del uc uc prof. Francesco Contalbi 25

Esempio di FLOW CHART Se si intende usarlo si possono impiegare appositi programmi (oltre a Word), ad es. DIA, che oltretutto è Open Source e realizza una moltitudine di altri diagrammi (installa DIA) prof. Francesco Contalbi 26

Gli IDE (Integrated Developement Environment) Le fasi di Scrittura /compilazione / linking /debugging che un tempo venivano eseguite a mano e in sequenza, sono ora INTEGRATE in un unico programma che offre anche un aspetto grafico curato: l IDE Di fatto ormai nemmeno più ci si accorge di quello che sta succedendo: fa tutto l IDE, dietro le quinte.. davvero un grosso aiuto!!! prof. Francesco Contalbi 27