Attocube ANC300 Motion Controller

class pymeasure.instruments.attocube.anc300.ANC300Controller(adapter=None, name='attocube ANC300 Piezo Controller', axisnames='', passwd='', query_delay=0.05, **kwargs)

Bases: Instrument

Attocube ANC300 Piezo stage controller with several axes

Parameters
  • adapter – The VISA resource name of the controller (e.g. “TCPIP::<address>::<port>::SOCKET”) or a created Adapter. The instruments default communication port is 7230.

  • axisnames – a list of axis names which will be used to create properties with these names

  • passwd – password for the attocube standard console

  • query_delay – delay between sending and reading (default 0.05 sec)

  • host

    host address of the instrument (e.g. 169.254.0.1)

    Deprecated since version 0.11.2: The ‘host’ argument is deprecated. Use ‘adapter’ argument instead.

  • kwargs – Any valid key-word argument for VISAAdapter

check_set_errors()

Check for errors after having set a property and log them.

Called if check_set_errors=True is set for that property.

Returns

List of error entries.

property controllerBoardVersion

Get the serial number of the controller board.

ground_all()

Grounds all axis of the controller.

handle_deprecated_host_arg(adapter, kwargs)

This function formats user input to the __init__ function to be compatible with the current definition of the __init__ function. This is used to support outdated (deprecated) code. and separated out to make it easier to remove in the future. To whoever removes this: This function should be removed and the adapter argument in the __init__ method should be made non-optional.

Parameters

kwargs (dict) – keyword arguments passed to the __init__ function, including the deprecated host argument.

Return str

resource string for the VISAAdapter

read()

Read after setting a value.

stop_all()

Stop all movements of the axis.

property version

Get the version number and instrument identification.

wait_for(query_delay=0)

Wait for some time. Used by ‘ask’ to wait before reading.

Parameters

query_delay – Delay between writing and reading in seconds.

class pymeasure.instruments.attocube.anc300.Axis(parent, id)

Bases: Channel

Represents a single open loop axis of the Attocube ANC350

Parameters
  • axis – axis identifier, integer from 1 to 7

  • controller – ANC300Controller instance used for the communication

property capacity

Measure the saved capacity value in nF of the axis.

property frequency

Control the frequency of the stepping motion in Hertz from 1 to 10000 Hz.

insert_id(command)

Insert the channel id in a command replacing placeholder.

Add axis id to a command string at the correct position after the initial command, but before a potential value.

measure_capacity()

Obtains a new measurement of the capacity. The mode of the axis returns to ‘gnd’ after the measurement.

Returns capacity

the freshly measured capacity in nF.

property mode

Control axis mode. This can be ‘gnd’, ‘inp’, ‘cap’, ‘stp’, ‘off’, ‘stp+’, ‘stp-’. Available modes depend on the actual axis model.

move(steps, gnd=True)

Move ‘steps’ steps in the direction given by the sign of the argument. This method will change the mode of the axis automatically and ground the axis on the end if ‘gnd’ is True. The method is blocking and returns only when the movement is finished.

Parameters
  • steps – finite integer value of steps to be performed. A positive sign corresponds to upwards steps, a negative sign to downwards steps.

  • gnd – bool, flag to decide if the axis should be grounded after completion of the movement

move_raw(steps)

Move ‘steps’ steps in the direction given by the sign of the argument. This method assumes the mode of the axis is set to ‘stp’ and it is non-blocking, i.e. it will return immediately after sending the command.

Parameters

steps – integer value of steps to be performed. A positive sign corresponds to upwards steps, a negative sign to downwards steps. The values of +/-inf trigger a continuous movement. The axis can be halted by the stop method.

property offset_voltage

Control offset voltage in Volts from 0 to 150 V.

property output_voltage

Measure the output voltage in volts.

property pattern_down

Control step down pattern of the piezo drive. 256 values ranging from 0 to 255 representing the sequence of output voltages within one step of the piezo drive. This property can be set, the set value needs to be an array with 256 integer values.

property pattern_up

Control step up pattern of the piezo drive. 256 values ranging from 0 to 255 representing the sequence of output voltages within one step of the piezo drive. This property can be set, the set value needs to be an array with 256 integer values.

property serial_nr

Get the serial number of the axis.

property stepd

Set the steps downwards for N steps. Mode must be ‘stp’ and N must be positive. 0 causes a continous movement until stop is called.

Deprecated since version 0.13.0: Use meth:move_raw instead.

property stepu

Set the steps upwards for N steps. Mode must be ‘stp’ and N must be positive. 0 causes a continous movement until stop is called.

Deprecated since version 0.13.0: Use meth:move_raw instead.

stop()

Stop any motion of the axis

property voltage

Control the amplitude of the stepping voltage in volts from 0 to 150 V.