三轴仿真转台控制系统的设计
孙克诚 王琪
摘要:文章介绍了一种无人机飞行半物理仿真平台的控制系统,本系统是以ARM处理器为核心控制器,采用模块化设计的方法,设计了一个三轴转台控制系统。系统采用PC机与下位机两级控制,使用积分分离式的PID控制算法,对三轴转台进行精确控制。控制系统能控制三轴转台转动并对平台上捷联惯导系统姿态信息进行实时测量,保存和显示。
关键字:三轴转台;PID算法;STM32;姿态控制;捷联惯导系统;
近些年来,随着现代战争的日益发展,无人机也因其无人驾驶的独特性能得到各国的重视与关注。飞行仿真转台能够真实地模拟出无人飞行器的动力学特性,在实验室中就能对飞行器的飞行姿态进行仿真,是检测无人飞控系统性能以及进行半物理仿真实验的重要装置。三轴转台的控制精度直接影响了仿真或调试、检测的结果,因此,三轴转台的控制系统设计往往决定了转台的质量。本文结合实际设计了一种可实时测量平台上传感器数据的飞行仿真转台控制系统。
1系统结构及总体方案设计
本三轴转台控制系统由惯性传感器模块、STM32微控制电路、OLED显示模块、按键输入模块、步进电机驱动模块、RS 232串口通信模块、编码器数据采集模块等部分组成。系统整体结构框图如图1所示。惯性传感器系统采集到原始信号,通过I2C总线发送给STM32微控制器,STM32控制器运用捷联惯导算法处理惯性传感器获得的数据,解算出转台的实时姿态。在LCD液晶显示屏上实时显示姿态参数,另外使用MAX3232将TTL电平转换成RS232电平,再与PC机的COM口连接,并将姿态数据打包成固定格式的串口数据包,通过串口发送给上位机软件,在PC端上位机软件实时动态显示姿态参数和波形曲线。在上位机软件上可以控制三轴平台的状态,模拟无人机的俯仰、翻滚、航向三轴方向上的姿态控制,控制信息通过COM口发送给STM32控制器,编码器模块采集三轴平台的转动数据经过PID算法处理后反馈给驱动电路控制步进电机转动,提高了三轴转台的转动精度。三轴平台与控制系统之间的数据采用光电隔离,防止电机干扰和损坏控制系统。
2硬件设计
2.1步进电机驱动部分
步进电机驱动部分电路原理如图2所示。步进电机的控制信号主要是CLK,CW,ENABLE,分别控制步进电机的速度和转角、电机的正反向转动以及电机的使能,3个信号均须用光耦隔离电路隔离后与控制台连接。光耦的主要作用是防止电机干扰和损坏微控制器接口电路,其次光耦还起到对控制信号进行整形的作用。对于CLK与CW信号,要选择高速光耦,以保证信号经过光耦后不会发生滞后或者畸变而影响电机驱动的性能。CLK与CW信号采用6N137高速光耦隔离,而ENABLE信号采用TLP521普通光耦隔离。
驱动电路电源采用12V开关电源供电,VMB和VMA是步进电机驱动电源引脚,为达到稳压的目的,VMB和VMA应当接入瓷片去耦电容和电解电容。OUTAP,OUTAM,OUTBP,OUTBM引脚为步进电机两相输出接口。NFA,NFB为电机两相最大驱动电流定义引脚,由于实际步进电机每相的最大驱动电流为2.5A,则取串联电阻为0.2Ω,PGNDA,PGNDB和SGND根据定义分别接电机两相驱动引脚地和逻辑电源地。
逻辑控制电路的电源为5V,VDD为逻辑电源输入引脚,应当接入去耦电容和旁路电容来减小干扰噪声的影响。RESET为芯片复位脚,低电平有效。步进电机在低频工作时,存在振动大、噪声大的缺点,细分驱动的细分功能可以解决这些问题,M1,M2是TB6560的细分设置引脚,外接拨码开关可以设置不同的细分值,譬如整步、半步、1/8细分、1/16细分等。步进电机由于自身状况、电源状况和脉冲频率等其他因素的影响,可能会产生高频噪声,通过电流衰减模式的设置可减小这种噪声,DCY1和DCY2为电源衰减模式定义引脚,外接拨码开关以进行模式设置。
2.2基于STM32的外围接口电路设计
基于Cortex M3内核的STM32F103ZET6是意法半导体生产的高性能嵌入式微处理芯片,该芯片内核最高可达72MHz工作频率,有512K的闪存程序存储器和64K字节的SRAM,有多达80个标准IO口,有3个12位模数转换器,11个定时器,同时有13个通信接口,其中有2个I2C接口、5个串行接口、3个SPI接口,并支持USB2.0,SDIO和CAN总线接口,是一款专门为满足高性能、低功耗、实时应用系统而设计的嵌入式微处理器,并且该芯片能很好地满足本控制系统的控制、处理、数据采集、传输、显示等功能。基于以上优点,本控制系统采用STM32F103ZET6作为微控制系统的核心处理器,STM32微处理器外围接口电路如图3所示。
2.2.1捷联惯导模块
捷联惯导模块使用的是MPU6050,其为一款集成了三轴陀螺仪和三轴加速度计的六轴运动传感器,含有可扩展的数字运动处理器DMP,可通过I2C接口与其他数字传感器连接。传感器内部集成16位AD,测量到的三轴角速率和三轴加速度模拟量信号经过AD转换为数字量信号,将数字信号存储到传感器的寄存器中,STM32通过I2C总线接收到角速率和加速度数字信号。应用捷联惯导算法将陀螺仪测量的载体角速度解算成姿态矩阵,从中提取载体的姿态信息,并用姿态矩阵把加速度计的输出从载体坐标系变换到导航坐标系,进行导航解算。微控制将解算得到的姿态信息打包成固定格式的串口数据发送给上位机软件,并在上位机上实时显示。
2.2.2LCD液晶接口设计
本控制系统采用2.8英寸320×240分辨率的TFT-LCD液晶显示屏对姿态数据进行显示,系统采用STM32的FSMC接口来控制LCD液晶的显示,能够在不增加外部器件的情况下同时扩展多种不同类型的静态存储器。使用FSMC接口访问外部设备的时序可以编程,可把液晶显示屏当作外部存储设备来使用,能够根据不同的外部存储器类型,发出相应的数据、控制、地址信号类型来匹配信号的速度,更好满足本控制系统设计对LCD接口、控制器体积以及成本的综合要求。
2.2.3编码器模块
本系统采用ZSP3806增量式旋转编码器,具有体积小、重量轻、结构紧凑等优点。编码器的使用使整个控制系统构成一个闭环系统,主控制器采集到编码器采集到的转动数据经过数据处理,采用PID算法反馈给控制输出,构成精准的转动控制。
2.2.4电源管理模块设计
本系统采用I2V直流电源供电,通过LM7805芯片获得5V电压输出,5V电压再经过LMS1117输出3.3V电压,电源电路中并联电解电容和瓷片电容来达到滤除干扰的目的。
2.2.5串口通讯模块设计
本系统中的串口通讯电路采用MAX3232芯片,完成TTL电平与RS232电平之间的转换,串口通讯电路主要用于控制器与PC之间的通信。
3基于STM32的软件实现
3.1载体姿态采集
设计中STM32控制器采用I2C总线协议对传感器进行数据采集。MPU6050的初始化包括电源管理、陀螺仪自检及测量范围、加速度自检及测量范围、陀螺仪采样频率、滤波频率等的设置。采集到飞行器的三轴加速度数据和角加速度数据,然后经过数据处理和一些相关算法进行结算,就能够得到三轴平台的姿态、速度等信息。
3.2控制器算法及实现
PID(比例-积分-微分)调节是连续控制系统技术成熟、应用广泛的一种控制技术,因此被广泛地应用于各种控制系统中。它的特点是结构简单,参数设定及调节方便,结构改变灵活,适应性强。
A为门限值,当有大偏差值存在时,积分项不起作用,偏差在门限范围之内,才会引入积分项,这样减少超调现象发生。
系统通过定时器每隔t时间中断一次,随即完成一次PID计算,每次采集到的u(k)都保存到缓存中,在缓存中,u(k1),u(k-2)的值不断更新,然后,通过这2个值计算出e(k-1),e(k-2),把值代入公式中,就可以得到u(k)的值,即为控制输出。中断PID程序流程如图4所示。
4结语
本文介绍了一种基于STM32的三轴平台控制器设计。在对仿真转台的控制系统进行研究后,选用合适的运动控制器件和控制算法实现飞行仿真转台的模拟运动。系统设计是在满足系统的各项功能要求的前提下,还有下述优点:(1)采用积分分离式的PID算法,控制精度高,同时显著降低了被控制变量的超调量和过渡过程时间。(2)具有广泛的适应性、可扩展性和互换性。所有部件均具有符合业界标准的接口。(3)系统集成度高,可靠性高,维护简单。