MATLAB a Simulink R2015b novinky ve výpočetním systému
Jan Houška HUMUSOFT s.r.o.
[email protected] 1
>> 2016 – 1991 ans = 25 2
Release 2015a a 2015b • tradiční dvě vydání do roka – březen a září 2015
• R2015a a R2015b – zásadní novinky v MATLABu • zcela nové výpočetní jádro
– významná vylepšení v Simulinku • interaktivní grafické ovládací prvky • výrazně přepracovaný blok Scope
– nové produkty • • • • •
Robotics System Toolbox Antenna Toolbox Vision HDL Toolbox Simulink Test WLAN System Toolbox
– reorganizace produktů pro generování aplikací • MATLAB Compiler • MATLAB Compiler SDK
– simulace v reálném čase na Mac OS X • Simulink Desktop Real-Time
– mnoho novinek v dalších produktech 3
MATLAB 8.6 – nové výpočetní jádro • nové jádro pro provádění výpočtů – „execution engine“ – zcela nová architektura výpočetního jádra
• just-in-time kompilace veškerého prováděného kódu • vyšší rychlost – zejména u nejčastěji používaných postupů • podmínky, cykly • volání funkcí, objektově-orientované programování • operace nad jednotlivými prvky matic
– zrychlení typicky o 40% • ale v mnoha případech i dvojnásobné • testováno na rozsáhlých úlohách od uživatelů
– možné snížení rychlosti při ladění
• lepší konzistence mezi jednotlivými režimy – interaktivní režim, skripty, funkce, třídy, ...
• 100% zpětná kompatibilita – pravděpodobně nejrozsáhlejší testování v historii vývoje MATLABu 4
MATLAB 8.6 – zvýšení výkonu
5
MATLAB 8.6 – další novinky • neorientované a orientované grafy a sítě – objekty graph a digraph
• zjednodušená správa doplňků a aplikací – nástroj Add-On Explorer
• podpora nových překladačů pro MEX-soubory – Microsoft Visual Studio 2015 – MinGW-w64 překladač pro 64-bitové Windows • volně dostupný
• změna podpory operačních systémů – konec podpory Windows XP • R2015b již na Windows XP neběží, vyžaduje alespoň Windows 7 • poslední běžící verze byla R2015a
– blíží se konec podpory 32-bitových Windows • R2015b je poslední verze, která běží na 32-bitových Windows
6
MATLAB Compiler a Compiler SDK 6.1 • nově uspořádané produkty pro vývoj aplikací – nahrazují dřívejší Buildery pro Javu, .NET a Excel
• MATLAB Compiler – samostatně spustitelné aplikace – moduly pro Microsoft Excel
• MATLAB Compiler SDK – dynamicky linkované knihovny – moduly pro Javu – moduly pro .NET – CTF archivy pro MATLAB Production Server
• další vylepšení – optimalizace velikosti runtime modulu pro použití s GPU – možnost generovat 32-bitové moduly pro Excel v 64-bitovém MATLABu
7
MATLAB Coder 3.0 • generování kódu pro datový typ pole buněk – odstraňuje významné omezení předchozích verzí – umožňuje kompilovat mnoho dříve nepodporovaných konstrukcí – rozlišuje homogenní a heterogenní pole buněk
• vylepšená aplikace pro MATLAB Coder – integrovaný editor – uložení stavu před opuštěním MATLABu
• rozšířeni generování kódu pro další knihovny – System Identification Toolbox – Robotics System Toolbox – mnoho dalších funkcí z již dříve podporovaných knihoven • • • • • • 8
Statistics and Machine Learning Toolbox Image Processing Toolbox Computer Vision System Toolbox Communications System Toolbox DSP System Toolbox Phased Array System Toolbox
Simulink 8.6 – grafické ovládací prvky • okamžitá interakce s důležitými veličinami modelu – grafické zobrazení okamžitých hodnot signálů – ladění parametrů ovládacími prvky
• grafické ovládací prvky jsou přímo součástí modelu – ne ve zvláštním okně
• virtuální ovládací panely – knoflíky, stupnice, grafy, ... – knihovna Dashboard
9
Simulink 8.6 – nové rozhraní bloku Scope • nástroje pro interaktivní práci se signálem – interaktivní měření pomocí kurzoru – statistiky signálů – měření přechodů mezi úrovněmi • náběžná a sestupná hrana • počty impulsů • periody signálů
– vyhledávání extrémů
• podstatně rozšířené možnosti nastavení – možnost automatického otevření při startu simulace – možnost volby rozloženi podoken
• vylepšený panel nástrojů – možnost ovládat běh simulace
10
Simulink 8.6 – další vylepšení • automatická oprava přerušených signálů • nové bloky v knihovně – From Spreadsheet – Waveform Generator
• podpora národních abeced v názvech bloků a signálů – jakékoli znaky Unicode
• grafické zvýraznění algebraické smyčky • programátorské rozhraní pro rychlý restart modelu • globální nastavení všech parametrů jako laditených • zlepšená podpora velkých projektů – odkazy na podprojekty
• a mnoho dalšího …
11
Simulink Desktop Real-Time 5.1 • simulace v reálném čase – podpora Microsoft Windows a Mac OS X – dříve Real-Time Windows Target
• podpora periferií na Mac OS X – měřicí karty pro PCI Express • National Instruments, Humusoft
– měřící karta pro Thunderbolt • Humusoft MF644
– komunikační protokol UDP
• stejný model přenosný mezi oběma platformami – bez nutnosti změn nastavení
• dva režimy činnosti – synchronizace běhu modelu s reálným časem • bez nutnosti kompilace
– běh kompilovaného modelu v reálném čase • maximální vzorkovací frekvence až 20 kHz 12
Nové produkty • Robotics System Toolbox – nástroj pro návrh a testování algoritmů v oblasti robotiky – rozhraní pro Robot Operating Systém (ROS) • sítě robotů a simulátorů
– zobrazení a transformace souřadnic – plánování a sledování cesty s využitím map – generování kódu pro robotické aplikace
• Simulink Test – nástroj pro testování modelů v Simulinku – tvorba testovacích modelů a sekvencí – správa testovacích scénářů a výsledků – možnost automatcikého generování testovacích sekvencí • v součinnosti s produktem Simulink Design Verifier
– postupně nahrazuje dřívější produkt SystemTest
13
Nové produkty • Antenna Toolbox – návrh, analýza a vizualizace anténních prvků a soustav – výběr antén, parametrizace a vizualizace geometrie – návrh a vizualizace anténních soustav – aplikace pro bezdrátové spoje a radary
• Vision HDL Toolbox – knihovna algoritmů pro implementaci zpracování obrazu v HDL – generuje čitelný a komentovaný HDL kód – algoritmy pro rozlišení FullHD (1080p) v reálném čase
• WLAN System Toolbox – návrh, simulace a analýza bezdrátových sítí (WiFi) – kompletní simulace přenosového kanálu – datová i fyzická vrstva – podporované normy 802.11ac a 802.11b/a/g/n
14
Další zdokonalené nástroje • Statistics and Machine Learning Toolbox – nová klasifikační aplikace s využitím dozorovaného strojového učení
• Signal Processing Toolbox – podpora nerovnoměrně vzorkovaných signálů a chybějících dat
• Image Processing Toolbox – nové typy filtraci a rozšířená podpora generování kódu
• Partial Differential Toolbox – analýza importovaných 3D modelů
• Stateflow – objekt message, který je možné řadit do front
• Simscape – knihovna pro dvoufázové tekutiny
• Simulink Design Optimization – výrazné zrychlení s použitím režimu Fast Restart
15