www.narcisivalter.it
| ||||||||
Translate Page |
CONTAPEZZI PROGRAMMABILE con PIC16F886(Digital Programmable Counter 999.999 based on PIC16F886 microcontroller)Indice: INTRODUZIONE [ TORNA ALL'INDICE ] Il Contapezzi Digitale Programmabile è utile quando si desidera rilevare il numero di pezzi che scorrono su un nastro trasportatore oppure il numero di auto che passano su una strada o ancora, il numero di persone che attraversano una porta e può essere utilizzato perfino come contaimpulsi. Gli impieghi di questo dispositivo, dunque, possono essere tanti: sarà sufficiente collegare un sensore idoneo (oppure un microswitch o altri tipi di dispositivi) per rilevare il passaggio di oggetti o persone.
In questo progetto è stato utilizzato il microcontrollore della Microchip siglato PIC16F886 ed un modulo LCD 1602 per visualizzare i risultati e le impostazioni. Le caratteristiche principali del CONTAPEZZI sono le seguenti:
LO SCHEMA ELETTRICO [ TORNA ALL'INDICE ] Nella figura successiva è riportato lo schema elettrico del CONTAPEZZI (cliccare sopra l'immagine per ingrandirla). Gran parte del lavoro è svolto dal firmware presente nel microcontrollore della Microchip siglato PIC16F886. Il circuito integrato CD4011 si è reso necessario per creare un multivibratore monostabile (U1A e U1B) per poter pilotare correttamente il piedino di ingresso RB0/INT del microcontrollore senza dare origine a falsi conteggi e, soprattutto, senza sovraccaricare il software del micro con complicate e laboriose righe di codice (antirimbalzo, durata dell'impulso, ecc.). L'integrato U2 (4011, quadruplo NAND) deve necessariamente essere del tipo B: nel prototipo è stato utilizzato il circuito integrato della Motorola siglato MC14011BCP. Il componente siglato XT è in realtà un risonatore ceramico da 16 MHz a 3 piedini (quindi con i condensatori incorporati) e non può essere sostituito con un quarzo HC-49 a meno che non si saldino i classici due condensatori da 18-22pF direttamente sui reofori del quarzo. Il connettore MX (ICSP) è utile per la programmazione On-Board del Microcontrollore (questo connettore consente di lasciare il chip montato sulla scheda durante la programmazione). Tuttavia, una volta programmato il PIC, consiglio di rimuovere questo connettore per evitare che un accidentale cortocircuito tra i suoi piedini possa danneggiare irrimediabilmente il microcontrollore. Per pilotare il Buzzer è stato utilizzato un transistor NPN (BC337) perché le porte A0 e A1 non possono pilotare direttamente il buzzer (il cui assorbimento si aggira intorno ai 30 mA). Il fatto che siano DUE porte a pilotare il buzzer è dettato dalla praticità ed evita di scrivere ulteriori righe di codice: il PortA.0 emette il classico "toc" quando è impostata la scansione audio dei pezzi mentre il PortA.1 emette esclusivamente un segnale da 600 ms per avvisare l'utente che il conteggio ha raggiunto il valore dei pezzi programmati per il FERMO MACCHINA. Per i 4 pulsanti, possono essere utilizzati diversi tipi, secondo le proprie necessità e i propri gusti e per il collegamento alla scheda con conduttori molto lunghi consiglio sempre di usare il cavetto schermato. Il Modulo LCD va collegato alla scheda per mezzo di un cavetto a 16 vie. Il relè è utile SOLO per la funzione del "FERMO MACCHINA": ha dei contatti puliti (NO-Com-NC) che possono sopportare fino a 5A @ 250Vac. Inoltre, questo relè può essere programmato per funzionare sia come MONOSTABILE (singolo impulso da 600 ms) oppure come BISTABILE (in questo caso è necessario agire sul pulsante di RESET per riportare i contatti allo stato di riposo). Il LED Rosso (DL1 - SENSOR) si accende ogni volta che il sensore rileva un oggetto (questo vale anche se si usa un semplice microswitch come "sensore"). Ad esempio, utilizzando un sensore infrarossi a riflessione (del tipo con catarifrangente), il LED rimane acceso fino a quando il raggio IR è ostruito da un oggetto: quando l'oggetto esce dal campo di rilevazione, il LED rosso si spegne. L'assorbimento massimo del circuito non raggiunge i 80-100 mA e dipende dal tipo di modulo LCD, dal numero di LED accesi e dal sensore utilizzato. MORSETTIERE [ TORNA ALL'INDICE ] Di seguito, una breve descrizione delle morsettiere presenti sulla scheda.
COLLEGAMENTI [ TORNA ALL'INDICE ] Nell'immagine seguente è riportato il tipico collegamento del CONTAPEZZI con un sensore ad infrarossi completo di catarifrangente: nello schema è stato utilizzato il sensore ad Infrarossi modello E3JK-R4M2 che possiede una portata massima di quasi 4 metri ed un'uscita di tipo relè (contatti puliti NC-Com-NO). Per alimentare il sensore è sufficiente collegarsi al morsetto di ingresso dei +12V. Nell'immagine seguente, invece, è riportato lo schema di collegamento con un sensore ad infrarossi siglato E18-D80NK che possiede una portata massima di 80 cm. ma che, rispetto al precedente, è del tipo O.C. (Open Collector, NPN). Per alimentare il sensore, scegliere un punto sulla scheda dove sia presente la tensione +5Vcc. IMPORTANTE - I collegamenti sulle morsettiere M2, M3 e M4 (specialmente se molto lunghi) dovrebbero essere fatti sempre con il cavetto schermato per evitare qualsiasi tipo di interferenze che potrebbero portare a falsi conteggi. La calza metallica va collegata al morsetto contrassegnato dal simbolo . COMANDI E SPIE [ TORNA ALL'INDICE ] I pulsanti di comando del CONTAPEZZI sono quattro:
I LED del contapezzi sono 3 (più un quarto LED sulla scheda relè):
Nel CONTAPEZZI ci sono anche 2 interruttori (già descritti nel paragrafo "MORSETTIERE"):
PROGRAMMAZIONE FERMO MACCHINA [ TORNA ALL'INDICE ] L'unico valore da programmare per la funzione FERMO MACCHINA è il numero dei pezzi (max. 999999) che si dovranno raggiungere per far scattare il relè. • ENTRATA IN PROGRAMMAZIONE
• IMPOSTAZIONE DEL NUMERO DEI PEZZI PER IL FERMO MACCHINA
• USCITA DALLA PROGRAMMAZIONE
RESET AUTOMATICO (Autoreset) [ TORNA ALL'INDICE ] Questa impostazione è utile per riportare automaticamente il conteggio a 0 quando è stato programmato il valore per il FERMO MACCHINA (Autoreset). In questo caso, infatti, quando il contapezzi raggiunge il numero programmato, attiva il relè e, contemporaneamente, azzera il conteggio (che, come accennato, ripartirà sempre da 0). Per attivare il RESET AUTOMATICO, tenere premuto il pulsante CONFIRM PROG. durante l'accensione del contapezzi fino a quando sul display LCD non apparirà uno dei seguenti messaggi:
Ogni volta che si accende il contapezzi tenendo premuto il pulsante CONFIRM PROG., si alterneranno i due messaggi Reset ON (attivato) e NO Reset (non attivato). IL PANNELLO POSTERIORE [ TORNA ALL'INDICE ] All'accensione, il CONTAPEZZI si predispone con le ultime modalità impostate dall'utente (Direzione del Conteggio, Scansione Audio dei pezzi e Reset automatico al Fermo Macchina) ed è subito pronto per il conteggio. Nel pannello posteriore, oltre all'interruttore di accensione e a quello per settare la modalità di funzionamento del relè (RELAY PULSE, già descritto nel paragrafo "COMANDI E SPIE"), è stato installato il mammuth che fa capo ai contatti NO-COM-NC del relè e la presa DIN (siglata "SENSOR") per il collegamento al sensore di rilevazione oggetti. Sulla presa DIN pentapolare puo' essere prelevata l'alimentazione per l'eventuale sensore (+5Vcc oppure +12Vcc). Inoltre, sulla DIN, sono presenti i due pin per l'ingresso dei segnali provenienti dal sensore (o altro dispositivo di rilevazione). Qui a destra è riportata la pedinatura della presa DIN Pentapolare. Quando si usa il cavetto schermato per i pin Signal, collegare la calza metallica sul pin siglato "shield". LE FOTO DEL CONTAPEZZI [ TORNA ALL'INDICE ] Cliccando sul seguente link, potete scaricare il datasheet del microcontrollore PIC16F886: per tutte le altre richieste (firmware HEX, domande, suggerimenti, ecc.) utilizzare SEMPRE la sezione COMMENTI.
|