寻北仪中力矩电流发生器的设计
利用ADT800模块D/A通道中的DAC0(DAC1)通道输出的电压信号控制方位(水平)压控恒流源电路,实现对方位轴(水平轴)的控制。
3 力矩电流发生器软件设计
考虑到寻北仪的应用背景等因素,选择DOS 6.22作为操作系统,并选用UCDOS6.O作为汉字平台。选用C++语言和Borland C++3.1集成开发环境为程序开发语言和开发环境,采用面向数据流的分析和设计方法对软件进行开发。采用多中断和TSR技术增加软件的实时性和多任务处理能力。
根据系统需求和模块化的基本原则,将寻北仪软件划分为初始化模块、管理模块、定时中断模块和通讯模块四大组成部分,如图6所示。
与力矩电流发生器有关的软件部分体现在初始化模块和定时中断模块部分,包括ADT800的初始化、D/A控制和I/O控制。init_adt800()函数主要用于对ADT800模块的初始化,包括A/D和D/A设置,初始化数字I/O口等。
定时中断模块根据处理得到的加速度计信号、计程仪/GPS航速信息、倾角传感器姿态信息、键盘装订的参数、误差补偿量及系统所处的工作状态等实时解算出陀螺控制电流,并向陀螺力矩器控制发送。
为了电流解算的方便,程序中定义了几个数组:Kj[5],Ky[5],Kz[5],C1[5],C2[5],K2[5],K3[5],分别用于存放状态转换积分系数、方位控制回路的状态转换系数、水平控制回路的状态转换系数、C1系数、C2系数、方位控制放大器放大系数、水平控制放大器放大系数。由于最终力矩电流是通过压控恒流源来实现的,因、此电流的解算就是得出相应的控制电压,解算程序如下(以罗经状态为例):
系统软件除了完成上述的电流解算外,还要对工作状态进行切换。根据加表采样值和dacy、dacz的大小及正负,通过对ADT800_BA+9地址的置位/复位操作,实现力矩电流精粗和极性的控制,例如:
最后电流解算得到的对应控制电压通过ADT800的D/A通道输出给压控恒流源,经V/I转换后输出至陀螺力矩器。实现D/A转换的函数为:
例如,执行语句adt800_da_out(ADT800_BA,0,Ddacy),即可实现向方位控制回路发送控制电压,电压值大小为Ddacy。
4 实验
为了检查力矩电流发生器所产生电流是否满足精度性能要求,用Agilent E3620A直流稳压电源输入表1中所示的电压,在压控恒流源输出电路的负载端接上7.8 Ω的精密电阻作为负载模拟电机绕组,同时通过控制极性控制继电器和精粗控制继电器,改变输出电流的极性和精粗,用Agilent 34401A数字万用表测试流经模拟负载的电流,所测结果如表1所示。
从表1所示的测试结果可以看出,针对寻北仪微机控制需要而设计的力矩电流发生器,其动态范围较大,转换精度优于0.5 μA,可广泛应用于寻北仪、电控罗经等惯性导航系统中。
- 用于电压或电流调节的新调节器架构(07-19)
- 电源设计小贴士 2:驾驭噪声电源(01-01)
- 适合高效能模拟应用的线性电压稳压器(07-19)
- 低功耗嵌入式实现的方方面面(04-30)
- 用于低成本高效率离线LED驱动器的初级端调节技术(05-14)
- 开关模式LED驱动器的调光技术(10-20)