Welcome to the Industrial Automation website!

NameDescriptionContent
HONG  KANG
E-mail  
Password  
  
Forgot password?
  Register
当前位置:

Tektronix AFG1022 Function Generator

来源: | 作者:FAN | 发布时间 :2025-11-21 | 571 次浏览: | 🔊 Click to read aloud ❚❚ | Share:

Example program: In addition to Python, it also provides control examples for C # and LabVIEW, covering scenarios such as waveform generation, modulation, and triggering;

VISA library compatibility: It explicitly supports TekVISA 4.0+and NI-VISA 5.0+, and it is not recommended to use older versions;

Firmware version description: Command differences between different firmware versions (such as some advanced commands requiring firmware ≥ 1.5.0).


Key issue

Question 1: How to ensure that the waveforms of two channels are "phase synchronized" when AFG1022 controls the output of two channels through SCPI commands? If there is still a phase deviation after synchronization, what commands can be used to adjust it?

answer:

1. Steps to ensure phase synchronization:

Enable channel synchronization function: Send command: SOURce: SYNC: STATe ON. At this time, the trigger signal of channel 2 will follow channel 1 to ensure that the output starting phase is consistent;

Unified trigger source: Set both channels' trigger sources to internal (TRIGger: SURCE INTernal) or the same external trigger (TRIGger: SURCE EXTernal) to avoid differences in trigger timing;

Same sampling clock: The two channels of AFG1022 share the same sampling clock without additional configuration, only ensuring that the channel synchronization function is enabled.

2. Phase deviation adjustment method:

If there is still a phase deviation after synchronization (such as channel 2 lagging behind channel 1 by 10 °), the phase of channel 2 can be fine tuned using the phase offset command:

Command format: SOURce2: PHAse: AJust<degrees>(phase adjustment range: -180 °~+180 °);

Example: SOURce2: PHAse: AJust 10 (leading channel 2 phase by 10 ° to offset the original lag);

Verification: Simultaneously collect the outputs of two channels through an oscilloscope, or check the phase setting (SOURce2: PHAse: ADJust?) to confirm the adjustment results.


Question 2: When using Python+pyvisa to control AFG1022 to generate a "10MHz square wave (duty cycle 30%, amplitude 8Vpp, DC offset 1V)", if the instrument does not output after executing the command, what are the possible reasons? Please list and provide troubleshooting steps according to priority.

answer:

1. Possible reasons and troubleshooting steps sorted by priority:

Steps for troubleshooting possible reasons for priority

1. Output not enabled. 1. Send query command: OUTPut: State? Confirm whether the return value is "ON";

If it is "OFF", send: OUTPut: STATe ON to enable output.

2 parameters exceed hardware limitations. 1. Check square wave frequency: 10MHz within the AFG1022 square wave frequency range (0.1Hz~120MHz), no problem;

2. Check the duty cycle: 30% is within the duty cycle range (10%~90%) corresponding to the 10MHz frequency, and there are no issues;

3. Check the amplitude and DC offset:

-Amplitude 8Vpp (maximum 20Vpp under 50 Ω load, compliant);

-DC offset 1V (± 10V under 50 Ω load, compliant);

-Key verification: amplitude+2 × DC offset ≤ 20V (8Vpp+2 × 1V=10V ≤ 20V, no overload).

3 command syntax errors 1. Check if the square wave configuration command is complete:

Correct command sequence:

-Choose square wave: SOURce: WAVEform SQUare;

-Set frequency: SOURce: FREQuency 10e6;

-Set duty cycle: SOURce: PULSe: DCYCle 30;

-Set amplitude: SOURce: VOLTage: AMPity 8;

-Set DC offset: SOURce: VOLTage: OFFset 1;

2. Enable command echo (SYSTem: ECHO ON), confirm that the sent command is consistent with the above and has no spelling errors (e.g. SOURce: PULSe: DCYCle mistakenly written as SOURce: SQARE: DCYCle).

4. Communication connection abnormality 1. Check VISA resource name: Confirm the resource name of AFG1022 through rm.list_desources() (e.g. USB interface is USB0:: 0x0699:: 0x0368:: C012345:: 0:: INSTR), ensure that the resource name connected in the code is correct;

2. Check the USB cable: Replace the USB 2.0 cable to avoid communication interruption caused by poor cable contact;

3. Restart the instrument: Power off and restart AFG1022 to establish a VISA connection again.

5 Instrument hardware failure 1. Execute self-test command: SYSTem: SELFtest? If "PASSED" is returned, it indicates that the hardware is normal. Otherwise, contact after-sales service;

2. Manual operation verification: Manually configure the same parameters through the instrument front panel, observe whether there is output, and rule out hardware problems other than programming control.


Question 3: In the "Modulation Function" of AFG1022, the "Modulation Depth" parameter range for AM modulation (amplitude modulation) is 0%~100%. Please explain the physical meaning of "Modulation Depth 50%" and use the SCPI command to implement "Channel 1 outputs a 100kHz sine wave carrier and uses a 1kHz sine wave for AM modulation (depth 50%, modulation source is internal)". At the same time, write a command sequence to query whether the modulation parameters have been successfully configured.

answer:

1. The physical meaning of "modulation depth 50%":

AM modulation (amplitude modulation) is the process of controlling the amplitude of a carrier signal through a modulation signal, causing the amplitude of the carrier signal to vary with the modulation signal. Modulation depth of 50% represents:

  • YASKAWA SGMPH-04AAA61D-OY 200V 400W Servo Motor
  • YASKAWA SGMPH-08A1A41 750W Servo Motor with Gearbox
  • OMRON C60K-CDR-D K-Type CPU PLC
  • OMRON CS1W-AD081-V1 Analog Input Module
  • OMRON CP1H-X40DT-D Compact PLC
  • OMRON 3G3SV-BB007-E 0.75kW Inverter
  • YASKAWA SGDH-10DE-OY 1kW Servo Pack
  • OMRON C60H-C5DR-DE-V1 SYSMAC CPU PLC
  • OMRON C60H-C5DR-DE-V1 SYSMAC CPU PLC
  • OMRON 3G3MV-P10CDT3-E RS422/485 Inverter PLC Board
  • OMRON C200PC-ISA02-DRM-E SYSMAC Board PLC with Floppy & Operator Panel
  • OMRON 3G3SV-BB007-E 0.75kW Inverter
  • OMRON CP1H-X40DT-D Compact PLC
  • OMRON CS1W-AD081-V1 Analog Input Module
  • OMRON C60K-CDR-C K-Type CPU PLC
  • YASKAWA SGMPH-08A1A41 750W Servo Motor with Gearbox
  • YASKAWA SGMPH-04AAA61D-OY 200V 400W Servo Motor
  • OMRON CJ1W-DA041 Analog Output Module
  • OMRON C60H-C5DR-DE-V1 SYSMAC CPU PLC
  • OMRON 3G3MV-P10CDT3-E RS422/485 Inverter PLC Board
  • OMRON C200PC-ISA02-DRM-E SYSMAC Board PLC
  • Omron CQM1H-MAB42 Analog I/O Board
  • Omron C200PC-ISA02-DRM-E SYSMAC Board
  • Oriental Motor ARD-C CM10-1 Stepping Driver
  • EVA 915.85.003 Embedded CPU Module
  • Omron C60H-C1DR-DE-V1 PLC CPU
  • TE.CO TFX 4G10 Industrial Power Cable
  • Siemens 6SL3120-2TE15-0AA4 Motor Module
  • Emerson SolaHD SDN10-24-100P Power Supply
  • PARKER HPD2S5N/K005 Servo Drive
  • Danfoss VLT 3008 Variable Speed Drive
  • Saia Burgess Controls PCD4.H31 PLC CPU
  • OMRON C200HW-PRT21 Profibus DP Slave Unit
  • OMRON TJ1-ML04 Trajexia Motion Controller
  • Schneider Electric Pre-Wired PLC Control Box
  • Allen Bradley 1336-L8E AC Drive
  • Siemens 6ES7123-1GB60-0AB0 PLC Module
  • Automation Direct D3-08B-1 PLC Chassis 8 Slot
  • OMRON 3G3XV-A2007 VFD 0.75kW 220V
  • STOBER F102SG0230MO20 Gear Drive Technology
  • Saia PCD4.H32 PCD4 Series PLC
  • Omron NSJ12-TS01B-G5D NSJ Terminal
  • Biticino MA250 T7314A Megatiker Circuit Breaker
  • Omron ZX-LDA41 ZX-LD300L Laser Sensor
  • Siemens 6ES7511-1AK02-0AB0 CPU 1511-1 PN
  • Saia Burgess Controls SBC PCD PLC Module
  • Siemens 6ES5 244-3AA21 S5 Temperature Module
  • Omron NSJ5-SQ01-DRM NSJ Controller
  • Omron NT15S-SF121B-E Programmable Terminal
  • Yaskawa CIMR-F7Z4045 45kW VFD AC Drive
  • AB 1494U-D100 Smart Motor Controller
  • Omron NA5-7W001B-V1 Touch Screen HMI
  • Fanuc A16B-1000-0400/01A CNC Control Board
  • Omron CV2000-CPU01-EV1 PLC CPU Unit
  • Eaton XV-102-B4-35TQRF-10-PLC Touch Panel
  • Siemens 6FX1121-3BB01 SINUMERIK Board
  • SCE M68-2000 2 Axis CNC Servo Controller
  • Omron R88M-K20030T-BS2 AC Servo Motor
  • Omron G3NH-4150B Solid State Relay
  • BITICINO MA250 T7313A Megatiker PLC Disconnector
  • IFM 2MSTR AS-i PROFIBUS DP Gateway
  • Danfoss VLT 3022 175H1238 Variable Speed Drive
  • PASABAN MTC-3052 FAST I/O Module
  • Allen Bradley 1746-A7 SLC 500 Chassis
  • Mitsubishi NF1600-SEW MCCB
  • Schneider LTMR100EBD Motor Management Controller
  • Yokogawa AIP121-S3 Analog Input Module
  • Siemens 6ES7135-4LB02-0AB0 ET200S AO Module
  • Motor Power SKA DDR 148-240 Torque Motor
  • OMRON CS1H-CPU63-EV1 PLC CPU Unit
  • ABB UFC921A101 Main Control Board
  • ABB UFC921A Main Control Unit
  • ABB UFC911B108 Drive Main Control Unit
  • ABB UFC911B106 Drive Main Control Unit
  • ABB UFC911B101 Drive Main Control Unit
  • ABB UFC765AE102 Drive Control Interface Board
  • ABB UFC762AE101 I/O and Communication Extension Board
  • ABB UFC760BE41 I/O and Communication Extension Board
  • ABB UFC760BE145 I/O and Communication Extension Module
  • ABB UFC721BE101 Fieldbus Communication Adapter Module
  • ABB UFC721AE101 3BHB002916R0101 Network Interface
  • ABB UFC718AE101 HIEE300936R0101 Communication Module
  • ABB UDC920BE01 3BHE034863R0001 Communication Module
  • GE IS420UCSCH1A-F-VO.1-A Controller Module
  • GE UCSC H1 IS420UCSCH1A Controller Station Card
  • ABB UCD240A101 3BHE022287R0101 Process Controller
  • ABB UCD224A103 Process I/O Module
  • ABB UCD224A102 Analog Input Module
  • WOODWARD 9907-838 Load Sharing Module
  • B&R X20CP1485-1 Industrial PC CPU Module
  • ELAU MC-4/11/22/400 4-Axis Servo Drive
  • ELAU C600/10/1/1/1/00 Configurable Safety Relay
  • BENTLY 60R/SIM01 Proximitor Power Supply
  • BENTLY 60R/PPM01 Protection Processing Module
  • BENTLY 60R/PNL01 Operator Control Panel
  • BENTLY 60R/PIM01 Panel Interface Module
  • BENTLY 60R/INP07 Isolated DC Input Module
  • BENTLY 60R/INP01 4-Channel Analog Input Module
  • BENTLY 60R/CMM01 Communication Multiplexer Module
  • BENTLY 60R/CHA02 System Chassis Rack Enclosure
  • BENTLY 60R/CGW01 Condition Monitoring Gateway
  • Pacific Scientific P70360-SDN Servo Motor
  • HONEYWELL 05701-A-0284 Signal Conditioner
  • YOKOGAWA NFCP501-W05 Pressure Transmitter
  • ABB CI541V1 3BSE0146666R1 Control Interface
  • ABB DSTC176 57310001-KT Terminal Base Unit
  • ABB DSDP170K02 3BSE019925R1 Analog Input Module
  • ABB DSBC173 57310001-KH Terminal Base Unit
  • ABB DSAI130K01 5730-030-UC Thermocouple Input
  • ABB DSRF182 57310255-AL Relay Output Module
  • ABB SC520 3BSE003816R1 Compact PLC
  • ABB DSDP140A 57160001-ACT Analog Input Module
  • ABB DSAI130 57120001-P Analog Input Module
  • ABB SCYC55830 3AFE58063282 MCCB
  • Fireye 95DSS3-1CEX UV Flame Scanner
  • ABB DSDP170 57160001-ADF Analog Input Module
  • ABB CI532 3BSC140120R1 Communication Interface
  • ABB DSAO120A 3BSE018293R1 Analog Output Module
  • ABB CI869K01 3BSE049110R1 Ethernet Interface
  • ABB CI522A 3BSE018460R1 PROFIBUS DP Master
  • GUTOR OP6257 Rectifier Control Unit
  • Meggitt C327845-11 Gas Shutoff Valve
  • ABB SACO64D4 4-Pole Digital Annunciator Unit
  • ABB CI522AK04 3BSE018451R1 PROFIBUS DP Module
  • ABB DSAI130DK01 3BSE020828R1 Temperature Input Module
  • ABB CI546 3BSE012610R1 PROFIBUS DP Master Module
  • ABB SC510 3BSE003832R1 Compact PLC Controller
  • ABB CI540 3BSE001077R1 PROFIBUS DP Slave Module