‘n Spanningsbeheerde relê.

Thys Maree (ZS6MJM)

4x4 Entoesiaste weet dat jy nie jou kampyskas direk aan die voertuig se battery kan koppel nie. Jy het jy met die beste voornemens ter wêreld besluit om die yskas af te skakel nadat jy gestop het, maar met die geharwar by die aankoms van die kamplek het jy vergeet!  Ja, jou voeruig se  battery gaan verseker oornag ontlaai en dan sit jy met ’n probleem.

Die oplossing is natuurlik om ’n relê tussen jou  voertuig se battery en jou 12V kampgoeters te installeer. ‘n Spanningsbeheerde relê kan gekoop word maar hulle kos ’n aardige bedraggie en verder wat is nou die pret daaraan om ’n gekoopte een te installeer of te laat installeer.

Met hierdie baantjie kan jy nou self jou relê, wat jy ongelukkig maar sal moet koop, beheer. Die relê kan natuurlik sonder elektronika so gekoppel word dat krag slegs voorsien word sou die enjin aan wees. Maar dit beteken steeds dat die krag aan sal  wees al laai die alternator nie. En dit is nie so maklik om met die nuwe voertuie van vandag  toegang tot die spesifieke punt te kry nie  Daarom die elektroniese bordjie wat die spanning van die battery meet en daarvolgens besluit of die alternator laai of nie. Sou die laaiproses ophou, sal die batteryspanning val en die bordjie sal die relê afskakel.

My spesifikasies vir die ontwerp was soos volg:

·         Skakel relê aan teen  13,6V

·         Skakel af indien spanning onder 13.3V val

·         'n LM79L05 word gebruik om -5V (of meer korrek:  battery minus 5V) vanaf positief te kry. Rede:

·         Skakeling moet aan positiewe kant gedoen word.

·        Transistor drywer word sodoende oortollig gemaak want MOSFET kan direk vanaf  PIC gedryf word.

·         Dit beteken dat alle lesing 'n spieelbeeld is, m.a.w hoe hoe hoër die spanning is hoe laer is die lesing van die ADC (analoog-na-digitale omstter)  Dit kos nogal kophou om hierdie sommetjies te doen!

·         PIC12f1572 word gebruik. (Goedkoopste)

·         MOSFET: TPC8114

·         Klokspoed: 34kHz (intern gegenereer)

·         ADC (Analoog na digitale omsetter): Geweegde gemiddeld word gebruik om ruis uit te skakel. ADC lesing word bygetel by 7/8stes van vorige lesing.

 

Programmatuurgereedskap:

·         Microchip se MPLAB X IDE v3.50 (Gratis)

·         PICKIT 3 programmeerder. Word ook gebruik om ontfouting te doen. (± R1000)

·         PIC12f1572 gebruik omrede

o   Ek een gehad het,

o   Goedkoop is (<R20)

o   Dit ingeboude ontfouting het wat met PICKIT 3 gebruik kan word.

·         XC8 van Micochip se C saamsteller. (Gratis)

 

Die baantjie lyk soos in skets 1 aangedui. ’n Paar opmerkings:

1.       Diode D1, ’n 14V zener beskerm die baan teen hoë positiewe spanningspulse. Sou ’n negatiewe puls van die alternator se kant kom, sal die diode in sy voorwaartse rigting die puls knip.

2.       Diode D2, ’n hoë spoed diode moet die negatiewe puls wat die relê sal genereer wanneer dit afgesit word, knip.

3.       Konnektor J is om PIC te programmeer deur middel die PICKIT3 programmeerder.

4.       Weerstande R5 en R6 vorm ’n spanningverdeler wat se uitset binne die spanning van die PIC beheerder moet val. Die PIC gebruik sy eie spanning as verwysing wanneer die analoog na digitale omsetting (ADC) gedoen word. Die PIC program sal gekalibreer moet word afhangende van die akkuraatheid van die spanningsreguleerder en die twee weerstande.

5.       Die stroomverbruik van die bordjie is ± 4mA (sonder die relê). Die PIC gebruik omtrent 1mA. Die grootste gebruiker van die stroom is die LM79L05.

6.       Nadat die bordjie voltooi is, moet dit met sorg verseël word. Vog sal die hele projek reuneer. Ek het die bordjie met kleurlose lak gespuit voordat ek dit in ’n waterdigte houertjie geïnstalleer het. ’n Pilhouer werk goed.

Skets 1

Die programmetjie wat die beheerder beheer, is kort. Om die PIC op te stel is baie meer moeite, maar hier help MPLAB se Code Configurator om die proses te vereenvoudig.

Die hoofprogram:  (Die volledige kode)

#include "mcc_generated_files/mcc.h"

/*

                         Main application

 */

void main(void)

{

    // initialize the device

    SYSTEM_Initialize();

   

    unsigned int V1, Vgeweeg;      //V1 is die veranderlike vir die ADC lesing.

//Vgeweeg  - geweegde gemiddeld.

    LATAbits.LATA2 = 1;  // Skakel rele af

    while (1)

    {

       V1 = ADC1_GetConversion(3);  //Begin omsetting

       

        Vgeweeg = Vgeweeg - (Vgeweeg >> 3); //Bereken 7/8stes van vorige lesing

        Vgeweeg = Vgeweeg + V1;                                  // Tel nuutste lesing by. Dus elke nuwe lesing

                                                                                //is 1/8ste van gemiddeld (geweegde gemiddeld)

        if (Vgeweeg > 4216){                              //Spanning laer  as 13.3V

            LATAbits.LATA2 = 1;                            // Skakel rele af

            __delay_ms(10000);                           // Verhoed dat relê begin aan en af skakel (bons))

                        //Beteken ook dat relê eers na minuut of twee aanskakel

                        //nadat alternator begin laai het.

                        //Tydvertraging net van toepasing terwyl relê af is.

        }

        if (Vgeweeg < 4128) {                             //Spanning hoër as 13.6V

            LATAbits.LATA2 = 0;                            // Skakel rele aan

        }            

    }

}

/**

 End of File

*/

 

Om hierdie baantjie oor te sit op ’n ATMEL beheerder, soos die ATTINY85, behoort maklik te wees. Onthou net die ATTINY se pennetjies is anders as die PC12F1572 s’n. Natuurlik kan ’n Arduino beheerder soos die Nano, ook gebruik word, maar, weens die koste, is dit nie die moeite werd nie.

 

Geniet die projek!