Un progetto che mi interessava particolarmente era
realizzare interamente un'apparecchiatura per il rilevamento di pannelli
di grosse dimensioni.
Precedentemente avevo gia' realizzato un'applicazione di questo tipo
per la ditta dove lavoro utilizzando l'hardware di una ditta esterna e
lavorando sulla parte software programmando in C , interfacciandomi alla
parte di gestione dello scanner scritta in Assembler.
Siccome questa apparecchiatura e' molto costosa e limitata nelle
capacita' di calcolo , mi interessava creare un'apparecchiatura innovativa
sia come componentistica che come capacita' di calcolo e capace di essere
utilizzata in vari settori per applicazioni differenti.
Per realizzare questo progetto ho incominciato un'attivita'
di ricerca a 360 gradi sul mercato per la scelta di dispositivi ad infrarossi
che soddisfassero alle caratteristiche di affidabilità , semplicita'
d'uso , capacità di trasmettere ad un metro di distanza , capacita'
di oltrepassare fogli di mylar di 2 decimi di millimetro , usati nel settore
del legno per sostenere l'impiallicciatura dei pannelli nel passaggio tappeto-pressa.
La ricerca e' stata conculsa felicemente utilizzando dei sensori della
Osram sia come
emettitori che come ricevitori.
Il ricevitore è un gioiello di tecnologia , comprendente al suo
interno la decodifica Ir 880nm uscita Schmidt trigger TTL/CMOS compatibile
, filtro per la luce ambientale , tempo di lettura inferiore ai 15us , angolo
di lettura molto direzionato (+/- 12°) , dimensioni 3 x 4 x 2.2
mm !
Una volta risolto il problema dei sensori , ho dovuto pensare ad un sistema
di scansione e decodifica dei fasci , e per questo mi sono affidato ai microcontrollori
della Microchip , ed
in particolare il PIC16F877
, un microprocessore a 20Mhz con capacita' di memoria di 368 bytes di ram
, questo solo per il progetto in quanto che tale microcontrollore è
inadeguato come memoria per gestire un elevato numero di zone e soprattutto
il dialogo con la seconda seriale emulata per il dialogo col PLC , però
per presentare il progetto al corso e testare le potenzialità del sistema
mi andava piu' che bene , tenendo conto che a breve sarebbe uscito il microcontrollore
PIC18F452 con 40Mhz
di clock e ben 1536 bytes di ram e soprattutto pin to pin compatibile con
il PIC16F877.
Per la gestione dell'encoder mi sono affidato ad una decodifica hardvare
della direzione in avanti/indietro dell'encoder , interfacciato al PIC16F877 con un altro Microcontrollore
, anche lui dotato di seriale con il solo compito di inviare dei segnali
di strobe a intervalli prefissati al PIC16F877 corrispondenti al passo richiesto per le acquisizioni.
Il passo viene impostato tramite la seriale solo in fase di installazione
dell'apparecchio ed il pic usato per la decodifica dell'encoder è
un PIC16F628.
La gestione delle schede di ricezione viene effettuata tramite un altro
PIC16F628 x
ogni scheda di 16bit su cui viene impostato il numero di scheda tramite Dip-Switch
e gestito un bus di comunicazione a 8 bit con il PIC16F877.
Il programma è stato interamente realizzato in linguaggio C.
Il microcontrollori sono stati acquistati alla Elettroshop che pratica
dei prezzi molto interessanti per gli hobbysti.
Il progetto ha ottenuto il 1° Premio del corso di Automazione e Microcontrollori
della SIAM (attestato
della Regione Lombardia).
|