Gas spis & vattenrenare med fri energi (8 / 10 steg)
Steg 8: Krets 2 diagnostik & kontroll
För att börja på styrkretsen måste några beslut göras att bestämma hur data kommer att behandlas. Dessa alternativa konfigurationer är följande: A. använda en enkel Pic mikrokontroller controller flera remote A.D.Cs och använda en A.D.C för varje sensor insignal. B. Använd en enkel Pic mikrokontroller med en avlägsen A.D.C och remote reläer växla mellan sensor kopplad till A.D.C ingång. C. använda en något mer komplex bild med en inbyggd A.D.C modul att mata in alla sensormätningar direkt till mikrokontroller.
För projektet beslutades att alternativ C av en Pic med byggt i A.D.C var ett bättre val på grund av mindre kretsar inblandade och därför förhoppningsvis mindre saker som kan möjligen gå fel i tillverkningen. Pic som valdes var 28 pin 16F870 enligt detta upp till 5 A.D.C kanaler med 21/o stift totalt. Detta valdes också för att när du kör på en klockfrekvens på 4 Mhz själva programmet hastighet är 1 miljoner instruktioner per sekund. Detta är uppenbarligen mer än tillräckligt att kontrollera en enkel L.C.D skärm, några sensorer och några elektroder.
Den första kretsen utformas för Pic 16F870 var bara avsedda att tillåta mikrokontroller köra och att finnas till i kretsen Seriell programmering eller ICSP (se figur 30). Banan är designad av anvisningarna för timing och elektriska setup på chips databladet.
Nästa steg i utvecklingen för kretsen var att bygga ett LCD-gränssnitt till Pic16F870. LCD-skärmen som används är en 20 karaktär av 2 raders display med valfria bakgrundsbelysning (se fig. 31).
LCD-skärmen är kopplats ihop med en 16 pin anslutning där 11 eller 7 stift måste vara gränssnitt direkt av mikrokontroller. Av dessa 7 eller 11 är 1 chip aktiverar, 1 är Läs- eller inte skriva, 1 data puls aktiverar och andra 4 eller 8 stiften för databussen indata/utdata. För att undvika att använda alltför många microcontroller indata/utdata stift dessa 7 stift kan kondenseras ner till två stift med en enkel IC med 4 flip flops, 74LS174 (se Fig 32). Andra 5 stiften på LCD-skärmen är för marken, ingång spänning 5V, kontrastkontroll via potentiometer 10K och de sista två stift som används för anslutning till en inverter till makten bakgrundsbelysningen. Med LCD uppdagades arbetar det att bakgrundsbelysningen inte var nödvändigt för LCD fungera korrekt så en inverter inte erhölls för att driva kretsen. 74LS174 i kretsen nedan fungerar genom att ta en seriell in data och sedan flytta dessa data i hela flip flops tills det finns fyra bitar av information att vidarebefordra till LCD via dess fyra eller åtta pin data bussar. När sist av data som läses in i Återställ PIN-koden blir hög avbryta ut effekten av 1n914 dioden orsakar en högre spänning på databussen sedan vanliga. När denna onormala spänningsnivån inträffar finns det nuvarande kvar att bära att aktivera PIN-koden på LCD till klockan fyra bitar av data i den LCD minne.
Genom att kombinera 2 stift LCD krets med ICSP kretsen och ansluta data och klocka stiften till stift C4 och C5 respektive vi nu har en PC programmerbara LCD controller (se Fig 33). Pic16F870 programmerades med assembler kod för 2 stift LCD (se programvara listor) via Velleman K8048 PIC programmerare med ICSP utgång huvud. Med LCD kretsen arbetar och Visa text är till controller banan nu redo att ta i sensormätningar och sparar data via displayen. Om du vill skicka informationen till LCD-skärmen visar mikrokontroller måste skicka tecken i form av två hexadecimala tal eller 8 binära tal.
För att genomföra sensorerna måste mikrokontroller använda dess ombord ADC modul för att tolka värdena gått till ADC aktiverade portar. Dessa ADC aktiverade portar är 5 stiften i hamnen A på Pic16F870 mikrokontroller. ADC modulen ombord mikrokontroller styrs via användning av flera åtta bitars register inbäddade inuti några av chips minnesplatser. Dessa särskilda ADC register kallas ADcon0, ADcon1, AdresL och AdresH. ADcon0 minnesplats register styr driften av ADC, hastigheten på jämförelsen och utlösande av konverteringsprocessen. ADcon1 registret kontrollerar adressering för utgångsstift och kontroll att slå på eller av referensspänningen. För projektet var portarna A0 till A2 aktiverats med ADC funktion att ge input portar för temperatur, tryck och batteri nivå. Också i denna ADcon1 register är alternativet att motivera 10 bitars svaret till vänster eller höger sida av en 16-bitars register. 16-bitars register är verkligen gjord av två 8-bitars register inuti mikrochip som är det tidigare namnet AdresL och AdresH. Referensspänningen var inställd på + 5V eller VCC detta alltid kommer att vara stabil så länge det finns ström att köra mikrokontroller som det som levereras från en 12 volt källa genom en 74LS05 spänningsregulator.
Temperaturgivare eller termistor konfigurerades av consulting enhetens datablad och titta på temperaturen till motstånd graf. Tre värden för temperatur valdes att konfigurera så att deras produktion på ADC skulle ge en läsbar mätbart värde liknar databladet. Detta har beräknats genom att dividera det totala motståndet från 5V DC marken 5V. Krävs spänning är det uppdelat av föregående nummer. Som kan ses i figur 34, har motstånd för termistor spelats på flera viktiga värden för att kalibrera ingång kretsar. Termistor var då ansluten till controller kretsar med en partvinnad anslutning. Denna typ av anslutning valdes på grund av dess höga immunitet för buller och dess låga kostnader att omsätta i praktiken. För att skapa partvinnad, var de två ändarna av en lång tråd tejpade till den roterande axeln av en handborr. I mitten av bit tråd säkrades då, så att kabeln för att vara lindas runt om honom. Genom att hålla tråd lärt något alls tider vridningen av kabeln kan göras enhetligt som bidrar till att öka kablar buller immunitet. Ett värde för halvvägs genom den exponentiella Svaren av termistor valdes vid cirka 145 ohm. Felet kan sedan beräknas genom mikrokontroller att ge en noggrann avläsning.
R uC = V uC / (VCC / R totalt)
Batterisensorn konstruerades i en liknande herrgård till temperaturgivare med total spänning varierar i stället för motståndet. 12 volt från shunten regulatorn är variabel beroende på laddningsstatus och laddning i batteriet. 12 volt förbands sedan över en potentiell divider krets att få spänningen ner till en nivå som kan läsas av ADC på mikrokontroller. För att kunna ge noggranna avläsningar av spänning på LCD måste motstånden igen beräknas och räknas om för att ge en låg spänning som är en linjär representation av indata 12 volt. Se som systemspänning kan egentligen bara gå mellan 14 volt vid en max och 8 Volt åtminstone dessa är värdena som användes för att beräkna de potentiella divider resistor värdena.
Tryckgivare men var inte så lätt att konfigurera och visade sig vara ganska besvärlig för att få projektet arbetar. Kopplingsschemat för anslutning från enheten databladet (Fig. 35) visar fyra pin tryckgivaren i en wheatstone resistor bro krets. Från diagrammet det togs än enheten kom hosting överbryggande kretsen och det skulle vara ett enkelt fall av ansluter positiva och negativa Vo på positiva och negativa ingångarna på en op-förstärkare. Enheten drivs upp och verkade fungera som gav jag en utgång i ADC. Men produktionsvärde för att ADC från tryckgivaren var fast och varierar inte på alla med tryckförändring. På det andra titt på kopplingsschemat datablad (Fig. 35) beslutades att det var möjligt att enheten kanske inte har byggt i bridge motstånd. En krets byggdes upp runt tryckgivaren fungera balanserad överbryggande av wheatstone bridge. Produktionen av bridge circuit var igen matas in av en op förstärkare att ge skillnaden av positiva och negativa som en spänning. När tryckgivaren drivs upp i bridge circuit det matas igen ett fast tal till ADC som anger att antingen delen var defekt eller det var något till följd av elektroniken som inte var fullt ut förstått. Alla andra försök att gränssnittet tryckgivaren orsakade mikrokontroller kraschar eller köra på ett mycket bisarrt sätt.
På grund av de ovanstående svårigheterna med digital tryckgivaren var det inte möjligt ska ingå i projektet. Men med en backup analog manometer trycket inne i produktion kammaren kan fortfarande övervakas noggrant så det inte är en stor förlust för systemen totala prestanda.
Nästa enheten vara ansluten till styrenheten kretsen var att nivågivare. Detta bestod av en påle med en magnetisk flottör som kunde röra sig längs stången. På vardera änden av stången var mössor att stoppa flötet från lossnade och reedbrytare känna närheten magneter. Både växlar är öppen krets när magneten är i Polen. Med hjälp av ett enkelt motstånd över värdet av 4.7K Ohm ansluten från mikrokontroller data stift till marken tillåter extra ström från växeln att flöda runt mikrokontroller utan att orsaka någon skada. Detta motstånd är också viktig som en enhet att ladda spänningen över orsakar spänningen till vara fastställbara vid denna korsning. Kontrollermjukvaran har nu uppgraderats för att inkludera alla sensing enheter (förutom digital trycksensorn) för att ADC värdena för varje sensor lästes alternativt och data från sensorer var utdata till LCD.
Tabell 1 beskrivs för varje ingång / utgång pin används från Pic16f870 i detta projekt.