改进的MVR—CORDIC算法在磁航向测量中的应用
- Allen
-
0 次阅读
-
0 次下载
-
2020-04-07 19:10:03
文档简介:
·40·《测控技术)2009年第28卷第6期改进的MVR—CORDIC算法在磁航向测量中的应用冯文光,刘诗斌.(西北工业大学电子信息学院,陕西西安710072)摘要:在单片机进行磁航向计算过程中,针对基本MVR—CORDIC算法的执行速度和效率不高的问题,分析和列举了在航向测量中利用算法矢量模式进行航向解算的步骤,结合该系统单片机和算法的特点,提出了自适应迭代次数和改进的旋转序列查找方法,在保证精度的同时提高磁航向解算的速度。该改进算法在单片机中实现,与基本算法进行了实验对比,结果表明:自适应迭代使算法迭代次数减少为原来的67%,改进的查找方法缩短57%的原迭代时间,且改进算法达到了系统要求精度,证明了该改进算法的快速有效。关键词:航行解算;改进矢量旋转的坐标旋转数字计算方法;自适应迭代次数;查找方法中图分类号:V241.61l文献标识码:A文章编号:1000—8829(2009)06—0040—03ApplicationofModifiedMVR-CORDICinMagneticHeadingMeasurementFENGWen—guang,LIUShi—bin(CollegeofElectronicsandInformation,NorthwesternPolytechnicalUniversity,Xi’an710072,China)Abstract:Aimingatmagneticheadingmeasurementwithmicrocontroller,thespeedandeficiencyofbasicMVR—CORDIC(modifiedvectorrotational—coordinaterotationdigitalcomputer)arelower,thestepsusedtomeasuretheheadinginrotatemodearelisted.Consideredthefeaturesofthe51-microcontrollerandtheMVR—CORDICalgorithm,somenewschemesaboutiterationnumberandsearchingalgorithmarepresentedtoim-provethespeed.Thismodifiedalgorithmistestedandcomparedin51一microcontroller,theexperimentresultshowsthatadaptiveiterationmakesiterationtimesto67percentsofthegeneralnumbersandthemodifiedsearchingalgorithmreduces57percentsofthenormaliterationtime.Thismethodachievestherequiredpreci—sionwhichverifiesthatthealgorithmisfastandeffective.Keywords:headingmeasurement;MVR-·CORDIC;adaptiveiterationnumber;searchingmethod在磁航向}贝4量中,通常采用单片机实现各种函数的解算,其中计算反正切函数必不可少J。鉴于有限的硬件资源,计算精度与计算速度的折中是至关重要的,所以选择合适的反正切函数计算方法非常关键。反正切函数的计算方法有查表法_2J、多项式近似法、有理数近似』,CORDIC算法等。查表法速度快,算法简单易实现,但占用存储器的容量太大,尤其在要求精度高时;多项式近似法可达到较高的精度,但收稿日期:2008—12—30基金项目:国家自然科学基金课题(60874101);西北工业大学基础研究基金(WO18104)作者简介:冯文光(1983一),男,博士研究生,主要研究方向为智能传感器、数据处理与数据融合等;刘诗斌(1960一),男,教授,博士生导师,长期从事无人机传感器系统研究工作,研究领域为磁场和压力测量、智能传感器系统、微电子和计算机应用。一般逼近多项式的阶数高,计算量大,消耗大量的硬件资源,计算速度受到限制;有理数近似相比多项式近似法更容易达到较高的精度,但分块操作占用大量的计算时间;CORDIC算法即坐标旋转数字计算方法,很适合用于三角函数、双曲线、指数、对数的计算,它通过基本的加和移位运算代替乘法运算,在保证计算精度的同时计算速度最快。经过研究,提出了一些改进的CORDIC算法』,其中MVR—CORDIC有较快的执行速度和较小的算法复杂度,但是它是针对VLSI(verylargescaleintegra—tion)的改进,应用在单片机中时,其执行效率不高,影响了执行速度,因此针对MV
评论
发表评论