Tacòmetre Digital per a Harley Davidson Sportster (Part 7 - Components)
15 May 2016 - 0 CommentsPart1 / Part2 / Part3 / Part4 / Part5 / Part6 / Part7 / Part8 / Part9 / Part10 / Part11 / Part12 / Part13 / Part14 / Part15
En aquesta part llistaré els components i circuits integrats (CI) que he utilitzat. A continuació teniu un diagrama bàsic del circuit (l’esquemàtic sencer detallat vindrà a la secció posterior).
Microchip PIC18F2553
El PIC18F2553 és el cervell del projecte. Us mentiria si digués que vaig escollir aquesta marca i model en concret per ser el que incorporava les millors prestacions en relació amb el preu. Simplement el vaig escollir perquè era la familia de MCU amb la qual vaig començar en aquest món de l’electrònica digital i era el model el qual tenia un nombre de pins suficients per poder desenvolupar el compta-revolucions que tenia al cap.


Característiques i requeriments:
-
- Velocitat de processament: segons el seu pdf d'especificacions, aquest PIC pot arribar fins als 48MHz. Per aquesta aplicació, 20MHz seran suficients.
- TO: funcions relacionades amb l'enviament i recepció de missatges del protocol SAE j1850.
- T1: codi principal (main).
- T2: regular la lluminositat via control PWM pel LED display driver.
- T3: enviar la informació al driver dels 7-Segments (CLK). - I/O: necessaris pel botó, transistors, senyals cap al driver dels 7-segments, etc.
- Interrupcions: en necessitarem només una per poder parar temporalment el loop infinit i llegir el missatge entrant pel bus J1850.
- Timers: n'hi ha 4 disponibles i els utilitzaré de la següent manera.
- PWM: regular la lluminositat via control PWM pel LED display driver.
- USART: Si volem tenir la possibilitat de fer un datalogger aquesta característica ens anirà bé.
A part, necessitarem també:
- In-Circuit Debugger/Programmer: és a dir, un Programador específic per PICs. En aquest projecte vaig utilitzar el PICkit 2 i PICkit 3, de la mateixa casa Microchip Technology. Aquests aparells es connecten entre l’ordinador (via USB) i el circuit integrat programable o PIC (via 3 pins; PGC, PGD i MCLR) i et permeten reprogramar el PIC amb el codi que has compilat previament.

- MPLAB és un IDE (Integrated Development Environtment) o editor pel desenvolupament d’aplicacions en microcontroladors PIC. Et permet editar i compilar codi que després, amb ajuda del PICkit, podràs programar al teu PIC.
Micrel/Microchip MM5450YN
Si el PIC és el cervell del projecte, l’MM5450 és el cor. Aquest CI et permet controlar un munt de pins d’una manera molt fàcil. Com a curiositat, segons el seu web, al 2015 Microchip va comprar Micrel.


Característiques principals:
-
- Control de lluminositat: Aquest CI té 1 pin (#19) específic per regular la lluminositat de tots els pins. Amb un senyal PWM del PIC i una resistència podrem regular la lluminositat digitalment variant el DC (Duty cycle) del senyal PWM.
- Serial Data input: Els 34 inputs d'aquest LED driver es controlen mitjançant 2 pins; un senyal de rellotge (CLK) i un senyal de data (DATA).
- 34 pins: El següent diagrama mostra com s'utilitzaran tots els pins de l'MM5450. L'alternativa seria la de multiplexar els 7-Segments, això em portaria a consumir 12 pins en comptes de 29, però per causes que explicaré a la Part 14 (Problemes durant el projecte) vaig optar per aquesta configuració.
LM340T-5.0/NOPB
Sens dubte, per a mi aquest Regulador de Voltatge Fix de 5V de Texas Instruments (TI) ofereix la millor solució en format circuit integrat per tenir una font d’alimentació senzilla, fiable i a 5V.

Característiques:
- Capaç de proporcionar un màxim d’1A de corrent a la sortida. S’ha de combinar amb un heat sink (disipador de calor).
- Protecció contra excés de temperatura.
- Protecció contra curtcircuits (limitació de corrent)
Trasnceiver
Per poder llegir els senyals del bus J1850 necessitem primer adaptar els nivells de tensió entre el bus i el PIC. Hi ha circuits integrats com el MC33990 (NXP Feescale Semiconductor) o HIP7020 (HARRIS Semiconductor), però al ser una tecnologia tan antiga estan descatalogats i trobar-los no és tasca fàcil.
No obstant, actualment utilitzo el MC33990 per enviar senyals de marxa i revolucions fictícies a un bus J1850 que uneix aquesta unitat de control amb el compta-revolucions, d’aquesta manera puc introduir millores sense necessitat d’anar físicament a la moto.

L’alternativa a aquests circuits integrats és utilitzar transistors i resistències per adaptar els nivells entre el bus i el PIC. Com només necessitarem llegir del bus, el circuit quedarà molt simplificat tal i com es pot veure a la imatge inferior. Un detall a destacar és veure com canvien els nivells de voltage a mesura que avancem pel circuit i com queden invertits al final (veieu la captura de l’oscil·loscopi per etendre-ho millor). Si es vol utilitzar el mateix codi que amb el MC33990, a nivell de software només s’haurà d’invertir el valor de l’entrada al PIC amb un “!” i el més important, canviar el tipus d’interrupció per una de tipus “flanc de baixada”.

Índex de projecte:
Part1 /
Part2 /
Part3 /
Part4 /
Part5 /
Part6 /
Part7 /
Part8 /
Part9 /
Part10 /
Part11 /
Part12 /
Part13 /
Part14 /
Part15