电液振动台可以模拟真实环境下的振动,被广泛应用于建筑抗震模拟、材料
结构试验、汽车测试、海上舷梯等领域。控制电液振动台所需的高性能振动控制
器主要依赖进口。近年来基于
FPGA
的振动控制器开始凸显其优势,更适合用于
多通道、高频率等测试场景。
本文基于
Zynq-7000
芯片的
CPU+FPGA
架构,设计了一套结构清晰、通用
性强、易于扩展的振动台控制程序,实现了数据采集、控制、以太网通信等功能。
进行系统测试,验证了控制器架构的合理性和有效性。进行了正弦波试
验和地震波试验,其中正弦波试验的位移相关系数和加速度相关系数分别达到
99.86%
和
94.87%
,地震波试验分别达到
99.998%
和
65.68%
。
1.3 Zynq-7000
芯片介绍
Zynq-7000
是
Xilinx
公司生产的
ARM CPU+FPGA
架构的
SOC
芯片
[16]
,它
采用
28nm
工艺。它分为
Processing System
(简称
PS
)和
Programmable Logic
(简
称
PL
)两部分
[17]
,
PS
部分是双核
ARM Cortex A9
处理器,能运行完整的像
Linux
这样的操作系统,而
PL
部分是基于
Xilinx 7
系列(
Artix-7/Kintex-7
)的
FPGA
架
构,两者之间通过
AXI
接口,实现了高带宽、低延迟的连接。处理器和逻辑部分
各自都可以发挥最佳的性能,并且单芯片会带来物理尺寸和整体成本的降低
[18]
。
基于
Zynq
的控制器具有以下优势:
(
1
)架构优势。得益于
Zynq
的
ARM+FPGA
架构,可以将控制器的核心功
能分为软硬件两部分去开发,软硬件协同完成对振动台的控制。对实时性和计算
性能要求较高的采样、计算、控制等部分交给硬件逻辑(
PL
)完成,而对实时性
要求不高的通信等部分交给软件(
PS
)完成。
(2)并行优势。
FPGA
部分固有的并行特性,使得基于
Zynq
的控制器适合
多通道协同控制,可以实现更加实时和精准的控制。
(3)频率优势。
Zynq
芯片
PL
侧时钟频率最高可达
250MHz
,普通
PID
算
法的控制频率(若按照流水线设计,
2
个时钟周期完成一次控制来计算)预计最
高可达
125MHz
。
MIO
是
I/O
外设连接的基础。在
Zynq-7000 SoC
内
MIO
引脚个数是有限的,
总共
54
个。通过配置,可以将
I/O
信号连接到
MIO
引脚。此外,通过
EMIO
接
口,也可以将
PS
内的
I/O
外设连接到
PL
中。如图
1.5
所示,允许
PS
内的
I/O
外设控制器与
PL
内的用户定制逻辑连接,有利于
PS
访问更多的器件引脚以及
与
PL
端的逻辑资源进行交互。
2
振动台控制系统总体设计
振动台控制系统是一个集机械、液压、电子、控制、计算机软硬件于一体的
复杂的机电一体化系统。振动台控制系统的设计目标是使振动台台面按照期望的
波形来运动。
首先,为了有足够的运动范围和足够的运动速度、加速度,需要一套满足运
动需求的机械系统以及提供动力源的液压系统,整个机械、液压系统的响应时间
也要足够快。其次,为了方便人机交互,主要是实时显示波形、实时修改控制参
数等,需要相应的上位机软件,以及下位控制器中与之配套的程序。最后,为了
完成精确的运动控制,需要高精度的以数据采集、控制、输出为核心的硬件电路,
和与之配套的以数据采集、数据处理、控制算法、输出驱动为核心的控制程序。
机械系统和液压系统主要由合作公司研制,不作为研究重点,本章将分别介
绍上位机软件和硬件电路板,以及
Zynq
控制器程序设计的目标,后面的章节重
点介绍控制器程序的设计。
2.1
上位机软件功能简介
振动台控制系统的上位机软件主界面如图
2.1
所示。该上位机软件可以实现
以下功能:参考波形的产生与下发;实时显示参考波形与实际波形,包括位移、
速度、加速度;控制参数的设置与下发;实验数据的导出;一些基础的数据分析。
等
[21]
。其中的以太网通信功能是需要与
Zynq
控制器配合完成的,两者之间会进
行大量交互,是一个双向通信的过程。
2.2
硬件电路板功能简介
振动台
Zynq
控制器参考信迈的ZYNQ板卡,硬件电路主要分为几大模块:
Zynq
核心模块、电源管理 模块、输入模块、输出模块、存储模块、通信模块[22]
。其中通信模块负责与上位
机软件进行以太网通信;输入模块负责采集实际的运动数据,包括位移传感器的
SSI
数字信号、加速度传感器的模拟电压信号、力传感器的模拟电压信号等;输
出模块主要负责输出控制电压,再通过一个电压转电流模块,以驱动液压伺服阀,
使作动器动作。
2.3 Zynq
控制器程序设计的目标
结合整个振动台控制系统的需求,以及上位机软件和硬件电路的已有条件,
总结出
Zynq
控制器程序设计的目标功能:
①
数据的采集与处理功能,主要包括
SSI
数字信号的采集与处理、
ADC
数
据的采集与处理;
②
输出驱动,主要指驱动
DAC
;
③
能够形成基本的反馈控制回路,支持参数的可配置;
④ 与上位机软件的以太网通信功能,主要包括接收参考波形、参考波形与
实际波形的上传、接收参数修改命令并修改参数。
信迈提供ZYNQ控制器定制化解决方案。