IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM JACOB ANDERSSON, JOHAN NORDHALL, 2000
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM INNHÅLLSFÖRTECKNING PROBLEMBESKRIVNING...1 LÖSNING AV UPPGIFTEN...2 IR-länkens hårdvara...2 Transmitterkrets...2 Reciverkrets...3 IR-länkens mjukvara...4 Sinusvågprogrammen...4 Chatprogram...5 Subprogram...5 DISKUSSION...7 Mjukvara...7 Hårdvara...7 Jacob Andersson, Johan Nordhall, 2000 Innehållsförteckning- Sida I
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM PROBLEMBESKRIVNING Uppgiften bestod i att bygga en IR-kommunikationslänk med tillhörande program och GUI utvecklade i programmet LabView. Programvaran skulle klara att skicka och ta emot en samplad sinusvåg och presentera denna på lämpligt sätt. Vidare skulle vi utveckla programvara för en enkel chat till IR-länken samt en websida som presenterar projektet. Jacob Andersson, Johan Nordhall, 2000 Problembeskrivning - Sida 1
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM LÖSNING AV UPPGIFTEN IR-LÄNKENS HÅRDVARA För att kunna överföra signalerna mellan datorerna har vi använt COM-porten på datorn som kommunicerar medgränssnittet RS232. Detta gränssnitt använder negativ logik medca -12 volt som 1 och+12 volt som 0. Exakt hur själva gränssnittet arbetar är inte intressant för vår applikation utan vi ser till att dessa 1:or och 0:or överförs på korrekt sätt. Själva IR-länken använder sig av en sk pulse-burst modulation, vilket betyder att IR-mottagaren sätter sin utsignal hög (5V) när den får pulser med ca 38 khz. TRANSMITTERKRETS Hårdvaran kan delas in i två stora block: transmitter och reciever. Då recivern vi använder vill ha enfrekvens på 38 khz måste vi anpassa entimerkrets till IR-dioden så att den sänder med denna frekvens. För att lösa detta problem, använde vi oss av den välkända timerkretsen 555 som försattes i ett astabilt läge. Kondensatiorernas och motståndens värde beräknades teoretiskt och vi använde sedan en variabel resistor för att finjustera frekvensen så att denna blev så nära 38 khz som möjligt. Resultatet blir då att vi får en fyrkantsvåg med den önskade frekvensen som har en dutycykel på ~50%. Fig. 1: Transmitterkrets Jacob Andersson, Johan Nordhall, 2000 Lösning av uppgiften - Sida 2
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM RECIVERKRETS Eftersom RS232 arbetar med ca -12V och +12V, behövde vi ändra dessa spänningar till 0V och +5V. Anledningen till att detta måste göras är att timerkretsen annars kan gå sönder och dessutom får vi TTL-kompabilitet överallt i kretsen. Detta löstes med en vanlig 4148-diod för att få bort den negativa delen och ett variabelt motstånd som kopplades som en potentiometer för att få ut 5 V till timerkretsen. (i figuren är denna inte tri mmad). Utgången levererade 2,2V, eftersom dioden vill ha ca 1,3V gjorde vi här en spänningsdelning. Den andra delen av länken består av en reciverkrets. Kretsen är i sig indelad i tre steg: en IR-mottagare, en substraktor och en förstärkare. IR-mottagaren består av många olika delar: Fig. 2: IR-mottagare ELIRM 8601 Anledningen till att alla dessa komponenter finns med, är för att alltid kunna ge 0V eller 5V. Som den nu är konstruerad kommer det i princip aldrig att kunna bli något mellanläge. Då vi vill ha -12V och +12V ut enligt RS232 specifikationen, måste vi göra om signalen till detta. Vi löser detta genom att först applicera en substraktor som gör om signalen till -2,5V och +2,5V. Slutligen förstärks denna signal med en OPförstärkare så att de önskade spänningarna erhålls. Fig. 3: Reciverkrets Jacob Andersson, Johan Nordhall, 2000 Lösning av uppgiften - Sida 3
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM IR-LÄNKENS MJUKVARA Eftersom vi har löst två olika uppgifter, har vi även tillverkat två olika programvaror. Båda har dock en del gemensamma substrukturer: getstr och sendstr. Dessa två subfunktioner tar emot och sänder strängar via det seriella gränssnittet på datorn (COM-portarna). SINUSVÅGPROGRAMMEN Applikationen för att sända, ta emot och presentera en samplad sinusvåg består av två program gjorda i LabView, en klient och en server. Sendsin, klienten är ett relativt enkelt program som består av två moduler, en huvudmodul - Sendsin och en submodul Sendstr. Sendsin har ett GUI (fig. 4) genom vilket användaren kan sända en textfil, innehållande x- och y-värden, över länken. Textfilen måste dock vara på spreadsheet-format för att det ska fungera, ett exempel på en sådan spreadsheet-fil, den vi använde, kan ses i appendix 8. Sendsin sänder iväg värdena i xydata.txt radvis med hjälp av funktionen Sendstr och skickar slutligen strängen 'EOF' för att ange att alla data har sänts. Se appendix 1: Sendsin.VI Getsin, servern består även den av två moduler, huvudmodulen Getsin och submodulen GetArray som i sin tur använder sig av submodulen Getstr. Getsin har ett GUI (fig. 4) där mottagna data presenteras dels som spreadsheet, dels som graf. Den visar även hur många sampelden mottagna sinusvågen består av. När Getsin startas ligger den och väntar på data som läses in och sätts ihop till en tvådimensionell array med x- resp. y-värden. Sedan utförs några manipulationer av arrayen av anledningar som tas upp i diskussionen. Ur arrayen beräknas sedan antalet sampel (antalet x- och y-värden) och en waveform skapas av värdena. Dessa tillsammans med de mottagna data presenteras i GUI-et. Se appendix 2: Getsin.VI Fig. 4: TV, GUI för Sendsin; TH, GUI för Getsin Jacob Andersson, Johan Nordhall, 2000 Lösning av uppgiften - Sida 4
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM CHATPROGRAM Chat, är liksom Sendsin och Getsin gjort i LabView men är lite mer komplicerat och innehåller fler submoduler. Applikationen möjliggör en enkelform av tvåvägskommunikation över IR-länken via ett enkelt och rätt intuitivt GUI (fig. 5). För att initiera en konversation via chat-programmet måste dock den som ska ta emot det första meddelandet ställa sig som 'master' med hjälp av knappen i övre vänstra knappen innan programmet startas för att det ska fungera. Fig 5: GUI för Chat-programmet Till skillnad från Sendsin och Getsin används samma program på båda datorerna som ska kommunicera i.e. samma program alternerar mellan klient och server. Om programmet sätts i serverläge (master) vid start kommer det att kalla på submodulen Getstr som beskrivits ovan och vänta på en textsträng. När den får en sträng presenteras den i logfönstret med texten 'Remote: ' före och ställer om sig till klient vilket indikeras för användaren genom att lampan 'Talk' tänds. Om programmet står som klient (default) vid start kommer programmet att tända lampan 'Talk' och vänta på att 'Send'-knappen trycks ner. När 'Send'-knappen trycks ner skickas strängen i textfältet ovanför 'Send'-knappen till submodulen Sendstr. Sedan väntar programmet 20 ms så att strängen ska ha hunnit sändas innan submodulen Clear anropas för att rensa COM-bufferten så att inget gammalt ligger kvar till nästa gång när programmet är server och ska läsa från bufferten. Därefter ställer sig programmet som server och 'Talk'-lampan släcks. Se appendix 3: Chat.VI SUBPROGRAM Sendstr, denna funktion är mycket enkel. Den lägger till ett '<' före strängen som ska skickas och ett '>' efter strängen innan den lägger ut den på COM-1 porten. Tecknen '<' och '>' fungerar som kontrolltecken för mottagarprogrammet så att det ska kunna skilja den sända strängen från eventuellt brus. Detta är ett mycket enkelt protokoll och det är långt ifrån felsäkert, men om det inte är allt för mycket brus (som i vårt fall) så fungerar det. Se appendix 4: Sendstr.VI Jacob Andersson, Johan Nordhall, 2000 Lösning av uppgiften - Sida 5
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM Getstr, denna funktion väntar tills den får ett '<' från COM-porten, när den får detta läser den allt som kommer till denna till ett '>' tas emot och returnerar den mottagna strängenutan kontrolltecken. På detta sätt går det att ta emot endast önskade trängar och utesluta eventuellt brus från IR-mottagaren. Se appendix 5: Getstr.VI GetArray, för att läsa in textsträngarna till arrayen använder sig GetArray av submodulen Getstr. Getstr är en submodul som ligger och läser av COM-1 porten i väntan på kontrolltecknet '<' för att börja inläsning av tecken till en sträng. När Getstr får kontrolltecknet '>' avslutas inläsningen och den mottagna strängen returneras. Se appendix 6: GetArray.VI Clear, submodulen Clear är mycket enkel. Den kollar hur många tecken det ligger i seriellportens buffert och läser in dem i.e. rensar bufferten från tecken. Se appendix 7: Clear.VI Jacob Andersson, Johan Nordhall, 2000 Lösning av uppgiften - Sida 6
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM DISKUSSION MJUKVARA Vi startade hela projektet med att göra programvaran. Till vår hjälp använde vi en vanlig nollmodemkabel mellan två datorer så att vi enkelt kunde testa våra program och eliminera risken att IR-länken inte fungerade. Själva Labview var inte så enkelt att använda till en början, men efter ett tag började man att få grepp om hur det fungerade. Vissa saker tyckte vi var extra struliga, i vår funktion Getsin t.ex. så blev vår array som vi skickade "inpaddad" av en rad och en kolumn med nollor, detta förstod vi aldrig ochvi fick lösa det genom att helt enkelt ta bort dessa. Två program tillverkades i Labview till vår IR-länk och dessa har en del gemensamma problem. Båda programmen använder sig av samma funktion för att sända och ta emot strängar. Getsin som är denfunktion som tar emot strängar, väntar på ett starttecken '<' för att kunna sålla bort skräp ochför att veta när det kommer enny sträng. Alla strängar som tas emot skall avslutas med ett sluttecken '>'. I vårt chatprogram, som har en konstruktion med en master och en slave (master lyssnar), betyder detta att programmet kan hänga sig. Skulle starttecknet eller sluttecknet av någon anledning försvinna eller bli felaktigt, kommer den dator som tar emot aldrig att byta till master och de datorer som kommunicerar kommer därför att vara master samtidigt. Detta betyder att båda datorerna väntar på att få en sträng vilket leder till att chatprogrammet slutar att fungera. I vårt andra program som sänder och tar emot en sinusvåg skulle detta problem endast leda till att en sträng försvinner och det betyder att ett mätvärde tappas bort vilket kanske inte är någon katastrof. Chatprogrammet är inte i full duplex, vilket vi anser är en begränsning som bör tas upp. Sinusprogrammet klarar av presentera en textfil med mätvärden som ska vara i två kolumner med x-värden först. Vi valde denna lösning eftersom vi anser att detta är det mest komplatibla sättet att spara värden på med tanke på plattformar och olika program. HÅRDVARA När vi startade hade vi inga förkunskaper om hur gränssnittet RS232 fungerade, vilket gjorde att vi fick börja medatt tar reda på detta och sedan anpassa dessa signaler så att de skulle kunna passa till vår IR-diod och IR-mottagare. Vi hade problem med överhörning i kretsenoch reciverkretsen tog emot signaler trots att ingen IR-diod ens Jacob Andersson, Johan Nordhall, 2000 Diskussion - Sida 7
IR-KOMMUNIKATION PROJEKTLABORATION I KURSEN MÄTSYSTEM var inkopplad (överhörningen). Då vi visste att vi rensade bufferten till seriellporten i chatprogrammet och att detta då skulle ta bort dessa värden ansåg vi det inte vara nödvändigt att göra något åt saken. Vi inser nu att om chatprogrammet skulle göras om så att det fungerar i full duplex skulle detta bli ett problem som var tvunget att lösas. Vi kom upp i en överföringshastighet på 2400 baud, hastigheter ovanför dessa var tyvärr omöjliga. Vi provade bara på ett avstånd på ca 50 cm men antar att det borde gå på ett lite längre avstånd (upp mot 1-2 m åtminstone), men att hastigheten då måste sänkas. Själva utvecklingsarbetet med IR-länken fungerade annars bra, det tog lite tid men vi körde nästan aldrig fast. Jacob Andersson, Johan Nordhall, 2000 Diskussion - Sida 8
Sendsin.vi \\wagner\tmp\jacob, Johan\Sendsin.vi Last modified on 2000-12-11 at 22:35 Printed on 2000-12-14 at 11:24 Connector Pane Appendix 1 Page 1 Sendsin.vi Front Panel Data sent Click to select file to send Data Sent from File: Controls and Indicators Click to select file to send Data sent Data Sent from File: <B>new file path </B>is the path of the file from which the VI reads data.
Sendsin.vi \\wagner\tmp\jacob, Johan\Sendsin.vi Last modified on 2000-12-11 at 22:35 Printed on 2000-12-14 at 11:24 Block Diagram Page 2 1 [0..3] 0 Data Sent from File: 2400 0 Data sent 0 [0..3] Click to select file to send
Sendsin.vi \\wagner\tmp\jacob, Johan\Sendsin.vi Last modified on 2000-12-11 at 22:35 Printed on 2000-12-14 at 11:24 2 [0..3] Page 3 EOF 3 [0..3] 20 Position in Hierarchy
Sendsin.vi \\wagner\tmp\jacob, Johan\Sendsin.vi Last modified on 2000-12-11 at 22:35 Printed on 2000-12-14 at 11:24 Page 4 List of SubVIs History Serial Port Init.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Instr\Serial.llb\Serial Port Init.vi Sendstr.vi \\wagner\tmp\jacob, Johan\Sendstr.vi Read Characters From File.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Utility\file.llb\Read Characters From File.vi "Sendsin.vi History" Current Revision: 25
Getsin.vi \\wagner\tmp\jacob, Johan\Getsin.vi Last modified on 2000-12-12 at 14:14 Printed on 2000-12-14 at 11:26 Connector Pane Appendix 2 Page 1 Getsin.vi Front Panel Recieved Spreadsheet Recieved data as plot 5,5 4,0 3,0 2,0 1,0 0,0-1,0-2,5 7,6 25,0 50,0 75,0 Time 107,6 Number of samples 0 Program made by Jacob Andersson and Johan Nordhall For use with IR-link Hardware Built By the above Persons December 2000 Controls and Indicators Recieved Spreadsheet Waveform Graph Number of samples
Getsin.vi \\wagner\tmp\jacob, Johan\Getsin.vi Last modified on 2000-12-12 at 14:14 Printed on 2000-12-14 at 11:26 Page 2 Block Diagram Forever Loop 0 1 0 0 0 1 t0 dt Y 2400 Waveform Graph 2 Number of samples %e Recieved Spreadsheet 1 Array To Spreadsheet String Position in Hierarchy
Getsin.vi \\wagner\tmp\jacob, Johan\Getsin.vi Last modified on 2000-12-12 at 14:14 Printed on 2000-12-14 at 11:26 Page 3 List of SubVIs History Serial Port Init.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Instr\Serial.llb\Serial Port Init.vi GetArray.vi \\wagner\tmp\jacob, Johan\GetArray.vi "Getsin.vi History" Current Revision: 32
Chat.vi \\wagner\tmp\jacob, Johan\Chat.vi Last modified on 2000-12-14 at 11:18 Printed on 2000-12-14 at 11:21 Connector Pane Appendix 3 Page 1 Chat.vi Front Panel Master Log Talk Send Controls and Indicators Master Send Talk Log Talk
Chat.vi \\wagner\tmp\jacob, Johan\Chat.vi Last modified on 2000-12-14 at 11:18 Printed on 2000-12-14 at 11:21 Block Diagram Page 2 0 False Local: Talk 2 [0..3] Log 2400 50 Master 0 [0..3] Send 1 [0..3] Talk Become Slave 3 [0..3]
Chat.vi \\wagner\tmp\jacob, Johan\Chat.vi Last modified on 2000-12-14 at 11:18 Printed on 2000-12-14 at 11:21 True Page 3 Remote: Become Master Position in Hierarchy List of SubVIs Serial Port Init.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Instr\Serial.llb\Serial Port Init.vi Getstr.vi \\wagner\tmp\jacob, Johan\Getstr.vi
Chat.vi \\wagner\tmp\jacob, Johan\Chat.vi Last modified on 2000-12-14 at 11:18 Printed on 2000-12-14 at 11:21 Sendstr.vi \\wagner\tmp\jacob, Johan\Sendstr.vi Page 4 Clear.vi \\wagner\tmp\jacob, Johan\Clear.vi History "Chat.vi History" Current Revision: 14
Sendstr.vi \\wagner\tmp\jacob, Johan\Sendstr.vi Last modified on 2000-12-02 at 13:14 Printed on 2000-12-14 at 11:30 Connector Pane Appendix 4 Page 1 Substring Sendstr.vi Front Panel Substring Controls and Indicators Block Diagram Substring < 0 > Position in Hierarchy
Sendstr.vi \\wagner\tmp\jacob, Johan\Sendstr.vi Last modified on 2000-12-02 at 13:14 Printed on 2000-12-14 at 11:30 List of SubVIs Page 2 Serial Port Write.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Instr\Serial.llb\Serial Port Write.vi History "Sendstr.vi History" Current Revision: 3
Getstr.vi \\wagner\tmp\jacob, Johan\Getstr.vi Last modified on 2000-12-07 at 00:19 Printed on 2000-12-14 at 11:28 Connector Pane Appendix 5 Page 1 Getstr.vi String Front Panel String string read Controls and Indicators String string read <B>string read</b> The VI returns the bytes read in <B>string read</b>.
Getstr.vi \\wagner\tmp\jacob, Johan\Getstr.vi Last modified on 2000-12-07 at 00:19 Printed on 2000-12-14 at 11:28 Block Diagram Page 2 1 [0..1] False String string read 0 1 > True
Getstr.vi \\wagner\tmp\jacob, Johan\Getstr.vi Last modified on 2000-12-07 at 00:19 Printed on 2000-12-14 at 11:28 0 [0..1] Page 3 0 1 < Position in Hierarchy
Getstr.vi \\wagner\tmp\jacob, Johan\Getstr.vi Last modified on 2000-12-07 at 00:19 Printed on 2000-12-14 at 11:28 List of SubVIs Page 4 Serial Port Read.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Instr\Serial.llb\Serial Port Read.vi History "Getstr.vi History" Current Revision: 9
GetArray.vi \\wagner\tmp\jacob, Johan\GetArray.vi Last modified on 2000-12-11 at 21:37 Printed on 2000-12-14 at 11:28 Connector Pane Appendix 6 Page 1 XY-values GetArray.vi Front Panel 0 XY-values 0,00 1 String Controls and Indicators XY-values Block Diagram String 0,00 XY-values 0 0 String %e EOF Position in Hierarchy
GetArray.vi \\wagner\tmp\jacob, Johan\GetArray.vi Last modified on 2000-12-11 at 21:37 Printed on 2000-12-14 at 11:28 Page 2 List of SubVIs History Getstr.vi \\wagner\tmp\jacob, Johan\Getstr.vi "GetArray.vi History" Current Revision: 12
Clear.vi \\wagner\tmp\jacob, Johan\Clear.vi Last modified on 2000-12-02 at 12:35 Printed on 2000-12-14 at 11:29 Connector Pane Appendix 7 Page 1 Clear.vi Front Panel Buffer Controls and Indicators Block Diagram Buffer <B>string read</b> The VI returns the bytes read in <B>string read</b>. 0 Buffer Position in Hierarchy
Clear.vi \\wagner\tmp\jacob, Johan\Clear.vi Last modified on 2000-12-02 at 12:35 Printed on 2000-12-14 at 11:29 Page 2 List of SubVIs History Bytes At Serial Port.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Instr\Serial.llb\Bytes At Serial Port.vi Serial Port Read.vi D:\Program Files\National Instruments\LabVIEW 6\vi.lib\Instr\Serial.llb\Serial Port Read.vi "Clear.vi History" Current Revision: 1
Appendix 8 xydata.txt 0,0000000e+000 0,0000000e+000 6,3466518e-002 6,3423920e-002 1,2693304e-001 1,2659245e-001 1,9039955e-001 1,8925124e-001 2,5386607e-001 2,5114799e-001 3,1733259e-001 3,1203345e-001 3,8079911e-001 3,7166246e-001 4,4426563e-001 4,2979491e-001 5,0773215e-001 4,8619674e-001 5,7119866e-001 5,4064082e-001 6,3466518e-001 5,9290793e-001 6,9813170e-001 6,4278761e-001 7,6159822e-001 6,9007901e-001 8,2506474e-001 7,3459171e-001 8,8853126e-001 7,7614646e-001 9,5199777e-001 8,1457595e-001 1,0154643e+000 8,4972543e-001 1,0789308e+000 8,8145336e-001 1,1423973e+000 9,0963200e-001 1,2058638e+000 9,3414786e-001 1,2693304e+000 9,5490224e-001 1,3327969e+000 9,7181157e-001 1,3962634e+000 9,8480775e-001 1,4597299e+000 9,9383846e-001 1,5231964e+000 9,9886734e-001 1,5866630e+000 9,9987413e-001 1,6501295e+000 9,9685478e-001 1,7135960e+000 9,8982144e-001 1,7770625e+000 9,7880245e-001 1,8405290e+000 9,6384216e-001 1,9039955e+000 9,4500082e-001 1,9674621e+000 9,2235429e-001 2,0309286e+000 8,9599377e-001 2,0943951e+000 8,6602540e-001 2,1578616e+000 8,3256985e-001 2,2213281e+000 7,9576184e-001 2,2847947e+000 7,5574957e-001 2,3482612e+000 7,1269417e-001 2,4117277e+000 6,6676900e-001 2,4751942e+000 6,1815899e-001 2,5386607e+000 5,6705986e-001 2,6021272e+000 5,1367739e-001 2,6655938e+000 4,5822652e-001 2,7290603e+000 4,0093054e-001 2,7925268e+000 3,4202014e-001 2,8559933e+000 2,8173256e-001 2,9194598e+000 2,2031053e-001 2,9829264e+000 1,5800140e-001 3,0463929e+000 9,5056043e-002 3,1098594e+000 3,1727933e-002 3,1733259e+000-3,1727933e-002 3,2367924e+000-9,5056043e-002 3,3002589e+000-1,5800140e-001 3,3637255e+000-2,2031053e-001 3,4271920e+000-2,8173256e-001 3,4906585e+000-3,4202014e-001 3,5541250e+000-4,0093054e-001 3,6175915e+000-4,5822652e-001 3,6810581e+000-5,1367739e-001 3,7445246e+000-5,6705986e-001 3,8079911e+000-6,1815899e-001 3,8714576e+000-6,6676900e-001 3,9349241e+000-7,1269417e-001 3,9983907e+000-7,5574957e-001 4,0618572e+000-7,9576184e-001 4,1253237e+000-8,3256985e-001 4,1887902e+000-8,6602540e-001 4,2522567e+000-8,9599377e-001 4,3157232e+000-9,2235429e-001 Sida 1
xydata.txt 4,3791898e+000-9,4500082e-001 4,4426563e+000-9,6384216e-001 4,5061228e+000-9,7880245e-001 4,5695893e+000-9,8982144e-001 4,6330558e+000-9,9685478e-001 4,6965224e+000-9,9987413e-001 4,7599889e+000-9,9886734e-001 4,8234554e+000-9,9383846e-001 4,8869219e+000-9,8480775e-001 4,9503884e+000-9,7181157e-001 5,0138549e+000-9,5490224e-001 5,0773215e+000-9,3414786e-001 5,1407880e+000-9,0963200e-001 5,2042545e+000-8,8145336e-001 5,2677210e+000-8,4972543e-001 5,3311875e+000-8,1457595e-001 5,3946541e+000-7,7614646e-001 5,4581206e+000-7,3459171e-001 5,5215871e+000-6,9007901e-001 5,5850536e+000-6,4278761e-001 5,6485201e+000-5,9290793e-001 5,7119866e+000-5,4064082e-001 5,7754532e+000-4,8619674e-001 5,8389197e+000-4,2979491e-001 5,9023862e+000-3,7166246e-001 5,9658527e+000-3,1203345e-001 6,0293192e+000-2,5114799e-001 6,0927858e+000-1,8925124e-001 6,1562523e+000-1,2659245e-001 6,2197188e+000-6,3423920e-002 6,2831853e+000-2,4492936e-016 Sida 2