91
Department of Science and Technology Institutionen för teknik och naturvetenskap Linköping University Linköpings universitet g n i p ö k r r o N 4 7 1 0 6 n e d e w S , g n i p ö k r r o N 4 7 1 0 6 - E S LiU-ITN-TEK-A--16/059--SE Kombinerad jordfelsbrytare, energiövervakare samt fasväxlare för elbilsladdning, styrd via en FPGA Daniel Hedberg Erik Wetterin 2016-12-14

Kombinerad jordfelsbrytare, energiövervakare samt ...liu.diva-portal.org/smash/get/diva2:1072643/FULLTEXT01.pdflogik är uppbyggd i ett blockdiagram. Under kommunikation ges en beskrivning

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

  • Department of Science and Technology Institutionen för teknik och naturvetenskap Linköping University Linköpings universitet

    gnipökrroN 47 106 nedewS ,gnipökrroN 47 106-ES

    LiU-ITN-TEK-A--16/059--SE

    Kombinerad jordfelsbrytare,energiövervakare samt

    fasväxlare förelbilsladdning, styrd via en

    FPGADaniel Hedberg

    Erik Wetterin

    2016-12-14

  • LiU-ITN-TEK-A--16/059--SE

    Kombinerad jordfelsbrytare,energiövervakare samt

    fasväxlare förelbilsladdning, styrd via en

    FPGAExamensarbete utfört i Elektroteknik

    vid Tekniska högskolan vidLinköpings universitet

    Daniel HedbergErik Wetterin

    Handledare Kjell KarlssonExaminator Qin-Zhong Ye

    Norrköping 2016-12-14

  • Upphovsrätt

    Detta dokument hålls tillgängligt på Internet – eller dess framtida ersättare –under en längre tid från publiceringsdatum under förutsättning att inga extra-ordinära omständigheter uppstår.

    Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner,skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat förickekommersiell forskning och för undervisning. Överföring av upphovsrättenvid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning avdokumentet kräver upphovsmannens medgivande. För att garantera äktheten,säkerheten och tillgängligheten finns det lösningar av teknisk och administrativart.

    Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman iden omfattning som god sed kräver vid användning av dokumentet på ovanbeskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådanform eller i sådant sammanhang som är kränkande för upphovsmannens litteräraeller konstnärliga anseende eller egenart.

    För ytterligare information om Linköping University Electronic Press seförlagets hemsida http://www.ep.liu.se/

    Copyright

    The publishers will keep this document online on the Internet - or its possiblereplacement - for a considerable time from the date of publication barringexceptional circumstances.

    The online availability of the document implies a permanent permission foranyone to read, to download, to print out single copies for your own use and touse it unchanged for any non-commercial research and educational purpose.Subsequent transfers of copyright cannot revoke this permission. All other usesof the document are conditional on the consent of the copyright owner. Thepublisher has taken technical and administrative measures to assure authenticity,security and accessibility.

    According to intellectual property law the author has the right to bementioned when his/her work is accessed as described above and to be protectedagainst infringement.

    For additional information about the Linköping University Electronic Pressand its procedures for publication and for assurance of document integrity,please refer to its WWW home page: http://www.ep.liu.se/

    © Daniel Hedberg, Erik Wetterin

  • Abstract

    This master thesis investigates the subsystems required to create a combined residual-current

    device, power manager and phase-switcher for electric vehicles charging, controlled by an

    FPGA. The purpose of this task is to create a prototype design for Chargestorm, a company

    that manufacture charging stations for electrical vehicles and provides a portal for payment.

    Each subsystem will be separately investigated to see the available alternatives and

    evaluate which solutions fit this design best. The system is designed to handle currents of 32

    A on three phases.

    The design consists of a hall sensor to detect the residual current, switches to meet

    the switching requirements and to break the circuit when needed, current transformers to

    measure current and differential amplifiers to measure voltage. All logic and communication

    is controlled by an FPGA.

    Specific isolation requirements are set to prevent the power grid from arcing to the low

    voltage components. Optocouplers are used to allow communication between the components

    on the high voltage and the low voltage sides. The final design is placed on a six layer printed

    circuit board. This is mainly to allow for more copper to conduct the high current and thermal

    management.

    Theoretically, the work is complete and all requirements are fulfilled. In practice however,

    the prototype have not been fully tested and evaluated to see if the theory matches the real

    world.

  • Abstrakt

    Den här examensrapporten undersöker de delsystem som behövs för att skapa en kombinerad

    jordfelsbrytare, energiövervakare samt fasväxlare för elbilsladdning, kontrollerade utav en

    FPGA. Syftet är att skapa en prototypdesign åt Chargestorm, ett företag som tillverkar

    laddningsstolpar för elbilar och tillhandahåller ett system för betaltjänster.

    Varje delsystem kommer undersökas separat för att se vilka tillgängliga alternativ som

    finns och utvärdera vilken lösning som passar designen bäst. Systemet är designat för att

    hantera strömmar på 32 A trefas.

    Designen består utav en hall sensorn för att upptäcka läckströmmen, reläer för hantera

    fasväxlingen och bryta laddningen vid behov, strömtransformatorer för att möta strömmen

    och differentialförstärkare för att mäta spänningen. All logik och kommunikation styrs via

    en FPGA.

    Särskilda isolationskrav ställs för att undvika att elnätet kortsluter till lågspänningskom-

    ponenter. Optokopplare används för att tillåta kommunikation mellan de isolerade sidorna.

    Den slutgiltiga designen är ett sex lagers mönsterkort, detta är för att få mer koppar till

    värmeavledning.

    Teoretiskt sett är arbetet klart och alla krav är uppfyllda. I praktiken har prototypen in-

    te testats eller utvärderats.

  • Förord

    Vi vill här med tacka vår handledare Erik Johansson på Chargestorm som varit ett stort stöd

    genom hela projektets gång. Alltid lika intresserad och har kunnat förklara saker som har

    varit oklara på ett pedagogiskt sätt!

    Ett stort tack ska även Kjell Karlsson ha, vår handledare på Linköpings Universitetet.

    Han har alltid varit positiv och intresserad av vad vi arbetat med!

    Over and Out! // Erik & Daniel

    Norrköping december 2016

    Civilingenjörsprogrammet Elektronikdesign

  • Innehåll

    Figurer i

    Tabeller iii

    Nomenklatur v

    1 Inledning 1

    1.1 Bakgrund . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    1.2 Syfte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    1.3 Frågeställning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    1.4 Metod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    1.5 Avgränsningar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    1.6 Rapportens disposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    2 Systemöversikt 5

    3 Strömmätning 7

    3.1 Halleffekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    3.2 Shuntresistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    3.3 Transformator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    3.4 Jämförelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    4 Spänningsmätning 15

    4.1 Transformator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    4.2 Spänningsdelning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    4.3 ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    4.4 Jämförelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

  • 6 Innehåll

    5 Jordfeldetektering 19

    5.1 Teori jordfeldetektor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    5.2 Vald komponent för jordfeldetektering . . . . . . . . . . . . . . . . . . . . 20

    6 FPGA 23

    6.1 Teori och metod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    6.2 Systemskiss av mjukvaran . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    7 Kommunikation 25

    7.1 Modbus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    7.2 SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    8 Systemdesign 29

    8.1 Strömförsörjning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    8.2 Implementering av FPGA på mönsterkortet . . . . . . . . . . . . . . . . . 32

    8.3 Brytning av faser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    8.4 Fasväxling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    8.5 Ledarbanor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    8.6 Krypavstånd och isolation . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    8.6.1 Isolerad högspänningssida . . . . . . . . . . . . . . . . . . . . . . 35

    8.6.2 Optokopplare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

    8.7 Kontaktdon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    8.8 Avkopplingskondensatorer . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    9 Resultat 39

    9.1 Mönsterkort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    9.2 Mjukvara . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

    9.2.1 VHDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

    9.2.2 MCU/Soft core . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    9.2.3 Modbus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    10 Verifiering 53

    10.1 Test av delsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    10.1.1 Jordfeldetektor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    10.1.2 Reläer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

    10.1.3 Mjukvaran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

  • Innehåll 7

    11 Slutsats 55

    11.1 Diskussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    11.1.1 Resultatutvärdering . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    11.1.2 Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

    12 Framtida arbete 57

    Litteraturförteckning 59

    Bilaga A Kretsschema 63

  • Figurer

    2.1 Systemöversikt över PCU:n. . . . . . . . . . . . . . . . . . . . . . . . . . 5

    3.1 Halleffekten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    3.2 Två typer av hallgivare. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    3.3 Enkel skiss på shunt-mätning av ström. . . . . . . . . . . . . . . . . . . . . 9

    3.4 Shuntmotstånd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    3.5 Enkel skiss på en strömtransformator. . . . . . . . . . . . . . . . . . . . . 11

    4.1 Enkel skiss på en spänningstransformator. . . . . . . . . . . . . . . . . . . 16

    4.2 Enkel skiss på en spänningsdelning. . . . . . . . . . . . . . . . . . . . . . 16

    5.1 Generell jordfelsbrytare . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    5.2 Jordfeldetektorn RCMB121 . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    6.1 Enklare systemskiss. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    7.1 Illustration av SPI-kommunikation. . . . . . . . . . . . . . . . . . . . . . . 27

    8.1 Uppkoppling regulator fem volt . . . . . . . . . . . . . . . . . . . . . . . 31

    8.2 Illustration av fasväxling . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    8.3 Strömledningsförmåga i koppar . . . . . . . . . . . . . . . . . . . . . . . 34

    8.4 Illustration optokopplare . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

    9.1 3D-vy utav Altiumdesignen. . . . . . . . . . . . . . . . . . . . . . . . . . 40

    9.2 Topplagret. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    9.3 Innerlager ett. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    9.4 Innerlager två. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    9.5 Innerlager tre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    9.6 Innerlager fyra. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    9.7 Bottenlagret. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

  • ii Figurer

    9.8 Blockschema över VHDL-schemat. . . . . . . . . . . . . . . . . . . . . . 45

    9.9 Flödesschema över programmet i MCU:n. . . . . . . . . . . . . . . . . . . 49

    10.1 Uppkoppling för att verifiera hall-givaren. . . . . . . . . . . . . . . . . . . 53

  • Tabeller

    3.1 Översiktlig tabell över strömmätning. . . . . . . . . . . . . . . . . . . . . 11

    7.1 Modbus-datastrukturer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    7.2 Modbus-frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    8.1 Spänningsnivå för komponenter . . . . . . . . . . . . . . . . . . . . . . . 30

    8.2 Rekommenderade värden på spänningar till FPGA:n. . . . . . . . . . . . . 30

    9.1 Färgtillhögrighet för mönsterkortets lager . . . . . . . . . . . . . . . . . . 41

    9.2 Kommunikation mellan FPGA och ADC. . . . . . . . . . . . . . . . . . . 46

    9.3 Sanningtabell över triacsignal från CCU. . . . . . . . . . . . . . . . . . . . 50

    9.4 Modbus register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

    9.5 Statusregister. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

    10.1 Resultat från energisparfunktion, ett relä. . . . . . . . . . . . . . . . . . . . 54

  • Nomenklatur

    ADC Analog Digital Converter

    CCU Charge Control Unit

    FPGA Field Programmable Gate Array

    JTAG Joint Test Action Group

    LDO Low Dropout

    MCU MicroController Unit

    MUX MUltipleXer

    PCU Power Controller Unit

    RMS Root Mean Square

    VHDL VHSIC (Very high speed integrated circuit) Hardware Description Language

  • Kapitel 1

    Inledning

    1.1 Bakgrund

    Det här arbetet är utfört på begäran utav företaget Chargestorm. Chargestorm utvecklar

    samt producerar elbilsladdare och tillhandahåller betallösningar för dessa. Uppgiften som

    tilldelades var att utveckla samt utvärdera en lösning där jordfelsdetektering, strömmätning,

    fasväxling och spänningsmätning tillämpas på en och samma enhet. Eftersom utrymmet i

    laddningsstolparna är begränsade ställs vissa krav på hårdvaran. Detta examensarbete syftar

    till att skapa en första prototyp på en sådan produkt. Chargestorm har utvecklat en Charge

    Control Unit, hädanefter refererad som CCU, som är ett gränssnitt mot bilens laddning och

    deras egna portal. CCU:n reglerar hur mycket ström en bil får samt sköter kommunikationen

    mellan bilen och laddaren. I denna rapport kommer inga detaljer hur CCU:n fungerar eller

    verkar mot bilen då den inte har något med denna produkt att göra.

    1.2 Syfte

    I dagsläget använder sig Chargestorm utav flera separata produkter för att uppfylla en säker

    och mätbar laddning. De vill minska inköpskostnaden för en laddstolpe och därför undersöka

    om det är möjligt att utveckla en ”allt i ett”-lösning på ett enda mönsterkort. Därför är priset

    av vikt, men vissa undantag har gjorts för att förenkla processen, då det är en första prototyp.

    Denna produkt ska även vara bakåtkompatibel då det finns flera versioner utav CCU:n.

  • 2 Inledning

    1.3 Frågeställning

    Chargestorms grundidé med denna produkt är:

    • Leda 32 A trefasig växelström genom kortet.

    • Upptäcka jordfel på 6 mA likström och 30 mA effektivvärde växelström.

    • Bryta alla faser samt neutralledare med integrerade reläer vid upptäckt jordfel.

    • Reglera vilken inkommande fas som kopplas till utgående vid enfasladdad bil.

    • En FPGA som styrenhet.

    • Modbus-kommunikation med CCU.

    • Styra reläerna med antingen Modbus-kommunikation eller triacsignaler ifrån CCU.

    • Alla delsystem skall få plats på ett mönsterkort med höjden 108 mm och en maximal

    längd på 300 mm.

    Det leder till följande frågeställningar:

    • Är det möjligt att få alla delsystem på ett enda mönsterkort med de givna dimensions-

    begränsningarna?

    • Kan ett mönsterkort leda en ström på 32 A på tre faser samtidigt?

    • Hur mäts ström, spänning samt läckström på bäst sätt?

    • Är det möjligt att implementera en soft core-lösning i FPGA:n för att hantera kommu-

    nikation?

    1.4 Metod

    För att få en enklare arbetsgång så delas projektet in i mindre delar där varje delmoment

    utvärderas individuellt. Stor vikt kommer läggas vid att studera datablad för komponenter

    och se till så att de klarar av kraven som ställs. Då den här produkten ska fungera väl ihop

    med Chargestorms CCU så ges Chargestorm inflytande vid stora beslut.

  • 1.5 Avgränsningar 3

    1.5 Avgränsningar

    Mjukvaran för FPGA:n kommer inte utvecklas till fullo. Ett fullständigt program för att

    få in all funktionalitet anses ligga utanför ramarna för projektet. Tester för att få använda

    produkten i ett kommersiellt syfte kommer inte genomföras.

    1.6 Rapportens disposition

    Systemskiss ger en förklaring över hur systemet fungerar i sin helhet och förklarar alla

    delsystem. I de kapitel som följer, Strömmätning, Spänningsmätning samt Jordfeldetektering,

    diskuteras dessa delsystem teoretiskt och det förklaras vilken lösning som har valts att

    genomföra i praktiken.

    Därpå följer kapitlena FPGA samt Kommunikation. I FPGA går det att läsa vilken FPGA

    som valts för att implementera en soft core-lösning och hur mjukvaran för att styra all

    logik är uppbyggd i ett blockdiagram. Under kommunikation ges en beskrivning över hur

    kommunikationsprotokollen Modbus och SPI fungerar.

    Kapitlet Systemdesign berättar hur alla delsystem nu implementeras på ett mönsterkort

    och de stödkomponenter som behövs. Här går även att läsa om isolationskrav och hur

    ledarbanorna dimensioneras för att klara av det höga kravet på strömledningsförmåga.

    Efter det så kommer kapitlet Resultat där det visas en fullständig layout för mönsterkortet

    och FPGA-mjukvaran gås igenom grundligt. Därefter följer kapitlet Verifiering som går

    igenom hur vissa delsystem har förhandstestats för att kontrollera funktionaliteten.

    Slutligen kommer slutsatsen med utvärdering av resultat, och ett kapitel om vad som kan

    förbättras vid framtida arbete.

    Produkten kommer hädanefter hänvisas som Power Controller Unit, PCU som kort.

  • Kapitel 2

    Systemöversikt

    Figur 2.1 visar en systemöversikt över PCU:n. Elnätet är de tre faser samt neutralledare som

    matas i kretskortet och bilen är de faser samt neutralledare som matas ut från kretskortet.

    Jordfelsdetektor

    Strömmätning

    Spänningsmätning

    Relä /fasväxling

    Elnät

    Bil

    A

    D

    C

    FPGA

    CCU

    relä-

    utgång

    RS485

    MODBUS

    6 kanaler SPI

    Figur 2.1 Systemöversikt över PCU:n.

    Det första som skall hända när faserna ansluts till kortet är att det detekteras om en

    felström har uppkommit mellan ledarna. Därefter följer ström- samt spänningsmätning för

  • 6 Systemöversikt

    att kunna mäta energin som flödar till bilen vid laddning. Brytare för att kunna koppla från

    strömmen skall även implementeras. Chargestorm erbjuder lösningar för multipla laddare på

    samma område med samma elnätkälla. Därför önskas en så kallad fasväxling för att kunna

    balansera upp lasten på de olika faserna vid många enfasladdningar på olika stolpar. Styrning

    av detta sker via CCU:n. Detta sker genom att ändra om så att exempel ingångsfas två går till

    utgångsfas ett.

    All implementering av logik på kortet kommer ske med hjälp av en FPGA som hämtar

    samt processar data från en Analog till digital konverterare, ADC. För att kommunicera med

    styrenheten på CCU:n kommer det utvecklas ett Modbus-gränssnitt för att det redan finns på

    CCU:n. För att göra PCU:n så bakåtkompatibel som möjligt så att den skall kunna arbeta

    med alla CCU-versioner kommer en så kallad triacingång implementeras. Detta är i själva

    verket en sensoringång för att känna av om CCU:n försöker öppna några reläer via deras

    reläutgångar.

  • Kapitel 3

    Strömmätning

    Det finns olika sätt att mäta ström på, i det här kapitlet behandlas några av sätten teoretisk

    samt jämförs.

    3.1 Halleffekt

    Halleffekten i sin enkelhet är när det uppkommer en potentialskillnad vinkelrät mot strömmen

    i en ledare med hjälp av ett genomgående magnetfält. Elektronerna böjer av åt en av sidorna i

    ledaren, därav en potentialskillnad. Effekten upptäcktes av Edwin Hall 1879 och uppkallades

    efter honom. Figur 3.1 visar en enkel skiss på hur halleffekten uppkommer. Ekvationerna

    3.1 och 3.2 [1], härleder hur man med hjälp av att känna till VH samt BZ kan man ta reda på

    strömmen som flödar i en ledare med tjocklek t.

    Figur 3.1 Halleffekten [2].

  • 8 Strömmätning

    VH = RhIBZ

    d(3.1)

    Rh =−Ex

    jX BZ(3.2)

    Sensorer i dess enklaste form, som visas i Figur 3.2a, är väldigt känsliga för yttre

    störningar i form av magnetiska fält från annan elektrisk utrustning. Denna sensor används

    oftast i inbyggda system, där man kan kontrollera miljön enklare, när man skall mäta på en

    ledarbana.

    När man mäter ström vill man alltså isolera mätområdet så man inte får med dessa

    störningar i mätresultatet. Det kan man göra med till exempel en omslutande ring av ferrit-

    material, vilket medför att externa fält elimineras. Figur 3.2b visar hur man med hjälp av en

    ring kan koncentrera fältet, från ledarna inom ringen, till en viss punkt där man placerar en

    Hall-givare.

    (a) PCB-monterad (b) Strömsensor med öppen kärna.

    Figur 3.2 Två typer av Hall-givare [3] & [4]

    3.2 Shuntresistor

    Ett annat sätt att mäta strömmen i en ledare är att använda en så kallad shuntresistor, en

    seriekopplad resistor. Figur 3.3 visar en skiss på hur en sådan koppling. Rshunt är en känd

  • 3.2 Shuntresistor 9

    resistor där man mäter spänningsfallet som uppstår och kan sedan med Ohms lag 3.3 enkelt

    räkna ut strömmen som flödar genom kretsen.

    R_shuntt

    R_lastt

    V

    Figur 3.3 Enkel skiss på shunt-mätning av ström.

    U = RI ⇒ I =U

    R(3.3)

    När man väljer shuntmotstånd är det viktigt att veta vilket strömintervall man skall mäta

    på, som exempel hade inte en shunt som klarar av att mäta strömmar upp till 1 A klarat att

    mäta 32 A. I princip är ett shuntmotstånd bara en kopparledare med väldigt låg och precis

    uppmätt resistans. Idealt sett vill man att resistansen skall vara så fast som möjlig för att inte få

    olinjäritet i mätningen, men när stora strömmar går igenom en resistor bildas värmeutveckling

    och resistansen ändras. Det gäller alltså att välja ett material med så bra ledningsförmåga

    samt låg temperaturkoefficient som möjligt, varav koppar är ett sådant material. Det är

    viktigt att även tänka på ledarbanor till och från tapparna så inget spänningsfall uppkommer

    där. Tapparna brukar därför vara extremt nära motståndet, se Figur 3.4. I och med att man

    vill ha resistensen så pass liten i shunten för att minimera effektförluster, leder det till att

    spänningsfallet blir väldigt litet. Detta kan lösas med en differentiell förstärkare som sedan

    matas in i en ADC. Problemet som kan uppstå då är att man kan råka förstärka upp brus på

    linorna. Det kan minskas med ett ingångsfilter om man vet vilken frekvens man skall mäta

    på.

  • 10 Strömmätning

    Figur 3.4 En 200 A shunt, där de små skruvarna är tappar. [5]

    3.3 Transformator

    Ett tredje sätt att mäta ström är den vanliga transformatorn, där man transformerar en

    stor ström till en lägre mer mätbar nivå. Detta med hjälp av ett växlande magnetfält i en

    järnkärna med en primär- samt sekundärlindning. En så kallad strömtransformator brukar

    bestå av en primärlindning på bara ett varv för att kunna öka på ledartjockleken så mindre

    effektförluster uppkommer i transformatorn. På sekundärsidan kan lindningsantalet variera

    beroende på mätområdet. Ekvation 3.4 visar hur strömmen i sekundärspolen ändras beroende

    på lindningarna. Figur 3.5 visar en enkel skiss hur en strömtransformator är uppbyggd, Rtermär ett termineringsmotstånd av känd resistans. Med hjälp av Ohms lag 3.3 kan man räkna

    ut strömmen i sekundärlindningen och även vilken ström primärlindningen har. Storleken

    på termineringsmotståndet sätts med avseende på effektutvecklingen på sekundärsidan samt

    vilket intervall på mätområdet man vill ha.

    Is

    Ip=

    Np

    Ns⇒ Is =

    IpNp

    Ns(3.4)

  • 3.4 Jämförelse 11

    T1

    R_last R_t erm01:10000

    V

    Figur 3.5 Enkel skiss på en strömtransformator.

    3.4 Jämförelse av de olika strömmätningsalternativen

    För att kunna jämföra de olika alternativen måste mätområdet specificeras. Enligt kravspe-

    cifikationen skall PCU:n klara 0-32 A, maximal ström vilket måste tas in i beräkningarna.

    Tabell 3.1 visar en enklare översiktlig tabell över strömmätning.

    Tabell 3.1 Översiktlig tabell över strömmätning.

    Galvanisk skild KostnadEnergiförbrukning på

    mätområdetStörkänslighet AC/DC

    Hall Totalt skild Dyr Försumbar Hög AC/DC

    Shunt Inget skild Billig Hög Liten AC/DC

    Trafo Skild Medel Medel Liten AC

    Galvanisk isolation

    Hallgivaren är totalt galvaniskt isolerad, i och med att man inte behöver vidröra mätområdet

    utan använder sig av det utstrålade magnetfältet. Transformatorn är också isolerad i och

    med att den har en kärna som skärmar av de olika sidorna. Det man behöver tänka på här

    är krypavstånd. Shuntresistorn är till skillnad mot de andra metoderna integrerad i själva

    kretsen och därmed inte galvaniskt isolerad.

  • 12 Strömmätning

    Kostnad

    Kostnaden för sensorn spelar roll för PCU:n i med att det är trefas och alla faser måste mätas.

    Hallgivaren är ganska dyr i och med att noggrann elektronik behövs för att mäta Hallspän-

    ningen. Transformatorn och shunten är av ungefärliga samma låga prisklass, beroende på

    vilken upplösning på mätområdet man vill ha.

    Energiförbrukning på mätområdet

    Med energiförbrukning menas hur mycket energi mätutrustningen tar på mätområdet. Hall-

    givaren är avrundat till noll. Shuntresistorns storlek är en avvägning man får göra, då en stor

    resistor ger större mätvärde. Det är dock en mycket högre energiförbrukning och en stor

    påverkan på elektroniken den sitter i förbindelse med. Transformatorn har en relativt låg

    effektförbrukning, om man skulle anta en ideal transformator så följer:

    Ip = 30A

    Np = 1

    Ns = 1000

    Rterm = 50Ω

    Is =NpIpNs

    Is =30

    1000 ⇒ Is = 30mA

    p = RI2

    p = 50∗0,032 ⇒ p = 45mW

    (3.5)

    Ekvation 3.5 visar alltså hur stor påverkan en strömtransformator på 1:1000 lindning och

    Rterm på 50 Ω har på en 30 Amper ledare. Ganska liten om man ser till helheten.

    Störkänslighet

    Hur stor påverkan yttre fält har på mätutrustningen. Hallgivaren är extremt känslig för

    externa fält i med att magnetfält påverkar hallspänningen i kretsen. Som diskuterats i 3.1

    kan man utesluta vissa externa fält med hjälp av en ring(kärna) runt mätområdet. När man

    implementerar en sådan krets kan det vara bra att ha med en kalibreringssekvens för att

    säkerställa rätt nollnivå. Det man bör tänka på med shunten är att man har mätkretsar så

    nära mätområdet som möjligt, så inga yttre störningar plockas upp av långa ledare. Annars

    är den väldigt robust för yttre störningar och man kan även lägga till filter. Samma gäller

    transformatorn.

  • 3.4 Jämförelse 13

    Val av komponent

    Efter mycket granskning har strömtransformatorn valts för att mäta ström i PCU:n. I och

    med att det är ström i tre ledare som skall mätas så behövs en billig komponent som inte tar

    för mycket plats. Sirio transformatorn TA_150811 är en billig och liten transformator med

    en lindning på 1:1000. Denna komponent tillsammans med ett termineringsmotstånd på 50

    Ω och en 8-kanaler ADC ut utgör strömmätningen. Det nämns mer om ADC:n under kapitel

    4.3.

  • Kapitel 4

    Spänningsmätning

    Det finns ett antal olika sätt att mäta spänning. I detta kapitel kommer två olika typer tas upp

    samt jämföras.

    4.1 Transformator

    När man man vill mäta på nätspänningar upp till ±325Vpeak med till exempel en ADC

    med mätområde 0-5 V måste man på något sätt skala ned spänningen. Som man kan se i

    Ekvation 4.1 så kan man antingen ändra lindningsantalet på primär- eller sekundärspole för

    att uppnå detta. Annars kan man utnyttja att det går samma ström i båda lindningarna om

    varvantalet är detsamma för primär- och sekundärspole. Figur 4.1 visar en enkel skiss på en

    spänningstransformator.

    R1 är till för att begränsa strömmen in i primärspolen och därmed begränsa strömmen i

    sekundärspolen. Därmed kan man skala R2 utefter det spänningsintervall man vill mäta på.

    Ekvation 4.2 härstammar från U = RI och visar skalning av R2.

    Us

    Up=

    Ns

    Np⇒Us =

    NsUp

    Np(4.1)

    Us

    R1=

    Up

    R2⇒ R2 =

    UpR1

    Us(4.2)

  • 16 Spänningsmätning

    R1R2

    T1

    V1000:1000

    LN

    Figur 4.1 Enkel skiss på en spänningstransformator.

    På samma sätt som strömtransformatorn så ger också en vanlig transformator galvanisk

    isolation. När man handskas med nätspänningar på 230 VRMS är det extra viktigt att ha

    isolation i med att det kan bli livshotande om 230 V smiter in på berörbar elektronik.

    4.2 Spänningsdelning

    Ett annat vanligt sätt att mäta på högre spänningar är att använda sig av vanliga spännings-

    delare. Figur 4.2 visar en enkel skiss på en sådan koppling. Varför det sitter tre resistorer

    i serie på både fas och neutral är för att öka upp isolationsavståndet mellan hög- och låg-

    spänning. Voltmetern i Figur 4.2 kan ersättas med en differentialförstärkare eller en så kallad

    instrumentförstärkare.

    R1 R2 R3

    R4 R5 R6V

    L

    N

    R7

    R8

    Figur 4.2 Enkel skiss på en spänningsdelning.

  • 4.3 ADC 17

    4.3 ADC

    I båda uppkopplingarna som nämnts ovan behöver man någon slags krets som förvandlar

    analoga signaler till digitala. I det flesta fallen kan man då använda sig av en ADC (Analog

    to Digital Converter), analog till digital konverter.

    I och med att PCU:n skall mäta både ström samt spänning på tre faser så kommer tre

    strömtransformatorer användas samt tre spänningsmätningar, en per respektive fas. I stället

    för att ha en separat ADC för varje mätning, som hade medfört mer hårdvara på kretskortet,

    har en ADC med åtta kanaler använts. Det hade räckt med sex kanaler men en sådan krets

    har inte hittats. Kretsen som valts är en Microchip MCP 3208 [6] som har en tolv bitars

    upplösning med en samplingsfrekvens på 100 k sampels/s.

    ADC:n har ett mätbart område mellan noll och fem volt. Eftersom att mätningarna sker

    på växelspänning så måste en offsetspänning inkluderas i uppkopplingarna. I stället för att

    spänningen och strömmen svänger runt noll volt så lyfter man upp nollnivån till hälften av

    det mätbara området för att få ut maximal precision från ADC:n.

    För att förenkla ytterligare för mjukvaruimplementeringen så kan man använda sig av

    en så kallad spänningsreferens. Denna väljs med avseende på vilken upplösning man har på

    ADC:n, i fallet vid PCU:n tolv bitar. Maximala talet man kan uppnå med ett tolv bitars tal

    är 4096, därför kan det vara bra att välja en spänningsreferens på 4,096 V . Detta medför att

    mjukvarumässigt betyder en bit alltså en millivolt. Om man ändrar referensspänningen in i

    ADC:n vill man även ändra offsetspänningen till halva referensspänningen, alltså 2,048 V .

    Spänningsreferenskretsen som valts är av typen zenerdiod med väldig liten temperaturvarians

    [7].

    4.4 Jämförelse av de olika spänningsmätningsalternativen

    Som nämnts tidigare och tas upp i 8.6 så måste all högspänning isoleras från lågspänningen. I

    transformatorfallet får man isolationen med i lösningen men i spänningsdelningen måste man

    lösa isolation på annat sätt, detta nämns även i 8.6. En stor fördel med spänningsdelningen

    är att det bara finns resistiva delar, därmed ingen fasvridning vid mätning. Till skillnad från

    transformatorn där det är en stor induktiv del.

    Sättet för att mäta fasspänningarna i PCU:n har valts till spänningsdelning på grund av

    priset och fysiska storleken på mönsterkortet. En instrumentförstärkare av typen Microchip

    MCP6N11 [8] har valts för att kunna mäta differensen mellan fas och neutralledare. Denna

    har en förstärkningskoefficient på ett för att inte dela ned spänningen onödigt mycket, bara

    för att senare förstärka upp det till en rimlig nivå.

  • Kapitel 5

    Jordfeldetektering

    I det här kapitlet beskrivs teoretiskt hur en jordfeldetektor fungerar samt vilken detektor som

    används i det här arbetet.

    5.1 Teori jordfeldetektor

    För att upptäcka ett jordfel jämförs summan av alla strömmar i faser samt neutralledaren.

    Om summan är större än ett givet värde har alltså ett jordfel inträffat och måste hanteras i

    form av att strömmen stängs av.

    Alla strömförande ledare dras in genom en ringformad kärna som agerar primärlindning

    i en transformator. Varje ledare alstrar ett eget elektromagnetiskt fält runt sig, proportionellt

    mot strömmen, enligt Ampères lag.

    Eftersom momentanströmmen i en viss punkt skall vara lika med noll kommer alltså

    alla ledares magnetfält ta ut varandra. Är inte summan av strömmarna noll så kommer

    de elektromagnetiska fälten sluta upphäva varandra och det fält som kvarstår indikerar en

    läckström. Detta elektromagnetiska fält inducerar en ström i sekundärlindningen runt kärnan,

    vilket kan övervakas och med hjälpelektronik avgöra när det är en tillräcklig stor läckström

    för att ge en brytarsignal. Denna signal går sedan till någon slags av brytare som bryter

    strömmen. Figur 5.1 visar hur en komplett jordfelsbrytare är konstruerad.

  • 20 Jordfeldetektering

    1. Hjälpelektronik för att avkänna jordfel.

    2. Sekundärlindningen, mer än ett varv.

    3. Kärna av till exempel järn.

    4. På traditionella jordfelsbrytare finns en testanordning för att testa att brytaren fungerar,

    när kontakten sluts går en läckström förbi kärnan och brytaren skall teoretiskt bryta.

    Figur 5.1 Generell jordfelsbrytare [9]

    Problemet med en traditionell jordfelsdetektor är att den bygger på en transformator-

    lösning som bara fungerar när det finns ett växlande fält. För att upptäcka likström behövs

    alltså någon form av annan lösning, vilket tas upp i kapitel 3. Man skulle alltså rent teoretiskt

    kunna byta ut sekundärlindningen mot en hallgivare.

    5.2 Vald komponent för jordfeldetektering

    RCMB121 [10] är en jordfeldetektor som speciellt framtagen för användning vid laddning

    utav eldrivna fordon. Det är endast en jordfeldetektor och har ingen funktionalitet för att

    bryta strömmen utan det måste fristående brytare göra. Enligt databladet är den tillverkad för

    att uppfylla kraven som ställs i följande standarder:

    IEC 61800-5-1 Adjustable speed electrical power drive systems - Part 5-1: Safety require-

    ments - Electrical, thermal and energy

  • 5.2 Vald komponent för jordfeldetektering 21

    IEC 62752 In-Cable Control and Protection Device for mode 2 charging of electric road

    vehicles (IC-CPD)

    IEC 60364-7-722 Low-voltage electrical installations - Part 7-722: Requirements for special

    installations or locations - Supplies for electric vehicles

    Sensorn är för tillfället i prototypskede men Chargestorm har fått prover som de önskar

    testa. Den signalerar vid ett upptäckt jordfel på antingen 6 mA likström eller 30 mA effektiv-

    värde växelström, samt om ett systemfel upptäcks inuti komponenten. Dessa signalpinnar

    ligger låga när inget fel finns och får hög impedans vid ett upptäckt fel. Detta låter användaren

    själv välja vilken spänningsnivå som skall gå till styrenheten med hjälp av pull up-motstånd

    och en spänningskälla.

    Figur 5.2 Jordfeldetektorn RCMB121

    Figur 5.2 visar hur jordfeldetektorn ser ut där man för igenom alla fas- och neutralledare

    genom hålet. Det är en hålmonterad komponent för användning på ett mönsterkort. Detta

    betyder att det måste på något sätt finnas ledare som förs genom hålet på givaren. Här används

    alltså en emaljerad solid koppartråd för att leda strömmen genom.

    Givaren har även en inbyggd kalibreringsprocess som det rekommenderas att köra innan

    varje användning. Det sker genom att en signalpinne jordas och sensorn kalibrerar sig för att

    kunna kompensera för redan externa fält, så som magnetfält från övrig elektronik.

  • Kapitel 6

    FPGA

    6.1 Teori och metod

    I kravspecifikationen är det angivit att PCU:n skall styras med hjälp av en Field-Programmable

    Gate Array, FPGA. En Lattice LFXP2-5E-6TN144C [11] blev rekommenderad från Char-

    gestorm som senare valdes. Lattice har egna utvecklingsverktyg för exempel VHDL-programmering

    samt för att implementera en mjukvaruprocessor, även kallat Soft core, i deras FPGA:er. För

    att utveckla VHDL och för att kunna testa delsystem har ett utvecklingskort använts med

    angiven FPGA [12].

    Varför en FPGA valdes är för att vid en vidareutveckling av PCU:n skall man kunna

    sampla mätvärden mycket snabbare än vad man kunnat med en vanlig mikrokontroller, MCU.

    Till skillnad från en MCU som oftast använder sig av maskinkod och trådar för att genomföra

    sin uppgift, så fungerar en FPGA att man programmerar hur de inbyggda grindarna skall

    fungera. I och med detta kan man få upp snabbheten i ett program samt så kan vissa processer

    ske helt parallellt. FPGA:er lämpar sig extra bra till problem som kräver någon slags algoritm

    som skall utföras i snabb takt, men är i sin tur mindre flexibel.

  • 24 FPGA

    6.2 Systemskiss av mjukvaran

    Uppgiften som FPGA:n har är att samla in data från ADC:n via SPI, kontrollera om det

    uppkommit något fel från jordfelsgivaren, öppna/stänga reläer samt sköta kommunikation

    över Modbus. En enklare beräkning kommer också ske på inkommande data i form av Root

    Mean Square,RMS. Denna data skickas sedan vidare för att kunna beräkna effekt samt

    energi.

    För att sköta kommunikationen över Modbus har en soft core lösning valts för att lättare

    kunna använda dynamiskt minne. En soft core är alltså en MCU implementerad med hjälp av

    grindarna på FPGA:n. Figur 6.1 visar en enkel skiss på mjukvaran.

    RMS

    SPI

    Effekt /

    Energi

    Tid(ms)

    Jordfel

    Soft core /

    MCUModbus

    Reläer

    Figur 6.1 Enklare systemskiss.

  • Kapitel 7

    Kommunikation

    7.1 Modbus

    Modbus-protokollet togs fram av företaget Modicon under 1970-talet och används i stor

    utsträckning inom industriell elektronik, dels för att det är robust men även för att det varit

    en standard under många år.

    Protokollet är uppbyggt för halv-duplex kommunikation samt att det endast finns en

    master med en eller flera slavar med unika adresser under sig. Detta medför att bara en

    enhet kan prata i taget på kommunikationslinorna, mastern frågar en av slavarna och slaven

    svarar därefter. Det fysiska gränssnittet som valts på PCU:n har styrts av vad som redan finns

    på CCU:n alltså RS-485 med 3,3 V drivspänning. Drivkretsen är även densamma som på

    CCU:n, SN65HVD12 [13]. RS-485 är ett differentiellt, asynkront gränssnitt som använder

    sig av två terminerade kommunikationslinor. När den potentiella differensen i de två linorna

    är under eller över ett visst tröskelvärde uppkommer en logisk etta eller nolla.

    För att kommunicera över Modbus använder man sig av vissa datastrukturer så som

    ”Coils” och ”Register”, se tabell 7.1. Protokollet var först tänkt att driva reläer/ventiler i

    industriella system därav namnet på datatyperna.

    Det finns två huvudtyper av meddelandetyper, ”Frames”, som bygger upp Modbus-

    protokollet. Den som PCU:n använder kallas Remote Terminal Unit, RTU. Denna är den

    mest typiska att använda när man har ett mindre system som bygger på RS-485. Den andra

    typen kallas TCP och används när det är större, mer utspridda, system där kommunikationens

    fysiska gränssnitt är ethernet.

    Tabell 7.2 visar hur en RTU-frame byggs upp. Innan ett meddelande börjar sändas

    krävs det att det är tyst på linorna i minst 3,5 bytes värde av tid. Meddelandet startar

    alltid med vilken adress meddelandet skall till, eller vart meddelandet kommer ifrån. I och

    med att det bara är en byte adressering så är max antal adresserbara enheter på bussen

  • 26 Kommunikation

    255. Funktionsbitarna anger vad Mastern vill göra med slaven, till exempel skriva till ett

    register. På grund av storleken på FPGA:n implementerades långt ifrån alla funktioner som

    en Modbus egentligen har. Huvudfunktioner som att läsa/skriva coils och läsa/skriva register

    är implementerat dock på grund av platsbrist i FPGA:n finns nästintill ingen felhantering av

    korrupta meddelanden.

    Cyclic Redundancy Check, CRC, är en två byte lång del som hängs på i slutet av

    meddelandet. CRC utgörs av alla föregående bytes, denna rapport kommer inte gå djupare på

    hur Modbusens CRC är uppbyggd. Webbsidorna [14] och [15] har använts i utvecklingen för

    att säkerställa så CRCn har kalkylerats rätt.

    Tabell 7.1 Modbus-datastrukturer

    Datatyp Rättigheter Storlek

    Coil Läsa/skriva 1-bit

    Discrete Läsa 1-bit

    Input Register Läsa 16-bit

    Holding Register Läsa/skriva 16-bit

    Tabell 7.2 Modbus-frame

    Namn Längd Funktion

    Start 28-bitar Minst 3,5 bytes tystnad mellan frames.

    Adress 8-bitar Slavens adress

    Funktion 8-bitarOlika funktioner Mastern kan fråga

    slavarna.

    Data n×8 - bitar Databytes

    CRC 16-bitar Kontrollsumma

    Slut 28-bitar Minst 3,5 bytes tystnad mellan frames.

    7.2 SPI

    Serial Peripheral Interface eller SPI är ett full duplex, synkront, kommunikationsgränssnitt.

    Det utvecklades under 1980-talet av Motorola för kortdistanskommunikation i inbyggda

    system. Det finns ingen teoretisk gräns på överföringshastighet, så begränsningen ligger i hur

    bra ledarbanor är matchade samt klockfrekvens på enheterna i sig.

    Bussen är uppbyggd på på ett snarlikt sätt som RS-485, som togs upp i sektion 7.1, en

    Master som frågar slavarna på bussen. Den största skillnaden är att en slav absolut inte kan

  • 7.2 SPI 27

    initiera en kommunikation självmant utan behöver en klocka att följa.

    Gränssnittet har minst fyra fysiska linor, om man vill lägga till ytterligare slavar adderar man

    en SS per ny slav. Linorna är som följer här nedan:

    MOSI Master Out Slave In

    MISO Master In Slave Out

    CLK SPI Clock

    SS Slave Select

    Kommunikationen sker som tidigare nämnt i full duplex, det innebär att både MOSI och

    MISO kan skicka information samtidigt. Detta medför att kommunikation kan ske i mycket

    högre takt än halv duplex, dock så läggs mer vikt på mjukvaruimplementeringen.

    Figur 7.1 visar en typisk överföring av data på SPI. Först sänks SS-linan på den slaven

    Mastern vill prata med, därefter börjar klockan svänga. Då kan MISO och MOSI börja skicka

    data. Klockan slutar svänga och SS sätts hög när kommunikationen är färdig, varefter en ny

    sekvens kan börja mot en annan slav.

    Figur 7.1 Illustration av SPI-kommunikation.

  • Kapitel 8

    Systemdesign

    Mönsterkortsdesignen görs i verktyget Altium Designer. Mjukvaran har stöd för att sätta

    upp egna självdefinierade regler. Antingen för specifika nät eller allmänna regler för hela

    mönsterkortet. Alla footprints gjordes för hand enligt databladens rekommendationer eller

    Altiums inbyggda Footprint Wizard. Undantaget är FPGA:ns footprint som laddades ned

    ifrån Altiums färdiga bibliotek [16]. Storleken på de flesta ytmonterade passiva komponenter

    har valts till storleken 0805 (2012 metric) för att enkelt kunna mäta med oscilloskop och löda

    vid eventuella fel. Avkopplingskondensatorer har valts till storleken 0603 (1608 metric).

    Bredden på kortet är begränsat till 108 mm för att passa Chargestorms nuvarande inkaps-

    ling utav kretskort, längden har satts till max 300 mm för att inte ta upp så mycket plats.

    8.1 Strömförsörjning

    Ifrån CCU:n finns det 24 V att hämta vilket används för att försörja hela kretskortet. Det

    krävs totalt fyra stycken nivåer för de olika komponenterna, vilket visas i tabell 8.1. En

    switchad regulator önskas för att ta ned 24 V till 5 V då det är ett stort hopp och man vill

    minska energiförbrukningen. Efter det kommer två andra, separata, regulatorer för att ta ned

    spänningen vidare till de önskade 1,2 V och 3,3 V

  • 30 Systemdesign

    Tabell 8.1 Spänningsnivå för komponenter

    Spänning Komponenter

    24 V Reläer och matning

    5 V

    Hall-sensor

    ADC

    Instrumentförstärkare

    3,3 VFPGA

    Oscillator

    1,2 V FPGA-Core

    Vid spänningsförsörjning utav FPGA:n har utvecklingskortets komponenter undersökts

    för att skapa en likvärdig lösning. Ett utvecklingskort är ett kretskort där tillverkaren bygger in

    sin produkt, i det här fallet en FPGA, med nödvändiga stödkomponenter för att programmera

    och använda den. Lattice tillhandahåller en utvecklarguide som innehåller ett kopplings-

    schema för deras utvecklingskort [17]. I databladet för FPGA:n [18] finns rekommenderade

    maximum- och minimumvärden för de spänningar som behövs, se tabell 8.2.

    Tabell 8.2 Rekommenderade värden på spänningar till FPGA:n.

    Symbol Parameter Min Max Enhet

    Vcc Core-spänning 1,14 1,26 V

    Vccaux Aux 3,135 3,465 V

    Vccpll PLL 3,135 3,465 V

    Vccio IO 1,14 3,465 V

    Vcc j Jtag 1,14 3,465 V

    Regulator 1,2 V

    Regulatorn som används på utvecklingskortet tillverkas inte längre så en ersättare hittades.

    TLV1117LV12DCYR [19] ifrån Texas Instruments är en Low DropOut regulator, LDO, med

    positiv och fast utgång på 1,2 V , lika som regulatorn den ska ersätta. Accepterad inspänning

    är 2 V till 5,5 V .

    Databladet rekommenderar keramiska in- och utgångskondensatorer på minst 1 µF

    vardera. Den har en minimum- och maximumutspänning på 1,16 respektive 1,24 V vilket

    ligger inom de rekommenderade gränserna för FPGA:n. På utvecklingskortet har även en

    ferritkärna använts i serie med utgången för att filtrera bort eventuella höga frekvenser. En

    likvärdig ferritkärna har placerats på kretskortet.

  • 8.1 Strömförsörjning 31

    Regulator 3,3 V

    Regulatorn för FPGA:ns spänning på 3,3 V är en NCP1117ST33T3G[20] ifrån ON semi-

    conductors vilket är densamma som på utvecklingskortet. Den har en positiv utgång, en fast

    utspänning på 3,3 V och accepterar inspänning från 3,5 V till 20 V .

    Databladet rekommenderar keramiska in- och utgångskondensatorer på 10 µF vardera.

    Den har en minimum- och maximumutspänning på 3,235 V respektive 3,365 V vilket

    ligger inom de rekommenderade gränserna för FPGA:n. Även här användes tidigare nämnda

    ferritkärna i serie med utgången.

    Regulator 5 V

    Vid val av 5V-regulatorn konsulterades handledaren på företaget då de redan har en sådan i

    en annan applikation. Det resulterade i att en LM2842YMK-ADJL [21] användes. Det är en

    justerbar switchad DC-DC buck-regulator med en maximal utström på 600 mA. Figur 8.1

    visar uppkopplingen för regulatorn.

    Utspänningen styrs genom att feedbackpinnen är återkopplad till utgången via en spän-

    ningsdelning med två resistorer. Förhållandet mellan dessa resistorer avgör nivån på utspän-

    ningen enligt Ekvation 8.1. Med R1 vald till 5,49 kΩ och R2 till 1 kΩ fås en Vout på 4,94

    V .

    Vout = 0,765(1+R1

    R2) (8.1)

    In-, ut- och bootstrapkondensatorn får samma värden som i företagets design, schottkydioden

    och spolen lika så.

    Figur 8.1 Uppkoppling LM2842YMK-ADJL

  • 32 Systemdesign

    8.2 Implementering av FPGA på mönsterkortet

    FPGA:n behöver några stödkomponenter för att fungera. På utvecklingskortet som använts

    vid utvecklingen finns en oscillator med frekvensen 50 MHz. Det är en CB3LV-3C-50M0000

    [22] ifrån tillverkaren CTS. Denna används för att ge en klocksignal till FPGA:n. Vid

    ingångspinnen rekommenderas en avkopplingskondensator på minst 0,1 µF , vilket har

    använts på utvecklingskortet och designen överförts till PCU:n.

    Enligt databladet för Lattice XP2-familjen behöver inte FPGA:n spänningförsörjas i en

    viss ordning som vissa andra FPGA:er behöver och därför tas inga åtgärder för att göra

    detta. För att programmera FPGA:n har en stiftlist placerats ut på mönsterkortet för att

    kunna använda den inbyggda JTAG:en vid programmering. I Lattice programvaran finns en

    effektkalkylator för att få en ungefärlig överblick på hur mycket effekt FPGA:n använder.

    Denna har använts för att verifiera om det skulle behövas någon slags kylning för FPGA:n

    i form av kylfläns. Effektförbrukning låg under 0,5 W så inga åtgärder har tagits för att

    kylning.

    8.3 Brytning av faser

    Att bryta en ström på 32 A ställer höga krav på själva brytaren. Därför har ett relä valts

    som klarar 33 A på inrådan av Chargestorm. Ett mönsterkortsmonterat Panasonic lf-g [23]

    relä har valts just för den lilla formfaktorn. Reläet har en slutar- samt öppningstid på 20 mS

    respektive 10 ms då det är av stor vikt att kunna bryta snabbt vid upptäckt felström. För att

    driva reläet med FPGA:n används en transistor som släpper igenom 24 V spänningen till

    reläet. En flyback-diod har även implementerats för att hantera den momentana strömpulsen

    som uppstår då induktorn i reläet bryts ifrån sin spänningskälla.

    8.4 Fasväxling

    Som nämnts tidigare i kapitel 2 skall en fasväxling implementeras på mönsterkortet för att

    kunna erbjuda ett mer välbalanserat elnät. Figur 8.2 visar ett exempel på hur en fasväxling

    kan ske genom att relä S3 sluter och därmed leder ingångsfas två till utgångsfas ett. Varför

    inte faserna sitter i numrerad ordning, som hade varit att föredra med tanke på installationen

    till elnätet, är för att det inte skulle kunna gå att dra ledarna på mönsterkortet utan att de

    korsas.

  • 8.5 Ledarbanor 33

    S2 S3 S4 S5 S6S1

    N L2 L1 L3

    N L2 L1 L3Figur 8.2 Illustration av fasväxling

    8.5 Ledarbanor

    En kritisk del vid designen utav mönsterkortet var att det ska kunna gå strömmar upp mot 32

    A i ledarbanorna. För att beräkna hur breda ledarbanor måste vara för att leda denna ström har

    standarden IPC 2221 [24] följts. IPC 2221 är en standard för tillverkning utav mönsterkort

    som i ett kapitel berör tvärsnittsarea på ledarbanor i koppar, relativt strömmen den leder samt

    värmeutveckling. Figur 8.3 visar strömledningsförmåga som funktion av tvärsnittsarea för

    några utvalda temperaturökningar. Den matematiska formeln för dessa kurvor visas i ekvation

    8.2 och är framtagna genom en kurvanpassning utförd av hemsidan [25] som använder sig av

    grafer i IPC 2221 standarden.

    Imax = 0.048×∆T0,44

    ×A0,725 (8.2)

  • 34 Systemdesign

    0 100 200 300 400 500 600 700

    Tvärsnittsarea i mil2

    0

    5

    10

    15

    20

    25

    30

    35

    40

    45

    Maxstr

    öm

    i A

    mpere

    10 °C

    20 °C

    30 °C

    45 °C

    50 °C

    75 °C

    100 °C

    Figur 8.3 Strömledningsförmåga som funktion av tvärsnittsarea för utvalda temperaturök-ningar.

    Kortet kommer att tillverkas med en koppartjocklek på 70 µm. En area på 700 mils2

    motsvarar 0.45 mm2 vilket ger en ledarbredd på 6,4 mm. Vid en ström på 32 A ökar kopparens

    temperatur med ungefär 50 °C. En bredd på 6,4 mm anses vara för stort för ledarbanor

    så ett beslut tas att tillverka ett 6-lagers kort där 5 lager används för att leda strömmen

    med en 3 mm bredd på ledarbanorna och vior som sammanlänkar lagren för att underlätta

    värmeavledningen. Detta ger en ”total bredd” på 15 mm vilket anses vara minst likvärdigt,

    även fast endast en femtedel ligger i kontakt med luft. Bredden ses som ett minimum och

    större bredd skall användas vid möjlighet. Detta bidrar till värmeavledningen. Vid möjlighet

    skall även det sjätte lagret användas för detta ändamål. Anledningen till att endast 5 lager

    skall används är för att reservera det sista lagret till eventuella signaler.

    8.6 Krypavstånd och isolation

    För att få korrekt certifiering på produkten har företaget krav på krypavstånd. En basisolation

    på minst 4 mm krävs mellan två högspänningsledare. En förstärkt isolation på minst 8 mm

    krävs mellan högspännings- och lågspänningssidan. För basisolation fungerar även en sepa-

    ration på ett lager, och för förstärkt isolation fungerar en separation på två lager. För förstärkt

  • 8.6 Krypavstånd och isolation 35

    isolation anses även 4 mm plus en separation på ett lager dugligt. Alla högspänningsnät ges

    unika nätnamn och regelverket ställs in för isolationskraven.

    8.6.1 Isolerad högspänningssida

    Mönsterkortet delades upp i två stycken sidor, en högspänning- och en lågspänningssida.

    På högspänningssidan ligger nätspänningen och all elektronik som användes för att mäta

    spänningsnivån samt strömmen på faserna. Detta inkluderar instrumentförstärkare, ström-

    transformatorer, ADC:n och spänningsreferensen. Denna sida hålls galvaniskt skild ifrån

    lågspänningssidan genom att inte ha någon kopparförbindelse mellan dessa. Då alla kompo-

    nenter på den isolerade sidan behöver matas med 5 V så kommer en DC/DC-omvandlare

    användas. NXE1S0505MC ifrån Murata Power Solutions [26] är en passande omvandlare

    med 5 V både in och ut. Den har en maximal utström på 200 mA vilket är nog för att driva

    allting på den isolerade sidan.

    8.6.2 Optokopplare

    Optokopplare används för att överföra elektriska signaler utan att skapa galvanisk kontakt.

    Detta sker genom att en elektrisk signal omvandlas till en icke elektrisk signal och sedan

    tillbaks. Här är den icke elektriska signalen en optisk signal ifrån en LED. Denna optiska

    signal öppnar sedan en fotokänslig transistor, se Figur 8.4.

    Figur 8.4 Illustration av optokopplare.

  • 36 Systemdesign

    På kretskortet skall dessa användas vid SPI-kommunikationen mellan ADC:n och FP-

    GA:n, samt vid mottagning av de styrsignaler ifrån CCU:n som bestämmer hur reläerna ska

    stå. Detta för att minimera risken att högspänningssidan får oönskad kontakt med kompo-

    nenterna på lågspänningssidan. SPI-signalerna går igenom Fairchild H11L1S-M [27]. Det är

    en optokopplare med inbyggd Schmitt trigger-utgång för att ge en snyggare signal och är

    specificerad för en datahastighet på 1 MHz. Det är gott nog för denna applikation. Triacsig-

    nalerna ifrån CCU:n går igenom Vishay VOL618A [28], det är en enklare optokopplare utan

    Schmitt trigger då dessa signaler inte är lika högfrekventa samt lika krävande på utseendet av

    signalen.

    8.7 Kontaktdon

    För att kunna ansluta alla tre faser och neutralledaren korrekt på brädet så ställs det specifika

    krav på kontakten. De kriterier som behöver uppfyllas är:

    • Det måste gå att leda minst 32 A genom kontakten.

    • Den måste ha 4 ben.

    • Den måste ha en benseparation på minst 7 mm, för att säkerställa att högspännings-

    noderna håller sina isolationskrav.

    Chargestorm har tidigare erfarenhet med kontaktdon ifrån Phoenix Contacts och rekommen-

    derade dessa. Phoenix Contacts nummer 1720592 [29] uppfyller alla ovanstående krav och

    väljs som kontakt för högspänningsanslutning.

    En tvåpolig kontakt behövs för att ansluta 24 V till mönsterkortet, denna ställs lägre krav

    på. Då denna kontakt ska driva 5 V -regulatorn (600 mA) och maximalt fyra stycken reläer

    (240 mA) samtidigt så räcker en kontakt specificerad för 1 A. För att hålla kontakterna inom

    samma tillverkare väljs en Phoenix Contacts 1881558 [30] som klarar av 4 A och har en

    benseparation på 2,5 mm.

    Modbus-kommunikationen behöver en kontakt med 4 pinnar. I samma familj som den

    tvåpoliga kontakten har Phoenix Contacts en fyrpolig kontakt, 1881574 [31]. Denna kontakt

    användes även i två uppsättningar för att täcka relä-signalerna. Relä-signalerna ifrån CCU:n

    är sex stycken, med en tillhörande jord, alltså sju stycken totalt.

    För säkerhetsskull skall en extra stiftlist installeras på kortet som är sammanlänkad med

    alla tre regulatorers utgångar samt jord. Detta för att kunna spänningsförsörja kortet utifall

    regulatorerna skulle fallera.

  • 8.8 Avkopplingskondensatorer 37

    8.8 Avkopplingskondensatorer

    Avkopplingskondensatorer används vid alla aktiva komponenter. Dessa har valts till en

    mindre fysisk storlek på 0603 (1608 metric) för att få en lägre parasitisk induktans. Beslutet

    på hur många farad kondensatorerna ska vara har tagits genom en uppskattning på hur stora

    energispikar den förväntas ta emot. Detta varierar mellan 1 och 24 µF .

  • Kapitel 9

    Resultat

    9.1 Mönsterkort

    Det slutgiltiga kortet blev 266x108 mm stort. Alla kontaktdon har placerats längs långsidorna

    utav kortet för att underlätta vid installation. Beslutet att öka upp ledarbredden för 32 A

    ledarna vid möjlighet resulterade i att de inte alltid ser ut som klassiska ledare, utan ibland är

    öar utav koppar. Figur 9.1 ger en överskådande blick på vart komponenterna placerats samt

    en förklarande lista.

  • 40 Resultat

    1. Inkommande fas.

    2. Jordfeldetektor.

    3. Strömtransformatorer, inkommande ledningar är luftburna kablar.

    4. Reläer.

    5. Utgående fas.

    6. Isolerad lågspänningssida med mätelektronik.

    7. FPGA.

    8. Isolerad triacingång.

    9. Spänningsmatning till kortet.

    10. Modbus-anslutning.

    Figur 9.1 3D-vy utav Altiumdesignen.

    För att göra det enklare att följa de kommande figurerna så visar tabell 9.1 vilken färg

    som representerar vilket lager i designen.

  • 9.1 Mönsterkort 41

    Tabell 9.1 Färgtillhögrighet för mönsterkortets lager

    Lager Färg

    Topplager Röd

    Innerlager 1 Brun

    Innerlager 2 Ljusblå

    Innerlager 3 Grön

    Innerlager 4 Lila

    Bottenlager Blå

    I Figur 9.2 representerar det röda området kopparen på mönsterkortets topplager. Här

    syns hålen under jordfeldetektorn tydligare, dessa är stora nog att ta emot en koppartråd

    på 12 AWG. Denna storlek valdes för att det är den största som får plats utan att bryta

    isolationskraven. Anledningen till att inkommande fas inte leds på topplagret vid ett tillfälle,

    är att det skulle bryta mot isolationskravet 8 mm mellan hög- och lågspänningssida. I det

    här lagret dras merparten av alla signalledare på lågspänningssidan och den isolerade sidan,

    överflödig koppar kopplas till jord.

    Figur 9.2 Topplagret.

    I Figur 9.3 har topplagret dolts. Nu syns det bruna lagret, innerlager nummer ett. Det här

    lagret används för spänningsförsörjning. Ifrån kontakten som ger 24 V in går en lång ledare

    bort till reläerna. Eftersom denna ledare är särskilt lång så har extra stora avkopplingskon-

    densatorer placeras nära varje relä. Flyback-dioderna är även dem placerade så nära reläerna

    som möjligt.

    Ifrån kontakten går även 24 V till 5 V -regulatorn. Dennes utgång är kopplad till det stora

    området till vänster samt en ledare som sticker iväg för att mata jordfeldetektorn. Den bruna

  • 42 Resultat

    området under FPGA:n är är 1,2 V . Detta område är så litet eftersom det endast är FPGA:n

    som använder denna spänningsnivå. På den övre isolerade sidan är detta lager kopplat till

    utgången ifrån DC/DC:n

    Figur 9.3 Innerlager ett.

    Figur 9.4 Innerlager två.

    I Figur 9.4 har ännu ett lager dolts, nu syns innerlager nummer två fullständigt. Detta

    lager är ett jordlager på både lågspänningssidan och den isolerade sidan.

    Det gröna i Figur 9.5 är innerlager nummer tre. Det stora området på lågspänningssidan

    är en nivå på 3,3 V . Det har gjorts stort nog för att innesluta alla komponenter som behöver

    den spänningen.

  • 9.1 Mönsterkort 43

    Figur 9.5 Innerlager tre.

    Figur 9.6 Innerlager fyra.

    Innerlager nummer fyra visas i Figur 9.6. På det här lagret dras signaler och resterande

    koppar knyts till jord. Bottenlagret i Figur 9.7 är ett fullständigt jordlager. Alla jordlager

    har givits en sådan form så att de går antingen över eller under all annan koppar vid samma

    område. På bottenlagret har det gjorts plats för extra avkopplingskondensatorer utifall de

    ordinarie inte skulle vara tillräckligt för core-spänningen på FPGA:n.

  • 44 Resultat

    Figur 9.7 Bottenlagret.

    Vid ingången för triacsignalerna ifrån CCU:n har all koppar jordats på alla lager, förutom

    signalbanorna på topplagret. Stiftlisten under Chargestorms logga är den stiftlist som går till

    alla tre spänningsnivåer samt jord, för att kunna spänningsförsörja med hjälp av en externt

    källa. Stiftlisten för att programmera FPGA:n är direkt till höger om den, så nära de berörda

    pinnarna som möjligt.

    9.2 Mjukvara

    9.2.1 VHDL

    Nedan följer en ingående förklaring hur VHDL-koden är uppbyggd och fungerar. Figur

    9.8 visar VHDL-blockschemat i detalj. Varje block, eller delsystem, kommer behandlas

    under rubrikerna nedan. Alla block drivs av en och samma klocka samt en och samma

    återställningssignal.

  • 9.2M

    jukvara45

    led0

    led1

    SPI_MISO SPI_MOSI

    0aklc

    rsta1[18:0]

    SP I_clk clka2[18:0]

    SP I_cs rst

    clk UART_RX

    rst f0[15:0]

    calclk

    rst]0:51[1f]0:51[0d

    clk]0:51[2f]0:51[1d

    b0[31:0]

    clk rst

    rst]0:51[3f]0:51[2d]0:51[1c

    ]0:13[0c]0:13[1bUART_TX

    a0]0:5[0g]0:51[4f]0:51[3d

    a1[18:0]]0:2[2c]0:13[2b

    cal]0:51[5f]0:51[4d

    b3[31:0]

    cal]0:51[6f]0:51[5db4[31:0]

    RS485_enable

    f7[15:0]b5[31:0]

    e0[31:0]

    clkVAC_AC

    calVAC_DC f8[7:0]

    VAC_ERROR

    triac_in[5:0]

    clk

    klctsr

    VAC_PWM

    cal VAC_cal

    relays[5:0]

    ZA

    I15

    inv

    ZA

    I13

    inv

    ZA

    I14

    inv

    relay_out[5:0]relay_in[5:0]

    power_saver

    enable

    clock

    I1

    Relay

    power[15:0]

    L3_V[15:0]

    L3_I[15:0]

    L2_V[15:0]

    L2_I[15:0]

    L1_V[15:0]

    L1_I[15:0]

    energy[15:0]

    timer[31:0]

    reset_n

    L3_v_in[15:0]

    L3_i_in[15:0]

    L2_v_in[15:0]

    L2_i_in[15:0]

    L1_v_in[15:0]

    L1_i_in[15:0]

    enable

    clock

    calibrate

    I11

    Power

    time_counter[31:0]reset

    clock

    I3

    µS-timer

    test_out

    PWM_num[7:0]

    cali_ok

    reset_n

    PWM

    clock

    cali_enable

    I4

    VAC

    ch_5[15:0]

    ch_4[15:0]

    ch_3[15:0]

    ch_2[15:0]

    ch_1[15:0]

    ch_0[15:0]

    reset_n

    input_x[15:0]

    enable

    clock

    addr[2:0]

    I5

    MUX1to6

    U[15:0]P[31:0]

    I6

    sqrt32uartSOUT

    RS485PIO_OUT[0]

    relayPIO_OUT[5:0]

    relay_psPIO_OUT[0]

    DC_enablePIO_OUT[0]

    calibratePIO_OUT[0]

    VAC_PWMPIO_IN[7:0]

    VAC_errorPIO_IN[0]

    VAC_cali_OKPIO_IN[0]

    uartSIN

    triacPIO_IN[5:0]

    reset_n

    powerPIO_IN[15:0]

    L3_vPIO_IN[15:0]

    L3_iPIO_IN[15:0]

    L2_vPIO_IN[15:0]

    L2_iPIO_IN[15:0]

    L1_vPIO_IN[15:0]

    L1_iPIO_IN[15:0]

    energyPIO_IN[15:0]

    DCPIO_IN[0]

    clk_i

    ACPIO_IN[0]

    I17

    MCU

    rx_data[18:0]

    mosi

    busy

    ss_n

    sclktx_data[18:0]

    reset_n

    miso

    enable

    clock

    I8

    SPI

    output_y[31:0]

    addr_enable

    addr[2:0]

    reset_n

    enable

    clock

    ch_5[31:0]

    ch_4[31:0]

    ch_3[31:0]

    ch_2[31:0]

    ch_1[31:0]

    ch_0[31:0]

    I9

    MUX6to1

    update

    tx_data[18:0]

    L3_V[31:0]

    L3_I[31:0]

    L2_V[31:0]

    L2_I[31:0]

    L1_V[31:0]

    L1_I[31:0]

    enable

    rx_data[18:0]

    reset_n

    clock

    calibrate

    busy

    I10

    RMS

    ZA

    I16

    inv

    Figur 9.8 Blockschema över VHDL-schemat.

  • 46 Resultat

    SPI

    SPI-blocket är ett gränssnitt mellan VHDL-blocket RMS och den utgående kommunikationen

    mellan ADC:n. En kommunikationssekvens kan se ut som följande. RMS-blocket lägger ut

    följden bitar den vill skicka på en 19-bitar parallellbuss sedan drar den en bekräftelselina

    (enable) hög för att signalera SPI-blocket att den har ett nytt meddelande redo att skicka. När

    alla bitar har klockats ut samt in av SPI:n, full duplex, lägger SPI:n en annan bekräftelselina

    (busy) låg, då vet RMS-blocket att det finns ny data att läsa från ADC:n.

    Vid SPI-kommunikation måste mastern, i detta fall FPGA:n, sköta klockning av linorna,

    därför kan man se i tabell 9.2 att bit fem - MSB på MOSI inte är av värde. Detta för att få

    SPI-blocket att fortsätta klocka in bitarna från ADC:n på MISO. Med hjälp av en skalfaktor

    på klockan kan man få vilken SPI-frekvens inom intervallet noll till halva FPGA-frekvensen.

    Tabell 9.2 Kommunikation mellan FPGA och ADC.

    Bitar Beskrivning

    LSB Start bit, 1

    1 Enkel eller differentiell mätning, 1/0

    2 Adress, MSB

    3 Adress

    4 Adress, LSB

    5 NULL, inget värde

    6-MSB Data från ADC, inget värde

    RMS

    RMS-blockets uppgift är att hämta data med hjälp av SPI-blocket från ADC:n och genomföra

    en effektivvärdesberäkning på dessa. Dock har roten ur delen av beräkningen tagits ur från

    detta block för att få en snabbare samplingstakt. Som man kan se i ekvationen 9.1, som är för

    att få RMS-värdet ur n-antal mätvärden, så måste man först kvadrera mätvärdet och sedan

    summera dem. Efter alla sampels har tagits tar man ut medelvärdet på dessa och skickar till

    nästa modul. Eftersom att det är tre strömtransformatorer samt tre spänningsmätningar så

    måste RMS-blocket sampla alla samtliga kanaler, detta sker på en och samma gång. Alltså

    hämtas alla värden i en sekvens sedan pausar blocket för att sedan ta nästa sekvens, detta för

    att göra en mer noggrann mätning. När alla värden har hämtats i en mätserie tas medelvärdet

    ut och sedan startar kretsen om.

    VRMS =

    1

    n(v21 + v

    22 + ...+ v

    2n) (9.1)

  • 9.2 Mjukvara 47

    En kaliberringssekvens implementerades på grund av att alla kanaler har, i sitt grundtill-

    stånd, en offsetnivå på halva mätområdet, denna måste subtraheras innan beräkningar kan

    genomföras. Så det kalibreringen gör är att innan en laddning skall påbörjas kommer det en

    puls från MCU:n som gör att RMS-blocket samplar de värden den har just då på ADC:n,

    alltså halva intervallet. Detta värde sparas i en variabel som sedan används för att subtrahera

    ifrån det riktiga mätvärdet. Detta ger en mer noggrann mätning.

    MUX/roten ur

    Eftersom att FPGA:n som används är den minsta i just den familjen så fick det inte plats

    att implementera ett roten ur block på vardera lina ut från RMS-blocket. Så en lösning med

    MUX:ar utvecklades för att lämna mer plats åt resterande program. MUX nummer ett, kallad

    MUX6to1, loopar igenom alla ingångar när RMS-blocket ger ut en pulssignal som signalerar

    att det finns nya värden på bussen. I ordning går ingångarna ut på utgången för att sedan få

    dess rot beräknad genom Sqrt32-blocket. MUX ett skickar även ut en puls samt adress till

    MUX nummer två, MUX1to6, för att denna skall hålla reda på vilket värde som skall till

    vilken utgång. Själva roten ur blocket, Sqrt32, tar ned 32-bitars bussen till en 16-bitars.

    Effekt/energi

    Effekt-blocket matar in alla data från faserna och gör därefter en beräkning på vilken

    momentaneffekt bilen laddar med. Även en tidfaktor matas in genom ett timer-block som

    är ett block som räknar mikrosekunder och sänder ut värdet på en 32-bitar buss. Med detta

    värde kan wattimmar beräknas.

    Effekt-blocket har även en till funktion, i med att värdena som tas in från ADC:n är en

    skalning utav antingen strömmen eller spänningen. Därför måste en skalfaktor multipliceras

    in på varje lina till en vald enhet att representera ström och spänning på. I strömfallet

    milliampere och i spänningsfallet centivolt. Dessa har valts för att få så hög upplösning som

    möjligt på ett 16-bitars tal.

    Jordfel

    Jordfel-blocket, även kallad VAC i Figur 9.8, är ett gränssnitt mellan FPGA:n och jord-

    felsdetektorns kalibreringssekvens. Innan en laddning påbörjas genomförs en kalibrering

    av hallgivaren som sitter i jordfelsdetektorn för att få så noggrann mätning som möjligt.

    Denna genomförs med hjälp av att blocket drar en pinne på jordfelsdetektorn låg, därefter

    ligger den och läser av PWM-utgången som indikerar DC-offset i hall-givaren. Denna PWM

    kommer gå från noll procent arbetscykel (duty cycle) till 100 procent på någon millisekund.

  • 48 Resultat

    Detta indikerar att hallen är kaliberrad utifrån de externa förhållanden den känner av just

    då. Jordfel-blocket läser även av PWM:n under en laddning för att kunna förse MCU:n med

    detta värde.

    Relädrivare

    Relä-blockets uppgift är att sluta de reläerna som MCU:n begär samt öppna reläerna så snart

    ett jordfel har upptäckts. En energisparfunktion implementerades genom att pulsbreddsmo-

    dulera en styrsignal till reläspolen. Vid påslag används 24 V för att få en så snabb och säker

    stängning av reläerna som möjligt. Om energisparfunktionen är aktiverad i MCU:n kommer

    reläerna gå ned till 40 procent energi efter 100 ms.

  • 9.2 Mjukvara 49

    9.2.2 MCU/Soft core

    Har triacingången ändrats?

    Slut/öppna

    reläer?

    Öppnar

    reläer

    Ligger det

    spänning?

    Fel Slut reläer

    Modbus väntar?

    Läs

    register

    Slut/öppna

    reläer

    Skriv

    register

    Nej

    Ja

    SlutÖpnna

    JaNej

    Nej

    Figur 9.9 Flödesschema över programmet i MCU:n.

  • 50 Resultat

    Processorn som är implementerad i FPGA:n, MCU:n, har till uppgift att sköta reläerna

    samt kommunicera med CCU:n. Figur 9.9 visar ett flödesschema över programmet för att få

    en lättare grafisk översikt. Under rubrikerna nedan följer en ingående beskrivning på de olika

    funktionaliteterna.

    Reläer

    Som nämnts tidigare har triac-ingångar implementerats för att få en bakåtkompatibilitet.

    Denna ingång kollas varje gång programmet kommer tillbaka till sin startposition. Om en

    ändring har skett jämförs det med föregående värde. En slutning av reläerna föregås av en

    kontroll så att inte det ligger någon spänning på faserna efter reläerna just då. Om det skulle

    göra det betyder det att ett relä har fallerat och en slutning av reläet just då skulle betyda att

    man kortsluter två faser. Denna funktion används även om man använder sig av att öppna

    reläerna via Modbus. Tabell 9.3 visar hur ingångarna på triac skall stå för att öppna vissa

    reläer.

    Tabell 9.3 Sanningtabell över triacsignal från CCU.

    N L1 L2 L3 L2-L1 L3-L1 Beskrivning

    0 0 0 0 0 0 Ej påslag

    1 1 0 0 0 0 Enfasladdning

    1 1 1 1 0 0 Trefasladdning

    1 0 0 0 1 0Enfasladdning,

    fasväxling

    1 0 0 0 0 1Enfasladdning,

    fasväxling

    0 0 0 1 0 0Trefasladdning,

    bakåtkompatibel

    Öppning av reläerna vid avslutad laddning kan ske på tre olika sätt. Triacingången kan

    ändra status, Modbusen säger till eller så har ett jordfel inträffat.

    9.2.3 Modbus

    I varje programslinga kollar MCU:n om det finns ett inkommande meddelande på Modbusen

    och läser av detta om det finns. Eftersom att platsen har varit begränsad på MCU:n har inte

    all funktionalitet på Modbusen kunnat implementerats. Att skriva till ett register samt läsa

    från ett eller flera register är det som implementerats, dock har ingen feldetektering fått plats.

  • 9.2 Mjukvara 51

    MCU:n kollar om den kan utföra ett visst kommando utan att orsaka fel, skulle det komma

    ett sådant fall händer det ingenting.

    Tabell 9.4 Modbus register.

    Adress Beskrivning Enhet

    0x01 Statusregister –

    0x02Energi,

    akumeleradWh

    0x03

    Energi,

    sedan senaste

    påslag

    Wh

    0x04 Effekt W

    0x05 Spänning L1 cV

    0x06 Spänning L1 cV

    0x07 Spänning L1 cV

    0x08 Ström L1 mA

    0x09 Ström L2 mA

    0x0A Ström L3 mA

    Det finns tio register varav nio av dessa endast går att läsa, tabell 9.4 ger en översiktsbild

    på registren. Adress 0x01 (HEX), är ett statusregister med en unik flagga på varje bitplats. I

    tabell 9.5 framgår varje flaggas funktion. Från minsta värdebit till bit nummer åtta ligger de

    flaggor man kan ändra över Modbus från CCU:n. Det är även från detta register man öppnar

    de olika reläerna via Modbus.

  • 52 Resultat

    Tabell 9.5 Statusregister.

    Statusregister, 0x01

    Bit: Funktion

    LSB N, slut eller öppna

    Bit 1 L1, slut eller öppna

    Bit 2 L2, slut eller öppna

    Bit 3 L3, slut eller öppna

    Bit 4 L2 till L1, slut eller öppna

    Bit 5 L3 till L1, slut eller öppna

    Bit 6 DC-utlösning, på/av.

    Bit 7 Triacsignal styr reläerna, på/av.

    Bit 8 Energisparfunktion för reläerna, på/av.

    Bit 9 -

    Bit 10 -

    Bit 11 -

    Bit 12 -

    Bit 13

    Kan inte öppna relä

    på grund av spänning

    på fas.

    Bit 14 DC-fel utlöst

    LSB AC-fel utlöst

  • Kapitel 10

    Verifiering

    10.1 Test av delsystem

    Kontinuerligt under utvecklingen har tester på delsystem genomförts. Alla delsystem har

    dock inte testats, vissa stöds enbart av teori.

    10.1.1 Jordfeldetektor

    Tidigt i projektet utfördes tester på jordfelsdetektorn för att verifiera om denna triggade på

    rätt nivåer. Figur 10.1 visar hur uppkopplingen. Komponenten HALL-VAC är hålet i mitten

    av detektorn, resistor R1 och R2 är variabla resistorer för att lätt kunna variera felströmmen.

    En last i form av en glödlampa användes på nätströmmen för att simulera att det går ström

    genom sensorn.

    AC_utAC_in

    U1

    DC_in DC_utAC_gnd AC_gnd

    HALL-VAC

    R1

    R2A

    A

    R_last

    Figur 10.1 Uppkoppling för att verifiera hall-givaren.

  • 54 Verifiering

    Efter testerna kunde värdena för brytningsnivåerna verifieras att den faktiskt bryter på 6

    mAdc samt 30 mAac. Ett mindre test på hur mycket externa fält påverkar genomfördes också

    genom att en permanentmagnet fördes närmare sensorn. Praktiken bekräftade teorin om att

    hall-sensorn är känslig för dessa fält. Dock fungerade kalibreringssekvensen så som förväntat

    genom att den nollade sensorn med det införda fältet.

    10.1.2 Reläer

    Slutning samt öppning av reläer har testats med programmet på FPGA:n både med triacin-

    gången samt Modbus. Dessa tester har testat så reläer som inte skall vara aktiva vid vissa

    lägen har varit aktiva, alltså så inga faser råkat kortslutas. Även tester på energisparfunk-

    tionen har gjort med resultat som visas i tabell 10.1. Som resultatet visar blir det en klar

    energiförbättring, speciellt om det skulle vara 4 reläer öppna samtidigt.

    Tabell 10.1 Resultat från energisparfunktion, ett relä.

    Arbetscykel Ström Effekt

    100% 60 mA 1,44 W

    40% 24 mA 0,58 W

    10.1.3 Mjukvaran

    Eftersom att kretskortet inte har kommit i rimligt tid för projektets slutfas har inga helhetstes-

    ter kunnat utföras på mjukvaran. Dock har alla de olika delarna testats. En primitiv spänning-

    samt strömmätnings uppkoppling gjordes för att kunna testa om man kan hämta data vi

    Modbus. En dator med en RS-485 till USB omvandlare användes för att hämta de olika

    registerna från FPGA:n.

    Testerna som genomfördes var med lyckat resultat, utav de 1000 paketen som skickades

    till FPGA:n kom 1000 svar tillbaka.

  • Kapitel 11

    Slutsats

    11.1 Diskussion

    11.1.1 Resultatutvärdering

    Här under kommer en utvärdering av de frågeställningar samt krav som ställts på PCU:n.

    Omfattande tester har inte kunnat utföras på PCU:n i och med att kretskortet inte har

    tillverkats inom rimlig tid för projektet. Merparten av punkterna kommer därför besvaras

    från ett teoretiskt perspektiv.

    • Tester har inte utförts angående ledning av 32 A trefas. Ledarbanorna har dock designats

    för att klara av en värmeutveckling på maximalt 50 °C teoretiskt.

    • Tester på jordfeldetektorn visade att felströmmar på på 6 mA likström och 30 mA

    effektivvärde växelström kan upptäckas.

    • De implementerade reläerna tillåter både brytning och fasväxling.

    • En FPGA har installerats som styrenhet för att styra logiken samt kommunicera med

    det överordnande styrsystemet CCU.

    • Styrning utav reläerna går att genomföra med både bakåtkompatibla triacsignaler eller

    via Modbus.

    • Med den mönsterkortsdesign som gjorts är det möjligt att få plats med alla delsystem

    på ett mönsterkort med de angivna dimensionsbegränsningarna.

    • I det här fallet ansågs det vara bäst att använda en strömtransformator för strömmätning,

    en differentialförstärkare för spänningsmätning och en hallsensor för att detektera

    läckström.

  • 56 Slutsats

    • En soft core-lösning har implementeras i FPGA:n för att hantera Modbus-kommunikation.

    Det har dock konstaterats att det inte är den optimala lösningen.

    11.1.2 Problem

    Det största problemet med projektet har varit FPGA:n. Mjukvaran som tillhandahölls från

    Lattice har till stundom varit väldigt bristfälligt. Exempel på detta kan vara när ett syntaxfel

    uppkommer någonstans i VHDL-blocket så ger Synthesize-motorn endast ut en felkod som

    inte ger någon ledtråd vart felet kan vara.

    Väldigt sent i projektet upptäcktes även att FPGA:n har bristfällig kapacitet för denna

    sortens jobb, det var dock alldeles för sent att byta till någon annan lösning. Dessa skäl är

    anledningen till att mjukvaran är så bristfällig när det kommer till Modbus-protokollet.

    En annan problematisk aspekt var de höga spänningarna och strömnivåerna arbetet

    behandlar. Att hitta en lämplig last för utvärdering och verifiering har ej gjorts.

  • Kapitel 12

    Framtida arbete

    En vidareutveckling av denna produkt skulle behöva börja med att genomföra noggrannare

    tester på den här versioner då alla egenskaper ej har verifierats till fullo. Här nedan följer en

    lista med förbättringsåtgärder.

    • Hitta en bättre, mer stabil, lösning för styrning av kortet. En FPGA kanske inte

    är den bästa lösningen. Om man inte kommer behöva snabb datainsamling finns

    det ingen mening att ha en FPGA på kortet. Det är både lättare och billigare att

    använda en välprogrammerad MCU, samt mycket smidigare när man skall ha ett

    kommunikationsgränssnitt.

    • Storskaliga tester måste genomföras på både ström- och spänningsmätning för att

    kontrollera noggrannheten i en mätning, samt se så mätningen är linjär över hela

    mätområdet.

    • Prov för att se så att 32 A trefas kan dras genom kortet utan att för höga temperaturök-

    ningar förekommer.

    • Jordfelsbrytaren måste testas med alla delar inkopplade på kortet så att inga felutslag

    förekommer.

  • Litteraturförteckning

    [1] Carl Nordling & Jonny Österman. Physics Handbook for Science and Engineering,eighth edition. Studentlitteratur, 1980.

    [2] Web, . URL https://en.wikipedia.org/wiki/File:Hall_Effect_Measurement_Setup_for_Electrons.png. (Tagen: 2016-11-19).

    [3] Web, . URL http://www.allegromicro.com/~/media/Images/Design/Integrating-Hall-Effect-Magnetic-Sensing-Technology-Into-Modern-Household-Appliances/figure1.ashx?w=300&h=307&as=1&la=en. (Tagen: 2016-11-19).

    [4] Web, . URL https://commons.wikimedia.org/wiki/File:RAZC-GENARRv1.jpg. (Tagen:2016-11-19).

    [5] Web, . URL https://ae01.alicdn.com/kf/HTB1yuduIVXXXXbyXFXXq6xXFXXXg/New-200A-75mV-DC-Analog-Current-Meter-Divider-font-b-Shunt-b-font-font-b-Resistor.jpg. (Tagen: 2016-11-21).

    [6] Web, . URL http://ww1.microchip.com/downloads/en/devicedoc/21298c.pdf. (Tagen:2016-11-25).

    [7] Web, . URL http://www.analog.com/media/en/technical-documentation/data-sheets/ADR5040_5041_5043_5044_5045.pdf. (Tagen: 2016-11-25).

    [8] Web, . URL http://ww1.microchip.com/downloads/en/DeviceDoc/25073A.pdf. (Tagen:2016-11-26).

    [9] Web, . URL https://en.wikipedia.org/wiki/File:FISkizze.svg. (Tagen: 2016-11-28).

    [10] Ac/dc sensitive residual current monitoring module rcmb121, . URL http://www.bender-emobility.com/fileadmin/products/doc/RCMB121_D00267_D_XXEN.pdf. (Ta-gen: 2016-11-28).

    [11] Web, . URL http://www.latticesemi.com/Products/FPGAandCPLD/LatticeXP2.aspx.(Tagen: 2016-11-28).

    [12] Web, . URL http://www.latticesemi.com/latticexp2-brevia. (Tagen: 2016-11-28).

    [13] 3.3-v rs-485 transceivers, Juli 2015. URL http://www.ti.com/lit/ds/symlink/sn65hvd10.pdf. (Tagen: 2016-11-19).

    [14] How to compute the modbus rtu message crc, . URL https://ctlsys.com/how_to_compute_the_modbus_rtu_message_crc/. (Tagen: 2016-11-18).

  • 60 Litteraturförteckning

    [15] On-line crc calculation and free library, . URL https://www.lammertbies.nl/comm/info/crc-calculation.html. (Tagen: 2016-11-18).

    [16] Lattice xp2 footprint. URL https://designcontent.live.altium.com/#UnifiedComponentDetail/Lattice_Semiconductor_XP2/8. (Tagen: 2016-11-22).

    [17] Latticexp2 brevia 2 development kit, November 2011. URL http://www.latticesemi.com/~/media/LatticeSemi/Documents/UserManuals/JL/LatticeXP2Brevia2DevelopmentKitUsersGuide.PDF?document_id=43735. (Tagen:2016-11-18).

    [18] Latticexp2™ family data sheet, Januari 2012. URL http://www.latticesemi.com/view_document?document_id=24635. (Tagen: 2016-11-19).

    [19] Tlv1117lv 1-a, positive fixed-voltage, low-dropout regulator, Februari 2015. URLhttp://www.ti.com/lit/ds/sbvs160b/sbvs160b.pdf. (Tagen: 2016-11-20).

    [20] 1.0 a low-dropout positive fixed and adjustable voltage regulators, September 2014.URL http://www.onsemi.com/pub_link/Collateral/NCP1117-D.PDF. (Tagen: 2016-11-18).

    [21] Lm284x and lm284x-q1 100, 300, or 600-ma 42-v input step-down dc-dc regulatorin thin sot, September 2016. URL http://www.ti.com/lit/ds/symlink/lm2842-q1.pdf.(Tagen: 2016-11-19).

    [22] Model cb3 & cb3lv hcmos/ttl clock oscillator. URL http://www.ctscorp.com/wp-content/uploads/2015/11/008-0256-0.pdf. (Tagen: 2016-11-21).

    [23] Lf-g relays (alfg), . URL https://www.panasonic-electric-works.com/cps/rde/xbcr/pew_eu_en/ds_61B12_en_lfg.pdf. (Tagen: 2016-11-24).

    [24] Generic standard on printed board design, May 2003. URL http://sisko.colorado.edu/CRIA/FILES/REFS/Electronics/IPC_2221A.pdf. (Tagen: 2016-11-18).

    [25] Web, . URL http://circuitcalculato