Modulo di comando ultimo aggiornamento 22 ottobre 2016 |
|
Descrizione:
Modulo di controllo per la programmazione dell'integrato PIC che è il "cervello" di tutto il robot. Il connettore parallelo presente sulla scheda ne permette il collegamento con un PC per la sua programmazione tramite apposito programma. Tale scheda deve essere collegata ad una fonte di alimentazione esterna. Alla scheda sono collegati due commutatori: SW1 ha la funzione di interruttore di accensione, SW3 commuta tra le funzioni di programmazione ed elaborazione del programma. Sulla scheda è inoltre presente il pulsante SW2 con funzione di RESET. Le istruzioni per il montaggio del modulo di controllo sono sulle schede da PL01 a PL24 |
|
Foto della scheda da me assemblata
Schema elettrico della scheda di controllo |
|
Download Formato PDF |
Download Formato Eagle v. 4.03 |
|
---|
Processore PIC16F84A | ||
|
||
Piedinatura | Datasheet | Foto dell'integrato |
SN 7407 HEX BUFFER/DRIVER | ||
Piedinatura | Datasheet | Foto dell'integrato |
LM 7805- LM 7812 Regolatore di tensione | ||
Piedinatura | Datasheet | Foto dell'integrato |
Transistor BC546/547/548/549/550 (NPN Switching and Applications) | ||
Piedinatura | Datasheet | Foto del transistor (contenitore plastico) |
Diodo 1N4148 | ||
Piedinatura | Datasheet | Foto |
Diodo 1N4004 | ||
Piedinatura | Datasheet | Foto |
Materiale tratto dal sito
Sezione alimentazione
Schema sezione di alimentazione
realizzato con un primo stadio di rettificazione e filtraggio mediante il
ponte D4-D5-D6-D7 e il condensatore C1, segue uno stadio in cui tramite U1
il cui terminale di massa risulta collegato a tre diodi (D1-D2-D3) la cui
caduta di tensione totale risulta di 1,8 V sposta la tensione di uscita a
13,8V contro i 12V dell'integrato, tale tensione è necessaria alla
programmazione del PIC.
Abbiamo poi l'integrato U2 che fornisce la tensione di 5V per
l'alimentazione del resto dei circuiti elettronici.
Interfaccia
Come possiamo osservare questo circuito programmatore utilizza tensioni da 5
e da 13,8 V.
Questa tensione è necessaria per iniziare il processo di scrittura dei PIC,
dato che per
portare il microcontroller in modo scrittura, è necessario inviare un
segnale di reset (sul piedino MCLR) di 13,8 V.
Per commutare questa
tensione di 13,8 V
utilizziamo un transistor PNP BC558, se nella base dei transistor c'è
tensione questo non conduce, e nel reset abbiamo 5 V che arrivano
attraverso il diodo D e la resistenza R14.
Quando tramite il piedino 5
della porta parallela si invia uno 0, il transistor si polarizza e lascia
passare i 13,8 V al segnale di reset dei PIC, attraverso il diodo D10.
Quando arriva la
tensione di 13,8 V il diodo LED D9 si illumina.
Terminata la scrittura del PIC si annulla il
segnale di 0 sul piedino 5 del connettore DB25
e si manda un segnale di reset di 5 V per
mezzo dei piedino 4 del connettore, in modo
che il PIC rimanga programmato e possa eseguire il programma.
Per introdurre il codice macchina nella
memoria del microcontroller, si utilizzano i
segnali provenienti dai pin 2 e 3 del connettore DB25, i quali vanno sui pin RB6 e RB7
rispettivamente.
La memorizzazione si realizza
bit a bit.
Tramite la linea di R6 si invia un
segnale periodico, facendo corrispondere ad
ogni impulso positivo il valore del bit presente
sulla linea che va a R7.
Durante la lettura della
memoria di programma dei PIC, il PC invia una sequenza di uno e zero
attraverso la linea di R6 e contemporaneamente il PIC risponde inviando i
bit tramite la linea di RB7 al piedino 10 dei connettore.
Tutte queste funzioni sono realizzate tramite il software di programmazione
corrispondente, eseguito nel PC.
Tabella di corrispondenza del connettore di programmazione
|
---|
Il circuito integrato SN7407N, di cui è
dotata la scheda di controllo, è un driver che utilizzeremo per amplificare
livelli logici TTL.
Ha un range di alimentazione che va da 4,75 V a 5,25 V, dispone di sei ingressi e sei uscite secondo la configurazione illustrata
nell'immagine.
Questo chip si utilizza per amplificare segnali TTL.
Nella nostra scheda questa amplificazione si realizza tra i segnali che sono
trasferiti dalla porta parallela del PC al microcontrollore.
I segnali di uscita che si ottengono sono di 5 V o di 0 V (a seconda se
l'ingresso sia un "1 " logico o uno "0") con una capacità di corrente di
circa 40 mA.
Questa amplificazione è dovuta al fatto che possiede all'interno una
configurazione basata su quattro transistor per uscita, come si vede
nell'immagine.
Le uscite sono a collettore aperto e richiedono quindi un
collegamento tramite una resistenza di "pull-up " al positivo.
Sezione processore e connettore di uscita
Il microcontroller PIC1 6F84 può funzionare con
quattro diversi tipi di oscillatori, che possono essere specificati
dall'utilizzatore al momento della programmazione, mediante la parola di
configurazione.
Nella nostra scheda di controllo abbiamo utilizzato un oscillatore tipo XT,
formato da un cristallo di quarzo e da due condensatori ceramici da 27 pF
I quattro tipi di oscillatori permessi sono:
1°) Oscillatore tipo RC
Questo tipo di oscillatore, di costo molto basso, è formato semplicemente da
una resistenza e da un condensatore. Il collegamento di questo oscillatore è
riportato nel disegno in alto, Collegamento e valori tipici per un
oscillatore RC di basso costo, inoltre sono anche indicate alcune coppie di
valori per ottenere determinate frequenze di oscillazione.
2°) Oscillatore típo XT
Questo è l'oscillatore utilizzato nella nostra scheda, e si basa su di un
oscillatore di cristallo, o risuonatore, per frequenze comprese fra 100 KHz
e 4 MHz.
Con questo oscillatore otteniamo una frequenza di 4 MHz con la quale il PIC
esegue un'istruzione di programma ogni microsecondo.
|
|
3°) Oscillatore tipo HS
Si tratta di un oscillatore che raggiunge un'alta velocità, compresa fra 4 e
20 MHz, basato su di un cristallo di quarzo o un risuonatore ceramico. E' il
tipo di oscillatore da utilizzare per raggiungere le maggiori velocità di
esecuzione. Si collega in parallelo con due condensatori, come il tipo XT.
20 MHz è anche la massima frequenza a cui può lavorare il PIC, che a questa
velocità esegue un'istruzione in 200 ns.
4°) Oscillatore tipo LP
Oscillatore di basso consumo, che utilizza un quarzo e che può lavorare nel
range di frequenze da 35 a 200 KHz. Si collega allo stesso modo dei tipo XT
o HS.
La frequenza di funzionamento dei microcontroller è un parametro
fondamentale, da cui dipende la velocità di esecuzione dei programma, e
anche il consumo di energia.
All'interno della stessa famiglia dei PIC esistono modelli progettati per
lavorare a frequenze differenti. Il tempo di esecuzione di un' istruzione è
quattro volte il periodo di clock dell'oscillatore che stiamo utilizzando.
T ciclo di istruzione = 4 x Tclock
Le istruzioni di salto, che ci serviranno per testare lo stato dei bit,
impiegano il doppio dei tempo ad essere eseguite rispetto ad un' istruzione
semplice.
Per esempio, se abbiamo un oscillatore da 4 MHz , un programma da 500
istruzioni, 10 delle quali sono di salto, il programma impiegherà ad essere
eseguito:
T ciclo di istruzione= 4 * TCLOCK = 4 * 11(4*106) = 1uS
T programma = 490 * 1us + 10 * 2ps = 510 us
Come prima valutazione di questo risultato possiamo osservare che i programmi che introduciamo nel microcontrollore vengono eseguiti ad altissima velocità, praticamente in tempo reale.
Come mostrato nella tabella, la programmazione si realizza con i pin RB6 e RB7, il primo è quello che trasferisce il segnale di clock, e R87 porta i bits da leggere e scrivere. Questo è il motivo per cui serve il commutatore a due posizioni SW3. Durante la programmazione dobbiamo scollegare i pin RB6 e RB7 dal PIC-BUS. Per questo apriremo il circuito con il commutatore SW3 (Posizione PROG). Una volta memorizzato chiuderemo il commutatore per collegare le linee R86 e RB7 di nuovo al PIC-BUS, potendo in questo modo utilizzarle come ingressi e uscite digitali (Posizione RUN).
CONNETTORE DI USCITA
Il connettore
d'applicazione J4 lo chiameremo PIC-BUS. Contiene tutti i segnali d'ingresso
e uscita del microcontroller PIC situato nella scheda di controllo.
Attraverso esso ci collegheremo con il resto delle schede da cui è
costituito Monty. il PIC potrà operare con sensori e periferiche situati in
queste schede senza la necessità di muoverlo dal suo zoccolo.
Come si può osservare nello schema, attraverso questo connettore passano
anche i segnali di alimentazione da 5 V e 13 V, e la massa. Fondamentale in
un progetto elettronico è che tutte le masse siano comuni.
Il connettore ha 26 piedini. Nella fila superiore ci sono quelli dispari dal
1 al 25 iniziando da destra. Nella fila inferiore ci sono quelli pari dal 2
al 26 iniziando sempre da destra. Per esempio, i segnali della porta B sono
situati nella fila superiore del connettore, in ordine, dal piedino 1 al 15
iniziando da destra. //nostro microcontroller PIC1 6F84, permette la
memorizzazione seriale ICSP (In Circuít Serial Programming), grazie alla
quale servono solo due pin per introdurre il programma (RB6 e RB7).
Elenco revisioni documento: | |
22/10/2016 | Aggiornato pagina |
02/10/2008 | Inserito disegno circuito stampato. |
26/04/2006 | Inserito PDF istruzioni di montaggio |
06/03/2006 | Aggiornato pagina, con inserimento elenco componenti e data sheet componenti utilizzati |
25/08/2005 | Aggiornato pagina, con inserimento schema elettrico e descrizione circuito e collaudo. |
27/05/2005 | Emissione preliminare |