• No results found

Livslängd

In document Mikrosensorer i nätverk (Page 32-43)

3.1 Beskrivning av systemet

3.2.3 Livslängd

Sensormodulerna måste fungera i flera år utan batteribyten, därför är det av största vikt att få ner strömförbrukningen till en så låg nivå som möjligt. Då modulen är försatt i viloläge under större delen av sin livstid är det förbrukningen av ström i detta läge som är den väsentligaste att optimera, då den i princip sätter modulens snittförbrukning.

I mikrokontrollerns strömsnålaste viloläge förbrukar den endast 0,1 uA. Den har då kopplat bort det mesta och är i princip helt död. Den går att väcka av en extern händelse som egentligen är en nivåändring på en av dess ingångar. Den kan alltså vakna upp genom en knapptryckning, kontaktslutning, eller genom att realtidsklockan genererar ett avbrott, som i detta fall är detsamma som att gå från en hög nivå till en låg. Figur 3.2,

sändarplattformens kretsschema, visar de olika delarna och hur de är sammankopplade, iakttag särskilt mikrokontrollerns ben 2 och 3, där de olika externa händelserna är anslutna.

Den totala, teoretiska, strömförbrukningen för sensormodulens viloläge blir i enlighet med ovan, förbrukningen hos mikrokontrollern plus förbrukningen hos realtidsklockan

inklusive eventuella läckströmmar hos de olika enheternas in och utgångar. Tyvärr visar det sig att de sammanlagda läckströmmarna, om än enskilt inte så stora, vida överstiger

förbrukningen hos både realtidsklockan och mikrokontrollern. Här gäller verkligen ordspråket att många bäckar små bildar en stor å. Typiskt ligger läckströmmen hos varje ut- respektive ingång på 100 nA vilket ger en förbrukning, bara från läckströmmarna, på cirka 1.5 uA. Den totala strömförbrukningen i viloläge, d.v.s. summan av förbrukningen hos varje enskild del blir

Tabell 3.2: Strömförbrukning hos sändaren

Mikrokontroller 0.10 µA

Realtidsklocka 0,25 µA

Läckströmmar 1.50 µA

Totalt 1.85 µA

Detta ger en dygnsförbrukning enligt ekvation 3.7..

dygn

Förbrukningen för hela sensormodulens sändningsfas är som tidigare nämnt den sammanlagda förbrukningen hos varje enskild enhet. Själva sändaren kräver typiskt 14 mA vid sändning på högsta effekten, inräknat processorn som kräver ca 0,5 mA blir den totala förbrukningen för mikrokontrollern knappt 15 mA. En ungefärlig tid för sändning av ett statusmeddelande ligger på två sekunder vilket ger en förbrukning per meddelande på 30 mA. Om två statusmeddelanden ska sändas per dygn ger detta en förbrukning på 16,7 uAh/dygn.

Den totala förbrukningen per dygn är alltså summan av förbrukningarna för sändning och viloläge vilket ger,

dygn

Används ett batteri på 150 mAh kommer detta alltså att räcka i,

år

Detta är teoretiska siffror och med ett bra batteri, mindre än 1% självurladdning, och ett normalt inomhusklimat bör en livslängd på 5 år vara teoretiskt möjlig att uppnå.

Den praktiska förbrukningen för sensormodulen i viloläge uppmättes till knappt 3 uA, vilket är något högre än den teoretiska beräkningen där uppgifter från databladet använts som indata. Förbrukningen vid sändning stämmer väl överens med de teoretiska

beräkningarna. På samma sätt som ovan utförda beräkningar ger detta en dygnsförbrukning på 85 uHh/dygn. Detta ger en livslängd, givet de tidigare förutsättningarna på batteri och miljö, på ungefär 4 år.

3.3 Mottagarmodul

Mottagaren, är uppbyggd kring rfRXD0920 som är en UHF ASK/FSK/FM-mottagare.

Mottagaren används i dagsläget med ett utvecklingskort uppbyggt kring en PIC18F452. I framtiden är tanken att även mottagarmodulen ska byggas kring en PIC12F675 och då naturligtvis integreras på samma kretskort.

Mottagaren har specifikationer enligt tabell 3.3.

Tabell 3.3: Specifikationer för mottagaren Mottagarens bandbredd: 800 MHz till 930 MHz

Maximal datahastighet: 40 kbps FSK och 80kbps ASK IF (Intermediate frequency) 455 kHz till 21.4 MHz

RSSI: 70 dB

Deviation ±5 kHz till ±120 kHz

Mottagarmodulen har byggts upp enligt figur 3.10.

Figur 3.10: Kretsschema för mottagarmodulen.

Antennen som valts till mottagarmodulen är en större och effektivare antenn än den som används i sändarmodulen. Det är en dipol halvvåglängdsantenn med specifikationer enligt tabell 3.4.

Tabell 3.4: Specifikationer för mottagarmodulens antenn

Centerfrekvens 868 MHz

Bandbredd 25 MHz

Våglängd ½ VSWR <1.9

Impedans 50 ohm

För mottagarens funktion är det av stor betydelse att filtrera bort oönskade, inkommande frekvenser. För att göra detta används ett s.k. SAW-filter. En viktig frekvens för saw-filtret att filtrera bort är den s.k. spegelfrekvensen, mer om denna längre fram. Det SAW-filter som använts, har en centerfrekvens på 868,35 MHz, en bandbredd på 1200 kHz och en förlust på 4,0 dB.

Impedansmatchningsnätet för SAW-filtret mot LNA-ingången har först beräknats med Zmatch och sedan verifierats med ekvation 3.10. För nätets uppbyggnad, se figur 3.10.

C1 = 2 pF

Komponenter med dessa värden finns inte att köpa, därför valdes de bäst lämpade värdena. Dessa blev:

L = 5.6 nH (Q ≈ 10) C2 = 3.9 pF (Q ≈ 1000)

Detta ger reflektionskoefficienten

03

vilket är ett teoretiskt bra värde.

Den mottagare som visas i figur 3.11 är den mottagare som använts i projektet, d.v.s.

rfRXD0920.

Figur 3.11: Illustration av rfRXD0920.

När den inkommande signalen har bandpassfiltrerats av SAW-filtret, så förstärks den i en LNA (Low-Noise Amplifier), vars primära syfte är att minska det totala bruset hos mottagaren, vilket gör att känsligheten ökar.

Mixerns uppgift är att multiplicera den inkommande frekvensen med den frekvens som skapas av den lokala oscillatorn, PLL. Den frekvens som kommer ut från mixern kallas för intermediate frequency, IF. Det är alltså den frekvens som används som mellansteg efter mixerns omvandling av en mottagen signals högre ursprungsfrekvens. Vi har valt att använda 10,7 MHz som IF. Detta är en vanlig frekvens att använda sig av. Med vetskap om vilken IF som ska användas kan kristallfrekvenserna för ”high- och low-side

injection” räknas ut.

26.8 MHz valdes till vår mottagarmodul, men generellt om High eller Low ska väljas beror i största del på den närliggande omgivningens RF-spektrum. Det som eftersträvas är att försöka placera de s.k. spegelfrekvenserna i ett frekvensområde som är relativt tomt på kommunikation.

Spegelfrekvenser är frekvenser som ”lurar” mixern att producera samma utsignal som om det vore den korrekta insignalen till mixern. Beräkningar enligt nedan förklarar

fenomenet.

Två signaler som multipliceras beskrivs av följande ekvation

)

Utsignalen från mixern blir

Spegelfrekvenserna som är viktiga att filtrera bort är, för High-side, frf + 2fif eller, för Low-side, frf – 2fif. Om dessa frekvenser är insignaler till mixern fås följande IF

if

Det förklarar varför det är väsentligt att filtrera bort spegelfrekvenserna. Det skulle då medföra, att spegelfrekvensen ger en IF, men som innehåller felaktig information.

Med 868.3 MHz som centerfrekvens fås följande frekvenser från den lokala oscillatorn MHz fLO-Low har valts i detta projekt vilket gör att utsignalen från mixern blir

MHz f

frfLOLow =868.3−857.6=10.7 (3.21) Nu har bärvågen nedkonverterats till 10.7 MHz. Signalen förstärks och bandpassfiltreras i

efterföljande steg. IF-förstärkaren levererar också ström till summeringsförstärkaren för RSSI, Receive Signal Strength Indicator.

Begränsaren får sin insignal från IF-förstärkaren och tar bort alla amplitudvariationer från 10.7 MHz. Detta är nödvändigt för att inte demodulatorn ska demodulera

amplitudvariationerna utan enbart demodulera frekvensvariationerna. Om det också skulle finnas amplitudvariationer, så skulle detta medföra minskad känslighet hos mottagaren och introducera bitfel i den återskapade datasignalen.

RSSI-indikatorn är ett summeringsnätverk som tar utsignalerna från IF-förstärkaren och begränsaren, används för att indikera signalstyrkan.

Slutligen så kommer signalen fram till demodulatorn, som delar upp IF-signalen i två lika delar, varefter ena delen vrids 90° och multipliceras ihop med den andra, vilket ger den återskapade informationen. Det som denna del av mottagaren gör är att, från

frekvensvariationer skapas amplitudvariationer, som genom en komparator återskapar dataströmmen.

Känsligheten hos mottagaren har praktiskt testats genom att mata mottagaren via en kabel, med en signal från en signalgenerator vars uteffekt kan avläsas och steglöst varieras.

Signalen från signalgeneratorn har samma moduleringsform, deviation och bithastighet

som de sensormoduler tänkta att användas i systemet har. Det visade sig att

mottagarkänsligheten blev 75 dBm mot förväntade 100 dBm som specificerats i kretsens datablad. Att inte det specificerade databladsvärdet uppnås beror exempelvis på att SAW-filtret har ingångsförluster på några dB men det förklarar inte mottagarens brisfälliga känslighet.

3.4 Mjukvara

Utvecklingen har skett i programspråket C och sättet på vilket programmeringen utförts kallas reaktiv programmering, utifrån ordet reaktiv som i detta betyder att reagera på en händelse som till exempel en kontaktslutning. När inte mikrokontrollern reagerar på en händelse är den satt i ett viloläge där den förbrukar endast en liten del av sin normala ström. I viloläget är enheten i princip avstängd och går inte att väcka på annat sätt än genom en yttre händelse. Ett reaktivt tankesätt används alltså i första hand för att spara ström i händelsestyrda system som ska utföra en sak när något har hänt och sen ”sova” till nästa händelse inträffar. Skillnaden mellan den reaktiva och ”vanliga” programmeringen är att det i det reaktiva fallet är en händelse som startar programexekveringen medan programmet i normalfallet redan körs vid det vanliga programmeringsförfarandet där det ligger och avläser, ”pollar”, en given signalkälla efter en förändring.

Den slutgiltiga koden består av funktioner för att hantera olika larm som genereras av den yttre miljön och realtidsklockan, såsom exempelvis en temperaturförändring,

kontaktanslutning eller ett timeralarm. När någon av dessa saker inträffar sätts en

händelsekedja igång. Först inhämtas väsentlig data sedan kontrolleras vad som genererade avbrottet och därefter vidtas åtgärder beroende på vad som inträffat. Det finns i stort två olika typer av larm:

• Tidslarmet kommer när realtidsklockan genererar ett avbrott, d.v.s. väcker mikrokontrollern, för att signalera att det är dags för att sända ett s.k. ”jag lever”

meddelande.

• Ett miljölarm, d.v.s. ett larm som beror på att något i den yttre miljön, som inte sensormodulen i sig kan påverka, har ändrats.

Vid ett larm vaknar mikrokontrollern och i avbrottsrutinen sätts den generella larmflaggan därefter hämtas data från givare kopplade till sensormodulen som packas ner för att skickas iväg. Innan paketet skickas kontrolleras vilken typ av larm som inkommit, rör det sig om ett miljölarm sätts larmflaggan annars inte. Efter att paketet skickats ställs

realtidsklockan in för att kunna meddela mikrokontrollern om att det är dags att generera ett ”jag lever” paket så vida att inget miljöalarm inträffar inom den satta tidsrymden.

Därefter går mikrokontrollern ner i viloläge för att vänta på nästa larm.

3.5 Protokoll

Av sekretessmässiga skäl utelämnas denna del av rapporten

3.6 Verktyg

Under arbetets gång har ett antal verktyg använts, som antingen institutionen har kunnat tillhandahålla eller som varit gratisversioner. De verktyg som använts listas nedan:

• Orcad Capture 10.5, har använts för att göra kretsscheman

• Orcad Layout 10.5, har använts för att designa kretskorten

• Orcad PSpice 10.5, har använts för att göra ett antal simuleringar

Dessa tre program ingår i Orcads programpaket för hårdvaruutveckling. Institutionen har tillhandahållit projektet med licenser för dessa verktyg.

• MPLAB IDE v.7.20, har använts som utvecklingsmiljö för mjukvaran

• CCS, har använts som kompilator

Även dessa programvaror, som ingår i PIC:s utvecklingsmiljö, har institutionen bidragit med.

• Zmatch 4.0, har använts för att göra impedansmatchningsberäkningar.

Detta program är en demoversion, som går att använda gratis i 30 dagar. De lösningar som detta program har givit oss har sedan verifierats med egna

impedansmatchnings-beräkningar.

3.7 Kostnadsanalys

En viktig del i detta projekt är, som tidigare nämnts, kostnaden för dessa sensormoduler.

Målet eller rättare sagt förhoppningen var att de skulle kunna tillverkas för cirka 20 kr men med facit i hand är 45 kronor, inklusive batteri och en enklare givare, ett rimligare antagande.

Kostnaden för att montera komponenterna och färdigställa kortet har varit svårt att fastställa men bör röra sig om några kronor.

Priserna, enligt tabell 3.5, är cirkapriser exklusive moms, angivna i dollar, och visar materialkostnaden för en sändarmodul vid tillverkning av 1 respektive 5000 moduler.

Tabell 3.5: Kostnadsanalys för sändarplattormen.

Referens Värde/komponent Antal Pris Pris/5000 Leverantör C1 0.1uF 1 0,0440 0,0104 Digi-Key C2_High 33pF 1 0,0240 0,0060 Digi-Key C3 100pF 3 0,2810 0,0900 Digi-Key C4_Low 100pF Digi-Key C8 100pF Digi-Key Brytare Jumper 5 0,0000 0,0000

Sensor Jumper Antenn ANT-868-JJB-ST 1 1,6000 1,0000 Linx

-Technologies X1 27.134375 MHz 1 1,0800 0,3780 Mouser PCB 1 336,00 0,3420 Elprint Summa: 343,647 4,7217

En enklare kostnadsanalys har även utförts för mottagarmodulen, se tabell 3.6, där har endast komponentkostnaderna inräknats för att tillverka ett kort. Detta beror på att mottagarmodulen inte kommer att se ut på det sätt den gör idag. Som tidigare nämnts kommer det att bli en annan mikrokontroller som ska användas och hela mottagarmodulen kommer att integreras på ett kretskort istället för två som det är i dagsläget.

Tabell 3.6: Kostnadsanalys för mottagarmodulen.

Referens Komponent/värde Antal Pris Leverantör

C1 330pF 7 0,289 Digi-Key U2 AFS868,35S3 1 3,75 Digi-Key U3 SMA009 1 5,2 Digi-Key Antenn ANT-868-CW-HW 1 8,49 Digi-Key

X1 26,800000 MHz 1 1,08 Mouser Y1 SFECV10,7M 1 1,97 Mouser PCP Elprint 1 326 Elprint

Summa: 367,452

Även dessa priser är cirkapriser exklusive moms, angivna i dollar, och visar materialkostnaden för en mottagarmodul.

De komponenter som använts har inte alltid varit de bästa på marknaden och inte heller de billigaste. Det har blivit att kompromissa mellan priset, fraktkostnaden, kvaliteten och tillgängligheten. I möjligaste mån har beställningarna gjorts från samma leverantör. Detta har medfört att det förmodligen inte alltid har blivit de mest lämpade komponenter som valts utan det går antagligen att hitta bättre komponenter hos andra leverantörer. De komponenter som använts har varit den bästa kompromissen mellan det som nämnts tidigare, med andra ord pris, fraktkostnad, kvalité och tillgänglighet.

3.8 Räckvidd

Friis ekvation, 3.22, är en allmänt använd metod för att räkna ut räckvidden på trådlösa enheter. Ekvationen kan härledas till de grundläggande elektromagnetiska principerna.

Effekten som tas emot är beroende av sändareffekten, sändarens och mottagarens anntennförstärkning, bärvågens våglängd och avstånd enligt

2

Gt = sändarens antennförstärkning Gr = mottagarens antennförstärkning λ = bärvågens våglängd

R = avståndet

Tyvärr så är Friis ekvation ofta missvisande, vilket kan leda till felaktiga beräkningar.

Friis ekvation kräver fri sikt, vilket inte är en vanlig företeelse i praktiken. Den verkliga räckvidden i delvis skymda områden tenderar att bli betydligt kortare än den uträknade.

En bra approximation enligt M Wilson (2006) för bebyggda områden är att lägga till en dämpfaktor på ca 10-20 dB beroende på hur stor säkerhetsmarginalen ska vara, vilket ger följande räckvidd beroende på dämpfaktor,

m

Räckviddstester, i utomhus- och inomhusmiljö, visar att ca 30 m även är den praktiska räckvidden som detta system har, utan säkerhetsmarginal. Kommunikationen är med andra ord rätt så osäker på detta avstånd. Med en viss säkerhetsmarginal, vilket krävs för att ha en stabil signal, är räckvidden ca 20 m.

In document Mikrosensorer i nätverk (Page 32-43)

Related documents