added examples

This commit is contained in:
2024-01-19 11:24:04 +01:00
parent 6bd8e71985
commit b74d540032
65 changed files with 7053 additions and 16 deletions

28
examples/dc_signal.py Normal file
View File

@@ -0,0 +1,28 @@
from fn_gen import DG2052
from fn_gen.enums import OutputChannel
import fn_gen.errors as fg_err
import logging
import time
if __name__ == "__main__":
try:
# logging.basicConfig(filename="dg2052.log", encoding="utf-8", level=logging.DEBUG)
fn_gen = DG2052("TCPIP::192.168.1.11::INSTR")
channel = OutputChannel.TWO
print(fn_gen.whoami())
print( f"\nOutput{channel.value} Impedance: {fn_gen.get_output_impedance(channel)} Ohm" )
print( f"Output{channel.value} Load: {fn_gen.get_output_load(channel)} Ohm" )
print( f"Output{channel.value} Voltage Limits: {fn_gen.get_output_volt_limits(channel)} V" )
fn_gen.set_dc(channel, 10)
print( f"Output{channel.value}: {fn_gen.get_output_signal(channel)} | {fn_gen.get_output_state(channel)}" )
fn_gen.set_output(channel, True)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
time.sleep(5)
fn_gen.set_output(channel, False)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
except fg_err.UndefinedCommunicationMethodError as err:
print(err)
except fg_err.ValueOutOfBoundsError as err:
print(err)
except fg_err.UndefinedValueError as err:
print(err)

29
examples/ramp_signal.py Normal file
View File

@@ -0,0 +1,29 @@
from fn_gen import DG2052
from fn_gen.enums import OutputChannel
import fn_gen.errors as fg_err
import logging
import time
if __name__ == "__main__":
try:
# logging.basicConfig(filename="dg2052.log", encoding="utf-8", level=logging.DEBUG)
fn_gen = DG2052("TCPIP::192.168.1.11::INSTR")
channel = OutputChannel.TWO
print(fn_gen.whoami())
print( f"\nOutput{channel.value} Impedance: {fn_gen.get_output_impedance(channel)} Ohm" )
print( f"Output{channel.value} Load: {fn_gen.get_output_load(channel)} Ohm" )
print( f"Output{channel.value} Voltage Limits: {fn_gen.get_output_volt_limits(channel)} V" )
fn_gen.set_ramp(channel, 500, 2.5, 0, 0)
print( f"Output{channel.value}: {fn_gen.get_output_signal(channel)} | {fn_gen.get_output_state(channel)}" )
fn_gen.set_output(channel, True)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
time.sleep(5)
fn_gen.set_output(channel, False)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
except fg_err.UndefinedCommunicationMethodError as err:
print(err)
except fg_err.ValueOutOfBoundsError as err:
print(err)
except fg_err.UndefinedValueError as err:
print(err)

28
examples/sine_signal.py Normal file
View File

@@ -0,0 +1,28 @@
from fn_gen import DG2052
from fn_gen.enums import OutputChannel
import fn_gen.errors as fg_err
import logging
import time
if __name__ == "__main__":
try:
# logging.basicConfig(filename="dg2052.log", encoding="utf-8", level=logging.DEBUG)
fn_gen = DG2052("TCPIP::192.168.1.11::INSTR")
channel = OutputChannel.TWO
print(fn_gen.whoami())
print( f"\nOutput{channel.value} Impedance: {fn_gen.get_output_impedance(channel)} Ohm" )
print( f"Output{channel.value} Load: {fn_gen.get_output_load(channel)} Ohm" )
print( f"Output{channel.value} Voltage Limits: {fn_gen.get_output_volt_limits(channel)} V" )
fn_gen.set_sine_wave(channel, 500, 2.5, 0, 0)
print( f"Output{channel.value}: {fn_gen.get_output_signal(channel)} | {fn_gen.get_output_state(channel)}" )
fn_gen.set_output(channel, True)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
time.sleep(5)
fn_gen.set_output(channel, False)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
except fg_err.UndefinedCommunicationMethodError as err:
print(err)
except fg_err.ValueOutOfBoundsError as err:
print(err)
except fg_err.UndefinedValueError as err:
print(err)

28
examples/square_signal.py Normal file
View File

@@ -0,0 +1,28 @@
from fn_gen import DG2052
from fn_gen.enums import OutputChannel
import fn_gen.errors as fg_err
import logging
import time
if __name__ == "__main__":
try:
# logging.basicConfig(filename="dg2052.log", encoding="utf-8", level=logging.DEBUG)
fn_gen = DG2052("TCPIP::192.168.1.11::INSTR")
channel = OutputChannel.TWO
print(fn_gen.whoami())
print( f"\nOutput{channel.value} Impedance: {fn_gen.get_output_impedance(channel)} Ohm" )
print( f"Output{channel.value} Load: {fn_gen.get_output_load(channel)} Ohm" )
print( f"Output{channel.value} Voltage Limits: {fn_gen.get_output_volt_limits(channel)} V" )
fn_gen.set_square_wave(channel, 500, 2.5, 0, 0)
print( f"Output{channel.value}: {fn_gen.get_output_signal(channel)} | {fn_gen.get_output_state(channel)}" )
fn_gen.set_output(channel, True)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
time.sleep(5)
fn_gen.set_output(channel, False)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
except fg_err.UndefinedCommunicationMethodError as err:
print(err)
except fg_err.ValueOutOfBoundsError as err:
print(err)
except fg_err.UndefinedValueError as err:
print(err)

28
examples/sweep.py Normal file
View File

@@ -0,0 +1,28 @@
from fn_gen import DG2052
from fn_gen.enums import OutputChannel, SweepSpacing
import fn_gen.errors as fg_err
import logging
import time
if __name__ == "__main__":
try:
# logging.basicConfig(filename="dg2052.log", encoding="utf-8", level=logging.DEBUG)
fn_gen = DG2052("TCPIP::192.168.1.11::INSTR")
channel = OutputChannel.TWO
print(fn_gen.whoami())
print( f"\nOutput{channel.value} Impedance: {fn_gen.get_output_impedance(channel)} Ohm" )
print( f"Output{channel.value} Load: {fn_gen.get_output_load(channel)} Ohm" )
print( f"Output{channel.value} Voltage Limits: {fn_gen.get_output_volt_limits(channel)} V" )
fn_gen.set_sweep(channel, htime_start=1, htime_stop=1, time=10, spacing=SweepSpacing.LOG)
print( f"Output{channel.value}: {fn_gen.get_output_signal(channel)} | {fn_gen.get_output_state(channel)}" )
fn_gen.set_output(channel, True)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
time.sleep(20)
fn_gen.set_output(channel, False)
print( f"Output{channel.value} State: {fn_gen.get_output_state(channel)}" )
except fg_err.UndefinedCommunicationMethodError as err:
print(err)
except fg_err.ValueOutOfBoundsError as err:
print(err)
except fg_err.UndefinedValueError as err:
print(err)

15
examples/whoami.py Normal file
View File

@@ -0,0 +1,15 @@
import pyvisa
import sys
from fn_gen import DG2052
if __name__ == "__main__":
rm = pyvisa.ResourceManager()
resources = rm.list_resources() # list available resources
if len(resources) == 0:
print("No Resources Found!")
sys.exit(1)
else:
print(f"Available Resources: {resources}")
port = resources[0] # Select the first resource
inst = DG2052(port)
print(inst.whoami())