FAQs from Rohde & Schwarz

원격 제어: 트랜스듀서 세트의 주파수를 읽는 방법

질문

아래 스크립트를 사용하면 어떤 세트를 선택해도 언제나 내가 수동으로 편집한 세트만 읽을 수 있습니다. TRANSDUCER:SET 1 TRANSDUCER:SET:RANGES:SELECT 1 TRANSDUCER:SET:RANGES:START? 반환값은 Set 1의 Range 1 시작값이어야 하지만 Set 2를 편집하면 Set 2의 Range 1 시작값만 표시됩니다.

답변

대역을 선택하면 트랜스듀서의 편집 모드가 열리고 잘못된 값이 만들어집니다.

Save 명령으로 편집 모드를 종료해야 합니다.

다음은 대역의 주파수를 읽는 방법을 보여주는 프로그램입니다.

Private Sub Connect_Click()

Rem Dimensions

Dim Buffer1 As String * 2000

Dim Buffer2 As String * 2000

Dim Handle As Integer

Me.MousePointer = vbHourglass: DoEvents 'change cursor to hourglass

Rem Select the receiver

ibdev 0, 18, 0, 12, 1, 0, Handle '<<<<<

Rem Select the transducer set 1

ibwrt Handle, "TRANSDUCER:SET 1" '<<<<<

Rem Select the range 1

ibwrt Handle, "TRANSDUCER:SET:RANGES:SELECT 1" '<<<<<

Rem By selecting a range you also select the edit mode,

Rem save the set to leave the edit mode

ibwrt Handle, "TRANSDUCER:SET:SAVE" '<<<<<

Rem read out the start frequency

ibwrt Handle, "TRANSDUCER:SET:RANGES:START?" '<<<<<

ibrd Handle, Buffer1 '<<<<<

Rem Select the transducer set 2

ibwrt Handle, "TRANSDUCER:SET 2" '<<<<<

Rem Select the range 1

ibwrt Handle, "TRANSDUCER:SET:RANGES:SELECT 1" '<<<<<

Rem By selecting a range you also select the edit mode,

Rem save the set to leave the edit mode

ibwrt Handle, "TRANSDUCER:SET:SAVE" '<<<<<

Rem read out the start frequency

ibwrt Handle, "TRANSDUCER:SET:RANGES:START?" '<<<<<

ibrd Handle, Buffer2 '<<<<<

'XXXXXXXXXXXXXXXXXXXXXX

ibloc Handle '<<<<<

InstAnswer0(0).Caption = Buffer1 'write the answer to the form

InstAnswer1(1).Caption = Buffer2 'write the answer to the form

Me.MousePointer = vbDefault: DoEvents 'change cursor to normal status

End Sub