어플리케이션 노트

LabVIEW를 사용한 잠금 증폭기 주파수 스윕

Moku:Lab 및 LabVIEW를 사용한 프로그래밍 튜토리얼

이 어플리케이션 노트에서는 Moku:Lab의 LabVIEW API를 사용하여 자동화된 테스트 시퀀스를 구축하는 방법에 대한 단계별 튜토리얼을 제공합니다. 많은 전자 시스템은 특정 작동 주파수에서 최적으로 작동합니다. 고정 측정의 신호 대 잡음비를 최대화하려면 시스템의 전달 함수를 찾고 최적의 변조 주파수를 사용하는 것이 중요합니다. 이 예제에서는 로컬 오실레이터(LO)의 주파수를 스캔하고 측정된 진폭을 LO 주파수의 함수로 플롯하는 LabVIEW VI를 구축합니다. 그런 다음 이 VI를 사용하여 대역통과 필터의 전달 함수를 측정하겠습니다.

인쇄 가능한 버전 다운로드


주파수 스윕 잠금 감지

LIA(Lock-In Amplifier)는 시끄러운 배경에서 극도로 약한 진동 신호를 추출하도록 설계되었습니다. LIA는 입력 신호를 받아 이를 특정 주파수의 국부 발진기(LO)와 혼합합니다. 그런 다음 협대역 저역통과 필터를 적용하여 고주파 성분을 감쇠시킵니다. Lock-In Amplifier의 원리에 대한 자세한 내용은 다음 비디오에서 확인할 수 있습니다. https://youtu.be/H2O2ADqEkHM 이 감지 방법을 사용하면 좁은 대역폭의 임의 주파수에서 신호 응답을 측정할 수 있습니다. 측정된 주파수의 중심은 LO의 주파수에 의해 정의됩니다. LO의 주파수를 스윕함으로써 시스템의 전달 함수를 측정할 수 있습니다. 이러한 응답 플롯을 사용하여 시스템의 공진, 최적 변조 주파수 및 임피던스를 결정할 수 있습니다. Lock-in 측정을 위한 최대 신호 대 잡음비를 얻기 위해 수행하는 필수 테스트입니다. 이 어플리케이션 노트에서는 Moku:Lab의 LabVIEW API를 사용하여 LO 주파수를 스윕하고 대역통과 필터의 응답을 측정하는 자동화된 테스트 시퀀스를 구축하는 방법을 보여줍니다.

그림 1 : 자동화된 테스트 시퀀스의 일반적인 흐름.


시스템 설치

Moku:Lab LabVIEW API의 설치 파일과 지침은 다음 위치에 있습니다. https://www.liquidinstruments.com/software/labview.

전체 LabVIEW .VI 파일은 여기에서 다운로드할 수 있습니다: https://liquidinstruments.squarespace.com/s/20-0304_AppNote_LabVIEWLIAFrequencySweep.vi

LabVIEW로 Moku:Lab을 제어하고 작동하려면 Moku:Lab과 컴퓨터를 동일한 네트워크에 연결해야 합니다. 이 예에서는 Moku:Lab과 컴퓨터를 동일한 Wi-Fi 라우터에 무선으로 연결했습니다.

네트워크에서 Moku:Lab을 찾으려면 IP 주소가 필요합니다. IP 주소를 찾으려면 iPad를 동일한 Wi-Fi 네트워크에 연결하고 Moku:Lab의 iPad 앱을 실행하세요. 그런 다음 Moku:Lab 아이콘을 길게 누르면 IP 주소가 표시됩니다. 또는 컴퓨터에 Python과 PyMoku가 설치되어 있는 경우 "moku list" 명령을 사용하여 Moku:Lab의 IP 주소를 찾을 수 있습니다.

LO는 Moku:Lab의 출력 2에서 생성되어 대역통과 필터 테스트 대상 장치(DUT)를 통과하고 Moku:Lab의 입력 1에서 측정된 반환 신호입니다.

그림 2 : Moku:Lab과 컴퓨터는 동일한 라우터에 무선으로 연결되었습니다. DUT는 Moku 출력 2와 입력 1 사이에 삽입되었습니다.


LabVIEW VI 구축하기

Moku:Lab에 연결하고 기본 설정을 배포합니다.

LabVIEW VI 구축을 시작하려면 먼저 LabVIEW를 시작하고 "setup moku" 팔레트를 프로그램에 끌어 놓습니다.

1단계: "setup moku" 팔레트를 VI로 드래그합니다.

이 팔레트는 Moku:Lab의 IP 주소와 기기 이름이라는 두 가지 문자열 입력을 사용합니다. 사용자가 IP 주소를 입력할 수 있도록 사용자 인터페이스에 자리 표시자를 만듭니다. Lock-In Amplifier 악기는 전체 프로그램에서 사용되므로 기본 악기 이름으로 설정했습니다. 다음으로, http-reference, moku 명령 피드백 및 오류 출력 출력을 "execute cmd" 팔레트에 전달합니다.

2단계: http 참조를 연결하고 Moku 명령과 오류를 "cmd 실행" 팔레트로 라우팅합니다.

"cmd 실행" 팔레트는 http 참조를 장치 핸들로 사용하고 JSON 형식의 명령을 Moku:Lab에 전달합니다. JSON 명령은 일반적으로 다른 VI에 의해 생성됩니다. "execute cmd" 팔레트는 또한 명령 피드백을 받아 이를 프로그램에 전달하여 로깅하고, 오류 출력 플래그를 사용하여 모든 "cmd 실행" 팔레트가 성공적으로 실행되도록 합니다. 플래그가 올라가면 프로그램이 종료됩니다. "기본 LIA 설정" 팔레트는 JSON 명령을 생성하여 Lock-In Amplifier를 초기화하고 모든 매개변수를 기본값으로 설정합니다. 이 명령은 Moku:Lab에서 Lock-In Amplifier 기기를 시작하는 데 사용됩니다.

그림 3 : LIA 기기를 연결하고 초기화합니다.

잠금 감지를 위한 매개변수 설정

장치가 초기화된 후 동일한 "execute cmd" 팔레트 구조를 사용하여 Lock-In Amplifier의 설정을 수정합니다(3-9단계).

3단계: 두 개의 Moku:Lab 출력을 구성합니다. 하나는 LIA에서 R(진폭, 메인 채널)에 대한 것이고 두 번째는 주파수 스윕을 위한 LO(보조 발진기)에 대한 것입니다.

4단계와 5단계: 두 개의 모니터 지점을 설정합니다. 하나는 메인 출력에, 다른 하나는 보조 출력에 있습니다. 메인 출력 모니터 포인트는 나중에 실시간 데이터를 수집하는 데 사용됩니다.

6단계: 모니터링 포인트 및 실시간 데이터 수집을 위한 시간 기반을 설정합니다.

7단계: 메인 채널의 게인을 설정합니다.

8단계: R-Theta 변환 범위를 설정합니다. R-Theta 변환에 대한 자세한 내용은 Moku:Lab의 Lock-In Amplifier 사용자 설명서에서 확인할 수 있습니다.

9단계: 믹서 바로 뒤에 있는 저역 통과 필터를 구성합니다.

그림 4 : LIA의 매개변수를 설정하는 팔레트입니다.

자동화된 주파수 스윕을 위한 For 루프

for 루프는 주파수 스윕과 데이터 수집을 반복하는 데 사용됩니다. 루프에 대해 세 가지 사용자 정의 가능한 매개변수(단계 수, 주파수 단계 및 초기 주파수)를 만듭니다. 각 반복이 시작될 때 프로그램은 ×를 기준으로 LO의 빈도를 계산합니다. 주파수 단계 + 초기 주파수. 그런 다음 이 숫자는 두 개로 분할되어 플롯의 x축 위치뿐만 아니라 주파수 입력(11단계)으로 "복조 LIA 설정" 팔레트에 전달됩니다.

그림 5 : For 루프는 주파수 스윕과 데이터 수집을 반복합니다.

데이터 수집 전에 LO가 설정되고 안정적인지 확인하기 위해 플랫 시퀀스를 사용하여 설정 부분과 데이터 수집 부분을 분리합니다. 100ms의 체류 기간이 지나면 "실시간 데이터 가져오기" 명령이 Moku:Lab으로 전송됩니다. "execute cmd" 팔레트는 원시 데이터를 수신하고 "parse data" 팔레트로 전달하여 원시 데이터를 숫자 배열로 변환합니다.

그림 6 : 데이터 전송, 평균 및 표시.

"데이터 분석" 팔레트 이후에는 보조 채널(ch2)의 데이터 스트림이 감쇠됩니다. 평균 함수는 메인 채널 숫자 배열의 평균을 구하는 데 사용됩니다. 그런 다음 결과가 사용자 인터페이스에 표시됩니다.


필터 전달 함수 측정

DUT 대역 통과 필터(미니 회로 BBP-21.4)의 전달 함수를 측정하기 위해 초기 주파수를 15MHz로 설정하고 주파수 단계를 400kHz로 40단계로 설정했습니다.

 

그림 7 : 대역 통과 필터를 사용한 주파수 스윕 분석.

LabVIEW VI는 자동으로 LO의 주파수를 스윕하고 감지된 신호의 진폭을 플로팅합니다. 필터는 약 22MHz에서 최대 응답을 갖습니다.

Moku:Lab LabVIEW API에 대해 자세히 알아보려면 다음을 방문하십시오. https://www.liquidinstruments.com/software/labview


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

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