"E5071C GPIB 프로그래밍"의 두 판 사이의 차이

잔글
잔글
 
(같은 사용자의 중간 판 5개는 보이지 않습니다)
10번째 줄: 10번째 줄:
 
<ol>
 
<ol>
 
<li> [[E5071C GPIB 프로그래밍]] - 이 페이지
 
<li> [[E5071C GPIB 프로그래밍]] - 이 페이지
 +
<ol>
 +
<li> [[E5071C VBA 프로그래밍]]
 
</ol>
 
</ol>
 
</ol>
 
</ol>
 
</ol>
 
</ol>
 +
</ol>
 +
</ol>
 +
<li>외부 PC(컨트롤러)에서 E5071C를 제어하는 방법
 +
<ol>
 +
<li> - 972p
 +
<ol>
 +
<li>
 
</ol>
 
</ol>
 
<li>샘플 프로그램
 
<li>샘플 프로그램
18번째 줄: 27번째 줄:
 
<li>2022/05/27 DUT가 있으면 측정한다.
 
<li>2022/05/27 DUT가 있으면 측정한다.
 
<ol>
 
<ol>
<li> [[e5071c-01.bas]]
+
<li> [[e5071c01.bas]]
 
</ol>
 
</ol>
 
</ol>
 
</ol>
51번째 줄: 60번째 줄:
 
<li>Points :SENS{1-9}:SWE:POIN
 
<li>Points :SENS{1-9}:SWE:POIN
 
<li>Power :SOUR{1-9}:POW
 
<li>Power :SOUR{1-9}:POW
 +
</ol>
 +
<li>데이터 전송 포맷(Data Transfer Format)
 +
<ol>
 +
<li>포맷 선택
 +
<ol>
 +
<li>:FORMat:DATA {ASCii|REAL|REAL32}
 +
<ol>
 +
<li>ASC: ASCII
 +
<li>REAL: 64-비트 부동소수점 이진파일
 +
<li>REAL32: 32-비트 부동소수점 이진파일
 +
</ol>
 +
</ol>
 +
<li>채널 선택, 트레이스 선택
 +
<ol>
 +
<li>10 OUTPUT 717;":CALC1:PAR1:SEL"
 +
</ol>
 +
<li>채널별 Stimulus data arrays. 계산되는 값이므로, 실제로 매번 읽어들일 필요는 없다.
 +
<ol>
 +
<li>10 DIM A(1:201)
 +
<li>20 OUTPUT 717;":SENS1:FREQ:DATA?"
 +
<li>30 ENTER 717;A(*)
 +
</ol>
 +
<li>formatted data array, nx2-1은 측정데이터, nx2는 0(단, smith chart 또는 polar가 아닌 경우)
 +
<ol>
 +
<li>10 DIM A(1:201,1:2)
 +
<li>20 OUTPUT 717;":CALC1:DATA:FDAT?"
 +
<li>30 ENTER 717;A(*)
 +
</ol>
 +
<li>:FORM:DATA REAL 이진파일로 데이터 받기
 +
<ol>
 +
<li>50 ASSIGN @Agte507x TO 717
 +
<li>60 ASSIGN @Binary TO 717;FORMAT OFF
 +
<li>110 OUTPUT @Agte507x;":SENS1:SWE:POIN?"
 +
<li>120 ENTER @Agte507x;Nop
 +
<li>130 REDIM Fdata(1:Nop,1:2),Freq(1:Nop)  ! =allocate
 +
<li>160 DIM Buff$[9]
 +
<li>170 OUTPUT @Agte507x;":FORM:DATA REAL"
 +
<li>180 !
 +
<li>190 OUTPUT @Agte507x;":CALC1:DATA:FDAT?"
 +
<li>200 ENTER @Agte507x USING "#,8A";Buff$
 +
<li>210 ENTER @Binary;Fdata(*)
 +
<li>220 ENTER @Agte507x USING "#,1A";Buff$
 +
<li>230 OUTPUT @Agte507x;":SENS1:FREQ:DATA?"
 +
<li>240 ENTER @Agte507x USING "#,8A";Buff$
 +
<li>250 ENTER @Binary;Freq(*)
 +
<li>260 ENTER @Agte507x USING "#,1A";Buff$
 +
</ol>
 +
</ol>
 
</ol>
 
</ol>
 
</ol>
 
</ol>
 
</ol>
 
</ol>

2024년 7월 2일 (화) 20:17 기준 최신판

E5071C GPIB 프로그래밍

  1. 전자부품
    1. 계측기
      1. 네트워크분석기
        1. E5071C 네트워크분석기
          1. E5071C GPIB 프로그래밍 - 이 페이지
            1. E5071C VBA 프로그래밍
  2. 외부 PC(컨트롤러)에서 E5071C를 제어하는 방법
    1. - 972p
    2. 샘플 프로그램
      1. 2022/05/27 DUT가 있으면 측정한다.
        1. e5071c01.bas
    3. 중요 프로그램 기법
      1. *IDN?
      2. *OPC?
      3. :TRIG:SING
        1. *OPC?
      4. marker
        1. :CALC{1-9}:MARK{1-10}:Y?
        2. :CALC{1-9}:MARK{1-10}:X
      5. bandwidth 검출되지 않으면 프로그램이 정지한다. 그러므로 대역폭이 검출되는가를 먼저 체크한 후 실행한다.
        1. :CALC1:MARK1:BWID:DATA?
          1. BW, Fc, Q, Peak
      6. stimulus
        1. :SENS{1-9}:FREQ:SPAN
        2. :SENS{1-9}:FREQ:STAR
        3. :SENS{1-9}:FREQ:STOP
      7. sweep setup
        1. Points :SENS{1-9}:SWE:POIN
        2. Power :SOUR{1-9}:POW
      8. 데이터 전송 포맷(Data Transfer Format)
        1. 포맷 선택
          1. :FORMat:DATA {ASCii|REAL|REAL32}
            1. ASC: ASCII
            2. REAL: 64-비트 부동소수점 이진파일
            3. REAL32: 32-비트 부동소수점 이진파일
        2. 채널 선택, 트레이스 선택
          1. 10 OUTPUT 717;":CALC1:PAR1:SEL"
        3. 채널별 Stimulus data arrays. 계산되는 값이므로, 실제로 매번 읽어들일 필요는 없다.
          1. 10 DIM A(1:201)
          2. 20 OUTPUT 717;":SENS1:FREQ:DATA?"
          3. 30 ENTER 717;A(*)
        4. formatted data array, nx2-1은 측정데이터, nx2는 0(단, smith chart 또는 polar가 아닌 경우)
          1. 10 DIM A(1:201,1:2)
          2. 20 OUTPUT 717;":CALC1:DATA:FDAT?"
          3. 30 ENTER 717;A(*)
        5. :FORM:DATA REAL 이진파일로 데이터 받기
          1. 50 ASSIGN @Agte507x TO 717
          2. 60 ASSIGN @Binary TO 717;FORMAT OFF
          3. 110 OUTPUT @Agte507x;":SENS1:SWE:POIN?"
          4. 120 ENTER @Agte507x;Nop
          5. 130 REDIM Fdata(1:Nop,1:2),Freq(1:Nop)  ! =allocate
          6. 160 DIM Buff$[9]
          7. 170 OUTPUT @Agte507x;":FORM:DATA REAL"
          8. 180 !
          9. 190 OUTPUT @Agte507x;":CALC1:DATA:FDAT?"
          10. 200 ENTER @Agte507x USING "#,8A";Buff$
          11. 210 ENTER @Binary;Fdata(*)
          12. 220 ENTER @Agte507x USING "#,1A";Buff$
          13. 230 OUTPUT @Agte507x;":SENS1:FREQ:DATA?"
          14. 240 ENTER @Agte507x USING "#,8A";Buff$
          15. 250 ENTER @Binary;Freq(*)
          16. 260 ENTER @Agte507x USING "#,1A";Buff$