abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) upozorňuje na sérii kritických zranitelností v Cisco Adaptive Security Appliance (ASA) a Firepower Threat Defense (FTD) a Cisco IOS, CVE-2025-20333, CVE-2025-20363 a CVE-2025-20362. Zneužití těchto zranitelností může umožnit vzdálenému neautentizovanému útočníkovi spustit libovolný kód (RCE). Společnost Cisco uvedla, že si je vědoma aktivního zneužívání těchto zranitelností.

    Ladislav Hagara | Komentářů: 4
    dnes 12:11 | IT novinky

    Ochrana uživatelů a zároveň příznivé podmínky pro rozvoj umělé inteligence (AI). Ministerstvo průmyslu a obchodu (MPO) připravilo minimalistický návrh implementace evropského nařízení o umělé inteligenci, tzv. AI aktu. Český zákon zajišťuje ochranu občanům a bezpečné používání AI, ale zároveň vytváří pro-inovační prostředí, ve kterém se může AI naplno rozvíjet, firmy mohou využít jeho potenciál a nebudou zatíženy zbytečnou administrativou. Návrh je nyní v meziresortním připomínkovém řízení.

    Ladislav Hagara | Komentářů: 4
    dnes 05:11 | Komunita

    Dle plánu Linus Torvalds odstranil souborový systém bcachefs z mainline Linuxu. Tvůrce bcachefs Kent Overstreet na Patreonu informuje, že bcachefs je nově distribuován jako DKMS modul.

    Ladislav Hagara | Komentářů: 2
    včera 17:44 | IT novinky

    PIF, Silver Lake a Affinity Partners kupují videoherní společnost Electronic Arts (EA) za 55 miliard dolarů (1,14 bilionu korun).

    Ladislav Hagara | Komentářů: 2
    včera 16:33 | Pozvánky

    Konference LinuxDays 2025 proběhne již tento víkend 4. a 5. října v Praze v areálu ČVUT v Dejvicích na FIT. Konference znamená desítky přednášek a workshopů, zástup zajímavých osobností, místo pro setkání, spoustu nových nápadů a informací a stánky řady různých projektů: Fedora, openSUSE, vpsFree.cz, Mozilla, MacGyver - bastlíři SH, OpenAlt a mnoho dalších. Účast na konferenci je zdarma.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | Zajímavý článek

    Před měsícem Google oznámil, že bude vyžadovat ověření identity vývojářů aplikací pro Android. Dnes se k této změně vyjádřil F-Droid, tj. instalovatelný katalog svobodných a open source aplikací pro platformu Android. Změna ohrožuje F-Droid a další otevřené platformy pro distribuci aplikací.

    Ladislav Hagara | Komentářů: 15
    včera 00:22 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.16 oznámil Linus Torvalds vydání Linuxu 6.17. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Pozvánky

    The Catch 2025, oblíbená podzimní CTF (Capture the Flag) soutěž, začne v pondělí 6. října přesně ve 12:00. Letošní ročník s podtitulem TCC Power Grid prověří znalosti hráček a hráčů na scénářích spojených s elektrickou rozvodnou sítí. Kromě hlavních výher čekají na soutěžící ceny až do 50. místa a také speciální bonusy za nejrychlejší řešení či kvalitní write-upy.

    Ladislav Hagara | Komentářů: 0
    26.9. 17:22 | Nová verze

    Společnost System76 vydala beta verzi Pop!_OS 24.04 LTS s novým desktopovým prostředím COSMIC. Videoukázky na YouTube.

    Ladislav Hagara | Komentářů: 6
    26.9. 16:22 | Komunita

    Komunitní Wikikonference 2025 aneb setkání s tvůrci české Wikipedie plné přednášek, diskuzí a novinek ze světa Wikimedia, proběhne v sobotu 8. listopadu 2025 v Didaktikonu Kampusu Hybernská v Praze. Hlavním tématem letošního setkání je otázka, která hýbe nejen komunitou, ale i širší společností: „Je Wikipedie jenom pro boomery?“

    Ladislav Hagara | Komentářů: 17
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (50%)
     (12%)
     (14%)
     (17%)
     (14%)
     (19%)
     (14%)
     (14%)
    Celkem 139 hlasů
     Komentářů: 9, poslední 24.9. 17:28
    Rozcestník

    Svobodný software v rukách vědy

    22.9.2008 17:29 | Přečteno: 2297× | Něco off-topic | Výběrový blog | poslední úprava: 29.9.2008 08:47

    Původně jsem zamýšlel tento zápisek věnovat pouze krátkému skriptu, s jehož pomocí se mi podařilo v bashi jednoduše ořezat obrázky a vytvořit z nich animovaný gif. Jak ale tento úmysl dostával v mé mysli jasnější a jasnější obrysy bylo mi jasné, že by tomuto zápisku jaksi chyběla hlava i pata - bylo by v něm pouze co se povedlo, ale ne proč a jaký to bude mít další efekt. Proto jsem se rozhodl tento zápisek rozšířit až na současnou formu.



    Úvod

    Před rokem jsem byl přijat na doktorské studium na Katedře elektromechaniky a výkonové elektroniky na FEL ZČU v Plzni, kde tou dobou začínal výzkum zabývající se lámáním tyčí rotorového vinutí asynchronních strojů (grant MPO č. 2A-2TP1/139), do kterého jsem nakonec také byl zapojen. Kromě logicky nezbytné části výzkumu prováděné v proprietárním software (ANSYS, MATLAB) jsem jisté části své práce prováděl i v opensource software, zejména v programu FEMM (AFPL).

    FEMM a ti druzí

    Právě v programu FEMM byly prováděny počáteční výpočty sledovaného asynchronního stroje - důvod je jednoduchý: rychlý preprocessing (usnadněný například možností importu *.dxf výkresů vytvořených v opensource edici programu QCAD (GPL)) a postprocessing a vynikající přesnost, umožňující rychlé získání prvních orientačních výsledků. Do třetice všeho dobrého je možnost skriptování operací v programu FEMM pomocí jazyku Lua (vlastní licence OSS kompatibilní, od verze 5.0 MIT licence). Aby toho nebylo málo, samozřejmostí je zpracování výsledků v OpenOffice.org (LGPL) (přes výstupní soubor) či jejich analýza za pomoci GNU/Octave (GNU/GPL).

    Konkrétní aplikace

    Protože opensource software již nějaký čas používám a za mnohé mu vděčím, cítím i jistou povinnost mu něco vrátit. Jednou z úloh v rámci programu MPO 2A-2TP1/139 vyřešených čistě za pomoci opensource programů je například studium drážkové harmonické asynchronního stroje. Vzhledem k povaze výsledků jsem zavázán neuvádět konkrétní čísla, nicméně celý postup zveřejnit lze a lze tím i demonstrovat sílu spojeného opensource software s malým bonusem na konci. Uvažujme tedy asynchronní stroj, u nějž se snažíme získat informace o kmitech momentu, které vznikají drážkováním statoru a rotoru. Tyto kmity vznikají jako důsledek vzájemných superpozic drážek stran statoru a rotoru a lze je sledovat pouze tak, že se vždy vypočte elektromagnetické pole v modelu asynchronního stroje pro určitou vzájemnou pozici těchto dvou těles. Zpravidla stačí rotor postupně pootočit o jednu drážkovou rozteč rotoru v rozumném počtu kroků. Co tedy potřebujeme provést abychom se dobrali výsledku:

    Toto se opakuje v rozumné míře v rozsahu jedné drážkové rozteče.

    Příprava modelu
    Přípravu modelu v programu FEMM lze rozdělit na dvě části - první, vlastní nákres geometrie (spíše věc software QCAD), a druhou, vlastní definici problému v programu FEMM. To samo o sobě vyžaduje jistou znalost této aplikace, proto se vyhnu detailům a omezím se na konstatování, že v této fázi je nejdůležitějším úkonem přiřazení všech křivek rotoru a definici jednotlivých materiálů jednotné skupině, v tomto konkrétním případě skupině označené číslem "1".

    LuaScript
    Aby bylo možno sledovat hledanou drážkovou harmonickou, je třeba nějakým způsobem automatizovat dříve uvedené kroky. Dejme tomu, že mezi drážkami rotoru stroje je 10 úhlových stupňů (odpovídá stroji se 36ti drážkami) a tuto vzdálenost chceme projet tak, abychom na ní získali 100 vypočtených modelů. Od našeho LuaScriptu tedy očekáváme, že udělá následující:

    a to vše zopakuje 100x. Skript schopný provést uvedené úkony pak vypadá následovně:



    --- otaceni rotorem pro FEMM
    --- skript verze 1.0

    open("vzor.FEM") --- otevreni vstupniho souboru

    vystup=openfile("moment.txt", "w") --- otevreni vystupniho souboru

    mi_seteditmode("group") --- v preprocesoru budou editovany skupiny

    dAlfa=10/100 --- uhel pootoceni rotoru mezi jednotlivymi kroky

    n=0

    --- vypocet vzorovaho modelu
    mi_saveas(format("motor_%1$d.FEM",n)) --- ulozeni upraveneho modelu
    mi_analyse() --- spusteni analyzy

    mi_loadsolution() --- nacteni vysledku

    mo_showdensityplot(0,0,1,0,"mag") --- zobrazeni indukce ve stroji
    mo_savebitmap(format("motor_%1$d.bmp",n)) --- ulozeni vysledku do bitmapy

    mo_seteditmode("contour") --- v postprocesoru budou editovany linie
    mo_selectpoint(-100,0.5) --- vyber prvniho z bodu na kruznici (horni cast)
    mo_selectpoint(100,0.5) --- vyber druheho z bodu na kruznici (horni cast)
    mo_selectpoint(-100,-0.5) --- vyber prvniho z bodu na kruznici (dolni cast)
    mo_selectpoint(100,-0.5) --- vyber druheho z bodu na kruznici (dolni cast)
    MDC,DM,TV,FV=mo_lineintegral(4) --- vypocet momentu stroje na zaklade integralu po linii

    write(vystup, MDC, " ", DM, " ", TV, " ", FV, "\n") --- ulozeni vystupnich hodnot

    mo_close() --- uzavreni postprocesoru

    for n=1,99 do

    mi_selectgroup(1) --- vyber skupiny 1 (rotor)
    mi_move_rotate(0,0,dAlfa) --- pootoceni rotoru
    mi_saveas(format("motor_%1$d.FEM",n)) --- ulozeni upraveneho modelu

    mi_analyse() --- spusteni analyzy
    mi_loadsolution() --- nacteni vysledku

    mo_showdensityplot(0,0,1,0,"mag") --- zobrazeni indukce ve stroji
    mo_savebitmap(format("motor_%1$d.bmp",n)) --- ulozeni vysledku do bitmapy

    mo_seteditmode("contour") --- v postprocesoru budou editovany linie
    mo_selectpoint(-100,0.5) --- vyber prvniho z bodu na kruznici (horni cast)
    mo_selectpoint(100,0.5) --- vyber druheho z bodu na kruznici (horni cast)
    mo_selectpoint(-100,-0.5) --- vyber prvniho z bodu na kruznici (dolni cast)
    mo_selectpoint(100,-0.5) --- vyber druheho z bodu na kruznici (dolni cast)
    MDC,DM,TV,FV =mo_lineintegral(4) --- vypocet momentu stroje na zaklade integralu po linii

    write(vystup, MDC, " ", DM, " ", TV, " ", FV, "\n") --- ulozeni vystupnich hodnot

    mo_close() --- uzavreni postprocesoru

    end

    closefile(vystup) --- uzavreni vystupniho souboru



    Pozn.: čísla v LuaScriptu neodpovídají žádnému skutečnému stroji.

    Z FEMMu tedy za pomoci uvedeného skriptu získáme dvě skupiny výsledků:
    1. výstupní soubor se závislostí velikosti momentu stroje na úhlu mezi statorem a rotorem
    2. sérii obrázků zobrazujících magnetické pole ve stroji
    Odtud vychází následující zpracování dat.

    Zpracování číselných dat
    Nejjednodušší možností vizualizace výsledných dat je prosté natažení výsledků do OpenOffice.org, nicméně to je "pouhé" zobrazení. Na skutečnou analýzu dat je třeba použít silnější nástroj - GNU/Octave. Vypočtené hodnoty totiž kromě určitého rozptylu způsobeného metodou řešení obsahují i určitou harmonickou složku, která odpovídá hledané drážkové harmonické. Nezbývá nám tedy než napsat skript pro GNU/Octave, který provede rychlou Fourierovu analýzu vypočtených dat. Tento skript je pak:



    % Fourierova analyza vypoctenych vysledku
    % version 1.0

    M_str=1000; % strední hodnota vypocteneho momentu

    moment=[ --- zde je vypoctenych 100 hodnot oddelenych carkou --- ]-M_str; % vektor vstupnich dat

    uhel=(360/36)/100; % uhel mezi drazkami rotoru

    rozvoj=2/length(moment)*fft(moment); % fourieruv rozvoj vektoru vysledku

    x=1/uhel*[0:round(length(rozvoj)/2)]/round(length(rozvoj)); % vypocet dat pro osu x

    plot(x(1:length(moment)/2),abs(rozvoj(1:round(length(rozvoj)/2)))) % vykresleni vysledku do grafu
    title ('Fourierova analýza momentu stroje')
    xlabel ('1/alpha')
    ylabel ('M [N.m]')

    % vypis vysledku do konzole
    x(1:length(moment)/2) % osa x (uhlova perioda kmitu)
    abs(rozvoj(1:round(length(rozvoj)/2))) % velikost kmitu
    arg(rozvoj(1:round(length(rozvoj)/2))) % faze kmitu



    Po provedení této analýzy již lze jednoduše vybrat maximum (maxima) Fourierova rozvoje momentu a tedy určit drážkové harmonické stroje.

    Zpracování obrazového výstupu
    Pro účely následných prezentací je třeba skupinu výstupních obrázků nějak upravit a vytvořit z nich (pochopitelně efektní, ale nic skutečně neříkající) animaci. V tom nám ale brání dva zásadní problémy:
    1. FEMM ukládá obrázky do *.bmp, který nelze animovat
    2. výsledné obrázky jsou obdélníkové a zarovnané doprostřed stránky nevypadají dobře ;-)
    Rovnou stovku výsledných obrázků je tedy třeba ořezat, konvertovat do animovatelného formátu (gif) a animovat. K tomu nám pomůže již ryze linuxový skript, využívající jednak ImageMagick (licence GPL kompatibilní) (konkrétně utilitu convert) a prográmek gifsicle (GNU/GPL v2). Požadavky na tento skript jsou pak jednoduché - po skriptu, který spustíme v adresáři s obrázky chceme, aby provedl:

    V případě výstupních souborů z programu FEMM jde konkrétně na ořezání na rozměr 761x761px a ve formě skriptu vypadá uvedený postup následovně:



    #!/bin/sh
    for f in *.bmp
    do convert $f -extent 761x761 $f.gif
    done

    mkdir gifs

    mv *.gif ./gifs/

    cd ./gifs

    gifsicle -O --delay=10 --loop *.gif > animace.gif



    Výsledek pak vypadá následovně:
    animace
    (lze rozkliknout, 13MB)

    Závěr

    Pomyslným vyvrcholením všeho je opětovný návrat do OpenOffice.org, ve kterých je z uvedeného výzkumu zpracována výzkumná zpráva. Z předloženého příkladu je tedy zřejmé, že za pomoci opensource software lze provést výzkum i tak náročných partií (zde konkrétně z oblasti elektrických strojů) jako je drážková harmonická asynchronního stroje. Veškeré použité prostředky jsou přitom ryze otevřené povahy a v uvedeném textu zdaleka není plně využito jejich možností. Z porovnání s výsledky z uzavřených programů (ANSYS, MATLAB) vyplývá, že při použití uvedeného software nedochází k žádným významným odchylkám ve výsledcích a veškeré výsledky získané za použití uvedených metod jsou důvěryhodné. Je tedy pouze na volbě každého, zda použije uzavřený software nebo se rozhodne využít některou opensource alternativu.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    22.9.2008 18:01 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    Ona neexistuje možnost jak to popsal analyticky? Nebylo by pro harmonickou analýzu lepší použít software typu Maple/Maxima a udělat to analyticky přes integrály, než s pomocí octave přes sumy? Možná mi něco uniká a ta konstrukce se analyticky popsat nedá, pak se omlouvám, blogpost jsem jen proletěl.
    JiK avatar 22.9.2008 23:37 JiK | skóre: 13 | blog: Jirkoviny | Virginia
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    tohle je presne ta uvaha, kde se prozradi, ze jsi fyzik a ne inzenyr. :-D
    23.9.2008 06:32 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    No... Řeknu to takhle.. Nevím co jsem, ani nevím co budu... jedno je však jisté... Inženýr to nebude. :D
    pushkin avatar 24.9.2008 08:21 pushkin | skóre: 43 | blog: FluxBlog
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    Ono to jde i nejde :-) Co lze předpovědět jsou frekvence, na kterých by se ta drážková harmonická měla objevovat, pro tohle vztahy existují. Co už dost dobře předpovědět nejde je amplituda, tu ovlivňuje tvar zubů, který už se analyticky dost dobře popsat nedá, a relace mezi počty zubů statoru a rotoru. Jinak není za co se omlouvat, též dávám přednost ručním výpočtům, pokud je lze provést.
    24.9.2008 08:43 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    Co už dost dobře předpovědět nejde je amplituda, tu ovlivňuje tvar zubů, který už se analyticky dost dobře popsat nedá, a relace mezi počty zubů statoru a rotoru.
    Nějaký takový střet s realitou jsem coby student zcela jiného technického oboru čekal. :-)
    22.9.2008 18:38 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    Ad zpracování obrázků, podle mne je mnohem lepší než imagemagick, použít nástrojů z balíku netpbm.
    Daniel Kvasnička ml. avatar 23.9.2008 07:44 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    ZCU? To je to doupe, kde vznikla ta obludna hruznost, ktere rikate IS/STAG?... ;-)
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    23.9.2008 11:53 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    No počkej, teď tam vznikají ještě lepší věci, klíčové slovo: portál :-D
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    pushkin avatar 24.9.2008 08:22 pushkin | skóre: 43 | blog: FluxBlog
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    Za to můžou FAVácí, my neee ;-)
    24.9.2008 08:56 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    To není pravda, CIVácí! ;-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    Daniel Kvasnička ml. avatar 24.9.2008 09:07 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    To je fuk, nejaky obetni beranek se musi najit ;-)
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    23.9.2008 09:15 CEST
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    Chlape, nemam vubec paru, o cem to pises (jak by tady v okoli rekli "Ich verstehe Bahnhof"), ale pripada mi to jako dobre zpracovana prikladova studie. Co jsem to cetl, tak mi do oka nepadla zadna silena pravopisna chyba a taky je to celkove dobre zpracovany (logicky). Mozna by stalo za to tohle nekam ulozit (at jako clanek nebo jako nejakej dokument treba do root.cz knihovny) pro pripadny zajemce linuxu ve skolstvi nebo naopak jako dukaz pro pripadny odpurce linuxu ve skolstvi, mozna i prumyslu nebo vede.
    otasomil avatar 23.9.2008 16:20 otasomil | skóre: 39 | blog: puppylinux
    Rozbalit Rozbalit vše Re: Svobodný software v rukách vědy
    Tez pridavam kladne hodnoceni a spickove zpracovani daneho tematu.
    Lamani rotorovych tyci v asynchronnich motorech kde se ona klec vytvari litim ve zvlastni kokile pod tlakem je zpusobena naslednym pnutim pri chladnuti a proto se rotorove plechy lisuji nepatrne do "talire" a skladaji stridave proti sobe nacez pri liti klece v kokile nejsou zcela stlaceny (chybi k tomu cca 1 mm u motoru vykonu radove nekolik kW).
    Timto se temer zcela odstrani pnuti pri chladnuti rotoru a dojde k optimalnimu stazeni svazku rotorovych plechu.
    Toliko praxe povalecnych let kdy se zacala medena svarovana klec nahrazovat hlinikovou strikanou.
    Takto to muzete komentovat jako ja praktik v elektrotechnice a elektronice.
    Aplikace open source na linuxove platforme velmi potesi obzvlaste ve vede a vyzkumu - jen tak dale.
    K čemu hudba, která nevede k extázi... Stop MDMA !!! I spam umí být roztomilý

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.