FLYTANDE INSTRUMENT MATLAB API Integrationssäkringar
MATLAB API Migration Guide
Uppgradering av Moku: Lab till mjukvaruversion 3.0 låser upp en mängd nya funktioner. Vid uppdatering måste API-användare vidta extra steg för att migrera sina skript till det nya Moku API-paketet. Den här migreringsguiden beskriver API-ändringar, nya funktioner tillgängliga i version 3.0-uppdateringen och eventuella bakåtkompatibilitetsbegränsningar.
Överview
Moku:Lab mjukvaruversion 3.0 är en stor uppdatering som ger ny firmware, användargränssnitt och AP:er till Moku:Lab-hårdvaran. Uppdateringen för Moku:Lab i linje med Moku:Pro och Moku:Go, vilket gör det enkelt att dela skript över alla Moku-plattformar. Uppdateringen låser upp en mängd nya funktioner till många av de befintliga instrumenten. Den lägger också till två nya funktioner: Multi-instrument Mode och Moku Cloud Compile. Det finns också några subtila beteendeskillnader, som beskrivs i avsnittet Bakåtkompatibilitet.
Detta är en stor uppdatering som påverkar API-arkitekturen, och därför kommer det nya MATLAB API v3.0-paketet inte att vara bakåtkompatibelt med befintliga MATLAB-skript. API-användare kommer att behöva portera sina skript till det nya Moku API-paketet om de uppgraderar sin Moku:Lab till version 3.0. API-användare med betydande anpassad mjukvaruutveckling bör noga överväga nivån av ansträngning som krävs för att portera sin befintliga kod. Moku:Lab 1.9 rekommenderas inte för nya distributioner och alla kunder uppmanas att uppgradera. Om problem uppstår efter uppgraderingen kommer användare att ha möjlighet att nedgradera till mjukvaruversion 1.9.
Denna migrationsguide beskriver advantaguppdateringar och potentiella komplikationer till Moku:Lab version 3.0. Den beskriver också processen för att uppgradera MATLAB API och hur du nedgraderar din Moku:Lab vid behov.
Nya funktioner i version 3.0
Nya funktioner
Mjukvaruversion 3.0 ger Multi-Instrument Mode och Moku Cloud Compile till Moku:Lab för första gången, såväl som många prestanda- och användbarhetsuppgraderingar över hela instrumentsviten.
Multi-instrument läge
Multi-instrument Mode på Moku:Lab tillåter användare att distribuera två instrument samtidigt för att skapa en anpassad teststation. Varje instrument har full tillgång till de analoga ingångarna och utgångarna tillsammans med sammankopplingar mellan instrumentplatserna. Sammankopplingarna mellan instrument stöder digital kommunikation med hög hastighet, låg latens, realtid upp till 2 Gb/s, så instrument kan köras oberoende eller anslutas för att bygga avancerade signalbehandlingspipelines. Instrument kan bytas dynamiskt in och ut utan att avbryta det andra instrumentet. Avancerade användare kan också distribuera sina egna anpassade algoritmer i Multi-instrument Mode med Moku Cloud Compile.
Moku Cloud Compile
Moku Cloud Compile låter dig distribuera anpassad DSP direkt på Moku:Lab FPGA i multiinstrumentläge. Skriv kod med a web webbläsare och kompilera den i molnet; Moku Cloud Compile distribuerar bitströmmen till en eller flera Moku-målenheter.
Oscilloskop
- Djupt minnesläge: spara upp till 4M samples per kanal vid full samplinghastighet (500 MSa/s)
Spektrumanalysator
- Förbättrat ljudgolv
- Logaritmisk Vrms och Vpp skala
- Fem nya fönsterfunktioner (Bartlett, Hamming, Nuttall, Gaussian, Kaiser)
Fasmätare
- Frekvensoffset, fas och amplitud kan nu matas ut som analog voltage -signaler
- Användare kan nu lägga till DC-offset till utsignaler
- Den faslåsta sinusvågsutgången kan nu frekvensmultipliceras upp till 2 50x eller delas ner till 125x
- Förbättrat bandbreddsområde (1 Hz till 100 kHz)
- Avancerad fasinpackning och automatisk återställningsfunktion
Vågformsgenerator
- Brusutgång
- Pulsbreddsmodulation (PWM)
Inlåsning Amplivligare
- Förbättrad prestanda av låg frekvens PLL låsning
- Den lägsta PLL-frekvensen har sänkts till 10 Hz
- Den interna PLL-signalen kan nu frekvensmultipliceras upp till 250x eller delas ner till 125x för användning vid demodulering
- 6-siffrig precision för fasvärden
Frekvenssvarsanalysator
- Ökad maxfrekvens från 120 MHz till 200 MHz
- Öka maximala sveppunkter från 512 till 8192
- Den nya dynamiken Amplitude-funktionen optimerar utsignalen automatiskt för bästa dynamiska mätområde
- Nytt ln/ln1 mätläge
- Ingångsmättnadsvarningar
- Den matematiska kanalen stöder nu godtyckliga ekvationer med komplexa värden som involverar kanalsignalerna, vilket möjliggör nya typer av komplexa överföringsfunktionsmätningar
- Ingångssignaler kan nu mätas i dBVpp och dBVrms utöver dBm
- Förloppet för svepet visas nu på grafen
- Frekvensaxeln kan nu låsas för att förhindra oavsiktliga förändringar under ett långt svep
Laserlåsbox
- Det förbättrade blockschemat visar avsöknings- och moduleringssignalvägar
- Den nya låsningentages funktion gör det möjligt att anpassa låsproceduren
- Förbättrad prestanda av låg frekvens PLL låsning
- 6-siffrig precision för fasvärden
- Förbättrad prestanda av låg frekvens PLL låsning
- Den lägsta PLL-frekvensen har sänkts till 10 Hz
- De PLL signalen kan nu frekvensmultipliceras upp till 250x eller delas ner till 0.125x för användning vid demodulering
Andra
Lade till stöd för sinusfunktionen till ekvationsredigeraren som kan användas för att generera anpassade vågformer i den godtyckliga vågformsgeneratorn
Konvertera binär LI files till CSV-, MATLAB- eller NumPy-format när du laddar ner från enheten
Uppgraderat API-stöd
Det nya Moku MATLAB API v3.0-paketet ger förbättrad funktionalitet och stabilitet. Den kommer att få regelbundna uppdateringar för att förbättra prestandan och introducera nya funktioner.
Bakåtkompatibilitetsbegränsningar
API
Det nya Moku MATLAB API v3.0-paketet är inte bakåtkompatibelt med det tidigare Moku:Lab MATLAB v1.9-paketet. MATLAB-skriptargumenten och returvärdena är helt olika. Om du har omfattande anpassad mjukvaruutveckling med hjälp av Moku:Lab MATLAB, överväg effekten av att migrera all din programvara för att vara kompatibel med det nya API:et.
Även om Moku:Lab MATLAB-paketet inte längre kommer att ta emot uppdateringar, kommer Liquid Instruments fortfarande att ge support för användare som inte kan migrera till det nya API-paketet.
Hitta detaljerade examples för varje instrument i det nya Moku MATLAB API v3.0-paketet för att fungera som en baslinje för att konvertera tidigare MATLAB-utveckling till det nya API-paketet.
Regressioner
RAM-disk för dataloggning
Version 1.9 hade 512 MB filesystem i enhetens RAM, som kan användas för att logga data vid höga samplingpriser. I version 3.0 är det inte längre möjligt att logga till RAM. För att aktivera dataloggning krävs ett SD-kort. Följaktligen ändras också den maximala inhämtningshastigheten. Version 1.9 stöder upp till 1 MSa/s, medan version 3.0 stöder upp till 250 kSa/s vid 1 kanal och 125 kSa/s vid 2 kanaler. Även vid lägre hastigheter och med ett SD-kort kommer arbetsflöden som inkluderade att spara flera höghastighetsloggar till RAM och sedan kopiera dem till SD-kortet eller klienten inte längre att stödjas.
Dataloggning till CSV
Version 1.9 hade möjlighet att spara data direkt till en CSV file medan du loggar. Den här funktionen är inte direkt tillgänglig på version 3.0. Användare vars arbetsflöde inkluderade att spara CSVfiles direkt till ett SD-kort eller så måste klienten nu först konvertera binären file till CSV, antingen genom att använda klientappen eller genom att installera de fristående Liquid Instruments File Omvandlare till datorn som de använder för databehandling.
Icke-bakåtkompatibla ändringar
Dataskalning i LIA
I version 1.9 implementerade vi dataskalning så att multiplicering av två 0.1 V DC-signaler resulterade i en 0.02 V DC-utgång. I version 3.0 ändrade vi detta så att resultatet blev 0.01 V DC, vilket är mer i linje med kundernas intuitiva förväntningar.
Waveform Generator-utgången måste vara aktiverad för att kunna användas som moduleringskälla/trigger
I version 1.9 kunde en annan kanals vågform användas som en modulerings- eller triggerkälla i vågformsgeneratorn, även om den kanalens utgång var inaktiverad. Detta togs bort i version
- Användare som vill göra korsmodulering utan att behöva koppla ur utgångarna på sin enhet skulle behöva justera sina
Moku MATLAB API
Moku MATLAB API v3.0-paketet är avsett att ge MATLAB-utvecklare de resurser som behövs för att kontrollera alla Moku-enheter och i slutändan möjligheten att integrera dessa kontroller i större slutanvändarapplikationer. Det nya Moku MATLAB API v3.0-paketet innehåller följande:
- Fullt fungerande example MATLAB-skript för varje
- Alla MATLAB-skript är försedda med kommentarer, som är lätta att förstå och kan fungera som slutanvändarens utgångspunkt för anpassning och
- En uppsättning funktioner som ger full kontroll över Moku
Instrument som stöds för närvarande
- Godtycklig vågformsgenerator
- Datalogger
- Digital filterbox
- FIR Filter Builder
- Frekvenssvarsanalysator
- Laserlåsbox
- Inlåsning Amplivligare
- Oscilloskop
- Fasmätare
- PID-kontroller
- Spektrumanalysator
- Vågformsgenerator
- Multi-instrument läge
- Moku Cloud Compile
Installation
Krav
- MATLAB version 2015 eller senare
Om du redan har en tidigare version av Moku MATLAB API installerad, avinstallera den innan du fortsätter. Du kan avinstallera paketet från tilläggshanteraren.
- Öppna tilläggshanteraren via fliken Hem > Miljö.
- Leta efter Moku in the Add-on Manager and click ‘Add’. The toolbox will show up as Moku- MATLAB.
- Alternativt kan du ladda ner verktygslådan direkt från Liquid Instruments webplats på https://www.liquidinstruments.com/products/apis/matlab-api/. Du måste ställa in sökvägen manuellt om du gör detta.
- Kontrollera att rätt sökväg har lagts till i verktygslådan genom att välja 'Ange sökväg' från fliken Hem > Miljö.
- Se till att det finns en ingång som pekar på installationsplatsen för verktygslådan. En typisk sökväg kan vara CAUserskusername>\AppDataRoaming\Mathworks\MATLABAdd-Ons\Toolboxes\oku-MATLAB.
- Ladda ner instrumentdata files genom att skriva 'moku_download####) i MATLABs kommandofönster. ### bör ersättas med din nuvarande firmwareversion. Yol kan hitta din nuvarande firmwareversion genom Moku: desktop-appen genom att högerklicka på din Moku och föra muspekaren över "Enhetsinformation", eller i iPad-appen genom att trycka länge på din Moku.
- Bekräfta att din verktygslåda är korrekt inställd genom att skriva "hjälp Moku" i MATLABs kommandofönster. Om detta kommando lyckas. då har verktygslådan installerats
Moku API-ändringar
Den nya Moku MATLAB API-arkitekturen är tillräckligt skild från sin föregångare och därför inte bakåtkompatibel med befintliga API-skript. Följande förenklade oscilloskop example visar skillnaderna mellan det äldre och nya API-paketet och fungerar som en vägkarta för portering av befintlig kod.
Oscilloskop example
Sekvenssteg
- Importera Moku MATLAB API 3.0
- Gör anspråk på Moku-ägarskapet och ladda upp Oscilloskopets bitström till
- Ställ in tidsbas och ställ in vänstra och högra spann för tidsaxeln.
- Skaffa data, skaffa en enda ram av data från oscilloskopet
- Avsluta klientsessionen genom att avstå från Moku-ägandet
Sekvensen som beskrivs ovan är ett förenklat example för att illustrera skillnaderna mellan det äldre och nya API-paketet. Bortsett från att börja en klientsession, ladda upp en instrumentbitström till Moku och avsluta klientsessionen, kan en slutanvändare utöva ett valfritt antal funktioner i olika för att möta behoven i deras applikation.
Skillnader
Här tittar vi på skillnaderna mellan de två AP:erna för varje steg i sekvensen.
Gör anspråk på Moku-ägarskap och ladda upp Oscilloskopets bitström till enheten. Jämfört med Moku MATLAB 1.9 har det nya API:et helt andra funktioner:
Moku MATLAB 1.9 | Moku MATLAB 3.0 | ||
Fungera | get_by_name() | deploy_or_conn ect() | Oscilloskop() |
Tillåtna fält och värden | namn: sträng timeout: flyta | instrument: den klass av instrumentet som vill användas | ip: sträng seriell: sträng |
kraft: bool | set_defauIt: booI | force_connect: bool | |
use_externa I: bool | ignore_busy: bool | ||
persist_state: bool | |||
connect_timeout: flyta | |||
read_timeout: flyta |
- Ställ in tidsbas. Funktionen är densamma, men de tillåtna argumenten är något annorlunda:
Moku MATLAB 1.9 Moku MATLAB 3.0 Fungera set_timebase() set_timebase() Tillåtna fält och värden t1: flyta t2:flyta t1: float t2:float strikt: bool - Få data. Funktionerna och de tillåtna argumenten är desamma, men den returnerade datatypen och längden är olika:
Moku MATLAB 1.9 Moku MATLAB 3.0 Fungera get_data() get_data() Tillåtna fält och värden timeout: flyta vänta: bool timeout: float wait_reacquire: bool Returlängd 16383 poäng per bildruta 1024 poäng per bildruta - Släpp Moku-ägandet:
Moku MATLAB 1.9 Moku API v3.0 Fungera nära() relinquish_ownership()
Oscilloskopfunktionslista
Moku MATLAB 1.9 | Moku MATLAB 3.0 |
set_sourceO | set_sourcesO |
set_triggerO | set_triggerO |
get_dataQ | get_dataQ |
set_frontendQ | set_frontendQ |
set_defau!tsQ set_timebaseO
set_xmodeQ |
set_defau!tsQ set_timebaseQ disable_inputO |
set_precision_modeQ | set_acquisition_modeQ |
sync_phaseQ | sync_output_phaseQ |
get_frontendQ | get_frontendQ |
få_samp!erateO
get_rea!time_dataQ |
få_samp!erateO
save_high_res_bufferO |
gen_rampvågO
gen_sinewaveO |
generera_vågformO
get_acquisition_modeQ |
gen_squarewaveQ | get_sourcesQ |
gen_offQ | get_timebaseQ
get_output_!oadQ |
set_sampläraQ
set_framerateQ |
get_interpo!ationO set_output_!oadQ |
set_hysteresisQ
set_interpo!ationO |
|
set_input_attenuationO | |
set_sourceO
osc_measurementQ |
|
sammanfattningQ |
Moku MATLAB API är baserat på Moku API. För fullständig Moku API-dokumentation, se Moku API-referens som finns här https://apis.liq uidinstrume nts.com/re fe rence/.
Ytterligare information för att komma igång med Moku MATLAB API finns på https://a pis.liquid instruments.com/sta gradering-Matlab.hem
Nedgraderingsprocess
Om uppgraderingen till version 3.0 har visat sig begränsa, eller på annat sätt påverka något som är avgörande för din applikation, kan du nedgradera till den tidigare versionen 1.9. Detta kan göras genom en web webbläsare.
Steg
- Kontakta Liquid Instruments och skaffa file för firmware version 9.
- Skriv din Moku:Lab IP-adress i en web webbläsare (se skärmdump).
- Under Uppdatera firmware, bläddra och välj firmware file tillhandahålls av Liquid Instruments.
- Välj Ladda upp och uppdatera. Uppdateringsprocessen kan ta mer än 10 minuter att slutföra
© 2023 Liquid Instruments. reserverad.
Dokument/resurser
![]() |
FLYTANDE INSTRUMENT MATLAB API Integrationssäkringar [pdf] Användarhandbok MATLAB API, MATLAB API Integrationssäkringar, Integrationssäkringar, Säkringar |