QUARC Linux QCar 2 Target QUARC Linux Raspberry Pi 3 Target navigation bar

Table of Contents > QUARC > User's Guide > QUARC Targets > Specific Targets

QUARC Linux QDrone 2 Target

The Linux QDrone 2 target currently supports 64-bit Ubuntu Linux running on a QDrone 2 board containing an NVIDIA Jetson Xavier NX™ module. This section provides a general description of the QUARC Linux QDrone 2 Target in addition to limitations and requirements for this target type. Please use the following list to refer to each topic:

Description

The QUARC Linux QDrone 2 Target currently supports the 64-bit Ubuntu Operating System (OS) running on QDrone 2 board with an NVIDIA Jetson Xavier NX module. The QDrone 2 board has 8 GB of on-board memory with 16 GB of onboard flash storage and 32 GB of SD card storage. The processor is a 1.9 GHz, six core, 64-bit NVIDIA Carmel® ARM v8.2 processor with 6M L2 cache and 4M L3 cache. There is also a 384-core NVIDIA Volta GPU with 48 Tensor cores, and dual NVIDIA Deep Learning Accelerator engines. Its full set of specifications is described at (https://developer.nvidia.com/embedded/jetson-xavier-nx). These powerful features make it attractive for artificial-intelligence applications, for example.

The QUARC Linux QDrone 2 Target is a soft real-time system. The Ubuntu Linux operating system is not designed to guarantee that events are always processed within a particular timeframe, as in a hard real-time system. Thus, if an operation misses its deadline, it is considered "less" than correct but not an application or system failure. The system simply tolerates the missed deadline and performs the operation with delay. In real-time applications, this behaviour is undesirable since all operations must meet their deadlines. In particular, real-time control applications expect the sampling rate of the controller to be maintained, and no samples to be missed.

To minimize the delays in processing real-time events, the QUARC Linux QDrone 2 Target assigns the highest possible priority to a model's real-time code. The threads of the real-time code will preempt the threads of all other processes, including operating system processes performing important tasks, such as networking. Hence, a real-time process that executes for more than a brief interval may cause networking to be unresponsive, for example.

Please keep in mind that using QUARC with a QUARC Linux QDrone 2 Target still requires a Windows host. Details on this requirement are given in the Requirements section of this page.

For more information about the data acquisition cards supported by the QUARC Linux x64 Target, please refer to the QUARC Data Acquisition Card Support reference section in the QUARC documentation.

Limitations

There are a number of limitations imposed on the QUARC Linux QDrone 2 Target. The following is a list of these limitations:

Real-Time Performance

Warning

The QUARC Linux QDrone 2 Target is a soft real-time system. For real-time processes with critical time constraints, this target may not be suitable, although it's performance is generally good.

Requirements

As mentioned earlier on this page, running pseudo-real-time code on a Linux QDrone 2 target still requires a remote Windows host to be present. This is required since the pseudo-real-time code to be run on the QUARC Linux QDrone 2 Target first needs to be generated on a Windows system with MATLAB, Simulink and QUARC installed. Please note that even though QUARC must be installed on the Windows host, it is still necessary to have QUARC installed on the Linux QDrone 2 target, since the QUARC Target Manager must be present where the pseudo-real-time code is running.

Please note that if your only intended target is a QUARC Linux QDrone 2 Target, the QUARC Windows target is not required and you can select not to install that component when installing QUARC. However the QUARC Simulink Development Environment component is required to generate code from your Simulink models, as well as the cross-compiler suite for NVDIA targets.

Once the pseudo-real-time code is generated on the Windows host, it is automatically downloaded to the QUARC Linux QDrone 2 Target where it is run. In order to achieve this, the Ubuntu Linux OS on the NVIDIA Jetson Xavier NX module must be properly configured. For the target to work, it must be running the Quanser-supplied kernel image and software, although many components of the system can be upgraded.

Technical Support Package

Warning Due to the high flexibility and customizability of the Ubuntu Linux system together with the specificity of the configuration required to optimally use and run QUARC, only the Quanser products (e.g., QDrone 2) using an NVIDIA Jetson Xavier NX module are currently directly supported by Quanser. If required, please contact the Quanser Sales department for more details regarding running QUARC on a Linux ARM64 target for interfacing with your own application(s). The following is a link to the Quanser Contact Web Site.

 

navigation bar