某雷达运动平台控制系统的研发

2015-04-16 08:31王纪超
阜阳职业技术学院学报 2015年3期
关键词:字节日志串口

王纪超,陈 科

(合肥工业大学 机械与汽车工程学院,安徽 合肥 230009)

雷达装备的研制对国家战略有着重要意义。在研制过程中卫星运动模拟试验系统以其良好的可控性、安全性以及不受场地限制等优点在雷达装备研制中扮演着重要的角色[1]。运动控制软件系统作为卫星运动模拟平台系统的关键组成,其性能的优劣直接关系到仿真试验的可靠性和置信度,因此,研制性能优良、运行稳定、交互性良好的运动控制系统是提高地面仿真试验能力,提升雷达研制水平的关键[2]。

1 雷达运动平台机械结构运动关系

雷达系统由信号发生器、接收天线、信号处理器、信号传输系统和控制系统组成。其控制系统操作雷达的转向,工作模式,锁定模式等等[3]。控制系统由操作人员通过控制电机运动操控雷达卫星天线的运动以调整雷达的方位。雷达卫星天线运动系统是很典型的机械运动系统,如图1.1所示,其运动主要分为平移运动,俯仰运动和旋转运动。图1.2 给出了典型的阵面雷达的结构。

图1.1 雷达卫星天线的运动示意图Fig 1.1 The radar satellite antenna motion schematic

图1.2 典型阵面雷达机械结构示意图Fig 1.2 The typical array radar mechanical structure diagram

图1.2中的一维直线运动平台是整个系统测量的基座,由底座、滑台、限位装置、两组直线导轨副、一组滚珠丝杠副及传动链等组成;其二维转台是一个平移转台,卫星天线平台在一维直线运动平台上进行直线运动;其俯仰转台是执行天线俯仰和方位角度调节的重要执行机构,由俯仰电推杆、转盘、底座、回转支承、传动链、角度传感器等组成。

该雷达机械机构将实现直线运动、旋转运动和俯仰运动,其控制系统应实现以下功能:

(1)能够控制平台的一维直线运动和转台的旋转运动以及俯仰运动。

(2)能够完成给定点坐标从转台运动坐标系到阵面载体坐标系上的变换。

(3)人机交互界面上具有命令操作显示、执行命令成功提示、执行过程及状态显示。

(4)控制系统具有容错处理的功能,以及报警提示功能。

(5)可完成对输入参数的存储,并生成记录日志。

2 雷达运动平台控制系统设计

根据上述控制系统实现的功能,将该运动控制系统设计为上下位机结构的计算机控制系统。

一台工控机作为上位机,实现对伺服系统的监控、检测和管理。上位机提供人机交互界面,实现对整个转台系统的在线检测、安全保护、性能检测和系统的运动管理以及数据处理[4]。下位机通过运动控制卡控制电机驱动器控制电机实现机械运动。系统的工作状态通过上位机的操作面板设置,工作状态信息在上位机显示[5]。

上位机在接受输入设置命令后传于下位机,上下位机通过通信接口进行数据交换。下位机快速采集测速机及数显表反馈信号,依据控制算法,实时解算出控制量,由D/A输出,经前置放大器和功放后控制电机,实现转台的实时控制[7]。

本软件主要使用非自动形式的系统开发方法。使用的软件主要有C#和matlab。雷达机械机构的坐标变换相对较繁琐,推导出的坐标变换公式用矩阵形式表示,在计算过程中相互变换较多,较复杂,本软件将matlab程序作为一个子模块调用,通过调用matlab软件可以轻松的解决坐标变换。主程序都是在C#界面下编写的,将每个模块编写成不同的类,通过主程序调用这些类,将各个不同的模块链接到一起,从部分到整体,条理清楚,方便设计[6]。

3 雷达运动平台控制系统硬件设计

该控制系统硬件原理如图3.1所示。其中控制器为西门子1214C的PLC,是运动控制系统的核心,主要完成信号的采集、处理、伺服定位等功能。伺服驱动器作为驱动设备,接收来自PLC的指令脉冲驱动电机完成高精度的定位,接收编码器脉冲并将脉冲反馈给PLC实现整个系统的半闭环控制[8]。

图3.1 系统硬件工作原理图Fig 3.1 The system hardware operating principle

4 雷达运动平台的软件设计

4.1 总体设计

根据系统需要对软件设计过程进行规划,设计流程如图4.1所示。

首先对软件所要实现的功能分析,将软件划分为以下几个模块: 一是主程序。主程序的功能是时实检测CPU、各种扩展模块及执行原件的工作状态,等待上位机的指令,传输以及接受数据并对数据进行处理,实现控制功能等;二是数据接收模块。接收上位机的控制命令,对收到的命令进行判断分析,提取有效的控制关键字,对收到的角度命令进行转换;三是运动控制模块。将上位机发来的命令分析后,如果是要求定位,程序使用该子程序,定位模式子程序功能是将上位机送来的平台、方位和俯仰运动角度、速度进行分析,按照一定的运动规则进行天线运动控制,使天线按照预先设定的运动轨迹进行运动;四是监控模块。监控模块主要功能是提供友好的人机界面,可以实现控制命令的传送、定位角度的输入、角度回馈显示和系统故障显示;五是日志模块。日志模块用实现对输入数据、雷达天线运动轨迹实时记录,储存管理[9]。整个系统功结构图如图4.2。

图4.1 系统软件设计流程图Fig4.1 The system software design flow

图4.2 软件结构示意图Fig4.2 The software structure diagram

4.2 界面设计

界面可以根据要求分为三个部分,三个部分是相互联系,在界面上没有明显的分界点。主要功能分为三个,参数控制,运动控制,日志管理。

在结构参数下设置下拉菜单,下拉菜单中包含的参数设置有结构参数设置和串口参数设置。运动控制同样有下拉菜单,下拉菜单包含的是运动控制具体的内容,包含位置控制、轨迹控制、到位控制、以及平台控制等内容。日志管理模块是用来储存和查询平台的运动数据。根据要显示功能,可以把界面划分为四个区,分别是菜单栏,控制区,操作界面以及实时显示区。控制区是根据控制区的不同而不同的,是软件的核心部分。界面具体设置如图4.3所示[10]。

图4.3 软件主界面Fig4.3 The software main interface

图4.4 结构参数设置界面Fig4.4 The structural parameter setting interface

结构参数设置的界面如图4.4所示,界面上的模式一和模式二是常见的结构的参数,把常见的结构设置成两个模式形式,方便用户选择。如果机械结果的参数不是常用的,或者不是这两个模式,软件设置了自定义选项,用户可以根据自己的需要自定义结构参数。

串口设置界面要求用户设置串口参数,由于运动控制软件并不是直接控制机械结构的运动的,而是通过控制PLC等控制器来实现控制运动的,为了友好的与控制器连接,设置串口连接是必要的。串口界面提供了计算机和控制器连接的一些常用参数设置,实现正确的串口连接是实现功能的不可或缺的条件。

图4.5 串口设置界面Fig4.5 The serial port setting interface

运动控制界面是将位置控制、轨迹控制放在一个控制窗口里;到位控制以及平台控制显示在另一个控制窗口上,界面设计如图4.6 所示。不同的功能占用各自的一块区域[11],当选中某个功能时相对的区域会可操作,没选中的功能区不可操作,如图4.6所标注的。

图4.6 运动控制界面Fig4.6 The motion control interface

日志管理界面是对日志的记录、查询做了相关的要求,如用户自定义开始来记录,自定义停止记录,自定义保存路径等。界面如图 4.7所示。

为了提供实时显示的功能,设计界面时将实时显示的功能界面始终显示在主界面的下方,方便用户实时的了解重要的数据,了解各个部分的运行情况,同时还可以了解运动情况及软件的运行情况[12]。

图4.7日志管理界面Fig4.7 The log management interface

软件的各个界面部分是相互关联的,并不是独立的。如在运动控制中控制卫星平台的各个数据将会被传送到实时显示区显示,提供给用户,方便了解卫星的当前姿态和状态,同时又可将数据传送到日志管理区,可以保存一定的格式。

4.2 模块编程

4.2.1 运动控制模块

(1)位置控制程序模块的编制

利用C#调用反求运动量的MATLAB程序,该模块可以实现如下功能:反求出平台运动到目标点所需的运动量;通过串口通信,按照特定的通讯协议,给下位机发送运动指令。

(2)到位控制程序模块的编制

利用C#调用坐标转换的MATLAB程序,该模块可以实现如下功能:让用户输入所需的运动参数(z0,θ,φ);通过串口通信,按照特定的通讯协议,给下位机发送运动指令;求解出不动点新的阵面坐标。

(3)轨迹控制程序模块的编制

扩展位置控制模块,在平台当前姿态下,让用户给定一系列特定的点的阵面坐标,反求出平台所需的运动量并发送给下位机。

(4)平台控制程序模块的编制

扩展到位控制模块,在平台当前姿态下,让用户给定一系列特定运动参数,把这些运动量发送给下位机。

(5)平台实时姿态显示及系统监测

在C#程序界面里设定定时器,通过串口通信,不断接受下位机反馈回来的字节数据,按照通讯协议,从字节数据中找出平台的姿态数据和系统状态数据,把这些数据经过转换,显示到控制主界面。

4.2.2 串口通信模块

界面中的串口通信模块是通过调用C#中的SerialPort类来实现的,其中主要使用了发送字节的Write()方法、读取字节的Read()方法以及接受数据的DataReceived()事件,通信步骤如下:

(1)串口初始化:通过更改Serial Port类的属性,设置串口的端口号、波特率、停止位、校验位、数据位。

(2)数据的打包和发送:把将要发送的数据按照通信协议,设定字头字节、长度字节、功能号字节、数据字节、备份字节、检查和字节,组装在一个定义好的字节数组里面,然后通过Write()方法发送给下位机。

(3)数据的读取和存储:利用Read()方法,读取缓冲区的字节数据,并存储到定义好的字节数组中,然后按照通信协议,逐个检验字节数据,提取并分离出需要的数据,存储到不同的变量。

(4)关闭串口:停止所有的读写操作,断开和下位机之间的通信。

4.2.3 日志模块

(1)创建日志记录表:通过用户设置日志存放的路径,以系统运行的当前时间为文件名创建日志excel表格。

(2)生成日志记录:当雷达天线的位置与上一时刻位置有变化时,自动将天线的位置数据,平台的运动数据记录在日志表格中。

(3)日志存放:表格默认存放在用户设置的路径内,方便随时查询。

该雷达运动平台控制系统已调试并安装于某雷达系统中,很好地实现了预期的功能,运行状态良好。

文章以某典型雷达运动平台为控制对象,研发了雷达运动控制系统,通过上位机和下位机的协调配合,可实现雷达运动平台的水平方向移动,平台的俯仰运动和平台的空间旋转运动。该系统通过简单修改部分系统参数即可应用于不同的雷达运动平台的控制,增强了系统的通用性。

[1]Pollard, R.J.E.(1).Control system for the DART radarGEC Review, 1988,4(3):168-175.

[2]Yu, Yan Xin,Sun, Rong Chun.Design of Automobile reversing rader control system based onultrasonic[J].AppliedMechanics and Materials, 2014, 45(7):872-877.

[3]刘世挺.雷达伺服控制技术的新发展[J].火控雷达技术,2002(31):33-35.

[4]毛志辉,李成铁,赵强等.基于PLC的运动控制系统在印刷开槽机中的应用[J].仪器仪表学报,2006,27(6):597、599.

[5]阮毅,陈伯时.电力拖动自动控制系统—运动控制系统[M].北京:机械工业出版社,2009.

[6]曹洪君,吴盘龙.无人移动平台运动控制系统的设计[J].测控技术,2014,33(9):64-67.

[7]Pei Wang,Gerhard Reinelt,Yuejin Tan.Self-adaptive large neighborhood search algorithm for parallel machine scheduling problems[J].Journal of Systems Engineering and Electronics,2012,23(2):208-215.

[8]马林森,张文爱,王秀.基于PLC和Visual C#上位机的喷雾测试系统[J].农机化研究,2013(7):145-146.

[9]刘正华,尔联洁,吴云洁.三轴虚拟转台的仿真平台设计与实现[J].系统仿真学报,2004,16(11):2555-2556.

[10]Burkov, A.P.,Krasilnikyants, E.V.,Design principles for motion control system software [J].Automation and Remote Control.May 2014, 75(8):935.

[11]李刚.多轴运动控制平台管理软件设计与实现[D].成都:电子科技大学,2014:1-15.

[12]杨晶.多轴运动控制平台管理软件设计与实现[D].哈尔滨:哈尔滨工业大学,2012:25-35.

猜你喜欢
字节日志串口
一名老党员的工作日志
No.8 字节跳动将推出独立出口电商APP
浅谈AB PLC串口跟RFID传感器的通讯应用
扶贫日志
No.10 “字节跳动手机”要来了?
游学日志
简谈MC7字节码
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
基于并行控制的FPGA多串口拓展实现