Commit 39a4d256 authored by Elias Barbers's avatar Elias Barbers
Browse files

version 2.23.0

parent 9f56fc15
Pipeline #336827 passed with stages
in 73 minutes and 18 seconds
......@@ -22,6 +22,7 @@ tags
CMakeFiles/
*.mexw*.pdb
*.mexw*
*.mexa*
/Debug
/DebugMatlab
/DebugArmadillo
......
Version 2.23.0
===========
- The aging model is available as an S-Function for Simulink
- Individual twoports can be added to the observer output by marking them as observable
- Updates to the documentation
Version 2.22.0
===========
- Output filenames for the thermal matlab filter can be set in the XML file
......
......@@ -5,9 +5,9 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
cmake_policy(SET CMP0009 NEW)
set(ISEAFrameVERSION_MAJOR 2)
set(ISEAFrameVERSION_MINOR 22)
set(ISEAFrameVERSION_MINOR 23)
set(ISEAFramePATCH_LEVEL 0)
set(ISEAFrameNAME "Refactor")
set(ISEAFrameNAME "docs")
set(ARCH_TYPE
"64"
CACHE STRING "")
......@@ -187,7 +187,7 @@ function(copy_windows_files_to_dir binary_dir)
endif()
endfunction(copy_windows_files_to_dir)
# copy files to the binary folder if CREATE_RELEASE_DIRS is set target is the
# copy files to the binary folder if CREATE_RELEASE_DIRS is set. target is the
# CMake target and must have RUNTIME_OUTPUT_DIRECTORY set
function(add_release_files target files_to_copy)
if(CREATE_RELEASE_DIRS)
......
......@@ -2,12 +2,12 @@
<pre>
<img src="misc/images/Logo_V3.jpg" />
<img src="misc/images/logo.jpg" />
</pre>
<div align=right>
<a href="http://www.isea.rwth-aachen.de/"> <img src="misc/images/logo.png" width="500" /> </a>
<a href="http://www.isea.rwth-aachen.de/"> <img src="misc/images/logo_isea.png" width="500" /> </a>
</div>
About ISEAFrame
......@@ -36,7 +36,7 @@ Linux Standalones: [Download](https://git.rwth-aachen.de/isea/framework/-/jobs/a
Windows Standalones: [Download](https://git.rwth-aachen.de/isea/framework/-/jobs/artifacts/master/download?job=windows_standalones)<br/>
Wndows Simulink Converter: [Download](https://git.rwth-aachen.de/isea/framework/-/jobs/artifacts/master/download?job=windows_simulink_converter)<br/>
<br/><br/>
Documentation: [View online](https://isea.pages.rwth-aachen.de/framework) | [Download](https://git.rwth-aachen.de/isea/framework/-/jobs/artifacts/master/download?job=documentation) | [Download Development Version](https://git.rwth-aachen.de/isea/framework/-/jobs/artifacts/master/download?job=documentation)
Documentation: [View online](https://isea.pages.rwth-aachen.de/framework) | [Download](https://git.rwth-aachen.de/isea/framework/-/jobs/artifacts/master/download?job=documentation) | [Download Development Version](https://git.rwth-aachen.de/isea/framework/-/jobs/artifacts/master/download?job=development_documentation)
Required Software:
......
This diff is collapsed.
This diff is collapsed.
......@@ -96,19 +96,8 @@ The time constant \f$ \tau \f$ depens on the temperature \f$ T \f$ and is calcul
XML Format
==========
A detailed example for an aging simulation can be found at scenarions/aging/sanyo_18651_single_cell_aging.xml .
Global Options
--------------
These options for the aging simulation must be added in <Configuration><Options><Aging>.
XML Tag | Type | Unit | Explanation
----------------------------------------|---------------|-----------|----------------------------------------------------------------------------------------
CalculationCycles | int > 0 | | Number of times the current or power profile is simulated before each aging step. Optional, default = 1.
SteadyStateCycles | int >= 0 | | Number of cycles that are simulated without collecting data for aging before the cycles specified in CalculationCycles are simulated. Optional, default = 0.
AgingSteps | int > 0 | | Number of aging steps. Optional, default = 1.
AgingStepTime | double > 0 | day | Duration of each aging step
Global options for the aging simulation are described on the page [XML options](xmloption.html#aging).
A detailed example for an aging simulation can be found at scenarions/aging/sanyo_18651_single_cell_aging.xml.
Observer
--------
......@@ -118,10 +107,10 @@ Filters for the aging simulation can be added in <Configuration><Observer><Aging
Cell Aging
----------
The aging for each cell can be specified using the element <Aging> inside the cell's XML element.
The aging for each cell can be specified using the element <**Aging**> inside the cell's XML element.
The aging element contains a list of aging effects affecting the cell.
If the cell is not new at the beginnig of the simulation, the initial cell age and charge throughput can be set by adding an <AgingState> element with the following children:
If the cell is not new at the beginnig of the simulation, the initial cell age and charge throughput can be set by adding an <**AgingState**> element with the following children:
XML Tag | Type | Unit | Explanation
----------------------------------------|---------------|-----------|----------------------------------------------------------------------------------------
......@@ -131,7 +120,7 @@ ChargeThroughput | double | Ah | Charge thr
Halfcell Simulation
-------------------
The general XML format of a halfcell simulation is described [here](xmlhalfcell.html). Each element of the classes AnodeElement and CathodeElement con contain an <Aging> element and an <AgingState> element that work in the same way as those of a cell. An example for a halfcell simulation is given in scenarions/aging/sanyo_18651_single_cell_aging.
The general XML format of a halfcell simulation is described [here](xmlhalfcell.html). Each element of the classes AnodeElement and CathodeElement con contain an <**Aging**> element and an <**AgingState**> element that work in the same way as those of a cell. An example for a halfcell simulation is given in scenarions/aging/sanyo_18651_single_cell_aging.
Calendric Aging
---------------
......
Introduction {#einleitung}
Introduction {#introduction}
=====
\~German
Das ISEAFramework ist eine am Institut für Stromrichtertechnik und Elektrische Antriebe (ISEA) entwickelte Programmbibliothek zur generischen Simulation von Batterienetzwerken.
Basierend auf den charakteristischen Messergebnissen der Impedanzspektroskopie können beispielsweise Lithium-Ionen-Batterien oder Supercaps in der Simulation durch ein elektrisches Ersatzschaltbild angenähert werden.
Es ist möglich, ein solches Ersatzschaltbild durch eine Reihenschaltung einfacher Grundelemente zu approximieren.
Diese Grundelemente sind als Klassen im Framework hinterlegt und können in Reihen- und Parallelschaltungen zu einem Netzwerk verbunden werden.
Auf diese Weise können ganze Batteriepakete nachgebildet werden.
<br/><br/>
Zusätzlich kann ein thermisches Modell erstellt werden, welches es ermöglicht, die Temperaturverteilung und -Entwicklung in der Batterie bzw. im Batteriepack zu simulieren.
Dieses Modell kann gekoppelt mit dem elektrischen Modell laufen, so dass der Einfluss der Temperatur auf die elektrische Parametrierung simuliert werden kann.
<br/><br/>
Ablauf der Simulation
----
![Schematische Darstellung eines Simulationszyklus](Kreislauf.png)
Die Simulation läßt sich in drei Schritte unterteilen.
Initialisierungsphase:
----
- Aufstellen des elektrischen Ersatzschaltbildes
- Erstellen des thermischen Modells
Simulationszyklus:
-----
- 2. Setzen des geforderten Stroms
- 3. Update der Lookups
- 4. Setzen der algebraischen und differentiellen Gleichungen
- 5. Berechnung und Lösung des Statespaces
- 6. Berechnung der Ströme, Spannungen und thermischen Verlustleistungen
- 7. Übergabe der thermischen Verlustleistungen an das thermische Modell (Nicht eingezeichnet im Bild)
- 8. Berechnen und Weiterleiten der neuen Temperaturen (Nicht eingezeichnet im Bild)
Aufräumen:
----
- Freigabe des genutzten Speichers
Nach einer Simulation können die Ergebnisse visualisiert werden.
![Visualisierten Ergebnisse eines Packs](visualisierung2.png)
<!--
Introduction {#einleitung}
=====
-->
\~English
The ISEAFramework is a library for generic battery simulation and is developed at the Institute for Power Electronics and Electrical Drives (ISEA) .
The ISEAFramework is a library for generic battery simulation and is developed at the Institute for Power Electronics and Electrical Drives (ISEA).
Models are based on datasets gained through electrochemical impedance spectroscopy (EIS) and a variety of different storage technologies can be described with these measurements,
e.g. lithium-ion batteries and double layer capacitors.
Results gained by EIS can be used to approximate the system through an electrical equivalent circuit and can be connected in different ways (parallel and serial).
This allows to describe storage systems in a generic way and to not only describe a single battery, but whole packs.
<br/><br/>
<br/>
Additionally a thermal model can be simulated, which simulates temperature distributions and trends inside the battery and battery pack.
This model is coupled with the electrical model during runtime, so that the thermal heat, which is generated by the electrical model, is directly fed into the thermal simulation.
<br/><br/>
<br/>
The framework also includes an aging model that can be used to make aging and lifetime predictions. The results from this model influence the electrical equivalent circuit so that the aging has an effect on the electrical behaviour of the battery.
Simulation sequence
----
![Schematic of the simulation cycle](Kreislauf.png)
====
A detailed description of the simulation process including the thermal and aging simulation can be found [here](simulation_cycle.html)
Initialization:
Initialization
----
- Creation of the electrical model
- Creation of the thermal model
Simulation-cycle:
Simulation cycle
-----
- 2. Set requested current
- 3. Update of lookup tables
......@@ -82,7 +32,7 @@ Simulation-cycle:
- 7. Passing the thermal losses (head) to the thermal model (not depicted in the image)
- 8. Calculating new temperature distribution and closing the feedback loop through passing the temperature back to the electrical model (not depicted in the image)
Clean up:
Cleanup
----
- Release allocated memory
......
<Observer>
<Filter4 class="CSVFilter">
<filename>
sanyo.csv
</filename>
<printHeader> 1 </printHeader>
<Filename>sanyo.csv</Filename>
<printHeader>true</printHeader>
</Filter4>
</Observer>
</Observer>
\ No newline at end of file
<div class="fragment">
<!-- Generator: GNU source-highlight 3.1.8
<!-- Generator: GNU source-highlight 3.1.9
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt><b><font color="#0000FF">&lt;Observer&gt;</font></b>
<b><font color="#0000FF">&lt;Filter4</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"CSVFilter"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;filename&gt;</font></b>
sanyo.csv
<b><font color="#0000FF">&lt;/filename&gt;</font></b>
<b><font color="#0000FF">&lt;printHeader&gt;</font></b> 1 <b><font color="#0000FF">&lt;/printHeader&gt;</font></b>
<b><font color="#0000FF">&lt;Filename&gt;</font></b>sanyo.csv<b><font color="#0000FF">&lt;/Filename&gt;</font></b>
<b><font color="#0000FF">&lt;printHeader&gt;</font></b>true<b><font color="#0000FF">&lt;/printHeader&gt;</font></b>
<b><font color="#0000FF">&lt;/Filter4&gt;</font></b>
<b><font color="#0000FF">&lt;/Observer&gt;</font></b>
</tt></pre>
<b><font color="#0000FF">&lt;/Observer&gt;</font></b></tt></pre>
</div>
<Object class="ExpressionObj">
<Expression>Soc / 2 + T / 3</Expression>
<Parameters>
<Param cacheref="Soc"/>
<Param cacheref="ThermalState" name="T"/>
</Parameters>
</Object>
\ No newline at end of file
<div class="fragment">
<!-- Generator: GNU source-highlight 3.1.9
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt><b><font color="#0000FF">&lt;Object</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"ExpressionObj"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;Expression&gt;</font></b>Soc / 2 + T / 3<b><font color="#0000FF">&lt;/Expression&gt;</font></b>
<b><font color="#0000FF">&lt;Parameters&gt;</font></b>
<b><font color="#0000FF">&lt;Param</font></b> <font color="#009900">cacheref</font><font color="#990000">=</font><font color="#FF0000">"Soc"</font><b><font color="#0000FF">/&gt;</font></b>
<b><font color="#0000FF">&lt;Param</font></b> <font color="#009900">cacheref</font><font color="#990000">=</font><font color="#FF0000">"ThermalState"</font> <font color="#009900">name</font><font color="#990000">=</font><font color="#FF0000">"T"</font><b><font color="#0000FF">/&gt;</font></b>
<b><font color="#0000FF">&lt;/Parameters&gt;</font></b>
<b><font color="#0000FF">&lt;/Object&gt;</font></b></tt></pre>
</div>
<Observer>
<Filter1 class="MatlabFilter">
<filename>
<Filename>
sanyo.mat
</filename>
</Filename>
</Filter1>
<Filter2 class="DecimateFilter">
......@@ -11,13 +11,13 @@
</TimeDelay>
</Filter2>
<Filter3 class="StdOutFilter"/>
<Filter3 class="StdoutFilter"/>
<Filter4 class="CSVFilter">
<filename>
<Filename>
sanyo.csv
</filename>
<printHeader> 1 </printHeader>
</Filename>
<printHeader>true</printHeader>
</Filter4>
</Observer>
<div class="fragment">
<!-- Generator: GNU source-highlight 3.1.8
<!-- Generator: GNU source-highlight 3.1.9
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt><b><font color="#0000FF">&lt;Observer&gt;</font></b>
<b><font color="#0000FF">&lt;Filter1</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"MatlabFilter"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;filename&gt;</font></b>
<b><font color="#0000FF">&lt;Filename&gt;</font></b>
sanyo.mat
<b><font color="#0000FF">&lt;/filename&gt;</font></b>
<b><font color="#0000FF">&lt;/Filename&gt;</font></b>
<b><font color="#0000FF">&lt;/Filter1&gt;</font></b>
<b><font color="#0000FF">&lt;Filter2</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"DecimateFilter"</font><b><font color="#0000FF">&gt;</font></b>
......@@ -16,13 +16,13 @@ http://www.gnu.org/software/src-highlite -->
<b><font color="#0000FF">&lt;/TimeDelay&gt;</font></b>
<b><font color="#0000FF">&lt;/Filter2&gt;</font></b>
<b><font color="#0000FF">&lt;Filter3</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"StdOutFilter"</font><b><font color="#0000FF">/&gt;</font></b>
<b><font color="#0000FF">&lt;Filter3</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"StdoutFilter"</font><b><font color="#0000FF">/&gt;</font></b>
<b><font color="#0000FF">&lt;Filter4</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"CSVFilter"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;filename&gt;</font></b>
<b><font color="#0000FF">&lt;Filename&gt;</font></b>
sanyo.csv
<b><font color="#0000FF">&lt;/filename&gt;</font></b>
<b><font color="#0000FF">&lt;printHeader&gt;</font></b> 1 <b><font color="#0000FF">&lt;/printHeader&gt;</font></b>
<b><font color="#0000FF">&lt;/Filename&gt;</font></b>
<b><font color="#0000FF">&lt;printHeader&gt;</font></b>true<b><font color="#0000FF">&lt;/printHeader&gt;</font></b>
<b><font color="#0000FF">&lt;/Filter4&gt;</font></b>
<b><font color="#0000FF">&lt;/Observer&gt;</font></b>
......
<Observer>
<Filter1 class="MatlabFilter">
<filename>
<Filename>
sanyo.mat
</filename>
<maxSampleSize>
</Filename>
<MaxSampleSize>
10000
</maxSampleSize>
</MaxSampleSize>
</Filter1>
</Observer>
<div class="fragment">
<!-- Generator: GNU source-highlight 3.1.8
<!-- Generator: GNU source-highlight 3.1.9
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt><b><font color="#0000FF">&lt;Observer&gt;</font></b>
<b><font color="#0000FF">&lt;Filter1</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"MatlabFilter"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;filename&gt;</font></b>
<b><font color="#0000FF">&lt;Filename&gt;</font></b>
sanyo.mat
<b><font color="#0000FF">&lt;/filename&gt;</font></b>
<b><font color="#0000FF">&lt;maxSampleSize&gt;</font></b>
<b><font color="#0000FF">&lt;/Filename&gt;</font></b>
<b><font color="#0000FF">&lt;MaxSampleSize&gt;</font></b>
10000
<b><font color="#0000FF">&lt;/maxSampleSize&gt;</font></b>
<b><font color="#0000FF">&lt;/MaxSampleSize&gt;</font></b>
<b><font color="#0000FF">&lt;/Filter1&gt;</font></b>
<b><font color="#0000FF">&lt;/Observer&gt;</font></b>
......
<Cell class="CellElement">
<!-- Because the cache attribute is set to "true", the state object will be added to the cache under the name "Soc" -->
<Soc class="Soc" cache="true">
<InitialCapacity>10.0</InitialCapacity>
<InitialSoc>50.0</InitialSoc>
</Soc>
<!-- Similarly, this will be cached as "ThermalState" -->
<ThermalState cache="true">
<InitialTemperature>25.0</InitialTemperature>
</ThermalState>
<Children>
<!-- copy the Resistance element from below -->
<Resistance ref="Resistance"/>
</Children>
</Cell>
<Resistance class="OhmicResistance">
<Object class="LookupObj2dWithState">
<!-- Reference to the caced soc state of the cell -->
<RowState cacheref="Soc"/>
<!-- Reference to the caced thermal state of the cell -->
<ColState cacheref="ThermalState"/>
<LookupData>
1.0, 1.1, 1.0;
1.2, 1.1, 1.3;
</LookupData>
<!-- SOC values that the three columns were measured at -->
</MeasurementPointsRow>10, 50, 90</MeasurementPointsRow>
<!-- temperature values that the two rows were measured at -->
</MeasurementPointsColumn>20, 25</MeasurementPointsColumn>
</Object>
</Resistance>
\ No newline at end of file
<div class="fragment">
<!-- Generator: GNU source-highlight 3.1.8
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt><b><font color="#0000FF">&lt;Cell</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"CellElement"</font><b><font color="#0000FF">&gt;</font></b>
<i><font color="#9A1900">&lt;!-- Because the cache attribute is set to "true", the state object will be added to the cache under the name "Soc" --&gt;</font></i>
<b><font color="#0000FF">&lt;Soc</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"Soc"</font> <font color="#009900">cache</font><font color="#990000">=</font><font color="#FF0000">"true"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;InitialCapacity&gt;</font></b>10.0<b><font color="#0000FF">&lt;/InitialCapacity&gt;</font></b>
<b><font color="#0000FF">&lt;InitialSoc&gt;</font></b>50.0<b><font color="#0000FF">&lt;/InitialSoc&gt;</font></b>
<b><font color="#0000FF">&lt;/Soc&gt;</font></b>
<i><font color="#9A1900">&lt;!-- Similarly, this will be cached as "ThermalState" --&gt;</font></i>
<b><font color="#0000FF">&lt;ThermalState</font></b> <font color="#009900">cache</font><font color="#990000">=</font><font color="#FF0000">"true"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;InitialTemperature&gt;</font></b>25.0<b><font color="#0000FF">&lt;/InitialTemperature&gt;</font></b>
<b><font color="#0000FF">&lt;/ThermalState&gt;</font></b>
<b><font color="#0000FF">&lt;Children&gt;</font></b>
<i><font color="#9A1900">&lt;!-- copy the Resistance element from below --&gt;</font></i>
<b><font color="#0000FF">&lt;Resistance</font></b> <font color="#009900">ref</font><font color="#990000">=</font><font color="#FF0000">"Resistance"</font><b><font color="#0000FF">/&gt;</font></b>
<b><font color="#0000FF">&lt;/Children&gt;</font></b>
<b><font color="#0000FF">&lt;/Cell&gt;</font></b>
<b><font color="#0000FF">&lt;Resistance</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"OhmicResistance"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;Object</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"LookupObj2dWithState"</font><b><font color="#0000FF">&gt;</font></b>
<i><font color="#9A1900">&lt;!-- Reference to the caced soc state of the cell --&gt;</font></i>
<b><font color="#0000FF">&lt;RowState</font></b> <font color="#009900">cacheref</font><font color="#990000">=</font><font color="#FF0000">"Soc"</font><b><font color="#0000FF">/&gt;</font></b>
<i><font color="#9A1900">&lt;!-- Reference to the caced thermal state of the cell --&gt;</font></i>
<b><font color="#0000FF">&lt;ColState</font></b> <font color="#009900">cacheref</font><font color="#990000">=</font><font color="#FF0000">"ThermalState"</font><b><font color="#0000FF">/&gt;</font></b>
<b><font color="#0000FF">&lt;LookupData&gt;</font></b>
1.0, 1.1, 1.0;
1.2, 1.1, 1.3;
<b><font color="#0000FF">&lt;/LookupData&gt;</font></b>
<i><font color="#9A1900">&lt;!-- SOC values that the three columns were measured at --&gt;</font></i>
<b><font color="#0000FF">&lt;/MeasurementPointsRow&gt;</font></b>10, 50, 90<b><font color="#0000FF">&lt;/MeasurementPointsRow&gt;</font></b>
<i><font color="#9A1900">&lt;!-- temperature values that the two rows were measured at --&gt;</font></i>
<b><font color="#0000FF">&lt;/MeasurementPointsColumn&gt;</font></b>20, 25<b><font color="#0000FF">&lt;/MeasurementPointsColumn&gt;</font></b>
<b><font color="#0000FF">&lt;/Object&gt;</font></b>
<b><font color="#0000FF">&lt;/Resistance&gt;</font></b></tt></pre>
</div>
<Soc class="Soc" cache="True">
<InitialCapacity> ... </InitialCapacity>
<InitialSoc> ... </InitialSoc>
<MeasurementPoints> ... </MeasurementPoints>
</Soc>
......@@ -6,7 +6,6 @@ http://www.gnu.org/software/src-highlite -->
<pre><tt><b><font color="#0000FF">&lt;Soc</font></b> <font color="#009900">class</font><font color="#990000">=</font><font color="#FF0000">"Soc"</font> <font color="#009900">cache</font><font color="#990000">=</font><font color="#FF0000">"True"</font><b><font color="#0000FF">&gt;</font></b>
<b><font color="#0000FF">&lt;InitialCapacity&gt;</font></b> ... <b><font color="#0000FF">&lt;/InitialCapacity&gt;</font></b>
<b><font color="#0000FF">&lt;InitialSoc&gt;</font></b> ... <b><font color="#0000FF">&lt;/InitialSoc&gt;</font></b>
<b><font color="#0000FF">&lt;MeasurementPoints&gt;</font></b> ... <b><font color="#0000FF">&lt;/MeasurementPoints&gt;</font></b>
<b><font color="#0000FF">&lt;/Soc&gt;</font></b>
</tt></pre>
</div>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment