어플리케이션 노트

Moku:Lab 및 MATLAB

MATLAB과 함께 임의 파형 생성기 사용

이 애플리케이션 노트에서는 MATLAB과 함께 Moku:Lab의 임의 파형 생성기를 사용하는 튜토리얼을 제공합니다. MATLAB에서 두 개의 간단한 파형을 Moku:Lab으로 직접 배포하는 방법에 대한 단계별 지침이 자세히 설명되어 있습니다. 우리는 오실로스코프와 스펙트럼 분석기 장비를 실행하는 두 번째 Moku:Lab을 사용하여 출력 파형을 확인합니다.

그런 다음 Lissajous 곡선 예가 보다 복잡한 2채널 파형과 함께 표시됩니다.

이 노트와 함께 제공되는 MATLAB 파일은 Liquid Instruments에서 다운로드할 수 있습니다.

사용 설명서 다운로드

임의 파형 발생기

Moku:Lab의 AWG(임의 파형 발생기)는 최대 65,536 GSa/s의 샘플링 속도로 최대 1 포인트의 맞춤형 파형을 생성할 수 있습니다. 파형은 파일에서 로드하거나 최대 32개 세그먼트가 포함된 조각별 수학 함수로 입력할 수 있으므로 진정한 임의 파형을 생성할 수 있습니다. 이 노트에서는 파형을 생성하여 MATLAB 내에서 Moku:Lab으로 직접 다운로드합니다.

전제조건 및 설정

이 애플리케이션 노트와 튜토리얼에서는 MATLAB 및 관련 Moku:Lab MATLAB 도구 상자를 설치했다고 가정합니다.

Moku:Lab은 다음 MATLAB 버전을 지원합니다.

  • Windows: MATLAB R2013a 이상
  • Linux: MATLAB R2013a 이상
  • MacOS: MATLAB 2014a 이상

도구 상자의 경우:

MATLAB 2015+

  1. Moku:Lab 도구 상자를 여기에서 다운로드하세요: http://updates.liquidinstruments.com/static/moku-MATLAB-2.8.1.mltbx
  2. MATLAB에서 다운로드한 .tblx 파일을 엽니다.
  3. “설치”를 선택하세요
  4. 다음으로 설치를 확인하세요. 도와주세요 MATLAB 터미널에서

MATLAB 2013-2014

  1. 여기에서 Moku:Lab 도구 상자 zip을 다운로드하세요. https://updates.liquidinstruments.com/static/moku-MATLAB-2.8.1.zip
  2. 일반적으로 다음과 같이 zip을 추출합니다. ../MATLAB/Add-Ons/Toolboxes
  3. MATALB를 열고 홈 도구 창에서 "경로 설정"을 클릭합니다.
  4. "하위 폴더로 추가"를 클릭하고 추출된 ZIP 폴더를 선택하세요.
  5. MATLAB 경로에 툴박스 폴더를 추가하려면 "저장"을 클릭하세요.

이 노트에서는 MacOS에서 MATLAB R2019b를 사용합니다.

Moku:Lab on MATLAB

MATLAB이 Moku:Lab을 제어하려면 MATLAB을 실행하는 컴퓨터가 Moku:Lab과 동일한 서브넷/LAN에 있어야 합니다. MATLAB에는 Moku:Lab의 IP 주소가 필요합니다. 다음 두 가지 방법 중 하나로 이를 확인할 수 있습니다.

  • Bonjour/zeroconf 서비스 검색 유틸리티
  • Moku:Lab의 iPad 앱 실행 화면에서; Moku:Lab 아이콘을 길게 누르면 IP 주소가 표시됩니다.

MATLAB 내에서 명령을 사용하여 Moku:Lab 문서에 액세스할 수 있습니다. 도와주세요

MATLAB 툴박스에는 다양한 예제 스크립트가 포함되어 있으며 일반적으로 툴박스 폴더에 있습니다. MacOS에서는 다음 위치에 있습니다.

~/Library/ApplicationSupport/MathWorks/MATLAB Add-Ons/Toolboxes/moku-MaTLAB-2.8.1/examples

Windows의 경우 :

\Users\...\AppData\Roaming\MathWorks\MATLAB Add-Ons\Toolboxes\moku-MATLAB-2.8.1\examples

다운로드

각 예제에 대한 MATLAB 스크립트는 여기에서 다운로드할 수 있습니다.

https://download.liquidinstruments.com/documentation/app-note/reference-files/20-0331_AppNote-MatLab-UsingAWG_ScriptsForMokuLabAWG.zip


예제 #1: 고조파가 포함된 구형파 및 사인파

첫 번째 예에서는 Toolbox 예를 배포하겠습니다.

arbitrarywavegen_basic.m

이 스크립트를 참조하면 배열이 square_wave +100 또는 -1 값으로 구성된 길이 1의 배열로 정의됩니다.

XNUMXD덴탈의 not_square_wave 여러 개의 홀수 고조파를 추가하여 사인파를 설명하는 값의 길이 100 배열로 정의됩니다.

MATLAB 스크립트를 실행한 후 사용자는 IP 주소를 입력하고 스크립트 내에 다음 줄을 입력합니다.

m = MokuArbitraryWaveGen(ip)

Moku:Lab에서 임의 파형 발생기 장비의 인스턴스를 설정하고 배포합니다. 그런 다음 각 채널에 대해 하나의 호출을 수행합니다.

m.write_lut

m.gen_waveformfunction

Moku:Lab 하드웨어에서 파형을 구성합니다.

MATLAB 플로팅 및 그래프 명령을 사용하여 이러한 파형을 보고 확인할 수 있습니다. 그림 1에서는 구형파가 파란색으로 표시되고 사인파와 고조파가 빨간색으로 표시됩니다.

그림 1: 예제 파형의 MatLab 플롯

그림 1: 예제 파형의 MATLAB 플롯

 

그러나 Moku:Lab에서 생성된 파형을 보는 것이 더 유용합니다. 우리 연구실 벤치에 있는 상단의 검은색 Moku:Lab은 MATLAB에 연결되어 배포된 AWG를 사용하여 두 개의 신호를 생성합니다.

아래쪽 파란색 Moku:Lab은 오실로스코프 장비를 실행하는 iPad와 인터페이스됩니다. 이 설정은 그림 2에 나와 있습니다.

그림 2: Moku:Lab 벤치 설정

그림 2: Moku:Lab 설정

AWG 출력 채널은 오실로스코프 입력에 연결되어 있으며 iPad에서 파형을 관찰할 수 있습니다. 커서는 1MHz의 예상 주파수를 표시합니다(화면의 실제 측정값은 999.4kHz). Moku:Lab과 Dropbox의 통합을 통해 스크린샷을 빠르게 공유할 수 있습니다. 그림 3(실제 AWG 출력 표시), 채널 2의 구형파(파란색), 채널 1의 사인파와 고조파(빨간색)를 참조하세요.

그림 3: Moku:Lab 오실로스코프 스크린샷, MATLAB에서 생성된 MokuLab AWG 스노우

그림 3: Moku:Lab 오실로스코프 스크린샷은 MATLAB에서 생성된 MokuLab AWG를 보여줍니다. 

Moku:Lab의 유연성 덕분에 파란색 Moku:Lab을 오실로스코프에서 스펙트럼 분석기로 빠르게 전환할 수 있습니다.

그림 4에 표시된 구형파의 스펙트럼과 구형파에 대해 예상되는 스펙트럼은 1MHz에서 기본파를 보여주고 100MHz에서 플롯 한계까지 확장되는 일련의 홀수 고조파를 보여줍니다.

그림 4 : Moku:Lab 스펙트럼 분석기의 구형파 스펙트럼

그림 4: Moku:Lab 스펙트럼 분석기의 구형파 스펙트럼

not_square_wave에 대한 MATLAB 스크립트는 기본적으로 7개의 홀수 고조파로 사인파를 합산합니다. not_square_wave의 스펙트럼은 그림 5에 나와 있으며 이는 1MHz 기본 피크와 7MHz까지 확장되는 15개 고조파 피크를 보여줍니다. 이는 iPad 앱의 커서로 화면에 표시됩니다.

그림 5: Moku:Lab 스펙트럼 분석기에 표시된 "비방형파"

그림 5: Moku:Lab 스펙트럼 분석기에 표시된 "비방형파"


예시 #2 : 리사주 수치

Moku:Lab의 AWG의 두 번째 예를 위해 우리는 고전적인 Lissajous 그림을 생성할 것입니다. 리사쥬 곡선은 x와 y에서 다음과 같이 정의됩니다.

x = 구매 수량( at + d )

y = Bsin( bt )

이 곡선군은 1815년 Nathaniel Bowditch에 의해 조사되었으며 나중에 1857년 Jules Antoine Lissajous에 의해 더 자세히 조사되었습니다.

일부 Moku:Lab API 함수 호출을 [3]의 MATLAB 스크립트에 통합하여 일부 파형을 정의하고 MATLAB에서 결과 Lissajous 곡선을 볼 수 있습니다. 이 MATLAB 스크립트는

lissajous_moku.m

실행되면 MATLAB에서 GUI 창이 열리고 사용자가 변수 A, a, d, B, b 및 t를 구성할 수 있습니다. "시작"을 클릭하면 MATLAB이 그림을 플롯하고 몇 초 후에 연결된 Moku:Lab의 AWG에 파형을 다운로드합니다. 그림 6은 MATLAB 출력을 보여주고 그림 7은 XY 모드에서 작동하는 두 번째 Moku:Lab의 오실로스코프에서 캡처된 Moku:Lab의 AWG 출력을 보여줍니다.

그림 6 : MATLAB 리사주 곡선

그림 6: MATLAB 리사주 곡선

그림 7 : Moku:Lab의 오실로스코프에 표시된 Moku:Lab의 AWG

그림 7: Moku:Lab의 오실로스코프에 표시되는 Moku:Lab의 AWG


추가 자료: 이중 채널 패턴 생성

애플리케이션 노트, “Moku:Lab의 임의 파형 발생기; 2D 임의 빔 조향을 위한 이중 채널 동기화 패턴 생성”[4]; 복잡한 2채널 스캐닝 나선형 파형을 정의하기 위해 MATLAB을 사용한 AWG의 특정 사용 사례를 설명합니다.


요약

이 애플리케이션 노트에서는 MATLAB에서 수학 공식을 사용하여 파형을 정의할 수 있는 유연성과 속도를 보여주었습니다. 동일한 MATLAB 스크립트는 설명된 신호를 즉시 생성하기 위해 네트워크에 연결된 Moku:Lab AWG에 파형을 원활하게 다운로드합니다.


참고자료

[1] Moku:Lab의 AWG 사용자 매뉴얼

[2] Moku:Lab의 오실로스코프 사용 설명서

[3] MATLAB의 리사주 곡선: https://www.mathworks.com/matlabcentral/fileexchange/28987-lissajous-curve

[4] Moku:Lab의 임의 파형 발생기; 2D 임의 빔 조향을 위한 이중 채널 동기화 패턴 생성 http://download.liquidinstruments.com/documentation/app-note/App%20Note%20-%20MokuLab%20AWG%20Dual%20Channel%20Sync%20Pattern%20Generation.pdf


질문이 있으시거나 인쇄가능 버전을 필요로 하십니까?

support@liquidinstruments.com로 문의 부탁드립니다.