1. 简介
QLabs Virtual QCar 是基于 Quanser QLabs 的 QCar 虚拟车辆仿真环境,它可以模拟 QCar 的运动、传感器数据来测试控制器,为 QCar 的开发、测试提供了一个虚拟的仿真环境。
根据 IEEE Spectrum 的调查,Python 正成为工程师最喜欢的编程语言,而且在未来几年中,Python 的使用率将会继续增长。因此,我们对 QCar 配套的教学实验 Demo 中 Python 部分进行了加强。目前 QLabs Virtual QCar 的环境配置也使用 Python,以便于工程师/学生能够方便快捷的使用 QLabs Virtual QCar。
QLabs 采用订阅制,首先需要购买对应设备的订阅,如 QLabs Virtual QCar 的订阅,然后使用订阅的邮箱注册 Quanser Academic Portal 账号,需要保证注册的账号与订阅时提供的账号保持一致。
2. 安装与配置
2.1. 安装 QUARC/QLabs
QLabs Virtual QCar 是基于 QLabs 的,所以需要先安装 QLabs。如果您电脑中已经装有 QUARC(2020版本及以上),则电脑中会装有对应版本的 QLabs,但可能需要更新到最新版本才能使用 QLabs Virtual QCar (QLabs 版本需要 2.15 及以上才可使用 Virtual QCar)。
2.1.1. 下载 QLabs
QLabs 独立安装包的下载地址为:QLabs Downloads Center,QLabs 独立安装包与 QUARC 无法同时安装在同一台电脑中。
如果您电脑中装有 QUARC,需要确认 QUARC 版本号是否在 2022sp1(4.2.4107)及以上,如果不是,需要更新到最新版本。
2.1.2. 安装 QLabs
QLabs 与 QUARC 一样,需要搭配对应版本的 MATLAB/Simulink 进行安装,可以在 QLabs Release Notes 中查看对应支持的 MATLAB/Simulink 版本。
安装 QUARC 可以参考 QUARC Installation Guide。
为了使用 Quanser Python API,在安装 QUARC 时需要勾选 Python Package 选项,如下图所示:
QUARC Python Package
2.2. 配置 Quanser Python 基础环境
安装好 QUARC/QLabs 后,需要配置 Quanser Python 基础环境,以便于使用 QLabs Virtual QCar。
2.2.1. 安装 Python
QLabs Virtual QCar 所使用的 Python 版本最低为 3.8。需要安装对应的 Python 环境。由于 Python 的开放性,可以使用任意 Python 发行版,如 Anaconda、Miniconda、Python 官方发行版等。但为了保证 Python 环境的稳定性,建议使用 Anaconda 或 Miniconda 进行安装。为了不占用过多硬盘,本文以 miniconda 为例。
首先,下载 miniconda 安装包,下载地址为:Miniconda。
下载完成后,双击安装包,按照提示进行安装,安装过程中需要勾选 Add Miniconda to my PATH environment variable 选项。
关于 miniconda 的具体操作,可以参考官方文档:Miniconda Documentation
安装完成后,打开命令行,输入 conda --version,如果能够正常显示版本号,则说明安装成功。
由于国内网络环境的原因,conda 默认官方源的速度并不理想,所以需要更换为国内速度较快的镜像源。推荐使用 清华大学镜像源。
然后,创建一个名为 qlabs 的 conda 环境,输入命令:
conda create -n qlabs python=3.8
如果安装完 miniconda 后提示找不到 conda 指令,可能是因为命令行环境没有配置好,需要输入conda -init,然后重新打开命令行。
创建完成后激活该环境,输入命令:
conda activate qlabs
python --version
如果能够正常显示版本号,则说明安装成功。
2.2.2. 配置 Quanser Python API
在配置 QLabs 环境前需要先安装基础的 Quanser Python API。
在安装好 QLabs / QUARC 后,在安装文件夹下会有一个 python 文件夹,里面包含了 Quanser Python API 的库文件,按照官方文档,在命令行中输入以下命令:
conda activate qlabs
python -m pip install --upgrade pip
python -m pip install --upgrade --find-links "%QUARC_DIR%\python" "%QUARC_DIR%\python\quanser_api-2022.12.11-py2.py3-none-any.whl"
其中,%QUARC_DIR% 为 QLabs / QUARC 安装文件夹的路径(软件安装时会自动生成环境变量),如 D:\Quanser\QUARC。quanser_api-2022.12.11-py2.py3-none-any.whl 为 Quanser Python API 的库文件,根据软件版本的不同,中间的日期可能会有所不同,需要根据具体情况修改。
安装完成后可以输入pip list查看已安装的库,如果能够看到quanser-开头的 6 个库,则说明安装成功。
2.2.3. 配置 QLabs Python 环境
配置好 Quanser Python API 后还需要进一步配置 Python 环境使其能够正常使用 QLabs Virtual QCar。
同样由于国内网络环境的原因,Python 环境中默认的 pip 源并不理想,所以需要更换为国内速度较快的镜像源。推荐使用 清华大学镜像源。
Quanser 官方开源了 QLabs Python 环境的一键配置脚本 QLabs Resources,可以在 GitHub 上直接下载,或者使用 Git 命令行工具进行 clone 后进行安装:
git clone https://github.com/quanser/Quanser_Interactive_Labs_Resources.git
cd Quanser_Interactive_Labs_Resources
conda activate qlabs
python install.py
安装完成后会提示 Install Successful! 即表示环境可以使用了。
3. 使用 QLabs Virtual QCar
在 Quanser_Interactive_Labs_Resources 文件夹下分别有 docs 和 tutorial 两个文件夹,其中 docs 文件夹下包含了 QLabs Virtual QCar 的使用文档,tutorial 文件夹下包含了 QLabs Virtual QCar 环境中配置的示例程序。
示例程序所使用的均为 QLabs Virtual QCar 环境中的 QCar Cityscape 场景,如图所示:
QLabs Virtual QCar Selection
Virtual QCar Cityscape Selection
tutorial 文件夹下包含了 6 个示例程序,分别是:
- basic_shapes_tutorial.py:绘制基本图形并控制其颜色、大小、位置等属性。
- camera_tutorial.py:自定义摄像头位置和拍摄角度获取图像并进行处理。
- person_tutorial.py:在场景中添加人物并控制其行走、跳跃、交互等动作。
- road_signage_tutorial.py:在场景中添加路标并控制其颜色、大小、位置等属性。
- weather.py:控制场景中的天气状况。
- widgets_tutorial.py:在场景中添加控件并控制其颜色、大小、位置等属性。
需要注意的是,上述这些程序需要保证 QLabs 已经进入 QCar Cityscape 场景后再运行,即 QLabs 需要在如下的界面:
Virtual QCar Cityscape
可以根据需要选择相应的示例程序进行学习。示例程序中均已包含了详细的注释,可以根据需要进行修改。