LABORATION - KRETSPROCESSER
LABORATION - KRETSPROCESSER
LABORATION - KRETSPROCESSER
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
MMVF01<br />
Termodynamik<br />
och<br />
Strömningslära<br />
<strong>LABORATION</strong> -<br />
<strong>KRETSPROCESSER</strong><br />
Under laborationen ska du jobba med en Stirlingmotor och en<br />
värmepump.<br />
Förberedelser<br />
Repetera först i kursboken (Çengel & Boles, "Thermodynamics – An<br />
Engineering Approach", 7th Ed.) om värme och arbete, kap. 2-3/4<br />
och 4-1; termodynamikens första huvudsats, kap. 2-6, 4-2, 5-3 och<br />
kretsprocesser, termodynamikens andra huvudsats och<br />
Carnotprocessen, kap. 6-3/4/7. Läs sedan specifikt om<br />
Stirlingprocessen i kap. 9-7 och den ideala kylmaskinprocessen av<br />
ångkompressionstyp i kap. 11-1/2/3. Läs därefter genom denna<br />
laborationsinstruktion fram till det ställe där utförandedelen börjar.<br />
Gör följande uppgifter<br />
Lösningarna lämnas renskrivna till handledaren för kontroll innan<br />
laborationen börjar.<br />
1.1 I en kvasistatisk kretsprocess för en värmemotor med enbart<br />
volymändringsarbete representeras nettoarbetet, under ett varv, av<br />
den inneslutna arean i ett p-V-diagram. En motor genomlöper en<br />
“fyrkantig kretsprocess” enligt<br />
diagrammet i figuren.<br />
(a) Vilken enhet har pV ?<br />
(b) Hur stort arbete uträttar motorn<br />
under ett varv i kretsprocessen?<br />
(c) Vilken effekt avger motorn om<br />
det tar 0.20 s för kretsprocessen<br />
att genomlöpa ett varv?<br />
Svar: (b) 1,6 kJ, (c) 8,0 kW.<br />
1.2 I figuren visas ett schematiskt p-V-diagram för den ideala<br />
Stirlingprocessen (ideal Stirlingmotor, arbetsmedium: ideal gas).<br />
Kretsprocesser 1
Rita av diagrammet och<br />
markera tillfört och bortfört<br />
värme. Under vilken del av<br />
kretsprocessen tar regeneratorn<br />
upp respektive avger<br />
värme?<br />
1.3 För en värmemotor (arbetsgivande kretsprocessmaskin)<br />
definieras termisk verkningsgrad th som kvoten mellan det<br />
nettoarbete Wnet,out som motorn presterar och det värme Q in som<br />
tillförs processen. Den högsta teoretiska termiska verkningsgraden<br />
för en värmemotor är<br />
th,max<br />
TH<br />
TC<br />
T<br />
1<br />
T T<br />
H<br />
C<br />
H<br />
där T H är den högsta och T C den lägsta temperaturen under kretsprocessen.<br />
I en testbil med en Stirlingmotor är den högsta temperaturen<br />
under kretsprocessen 700°C och den lägsta temperaturen<br />
100°C. Beräkna processens högsta möjliga termiska verkningsgrad.<br />
Svar: 62 %.<br />
1.4 För en värmepump definieras värmefaktorn COPHP som kvoten<br />
mellan det värme som avges från den varma sidan Q out och det<br />
nettoarbete Wnet,in som måste tillföras motorn (kompressorn) som<br />
driver kretsprocessen. Den högsta teoretiska värmefaktorn för en<br />
värmepump ges av<br />
COP<br />
HP, max<br />
TH<br />
<br />
T T<br />
H<br />
C<br />
1<br />
<br />
1T<br />
/ T<br />
C<br />
H<br />
där T H är den högsta och T C den lägsta temperaturen under kretsprocessen.<br />
En värmepump som tar värme (energi) från utomhusluften<br />
har en praktisk (verklig) värmefaktor som är hälften av det<br />
teoretiskt högsta värdet. Beräkna värmepumpens praktiska värmefaktor<br />
för följande två fall.<br />
(a) Uteluftens temperatur är –20°C och värmepumpen levererar<br />
varmvatten med temperaturen 50°C.<br />
(b) Uteluftens temperatur är 0°C och värmepumpen levererar varmvatten<br />
med temperaturen 40°C.<br />
2 Kretsprocesser
Svar: (a) 2,3 (b) 3,9.<br />
1.5 I en demonstrationsvärmepump, enligt figur 1.1, tas värme Q in ,<br />
från en “kall reservoar” som innehåller 10 liter vatten-glykolblandning.<br />
Värme Q ut , avges till en “varm reservoar” som innehåller<br />
10 liter vatten ( m 10 kg ). Q in är den värmemängd som normalt tas<br />
“gratis” från en lämplig reservoar och Q ut är den nyttiga värmemängd<br />
som normalt används till uppvärmning. Kompressorn tillför arbetet<br />
W (absolutbelopp), som vi betalar för via elräkningen. Vattnets<br />
specifika värmekapacitet kan antas vara konstant,<br />
C HO 4,2 kJ/(kg K) .<br />
2<br />
(a) Temperaturen i den varma reservoaren höjdes 25,8°C på tiden<br />
1616 s. Hur stor medeleffekt har lämnats till den varma reservoaren?<br />
Figur 1.1. Schematisk bild av en värmepump. De viktigaste delarna är<br />
kompressor, expansionsventil, kall och varm reservoar.<br />
Figur 1.2. Temperaturens variation med tiden i den varma reservoaren.<br />
Kretsprocesser 3
(b) Diagrammet i figur 1.2 visar hur temperaturen i den varma reservoaren<br />
varierade med tiden t. Mätningen började då värmepumpen<br />
startades. För enkelhets skull anpassades en rät linje till mätpunkterna<br />
med hjälp av minsta kvadratmetoden. Detta gav<br />
T = a·t + b<br />
där a = 0,0163°C/s och b = 25,7°C. Vi har då en approximation till<br />
hur temperaturen varierar med tiden i den "varma reservoaren" när<br />
temperaturen ökar från runt 26°C till 52°C. Kompressorns effekt<br />
approximeras till att vara konstant 158 W under mättiden.<br />
Beräkna värmefaktorn COPHP för värmepumpen då temperaturen<br />
varierar enligt ovan. Du ska få lite hjälp på vägen. Värmefaktorn kan<br />
momentant definieras som<br />
COP<br />
HP<br />
Q<br />
<br />
W<br />
ut<br />
net,in<br />
Eftersom vi mäter effekter kan uttrycket skrivas<br />
COP<br />
HP<br />
Q Q dt Q<br />
W dt W <br />
W<br />
ut ut ut<br />
net,in net,in net,in<br />
där<br />
ut<br />
Q är avgiven effekt i den varma behållaren och W net, in kompressorns<br />
effekt. Med hjälp av kedjeregeln kan vi skriva<br />
Q<br />
ut<br />
Q<br />
<br />
dt<br />
ut<br />
Q<br />
<br />
dT<br />
ut<br />
dT<br />
dt<br />
Till sist utnyttjas<br />
Qut<br />
<br />
dT<br />
(mC)<br />
H O<br />
2<br />
där m är massan och C specifik värmekapacitet.<br />
Svar: (a) 0,67 kW (b) 4,3.<br />
Stirlingprocessen<br />
Enligt Carnots första princip har alla reversibla värmemotorer, där<br />
värmeutbytet (med motorns omgivning) endast sker via två värmereservoarer,<br />
samma termiska verkningsgrad. För Carnotprocessen<br />
sker värmeutbytet via två isoterma delprocesser, värmetillförsel vid<br />
TH och värmeavgivning vid TC (TC < TH). Mellan dessa sker kom-<br />
4 Kretsprocesser
pression och expansion under adiabatiska förhållanden, d.v.s. utan<br />
värmeutbyte. Under en reversibel adiabatisk process för ett slutet<br />
system är ju entropin konstant enligt definition, vilket innebär att<br />
dessa delprocesser är isentroper. Stirlingprocessen har liksom<br />
Carnotprocessen värmetillförsel och värmeavgivning vid två konstanta<br />
temperaturer (isotermer) men isentroperna är ersatta med<br />
isokorer, delprocesser vid konstant volym (se kap. 9-7 i kursboken).<br />
Det värme som egentligen behöver avyttras vid isokoren mellan TH<br />
och TC kan under ideala (teoretiska) förhållanden till 100 % återanvändas<br />
internt i processen för den uppvärmning som krävs under<br />
isokoren mellan TC och TH. Denna interna värmeåtervinning brukar<br />
kallas regenerering. I praktiken kan aldrig regenereringen ske fullständigt.<br />
Slutsatsen enligt Carnots första princip är dock att under<br />
reversibla förhållanden och 100 % regenerering har Stirlingprocessen<br />
lika hög termisk verkningsgrad som Carnotprocessen,<br />
<br />
th, Stirling<br />
Stirlingmotorn<br />
TH<br />
TC<br />
T<br />
th,Carnot<br />
th,max<br />
1<br />
T T<br />
Genom åren har det utvecklats flera Stirlingmotorer<br />
i undervisningssyfte. Det finns<br />
t.ex. en sol-Stirlingmotor som är försedd med<br />
en parabolspegel, se figur 1.3. Laborationens<br />
Stirlingmotor är åskådligt gjord med en cylinder<br />
av glas så att man kan se de olika<br />
delarna. Se figur 1.4. Motorn har två kolvar,<br />
en arbetskolv och en förflyttningskolv, som<br />
löper i samma cylinder. Arbetskolven ändrar<br />
gasens tryck och volym i cylindern genom att<br />
komprimera eller expandera gasen. Förflyttningskolvens<br />
rörelser ändrar inte cylinderns motor försedd med<br />
Figur 1.3 En Stirling-<br />
volym utan förflyttar bara gasen fram och parabolspegel som fokuserar<br />
solljus på<br />
tillbaka mellan det varma och det kalla<br />
motorns yttersta del.<br />
området. Då förflyttningskolven t.ex. rör sig<br />
uppåt i cylindern flyttas gasen från den övre till den nedre volymen.<br />
H<br />
C<br />
H<br />
<br />
Kockums AB i Malmö tillverkar Stirlingmotorer, för ubåtar och<br />
solenergiomvandling. Kockums är även involverat i olika utvecklingsprojekt med<br />
Stirlingmotorer, t.ex. i samarbete med bilindustrin samt företag och institutioner<br />
inom energisektorn.<br />
Kretsprocesser 5
Gasen passerar då genom ett hål i kolvens mitt som innehåller<br />
regeneratorn. Regeneratorn består av kopparull som har till uppgift<br />
att mellanlagra värme då gasen passerar åt ena eller andra hållet.<br />
Figur 1.4. Den Stirlingmotor som du ska använda under laborationen.<br />
Figur 1.5 visar de fyra delprocesser som ingår i den ideala Stirlingcykeln.<br />
Förutsatt att regeneratorn fungerar perfekt kan dess arbetssätt<br />
beskrivas på följande sätt. Då gasen passerar regeneratorn från<br />
motorns övre varma del, värms regeneratorn upp och gasen kyls av.<br />
Gasen kommer då till motorns nedre del kyld till temperaturen T C .<br />
Då gasen passerar regeneratorn från motorns nedre kalla del kyls<br />
regeneratorn av och gasen värms upp. Det medför att gasen kommer<br />
till motorns övre del uppvärmd till temperaturen T H .<br />
Borttransporten av värme från motorns nedre del sker med hjälp av<br />
kylvatten från en kran. Om vi låter flödet vara tillräckligt stort kommer<br />
kylvattnets temperatur T C att vara konstant oavsett variationer<br />
hos den borttransporterade effekten. Det betyder att vi har en kall<br />
värmereservoar. Vi kan då anta att gasen i motorns nedre del får<br />
samma temperatur T C som kylvattnet.<br />
6 Kretsprocesser
Figur 1.5. Stirlingmotorns funktion. Diagrammet ovanför respektive<br />
bild visar vilken tillståndsändring som bilden avser att visa. Bilden<br />
visar startläget för tillståndsändringen och pilarna visar hur kolvarna<br />
skall röra sig för att komma till tillståndsändringens slutläge. T.ex.<br />
visar figuren ovanför a b kolvarnas lägen i tillståndet a och pilarna<br />
visar hur kolvarna skall röra sig för att komma till tillstånd b. Se även<br />
tabellen nedan.<br />
Tillståndsändring<br />
a b<br />
b c<br />
c d<br />
d a<br />
Tabell 1.1. Sammanfattning av tillståndsändringarna.<br />
Gasens<br />
temperatur<br />
Ökar<br />
Konstant<br />
och hög<br />
Minskar<br />
Konstant<br />
och låg<br />
Gasens<br />
volym<br />
Konstant<br />
och liten<br />
Ökar<br />
Konstant<br />
och stor<br />
Minskar<br />
Arbetskolv Förflyttningskolv<br />
Stilla i övre<br />
vändläget<br />
Uppifrån och<br />
nedåt<br />
Stilla i nedre<br />
vändläget<br />
Nerifrån och<br />
upp<br />
Uppifrån och<br />
ner<br />
Fortsätter<br />
nedåt<br />
Nerifrån och<br />
upp<br />
Stilla i övre<br />
vändläget<br />
I motorns övre volym tillförs energi via ett elektriskt värmeelement * .<br />
En ökning av den tillförda elektriska effekten resulterar i en högre<br />
temperatur T H vilket i sin tur ger upphov till ett större nyttigt arbete.<br />
* Tänk på att det är en demonstrationsmaskin. En elmotor kan drivas med<br />
betydligt högre totalverkningsgrad än en Stirlingmotor.<br />
Kretsprocesser 7
När Stirlingmotorn varit igång en stund har temperaturen T H stabiliserats<br />
och vi har fått ett stationärt tillstånd. Motorn hålls då igång<br />
genom att värme tillförs till den övre delen av motorn (så att<br />
expansionen sker isotermt) och värme bortförs från den nedre delen<br />
av motorn (så att kompressionen sker isotermt). Arbetet som gasen<br />
uträttar under den isoterma expansionen används dels till att uträtta<br />
nyttigt arbete (från maskinanvändarens synpunkt) och dels till att<br />
lagra rörelseenergi hos ett svänghjul. Se figur 1.4. Dessutom försvinner<br />
en del energi genom t ex friktion och strålningsförluster men det<br />
bortser vi ifrån. Det arbete som tillförs gasen under den isoterma<br />
kompressionen tas från svänghjulet (som därmed förlorar rörelseenergi).<br />
Nettoarbetet för processen blir skillnaden mellan det av<br />
gasen uträttade arbetet (under den isoterma expansionen) och det till<br />
gasen tillförda arbetet (under den isoterma kompressionen). I den<br />
schematiska beskrivningen i figur 1.5 är det bara en kolv åt gången<br />
som rör sig. I praktiken blir det bara en approximation eftersom den<br />
mekaniska konstruktionen gör att båda kolvarna rör sig (mer eller<br />
mindre) samtidigt.<br />
pV-indikatorn (Indikatordiagram)<br />
Arbetskolvens läge är ett mått på den inneslutna luftens volym. På<br />
laborationens Stirlingmotor överförs arbetskolvens rörelse via ett<br />
snöre och några hävarmar till en spegel som vrids i sidled. Spegeln<br />
belyses med en laser och reflexen syns på en skärm. När volymen<br />
ändras rör sig laserfläcken horisontellt över skärmen. Trycket kan<br />
mätas genom att spegelupphängningen via en slang är ansluten till<br />
luften i motorn. Tryckändringar i motorn tvingar spegeln att röra sig<br />
kring en horisontell axel så att laserfläcken flyttas i vertikalled. På<br />
skärmen syns alltså ett p-V-diagram över kretsprocessen.<br />
Värmepump<br />
En värmepump, precis som en kylmaskin, överför värme från ett kallare<br />
område till ett varmare område. För en värmepump är vi intresserade<br />
av den värmemängd (Q ut ) som kan avges vid den varma temperaturen,<br />
medan vi för en kylanläggning är intresserade av den värmemängd<br />
(Q in ) som tas upp från det kalla området. I en värmepump<br />
eller en kylmaskin utnyttjas normalt fasövergångar i ett köldmedium.<br />
I institutionens värmepumpar är det tetrafluoretan * som medför att vi<br />
* Kemisk formel C2H2F4, beteckning R-134a, se kap. 11-6 i kursboken.<br />
8 Kretsprocesser
får kokning och kondensering vid lämpliga temperaturer och rimliga<br />
tryck.<br />
I en praktisk värmepump tas värme från en sjö, från marken eller<br />
från uteluften. Detta värme används för att förånga köldmediet i förångaren.<br />
I kondensorn kondenseras köldmediet varvid det omgivande<br />
vattnet upptar värme, som kan användas för att t.ex. värma upp ett<br />
hus. När förhållandena väl stabiliserats kommer kretsprocessens<br />
högsta och lägsta temperatur (T H respektive T C ) att vara konstanta.<br />
Laborationens värmepump har s.k. koaxialförångare och koaxialkondensor<br />
(se figur 1.6). Både koaxialförångare och koaxialkondensor<br />
består av ett inre rör (böjt som en spiral) i vilket köldmediet<br />
strömmar. Runt om detta rör finns ett grövre rör i vilket en glykolvattenblandning<br />
(eller bara vatten) strömmar.<br />
Figur 1.6. Värmepumpsanläggning med koaxialförångare och koaxialkondensor.<br />
Kretsloppet enligt figur 1.6<br />
Process D A: Köldmedium i gasfas vid lågt tryck och låg temperatur<br />
komprimeras adiabatiskt (nästan) av kompressorn till högt<br />
tryck (12 atm 1.2 MPa) och hög temperatur (70°C).<br />
Process A B: I kondensorn kyls gasformigt köldmedium av vatten<br />
som leds genom kondensorn. Köldmediet övergår då från gasfas till<br />
vätskefas. Den värmemängd, som frigörs vid denna fasövergång, tas<br />
upp av vattnet, som kommer uppvärmt ut ur kondensorn.<br />
Process B C: Expansionsventilen fungerar huvudsakligen som en<br />
mekanisk strypventil. Köldmediets tryck, och därmed temperatur<br />
minskar kraftigt vid passagen av expansionsventilen.<br />
Kretsprocesser 9
Process C D: I förångaren övergår köldmediet från vätskefas till<br />
gasfas. Förångningen (kokningen) är möjlig genom att köldmediet tar<br />
upp värme från en glykol-vattenblandning, som leds genom förångaren.<br />
Värmefaktorn COPHP (godhetstalet för en värmepump) definieras som<br />
kvoten mellan avgivet värme och tillfört nettoarbete, vilket för en<br />
godtyckligt liten del av processen (momentant) kan skrivas<br />
COP HP<br />
Q<br />
<br />
W<br />
ut<br />
net,in<br />
På laborationen har vi två 10 liters spannar med vatten, som får<br />
representera de båda temperaturreservoarerna. Med så små volymer<br />
kommer temperaturen att ändras med tiden. Eftersom värmepumpen<br />
tar värme från den ena spannen och lämnar värme till den andra<br />
kommer temperaturen (T C ) att sjunka i den första spannen och<br />
temperaturen (T H ) att stiga i den andra. När temperaturerna ändras<br />
med tiden varierar även värmefaktorn. Vi kan skriva den momentana<br />
värmefaktorn som<br />
COP HP<br />
Q<br />
<br />
W<br />
ut<br />
net, in<br />
där Q ut är den värmeeffekt som momentant överförs till den varma<br />
behållaren och W net, in W<br />
e, in är den momentana elektriska effekt som<br />
kompressorn använder.<br />
10 Kretsprocesser
Utförande<br />
Uppgift 1: Undersökning av Stirlingmotorn<br />
Dra sakta runt motorns svänghjul för hand (åt rätt håll) och övertyga<br />
dig om hur de fyra tillståndsändringarna kommer till stånd. Fundera<br />
över hur energiutbytet med omgivningen går till för de olika tillståndsändringarna.<br />
Uppgift 2: Stirlingmotorns termiska verkningsgrad<br />
Bestäm Stirlingmotorns termiska verningsgrad<br />
då den används som värmemotor.<br />
Tänk först ut vilka storheter<br />
som måste mätas för att uträttat arbete<br />
och tillförd energi skall kunna beräknas.<br />
Utför därefter mätningarna.<br />
OBS. Stirlingmotorn är ömtålig (och dyr).<br />
Den får inte startas utan handledarens<br />
medverkan!<br />
Uppgift 3: Stirlingprocessen som kylskåp<br />
eller värmepump<br />
Handledaren kommer att visa hur man<br />
kan köra en Stirlingmotor som en<br />
arbetskrävande kretsprocessmaskin<br />
(”Stirlingmaskin”). Motorn dras runt<br />
med en drivrem från en elektrisk<br />
motor, se figur 1.7. Vattenkylningen är<br />
som vanligt i maskinens nedre del men<br />
glödtråden är ersatt med en termometer.<br />
(a) Stirlingmotorns drivhjul dras runt<br />
åt samma håll som det roterade när<br />
motorn kördes som värmemotor. Rita<br />
kretsprocessen schematiskt i ett p-Vdiagram<br />
och markera den isoterm som<br />
bestäms av kylvattnets temperatur T kyl .<br />
Ange kretsprocessens omloppsriktning<br />
och var arbetsgasen tar upp respektive<br />
avger värme. Vad brukar en maskin av denna typ kallas?<br />
Figur 1.7 Svänghjulet på<br />
Stirlingmotorn kan drivas<br />
runt av en elektrisk motor.<br />
Varje gång kretsprocessen<br />
genomlöps tar arbetsgasen<br />
upp värme som sedan avges<br />
antingen till kylvattnet<br />
eller till den del där termometern<br />
sitter.<br />
Kretsprocesser 11
(b) Riktningen på den drivande motorn vänds, så att Stirlingmotorns<br />
svänghjul dras runt åt andra hållet. Rita åter kretsprocessen schematiskt<br />
i ett p-V-diagram och markera den isoterm som bestäms av<br />
kylvattnets temperatur T kyl . Ange kretsprocessens omloppsriktning<br />
och var arbetsgasen tar upp respektive avger värme. Vilken typ av<br />
maskin har vi nu?<br />
Figur 1.8. Laborationens värmepumpsanläggning med inkopplat mätsystem.<br />
Uppgift 4a: Fasövergångar i värmepumpen<br />
Starta värmepumpen och datainsamlingssystemet enligt handledarens<br />
instruktion. Temperaturerna i den varma- respektive kalla<br />
behållaren (TH, TC) samt det tillförda elektriska arbetet (We,in) avläses<br />
automatiskt av datainsamlingsprogrammet "Science workshop" med<br />
en frekvens som du bestämmer, ett lämpligt samplingsintervall är<br />
10 s.<br />
Leta upp alla tryck- och temperaturmätare som finns installerade på<br />
värmepumpen. Mät vid två tidpunkter (lämpligen i början och i slutet<br />
av mätserien) tryck och temperatur på alla ställen där det finns<br />
mätare installerade. För att värmepumpen skall fungera tillfredsställande<br />
krävs det att fasövergångarna sker där de skall. Studera<br />
detta genom att föra in alla mätpunkterna i det färdigtryckta p-Tdiagrammet<br />
som du får av handledaren. Markera var fasövergångarna<br />
sker.<br />
12 Kretsprocesser
Uppgift 4b: Värmepumpens värmefaktor som funktion av tiden<br />
Ta upp en mätserie med TH, TC och We,in under ca 20 minuter. När<br />
datainsamlingen är färdig sparas resultaten på en fil för utskrift och<br />
senare analys med hjälp av programmet MatLab. För att skriva ut TH,<br />
TC och We,in som funktion av tiden används den färdiga MatLabrutinen<br />
v_data.<br />
Du ska beräkna den experimentella värmefaktorn för tre tidpunkter:<br />
en i början, en i mitten och en i slutet av datainsamlingen. För att<br />
göra detta måste du bestämma effekterna Q ut respektive W e, in, dvs<br />
tidsderivatorna av Q ut och W e, in.<br />
Grafisk bestämning av derivator är en metod som är både tidsödande<br />
och som inte ger speciellt noggranna resultat. Man kan beräkna<br />
derivator för alla tidpunkter i mätserien genom att anpassa en funktion<br />
till mätdata. En sådan funktionsanpassning utjämnar de experimentella<br />
osäkerheterna. I ett färdigt MatLab-program v_faktor<br />
anpassas ett polynom av lämpligt gradtal till mätdata. Polynomet<br />
deriveras sedan och värmefaktorn beräknas som funktion av tiden.<br />
Jämför dina grafiskt beräknade värden med värden från MatLabprogrammet.<br />
När du är klar med beräkningarna ska du bl.a. besvara följande<br />
frågor. Varför minskar värmefaktorn med tiden? Vad betyder det att<br />
värmefaktorn är lika med ett?<br />
Exempel på MatLab-program<br />
Här följer ett exempel på ett MatLab-program som läser in de<br />
experimentella data, ritar diagrammet med temperaturen i den varma<br />
reservoaren som funktion av tiden, anpassar ett tredjegradspolynom,<br />
deriverar detta och ritar diagrammet med avgiven effekt<br />
som funktion av tiden.<br />
% Värmepump<br />
%<br />
% Läser in tid, temperaturer och tillförd elektrisk<br />
% energi med hjälp av funktionen read_hdata_func.<br />
% Funktionen kommer att fråga efter namnet på aktuell<br />
% datafil<br />
%-------------------------------------------------<br />
[t W T_H T_C]=read_hdata_func<br />
TH=T_H+273.15; % T_H i grader Celsius<br />
Kretsprocesser 13
TC=T_C+273.15; % T_C i grader Celsius<br />
%-------------------------------------------------<br />
% plot ritar mätvärdena för temperaturen på den<br />
% varma sidan (t, TH) markeras med “+”<br />
%-------------------------------------------------<br />
figure(1)<br />
plot(t,TH,'+')<br />
title('Temperaturen på den varma sidan som<br />
funktion av tiden')<br />
xlabel('tid/s')<br />
ylabel('Tvarm/K')<br />
%-------------------------------------------------<br />
% polyfit anpassar ett polynom till mätpunkterna<br />
% t och TH (tredjegradspolynom i detta fall)<br />
% och lagrar polynomets koefficienter i en<br />
% variabel (THpol)<br />
%-------------------------------------------------<br />
THpol=polyfit(t,TH,3)<br />
%-------------------------------------------------<br />
% polyder deriverar polynomet THpol. Nya<br />
% koefficienter i THderiv<br />
% Nästa rad multiplicerar med massan och<br />
% värmekapacitiviteten och lagrar resultatet<br />
% i variabeln PHpol.<br />
% polyval beräknar den avgivna värmeeffekten (PH)<br />
% med polynomet PHpol och tiderna i t<br />
%-------------------------------------------------<br />
THderiv=polyder(THpol);<br />
PHpol=10*4190*THderiv;<br />
PH=polyval(PHpol,t);<br />
%-------------------------------------------------<br />
% Diagram över avgiven effekt på den varma sidan<br />
% som funktion av tiden<br />
%-------------------------------------------------<br />
figure(2)<br />
plot(t,PH,'-')<br />
title('Avgiven effekt (varma området) som<br />
funktion av tiden')<br />
xlabel('tid/s')<br />
ylabel('Avgiven effekt/W')<br />
14 Kretsprocesser
Appendix MatLab<br />
MatLab är ett beräkningsprogram som är konstruerat för numerisk<br />
analys, matrishantering, grafik mm.<br />
I MatLabs kommandofönster kan man göra variabeltilldelningar och<br />
ge kommandon eller så kan man exekvera s.k. m-filer. En m-fil är en<br />
textfil skriven i något editeringsprogram och sparat som filnamn.m.<br />
m-filen består av exakt de tilldelningar och kommandon man annars<br />
ger direkt. För att exekvera de kommandon som är givna i m-filen<br />
skriver man helt enkelt bara filnamnet i MatLabs kommandofönster.<br />
Ett vanligt fel här är att filnamn.m. är sparat i en annan mapp än i<br />
den för MatLab aktuella mappen. Du ändrar aktuella mappen i<br />
MatLab med kommandot "cd".<br />
Nedan följer en mycket kort sammanställning av några vanliga<br />
funktioner, som du kan ha nytta av på laborationen.<br />
Polynomhantering<br />
För polynomhantering finns i MatLab ett antal färdiga funktioner. Ett<br />
polynom, p(x), lagras i MatLab som en radvektor p. Elementen representerar<br />
koefficienterna i polynomet och är givna efter fallande ordning<br />
på potenserna av x. Det betyder att polynomet<br />
n<br />
n 1<br />
n1 <br />
1 0<br />
p( x) a x a x ... a x a<br />
i MatLab representeras av radvektorn<br />
<br />
n<br />
n<br />
p a a ... a a<br />
n1 1 0<br />
<br />
Nedan följer några kommandon för polynomhantering.<br />
p=polyfit(x,y,n) Om vektorn x innehåller x-värden och vektorn<br />
y innehåller y-värden, returnerar polyfit<br />
en vektor p som innehåller koefficienterna<br />
för ett polynom p av gradtal n som anpassats<br />
med minsta kvadratmetoden till datamängden.<br />
yber=polyval(p,x) evaluerar polynomet p. Om x är en skalär så<br />
returneras värdet av polynomet i punkten x.<br />
Om x är en vektor evalueras polynomet för<br />
vart och ett av elementen. Resultatet lagras i<br />
yber.<br />
pd=polyder(p) ger derivatan till polynomet vars koefficienter<br />
är lagrade i vektorn p.<br />
roots(p) ger nollställena till funktionen p(x) = 0.<br />
Kretsprocesser 15
Grafikkommandon<br />
plot(x,'+')<br />
ritar kolumnerna i x mot deras index. Talparen<br />
ritas ut med symbolen '+'.<br />
plot(x,y,'+') ritar punkter i ett xy-diagram. y-värdena<br />
finns i vektorn y och x-värdena i vektorn x.<br />
Talparen ritas ut med symbolen '+'. Byts '+'<br />
ut mot '-' ritas en linje mellan talparen.<br />
loglog(x,y)<br />
ritar en bild enligt plotkommandot, men med<br />
10 log-skala längs båda axlarna.<br />
semilogx(x,y) ritar en bild med 10 log-skala längs x-axeln<br />
och linjär skala längs y-axeln.<br />
semilogy(x,y) ritar en bild med 10 log-skala längs y-axeln<br />
och linjär skala längs x-axeln.<br />
axis([v1 v2 v3 v4]) sätter skalningen så att xmin=v1, xmax=v2,<br />
ymin=v3 och ymax=v4.<br />
hold on<br />
håller kvar aktuell figur så att man kan rita<br />
flera gånger i samma diagram med samma<br />
skalning på axlarna.<br />
hold off<br />
avslutar kvarhållningen.<br />
title('text') skriver 'text' överst i grafikfönstret.<br />
xlabel('text') skriver 'text' under x-axeln.<br />
ylabel('text') skriver 'text' vid y-axeln.<br />
grid<br />
ritar ett rutnät i grafikfönstret.<br />
Övriga nyttiga kommandon<br />
help<br />
ger en lista över alla kommandon.<br />
help kommando ger en förklaring till 'kommando'.<br />
print<br />
sänder en kopia av grafikfönstret till en skrivare.<br />
En inledande punkt före varje operatortecken (.+, .-, .*, ./ osv.)<br />
indikerar att det är en operation som skall utföras element för<br />
element. Här krävs naturligtvis att matriserna har samma dimensioner.<br />
Exempel: Följande MatLab-satser anpassar ett polynom med<br />
minstakvadratmetoden.<br />
16 Kretsprocesser
% Minsta kvadratanpassning med ett första<br />
% ordningens polynom till mätserien y(1)=1.5,<br />
% y(2)=2.0 samt y(3)=2.2.<br />
% Observera att mätvärdena skiljs åt av mellanslag<br />
% och att skiljetecknet för decimal är en punkt.<br />
% Observera också att varje rad avslutas med ";".<br />
% Om du utelämnar ";"-tecknet skriver MatLab ut<br />
% (ekar) resultatet.<br />
%---------------------------------------------<br />
x=[1 2 3];<br />
y=[1.5 2.0 2.2];<br />
p=polyfit(x,y,1);<br />
plot(x,y,'+')<br />
hold on<br />
yanp=polyval(p,x);<br />
plot(x,yanp,'-')<br />
xlabel('x')<br />
ylabel('y(x)')<br />
title('Min.kvad.anpassning')<br />
GJ/CN, 2011<br />
Kretsprocesser 17