基于vxworks的auv数字电动舵机控制器设计
张杰1,张福斌2,徐德民1,2
(1西北工业大学航海学院,西安710072;2.水下信息处理与控制******重点实验室,西安710072)
摘要:提出了一种基于vxworks实时操作系统和at91rm9200的自主水下航行器电动舵机控制器的设计,给出了整体框架、硬件电路图和软件模块设计。采用高精度传感器,模糊pid算法以及双闭环反馈控制,该系统在测试中各项指标参数均达到预期效果,运行稳定可靠。
关键词:自主水下航行器;电动舵机;vxworks;arm; at91rm9200
中图分类号:tp275 文献标志码:a 文章编号:1001-6848[2010)04-0027-03
0引 言
舵机作为执行机构,是自主水下航行器( auv)申不可缺少的关键组成部分,其性能指标的优劣直接影响水下航行器的制导精度。与气动舵机、液压舵机相比较,电动舵机具有结构简单、性能可靠、维护方便、控制简单等优点,故在水下航行器中得到广泛的应用1。随着水下航行器技术的不断发展,对舵机的性能要求越来越高,并且由于嵌入式计算机在控制系统中的应用,因此用数字式舵机控制器取代模拟舵机控制器势在必行。数字舵机控制器运用合适的控制算法会使舵机达到更快的响应速度和控制精度。本文将介绍一种由arm微处理器和vxworks实时操作系统作为控制核心的水下航行器数字电动舵机控制器。
1总体设计
该数字舵机控制器的基本原理是:自动驾驶仪通过can总线将操舵信号以数字形式发送给舵机控制器并监控舵机的位置状态,舵机控制器对舵机的位置进行采样并与操舵信号比较以合适的控制算法进行处理,输出pwm信号控制电机,从而组成闭环实现对舵机的控制。其总体框图如图1所示。
2硬件设计
舵机控制系统的硬件主要由嵌入式处理器、信号采集电路、pwm严生与调速电路、舵角偏差处理电路、光电隔离电路、功率驱动电路、舵角反馈电路等组成。
2.1主控cpu及外围电路
采用at91rm9200芯片作为处理器,内嵌arm920t核,带有全性能的mmu及外部总线接口( ebi),外围电路包括时钟电路、复位电路、8mb norflash、32 mb sdram、以太网接口、jtag接口、电源电路等。
2.2 a/d和d/a电路
a/d芯片采用maxim公司的12位6通道并行adc芯片max196; d/a芯片采用maxim公司的12位独立2通道并行dac芯片mx7847,它们均通过外部总线( ebi)与cpu连接。
由74hc138译码器产生片选信号,用74hc244和74alvc164245实现arm和a/d、d/a之间数据信号缓冲和电平转换。
2.3 can总线通信电路
采用spi接口can控制器芯片mcp2515,通过标准的spi接口与at91rm9200进行通信。该器件包含三个发送缓冲器和两个接收缓冲器,数据传输速率高达1 mb/s,并且支持can v2. ob技术规范。can收发器选择pca82c250,其通过ad-um5241芯片与mcp2515连接以实现信号隔离。
2.4舵机位置闭环反馈电路
用双运算放大器组成两个反向放大器,对输入信号和反馈电压的偏差进行计算,输出电压对将pwm波形进行调制。其电路如图2所示。
2.5 pwm渡形产生及电机速度控制电路
该系统利用uc3637产生的双极性pwm信号构成双向的直流电机调速系统。
其主要功能是:产生三角波信号,与输入控制信号和反馈信号的偏差进行叠加,通过内置的两个比较器产生pwm信号控制电机的转速。产生三角波的电路如图3所示,该电路中,k= 15 v,r1= r2= r3= 10 k0. rt = 33 kω,t=0.01 plf=l khz。三角波与输入控制信号和反馈信号的 |