Export tabel z danymi do EXCEL'a
Chcesz zaprezentować wyniki swoich symulacji albo przeprowadzić dalsze obliczenia w Excelu?
A może chcesz utworzyć automatyczny raport z symulacji?
Sprawdź jak dokonać eksportu danych z programu Simultus DIGITAL TWIN do Excela lub dowolnego pliku tekstowego …

Bardzo przydatną funkcjonalnością jest możliwość eksportu danych z programu Simultus DIGITAL TWIN do EXCEL'a. Można w ten sposób przeprowadzać ich złożoną analizę i prezentację korzystając z zaawansowanych narzędzi tego programu.
UWAGA: Zwracamy również uwagę, że poniższy przykład można wykorzystać do tworzenia dowolnego pliku tekstowego z danymi z programu Simultus. Mogą to być np. automatyczne raporty z symulacji.
Aby zapamiętać tabelę z programu Simultus DIGITAL TWIN należy wykorzystać do tego blok funkcyjny ze skryptem języka LUA (LUA_SCRIPT)/
W poniższym przykładzie wykorzystano dwa bloki funkcyjne LUA_SCRIPT. Jeden (Generate time course) do wygenerowania przykładowych danych zapamiętanych w tabeli o nazwie Table_for_Excel a drugi (SAVE_TABLE_TO_EXCEL) do zapisana tych danych do pliku tekstowego. Skrypty są wykonywane jednorazowo po naciśnięciu odpowiedniego przycisku na panelu:

Poniżej przedstawiono w 3 krokach jak dane z tabeli programu Simultus DIGITAL TWIN wyświetlić w excelu:
1. Tworzymy zmienną globalna w sekcji 'global':

-- deklaracja zmiennej globalnej, w której będą zapamiętane exportowane do EXCEL'a.
Table_for_Excel = {}
-- utworzenie tabeli o wymiarach 4 x 1000 do zapamiętania przebiegów w czasie
for i=1,1000 do
Table_for_Excel[i] = {}
for j=1,3 do
Table_for_Excel[i][j] = 0
end
end
W przedstawionym przykładzie tabela została zapełniona trzema przebiegami sinusoidalnymi:

2. W ten sposób stworzoną zmienną możemy zapamiętać przy pomocy skryptu Lua w pliku tekstowym:

-- Przykład zapisu danych do pliku, który można importować w Excel'u
-- utworzenie obiektu zapewniającego dostęp do we/wy bloku funkcyjnego LUA_SCRIPT:
Function_Block_Inputs = FBInTblHelper.new()
Function_Block_Outputs = FBOutTblHelper.new()
-- utworzenie obiektu zapewniającego dostęp do zmiennych symulacji:
SIM_Registers_VR = RnTblHelper.new()
SIM_Markers_VM = MnTblHelper.new()
-- plik z danymi do Excela będzie w formacie pliku txt:
-- otwarcie pliku:
File = io.open("c:\\temp\\Table_to_Excel.txt", "w")
-- Utworzenie opisu kolumn.
-- Należy pamiętać o wstawieniu spacji po opisie kolumny i nie używaniu spacji w opisach.
-- Spacja służy do oddzielenia kolumn.
Opis_Kolumn_w_Excelu = ( "Sample_no " ..
"Column_1 " ..
"Column_2 " ..
"Column_3 " )
-- zapisanie pierwszej linii z opisem do pliku - "\n" to symbol przejścia do kolejnej linii pliku:
File:write( Opis_Kolumn_w_Excelu, "\n" )
for i = 1, 1000 do
-- utworzenie kolejnych linii pliku tekstowego z danymi z tabeli 'Table_for_Excel'
line = ( tostring( i ) .. " " ..
tostring( Table_for_Excel[i][1] ) .. " " ..
tostring( Table_for_Excel[i][2] ) .. " " ..
tostring( Table_for_Excel[i][3] ) )
-- zapisanie linii do pliku - "\n" to symbol przejścia do kolejnej linii pliku:
File:write( line, "\n" )
end
-- zamknięcie pliku:
File:close()
3. Otwieramy utworzony plik (w tym przypadku: 'Table_to_Excel.txt') w programie EXCEL:
Manu główne: 'plik' -> 'otwórz':
Wybrać plik z zapamiętanymi wcześniej danymi. W powyższym przykładzie jest to plik o nazwie 'Table_to_Excel.txt' znajdujący się na dysku 'C' w katalogu 'temp'. Zwracamy uwagę, że należy stosować podwójne średniki w opisie ścieżki dostępu do pliku ("c:\\temp\\Table_to_Excel.txt") co wynika ze składu języka LUA.
Zaznaczyć opcję 'Rozdzielany' i nacisnąć przycisk 'Dalej'...

Zaznaczyć opcję rozdzielania tekstu spacją i przycisk 'Dalej'...

Zaznaczyć poniższe opcje i nacisnąć przycisk 'Zakończ'..

A oto efekt importu po wygenerowaniu wykresu z przykładowym przebiegiem z tabeli Table_to_Excel:

Istnieje również możliwość eksportu danych zarejestrowanych przez blok funkcyjny SCOPE bezpośrednio do pliku *.CSV:
