Table of Contents >
QUARC
>
Release Notes
QUARC 1.1
These release notes describe the new features and changes introduced in QUARC 1.1.
They are divided into the sections enumerated below.
New Blocks
New blocks have been added to the QUARC Targets library in QUARC 1.1. The new blocks are listed below.
- Altia Get Value
-
The Altia Get Value block has been added to the Altia
User Interface blockset. This block associates a name with a particular Altia interface. This name will appear in the
list of interfaces for every other Altia block. It is the interface name that associates the other Altia blocks with
a particular Altia interface. Using a separate block to configure the Altia interface makes it trivial to change the
Altia GUI being used and makes it easier to route signals to and from the Altia GUI.
- Altia Initialize
-
The Altia Initialize block has been added to the Altia
User Interface blockset. This block associates a name with a particular Altia interface. This name will appear in the
list of interfaces for every other Altia block. It is the interface name that associates the other Altia blocks with a
particular Altia interface. Using a separate block to configure the Altia interface makes it trivial to change the
Altia GUI being used and makes it easier to route signals to and from the Altia GUI.
- Altia Plot
-
The Altia Plot block has been added to the Altia User
Interface blockset. This block sends its input signal to a Quanser Altia Plot component for plotting. The signal may
be a vector, in which case the Quanser Altia Plot component must be configured to plot the same number of lines as
the signal dimension.This block never waits for the Altia GUI to receive the new signal value. It always returns
immediately. The
sent
output indicates whether the data has been sent or not.
- Altia Set Value
-
The Altia Set Value block has been added to the Altia
User Interface blockset. This block sets the current value of an Altia GUI component, such as a meter position. This
block never waits for the Altia GUI to receive the new value. It always returns immediately. The
sent
output
indicates whether the data has been sent or not.
- Circular Buffer Clear
- Circular Buffer Initialize
- Circular Buffer Read
- Circular Buffer Write
-
The Circular Buffer Clear,
Circular Buffer Initialize,
Circular Buffer Read,
and Circular Buffer Write
blocks have been added to the Asynchronous Advanced blockset. They provide QUARC with circular buffering
functionality, i.e. respectively, clear, initialize, read and write capabilities. The circular buffer may be used to
communicate between synchronous, or fixed sample rate, threads and asynchronous threads which have no sample rate. Like
FIFO queues, circular buffers are identified by name. However, circular buffers are more general than FIFO queues. There
may be any number of Circular Buffer Read,
Circular Buffer Write or Circular Buffer Clear blocks in
a model, all referring to the same circular buffer. Atomic access by each block to the circular buffer is guaranteed, so
that the buffer may be accessed from multiple threads.
- Date/Time
-
The Date/Time block has been added to the Time Sources blockset.
This block outputs the current date and/or time in the local timezone.
- Game Controller
-
The Game Controller block has been added to the Target
library of the Peripherals Devices blockset. This block reads the state of the game controller on the target and outputs
the game controller coodinates and button information. The Game Controller block acquires
the absolute
(x,y,z)
position coordinates, absolute rotation (Rx, Ry, Rz)
coordinates, two slider
coordinates, the positions of up to four point-of-view hats and the state of up to 32 game controller buttons.
- HIL Watchdog
-
The HIL Watchdog block has been added to the Generic Data
Acquisition blockset. This block implements a watchdog timer. The watchdog timer on the data acquisition card is
programmed with the specified timeout, such as 0.1 seconds. However, every sampling instant, the HIL Watchdog block
reloads the watchdog timer to prevent it from expiring. If the watchdog timer manages to expire, due to lost sampling
instants or the model hanging or crashing, then the watchdog timer automatically sets the outputs of the card to
predefined values. The watchdog feature is important in safety-critical applications where the system must handle
unexpected software failures.
- HIL Watchdog Clear
-
The HIL Watchdog Clear block has been added to the
Generic Data Acquisition blockset. This block clears the watchdog state after the watchdog timer has expired. When
the watchdog timer is allowed to expire, it disables further output to the card so that other HIL blocks in the model
cannot write to the outputs of the card and disrupt the safe values programmed by the watchdog timer. In order to
resume normal operation, the HIL Watchdog Clear block must be invoked to clear this
watchdog state.
- Is Connected?
-
The Is Connected? block has been added to the Status
Sources blockset. This block indicates whether Simulink is currently connected to the model by outputing a Boolean
signal. In normal simulation, this output is always true because the sink blocks, like Scopes, operate as expected
and parameters may be tuned.
- Print
-
The Print block has been added to the Standard I/O User
Interface blockset. This block prints to the QUARC Console or the MATLAB Command Window. In normal simulation, the
Print block prints formatted text to the MATLAB command window, much like
fprintf
prints to a file. In real-time code, it prints to the QUARC Console. The block may be used anywhere in the diagram,
including in an asynchronous thread.
- Scan
-
The Scan block has been added to the Standard I/O User Interface
blockset. This block scans formatted text entered in a QUARC Console, much like
scanf
scans stdin
. This
block is always blocking and therefore should never be used in the main diagram. Instead, it should be used in an
asynchronous thread created using an Asynchronous Thread
block.
- Sleep
-
The Sleep block has been added to the Timing Advanced
blockset. It sleeps for the specified number of seconds. It uses very little CPU time while it sleeps. Only the thread to
which the block belongs actually sleeps. In a multirate model in multitasking mode, QUARC executes each sampling rate in
a separate thread.
- Smooth Sine
-
The Smooth Sine block has been added to the Signals Sources
blockset. It outputs a sine wave whose amplitude and frequency may be tuned online without causing a discontinuity in the
output. The block may optionally be configured to output the corresponding cosine wave as well.
(In later versions of QUARC this block was replaced by the Smooth Signal Generator
block).
- Stream Formatted Read
-
The Stream Formatted Read block has been added to
the Intermediate Communications blockset. This block scans formatted data received over a stream, much like fscanf scans
a file. The operation of this block is affected by the blocking mode of the stream connected to its input.
- Stream Scan
-
The Stream Scan block has been added to the Advanced
Communications blockset. This block scans formatted data received over a stream, much like fscanf scans a file. The
operation of this block is affected by the blocking mode of the stream connected to its input.
New Cards Supported
The full list of all the data acquisition cards supported by the latest version of QUARC is given by the following
link. In QUARC 1.1 the following cards
were added to the supported cards.
- Quanser Q3 ControlPaQ-FW
-
The Quanser Q3 ControlPaQ-FW card is an innovative H.I.L.
control board that combines a data acquisition card with the power of built-in amplifiers, providing a compact
all-in-one solution for a wide range of experiments. A large variety of devices with analog and digital sensors as
well as quadrature encoders are easily connected to the Q3 ControlPaQ-FW. The Q3 ControlPaQ-FW easily connects to any
PC or laptop with an available 6-pin FireWire® (IEEE 1394) input, making the Q3 ControlPaQ-FW a powerful and portable
solution for many experiments.
- National Instruments DAQCard-6024e
-
The National Instruments DAQCard-6024e delivers E Series
performance to laptops and handheld devices that have a PCMCIA slot. Please see National Instruments' website
(www.ni.com) for the data sheet.
- National Instruments PCI-6023e
- National Instruments PCI-6024e
- National Instruments PCI-6032e
- National Instruments PCI-6034e
- National Instruments PCI-6035e
- National Instruments PCI-6036e
- National Instruments PCI-6040e
- National Instruments PCI-6052e
-
The National Instruments PCI-6023e,
National Instruments PCI-6024e,
National Instruments PCI-6032e,
National Instruments PCI-6034e,
National Instruments PCI-6035e,
National Instruments PCI-6036e,
National Instruments PCI-6040e,
and National Instruments PCI-6052e boards are E-Series cards for
PCI slots. Please see National Instruments' website
(www.ni.com) for each card data sheet.
- National Instruments PCI-6220
- National Instruments PCI-6221
- National Instruments PCI-6221 (37-pin)
- National Instruments PCI-6224
- National Instruments PCI-6225
- National Instruments PCI-6229
- National Instruments PCI-6230
- National Instruments PCI-6232
- National Instruments PCI-6233
- National Instruments PCI-6236
- National Instruments PCI-6238
- National Instruments PCI-6239
- National Instruments PCI-6250
- National Instruments PCI-6251
- National Instruments PCI-6254
- National Instruments PCI-6255
- National Instruments PCI-6280
- National Instruments PCI-6281
- National Instruments PCI-6284
- National Instruments PCI-6289
-
The National Instruments PCI-6220,
National Instruments PCI-6221,
National Instruments PCI-6221 (37-pin),
National Instruments PCI-6224,
National Instruments PCI-6225,
National Instruments PCI-6229,
National Instruments PCI-6230,
National Instruments PCI-6232,
National Instruments PCI-6233,
National Instruments PCI-6236,
National Instruments PCI-6238,
National Instruments PCI-6239,
National Instruments PCI-6250,
National Instruments PCI-6251,
National Instruments PCI-6254,
National Instruments PCI-6255,
National Instruments PCI-6280,
National Instruments PCI-6281,
National Instruments PCI-6284,
and National Instruments PCI-6289 boards are M-Series cards for
PCI slots. Please see National Instruments' website (www.ni.com)
for each card data sheet.
- National Instruments PCIe-6251
- National Instruments PCIe-6259
-
The National Instruments PCIe-6251 and
National Instruments PCIe-6259 boards are M-Series cards for PCI
Express slots. Please see National Instruments' website
(www.ni.com) for each card data sheet.
- National Instruments PCI-6722
- National Instruments PCI-6723
-
The National Instruments PCI-6722,
and National Instruments PCI-6723 boards are Analog Output cards
for PCI slots. Please see National Instruments' website
(www.ni.com) for each card data sheet.
- National Instruments USB-6211
- National Instruments USB-6215
- National Instruments USB-6251
-
The National Instruments USB-6211,
National Instruments USB-6215,
and National Instruments USB-6251 boards are M-Series cards for
USB ports. Please see National Instruments' website (www.ni.com)
for each card data sheet.
- Sensoray Model 626
-
The Sensoray Model 626 is an multifunction I/O card for
PCI slots. Please see Sensoray's website (www.sensoray.com)
for the data sheet.
New Devices Supported
QUARC 1.1 may now interface to the device listed below.
- Host Force Feedback Game Controllers
-
The Host Force Feedback Game Controller
block reads the state of a generic force feedback game controller on the host, rather than the target, and outputs the
game controller coodinates and button information. It also configures the maximum number of force feedback effects that
may be used with the game controller. Force feedback effects are implemented using the other force feedback game
controller blocks, such as the Host Game Controller Constant Force block.
- JR3 PCI Force Torque Sensor
-
The JR3 PCI Force Torque Sensor block measures
forces and moments of inertia along the X, Y, and Z axes. This block interfaces with a single DSP, single channel JR3
sensor connected to the PC via a JR3 PCI card. The JR3 sensor operates an onboard DSP at 8kHz, and provides low pass
filtering of the raw force data at several cutoff frequencies.
- Novint Falcon
-
The Falcon block reads the current position and button states of
the Novint Falcon haptic device on the target and outputs the position and button information. There are four buttons on
the Novint Falcon. It also writes the forces given at the input to the block.
- Quanser Haptic 3-DOF Pantograph
-
Interfacing and Kinematics blocks for the Quanser Haptic 3-DOF Pantograph device have
been added to the Pantographs section of the Haptics Quanser Devices library.
- SparkFun Electronics SerAccel
-
The SerAccel block reads the current accelerations along the
x, y and z axes of the SparkFun Electronics SerAccel v5 sensor (or later version). The SerAccel v5 device is a
self-contained triple-axis accelerometer with an RS232 serial interface.
New Features
The new features introduced in QUARC 1.1 are mentioned below.
- Altia Interfacing
-
In order to provide capability for a Graphical User Interface (GUI) able to communicate to a model independently
of MATLAB and Simulink, QUARC provides a flexible interface to Altia
(www.altia.com), which is a very powerful tool for creating
professional-quality standalone GUIs for industrial applications. An Altia-created GUI allows the user to control,
change parameters on-the-fly, and monitor signals in a QUARC real-time model. Moreover, the QUARC Plot library for
Altia significantly augments the basic plotting components supplied with Altia, by providing scopes that can plot
signals versus time. Specialized features such as starting and stopping (i.e., controlling) the real-time model, right
from the graphical user interface itself are also supported.
- MAT-File Uploading
-
When using MAT-file logging, the log file is
generated on the target. Therefore if the target is a remote machine and MAT-file logging is used, then this MAT-file
must be uploaded from the target to the host in order to load the results into MATLAB. This feature, directly available
as a menu item from the QUARC Menu allows the uploading of the
MAT-file saved on the target to the current MATLAB directory on the host machine for analysis.
- Tip of the Day
-
A Tip of the Day dialog has been created so that
tips on how to best use QUARC may be viewed.
Improved Features
Some of the features improved in QUARC 1.1 are enumerated below. There a great many
miscellaneous bug fixes and improvements that have not been listed. Only some of the
highlights are listed below.
- Reorganized QUARC Targets Library
-
The QUARC Targets Library hierarchy under Devices, Sinks and Sources has been significantly restructured. The QUARC
Fieldbus, Vehicles and the Open Source Computer Vision blocks have been moved from the QUARC Targets Library to a
separate QUARC Targets Beta Library. Generally speaking, most blocks in the QUARC Targets Beta Library are at various
development stages and not completely finished yet. They should not be used by the majority of users as their support is
usually limited to specific operating conditions. The QUARC installer will not install the QUARC Targets Beta library by
default, but it can be specifically selected for installation. Therefore, when upgrading from QUARC 1.0 to a newer version
of QUARC, links to certain blocks in the QUARC Targets Library may be broken due to the previously-mentioned reorganization
of the QUARC Targets Library. When such is the case, the menu item in the
QUARC menu should be used to automatically upgrade the diagram (by
repairing all the broken links while preserving the block parameters of the model). For more information on the
menu item, please refer to the
Upgrade blocks menu item description. This is fully described
in the Upgrading QUARC reference page.
- QUARC External Interfaces
-
The QUARC External Interfaces are a variety of external
functions or APIs with which the user can communicate with the real-time code and/or access hardware. They have been
enhanced to also provide support for the .NET programming languages. The QUARC .NET API offers support for the following
functionality: communications, hardware, and error handling.
- Driver and Communication Enhancements
-
The HIL drivers have been enhanced to provide watchdog support in the
Q8-series drivers. A pipe protocol driver for Windows that uses
named pipes was added. Other miscellaneous improvements and bug fixes have been made to drivers and communication protocols
(shared memory, UDP, serial).
- More documentation
-
The documentation has been enhanced to include more information about QUARC features. A great deal of effort has been put
into our documentation. Be sure to familiarize yourself with all it has to offer!
New Demonstrations
The QUARC demonstrations added in QUARC 1.1 are listed below.
- QUARC Digital Loopback Demo
-
The
QUARC Digital Loopback Demo demonstration is now included with the QUARC Targets Using Hardware Demos. The
example is a simple digital loopback test, but it demonstrates a number of important features of QUARC, such as the
ability to access and quickly change hardware, multiple targets, online parameter tuning, data streaming, MAT-file logging,
using Model Explorer, and potentially more.
- QUARC Basic Communications Demo
-
The
QUARC Basic Communications Demo demonstration is now included with the QUARC Targets Communications Demos. The
example consists of two Simulink models: a server and a client. It demonstrates how to use the Basic Communications blockset
from the QUARC Targets Library to establish a connection between the two Simulink models. For a detailed description of these
models and how they operate, please refer to the
Basic Communications section of the QUARC documentation.
- QUARC Intermediate Communications Demo
-
The
QUARC Intermediate Communications Demo
demonstration is now
included with the QUARC Targets Communications Demos. The example consists of two Simulink models: a server and a client. It
demonstrates how to use the Basic Communications blockset from the QUARC Targets Library to establish a connection between
two Simulink models. For a detailed description of these models and how they operate, please refer to the
Intermediate Communications section of the QUARC
documentation.
- QUARC Advanced Communications - Blocking Mode Demo
-
The
QUARC Advanced Communications - Blocking Mode Demo demonstration
is now included in the "QUARC Advanced Communications" section of the QUARC Targets Communications Demos. The advanced
communications blocks provide the full flexibility of the QUARC communications framework but are lower-level blocks that
require a more sophisticated knowledge of communications than the other two types of communications blocks (Basic and
Intermediate). Therefore, it is highly recommended refer to the
Advanced Communications section of the QUARC documentation. The advanced blocks support two modes: blocking and
non-blocking. In blocking mode, the blocks do not return until the operation requested is complete. As such, blocking mode
is typically used in an asynchronous thread running at a lower priority than the main diagram, so that the blocking I/O does
not interfere with the sample time performance of the main diagram. The example consists of two Simulink models: a server and
a client. It demonstrates how to use the Advanced Communications blockset from the QUARC Targets Library to establish a
connection in blocking mode between two Simulink models.
- QUARC Advanced Communications - Non-Blocking Mode Demo
-
The QUARC Advanced Communications - Non-Blocking Mode Demo
demonstration is now included in the "QUARC Advanced Communications" section of the QUARC Targets Communications Demos.
The advanced communications blocks provide the full flexibility of the QUARC communications framework but are lower-level
blocks that require a more sophisticated knowledge of communications than the other two types of communications blocks (Basic
and Intermediate). Therefore, it is highly recommended refer to the
Advanced Communications section of the QUARC
documentation. The advanced blocks support two modes: blocking and non-blocking. In non-blocking mode, the blocks always
return immediately and may therefore be used in the main diagram without compromising sample time performance. However, a
simple state machine is generally required to keep track of when a connection is established and data may be transmitted or
received.
- QUARC Scripting for SRV02 Position Control Simulation Demo
-
The QUARC Scripting for SRV02 Position Control Simulation Demo
demonstration is now included in the "Scripting Simulink" section of the QUARC MATLAB Functions Demos. The
example consists of two files: an M-file and a Simulink model. It demonstrates how to use the QUARC MATLAB functions to
create a MATLAB script that runs and manages a Simulink model. The model is the position control simulation of the Quanser
SRV02 plant. The MATLAB script configures parameters needed for the model and runs the model four times, each time plotting
the response in a MATLAB figure. In each run, a different value for the proportional gain of the controller is chosen.
New Software Compatibility
QUARC 1.1 has introduced compatibility with the following third-party software.
- MATLAB R2008a
-
Compatibility with MATLAB, Simulink, and Real-Time Workshop R2008a has been added.
Copyright ©2024 Quanser Inc. This page was generated 2024-10-17. Submit feedback to Quanser about this page.
Link to this page.