quanser.hardware.hil.read_buffer quanser.hardware.hil.write_pwm_buffer navigation bar

Table of Contents

quanser.hardware.hil.write_analog_buffer

Writes the specified samples to the analog channels at the indicated sampling rate.

Syntax

[samples_written, err] = board.write_analog_buffer(clock, frequency, channels, voltages)
    

Description

Writes the specified samples to the analog channels at the indicated sampling rate. The number of samples is determined by the number of columns in the voltages matrix.

If no err output is provided then it throws an exception if an error occurs. In generated code it prints the error message. Use hil_get_error_message to get the message associated with an error code.

Parameters

board

The board instance returned by the quanser.hardware.hil.open function.

clock

The clock to use as a timebase for the buffered operation. Hardware clocks are numbered incrementally starting at 0, with 0 meaning HARDWARE_CLOCK_0, 1 meaning HARDWARE_CLOCK_1, etc. The number of clocks available depends on the board selected. Refer to Clocks for more information.

Select a board type from the list for board-specific details: .

frequency

The sampling frequency in Hertz at which samples will be collected.

channels

A vector of channel numbers. Channel numbers are zero-based.

Select a board type from the list for board-specific details: .

voltages

A matrix of analog voltages. There must be one row for each channel and one column for each sample.

Outputs

samples_written

The number of samples written. This value will equal the number of samples specified unless the operation was canceled.

err

A negative error code or zero on success.

Examples

% Uniformly distributed random voltages between -5V and +5V.
volts = 5*(rand(2, 5000)-0.5)*2;

% Writes 5000 samples to analog channels 0 and 3 at 1 kHz using SYSTEM_CLOCK_1
board.write_analog_buffer(-1, 1000, [0 3], volts);
    

See Also

 

navigation bar