QUARC软件是Quanser公司为Matlab/Simulink设计的快速控制原型软件,主要支持Simulink程序对硬件设备的控制,同时提供了丰富的辅助功能,是整个控制系统的核心。
我们在对用户进行软件使用的培训的时候,会介绍QUARC的基础功能,比如嵌入与Simulink中、实时控制、板卡读取、数据保存等等。我们介绍这些功能,主要是为了让用户能够快速上手QUARC软件及配套硬件的使用。实际上QUARC软件中有很多功能还是要在使用过程中逐步发掘,如果掌握了这些功能的使用,不仅能够基于现有的设备实现更加丰富的算法设计,更可以构建自己的硬件平台,拓展研究的深度与广度。
那么在本篇文章中,我将会向大家介绍QUARC中,最基础的一个模块——HIL Initialize的使用技巧。
HIL Initialize是确定所编写的Simulink程序对应的是哪个数据采集卡的模块,如图所示,双击打开该模块,在Board type处,就可以选择对应的数据采集卡。一般而言我们对于这个模块的设置也就到此为止了,但这个模块中可配置的点远不止于此。
我们以Q8-USB为例,Q8-USB是Quanser公司研发数据采集卡,包含模拟量输入输出、数字量输入输出、编码器值输入各八个。我们将Board type设置为q9_usb后,首先我们看一下Main一栏中我们可以看到Board name和Board identifier,这两个选项是用来区分两个不同板卡的。将两个HIL Initialize模块中的Board name设置为不同名称,并将Board identifier分别设置为0和1,这样,两个HIL Initialize就对应了实际接在主机上的两块Q8-USB,这也就意味着在之后的Read/write模块中选好对应的Board name,我们就可以在一个Simulink程序中控制连在两个数据采集卡上的设备,并实现它们二者直接的数据交互,进行设备间的协同控制。不光是Q8-USB,包括Qube Servo2、Aero都可以通过设置Board name和Board identifier,实现单个simulink控制多台设备,实现设备协同。
同样在Main一栏中,还有一个Board-specific options,在这个选项中,我们可以更改整个板卡的内部设置。点击Board-specific options一栏右侧的省略号按键,即可进入如下图所示的界面。
其中Global options是对板卡工作方式的一些设置,包括外部中断的激活,采样模式等等,通过更改这些属性,可以让板卡兼容外部中断和外部采样,一般而言仅仅会在有一套成熟的外部设备时才可能需要修改这些参数,平时这里都是不用修改的。
之后还有Analog channel options,这里可以修改模拟量的类型,可以将原本的电压模式改为电流模式或者控制指令模式,并且可以更改其通道的前馈参数和比例系数,用以适配不同类型模拟量信号的需求。
在右侧还有编码器和PWM通道的选项,可以选择是否启用编码器滤波、使能PWM通道等等。还有一个最重要的就是Update rate options,在这里可以修改设备支持的采样率,不同于Aero那样的集成设备,为了支持用户自定义硬件,考虑到了一些设备对高采样率的需求,Q8-USB提供了高速模式,可以让最高采样率达到8KHz,这样就让板卡可以支持更多的设备,如高速电机等。
在Main中就已经有如此丰富的设置了,在下面的各个输入输出选项中依然有着各种细节配置,比如在Encoder Inputs中,我们可以修改编码器的精度,即设置编码器为四倍频输入或者不进行加倍。还有Digital Input/Output选项,在Q8-USB中,由于数字量的输入和输出在硬件张被分成了两类接口,所以只需要选择想要激活的通道即可,而在一些复杂设备中,比如无人驾驶实验平台QCar,它的自定义数字量接口是可自行选择哪些作为输入哪些作为输出的,这时就需要利用Digital Input/Output选项去分配每个接口的功能。
Quanser的软硬件平台一直是一个开放式的教学科研平台,仅仅一个HIL Initialize的使用就包含了如此多的配置,以满足用户不同的需求。而整个QUARC软件中有着许多像这样的模块,之后我们会陆续发布一些我们自己或客户在使用过程中发现的软硬件使用技巧,帮助我们的客户更好地使用Quanser的产品。