Implementation of Direction of Arrival Algorithms On ARM Processor for Micro Smart Antenna Systems

来源 :中国电气工程学报 | 被引量 : 0次 | 上传用户:sep
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  Abstract  —  Direction of arrival (DOA) estimation is an important research direction in array signal processing field, which has a very broad application prospects, such as radar, communication, sonar, navigation, electronic countermeasures, smart antenna and so on. In this paper, implementation of MUSIC algorithm, which is widely applied in array signal processing, has been analyzed. Results comparison is based on MATLAB and ARM processor. Comparison result indicates that in practice the ARM processor can estimate DOA satisfactorily.
  Index Terms  —  Direction of arrival estimation, Mobile antennas, Adaptive arrays, Antenna arrays, Signal processing algorithm.
  I. INTRODUCTION
  Array signal processing has two main aspects, namely, DOA estimation and beamforming. DOA estimation of space used the mechanical scanning method at first, which failed in practice of both speed and accuracy. However, beamforming technology research makes a breakthrough progress in this field. But when the difference between the sources of the incident angle is smaller than the beam width, it will also cause the increase of the angle estimation error, which is called the Rayleigh limitation. One solution is to increase the array antenna aperture. In order to achieve under the smaller size of the array antenna conditions, the distinction between the two signals within the beam width, it is necessary to look for super-resolution algorithm. Super-resolution technology is expected in a limited array of conditions than the conventional method to obtain excellent technical performance. Super-resolution techniques have now made significant progress, in order to improve the angular resolution, it adopted a similar spectrum estimation in time-domain nonlinear processing technology to enable breakthrough in angular resolution limit of Rayleigh criteria, such as maximum likelihood estimation, maximum entropy estimation and decomposition of the characteristics of the correlation matrix approach, the typical method in which is multiple signal classification algorithm (Music) and Esprit.
  In this paper, the implementation issue of MUSIC (Multiple Signal Classification) on an ARM processor is presented. The incoming signals are sampled at first (the antennas receive signals). The sampled signals data are stored in txt files. The microcontroller (i.e. ARM) read data (sampled signals) from the data files in previous step. At last, it will generate a txt file which contains the spectrum data. It connects to PC via USB. There is a MATLAB program generating three spectrums (from MATLAB, Visual C, ARM processor) in one figure. From the figure, we can see clearly the DOA (peaks on spectrum) and difference among the three spectrums. In the meantime, the microcontroller connects to a host PC via USB which is as both transmitting and receiving data. The message from the microcontroller will appear on PC. The whole process is show in Figure 1.   This paper is organized as follows. Sect.II presents the principle DOA estimation in MUSIC Method briefly. Sect.III introduces performance of MUSIC algorithm in MATLAB and Sect.IV describes the basic ideas of MUSIC algorithm in C language. In Sect.V, given the characteristics of mbed microcontroller to complete the implementation on ARM, it gives the specifications. Sect.VI discusses the MUSIC algorithm performance on three programing tools.
  II. MUSIC of DOA estimation
  For last twenty years, various algorithms of spectral estimation have gained much achievement. MUSIC (Multiple signal classification) is one classic algorithm among them.
  MUSIC detects frequencies in a signal or autocovariance matrix by computing the eigenvalues and eigenvectors on the covariance matrix of a vector y of M samples from the received signal.
  The data model of MUSIC:
  where v is a vector of M noise samples, s is a vector of N signal amplitudes, and A is the matrix of samples of the signal frequencies.
  Assume a zero-mean signal and thermal noise, and then the covariance of y has the form
  is  the signal autocovariance matrix, I is the   identity matrix, and is the noise variance. From the eigendecomposition of Ry use the eigenvectors related to the N maximum eigenvalues to define the signal subspace (the column space of A, which is not used to compute the spectrum), and use the other eigenvectors to define the noise subspace, . From the orthogonality of the signal and noise subspaces, finding the peaks in the estimator function
  for various  values yields the strongest frequencies, where  refers to the columns of A.
  III. MUSIC Algorithm on MATLAB
  The simulation performance on MATLAB presents the characteristics of MUSIC algorithm.
  In this algorithm, it is assumed the number of signal source and antenna element for a uniform linear array is known.
  In the definition, there are three signals in -45o, 30o and 50o direction. Then it gets the number of source and antenna element. It is assumed the element spacing is 0.5λ(λ is the wavelength). The incoming signals power of 1 is simply for the computation. The number of snapshot L is 500.
  The MATLAB program gets the MUSIC spectrum in which peaks point the direction of incoming signals. The range of the spectrum is -90o to 90o.
  The performance of this algorithm is depended on each parameter above. Next, it will show how these parameters influence it.   After several experiments on parameters of MUSIC, following conditions should be set for the MUSIC algorithm.
  ?Signal degree should not be too large (10O~15O to 90O)
  ?Signals degree should not be too close (more than 15O)
  ?The number of signals is less than the number of antenna elements (N>K)
  ?The number of snapshot should be large enough ( more than 200)
  The following figures show the bad performance on MATLAB beyond the conditions.
  V. Implementation on ARM microcontroller
  This mbed Microcontroller is based on the NXP LPC1768 with an ARM Cortex-M3 Core running at 96MHz, 512KB FLASH, 64KB RAM and lots of interfaces including Ethernet, USB Device and Host, CAN, SPI, I2C and other I/O.
  ARM controller has serial communication with a PC (SerialPC) and a file system (localfilesystem) to read and write files. Moreover, the hardware limitation should be considered such as the size of RAM.
  The mbed Microcontroller communicates with the host PC through a "USB Virtual Serial Port" over the same USB cable that is used for programming.
  Serial pc(USBTX, USBRX); // tx, rx
  “Localfilesystem” is a file system for accessing the local mbed Microcontroller USB disk drive.
  This allows programs to read and write files on the same disk drive that is used to program the mbed Microcontroller.
  ?Example
  #include "mbed.h"
  LocalFileSystem local("local");
  // Create the local filesystem under the name "local"
  int main() {
   FILE *fp = fopen("/local/out.txt", "w");
  // Open "out.txt" on the local file system for writing
   fprintf(fp, "Hello World!");
   fclose(fp);
  }
  After the function declaration, the standard C file access functions are used to open, read and write files. Moreover, it does not need to add “pc” to “fprintf” like “pc.printf”, just like it in the orginal C program.
  The biggest disadvantage for MUSIC algorithm is large computation. Moreover, two methods used in this paper add more computation to the microcontroller. One is the “for” statement to compute every element in the matrix, and the other one is reading large data files.
  In the original C program, the number of snapshot L is 500. The sampled signals matrix X is a matrix of 5*500. The data files generated from MATLAB are 61KB in total but the RAM is 64KB. That is why the complier can generated the “.bin” file but it cannot run. To solve this problem, I reduce L to 200 to decrease the size of files to 25KB. The sampled signals matrix X turns to be a matrix of 5*200. Another big matrix is the steering vector al whose size of 5*181. The original setting is that the angles to compute the spectrum are from -90o to 90o, every 1o is a point. I do not change the range of angles but make every 3o is a point. So the steering matrix al is a 5*61 matrix and then the microcontroller can read data and execute the program.   VI. Results discussion
  At first let us see the results from Visual Studio and ARM microprocessor. This comparison is under the same programming language, with different parameters and processors.
  Here are three spectrums from different tools – MATLAB, C language, ARM microprocessor.
   I will discuss the MUSIC algorithm performance in the three programming tools in three respects.
  ?Accuracy
  In MATLAB the float number types are divided into single and double, respectively, in the corresponding C language float and double which occupies 4byte and 8byte storage space respectively. In MATLAB, the default matrix type is double. In C language, I set the float number are double. As double type is more accuracy than float type, the spectrum is in good performance in MATLAB and C language. However, double type occupancies double size of memory, so the program is under control of the microcontroller RAM.
  ?Efficiency
  In my C program, I use “for” statement to compute matrix. This makes the C program is quite lower efficient than MATLAB program. If MTL (Matrix Template Library) is added into C program, its efficiency will highly increase [5].
  ?Stability
  Compared MATLAB which is widely used in simulation in software, C program can access the physical address in hardware. Due to the flexibility of C language, implementation with C language program is easy to cause memory leaks, abnormal operation, and the unexpected results problems. In the C language development process, quality procedures are must attached great importance. Ways to improve program stability for project management and development process maximize the stability of the program to ensure the success of the project development.
  VII. Conclusion
  The paper is about implementation MUSIC algorithm on ARM processor and discusses its performance. Though there are many researches have been done on MUSIC algorithm, rarely researchers work on implementation on hardware. This paper gives a novel method to implement MUSIC algorithm on ARM processor in C language. In addition, discussion on the performance is also presented in this paper.
  ACKNOWLEDGEMENT
  First and foremost, I would like to show my deepest gratitude to my supervisor, Dr. Ahmet Erdogan, a respectable, responsible and resourceful scholar, who has provided me with valuable guidance in every stage of my project and this thesis. I shall extend my thanks to Mr. Ahmed EI-Rayis for all his kindness and help.
  REFERENCES
  [1] C. A. Balanis and P. I. Ioannides, Introduction to Smart Antenna, First ed: Morgan and Claypool, 2007.
  [2] L. C. Godara, "Application of antenna arrays to mobile communications. II. Beam-forming and direction-of-arrival considerations," Proceedings of the IEEE, vol.85, pp. 1195-1245, 1997.
  [3] L. C. Godara, "Applications of antenna arrays to mobile communications. I. Performance improvement, feasibility, and system considerations," Proceedings of the IEEE, vol. 85, pp. 1031-1060, 1997.
  [4] P. Ioannides and C. A. Balanis, "Uniform circular arrays for smart antennas," Antennas and Propagation Magazine, IEEE, vol. 47, pp. 192-206, 2005.
  [5]http://ptolemy.eecs.berkeley.edu/papers/96/dtmf_ict/www/node5.html, “MUSIC Algorithm”, Brian L. Evans, 211-105 Cory Hall, Berkeley, CA 94720-1772
  [6] http://osl.iu.edu/research/mtl/performance.php3, ?2001-2008 The Trustees of Indiana University, Page last modified: 29-Oct-2007
其他文献
摘要:新时期下,随着我国经济的发展和社会的进步,我国国民对电力资源的需求量也在逐年上升,各种大型电站也越来越多,高压输电线的密集程度也在持续上升。现如今,我国也已经形成了以500kV输电线路为主要网架的超特高压输送网络。但是,由于输电线路通常情况下都建设在较为空旷的地方,在实际运行过程中很容易遭到雷击,导致高压输电线路出现故障,增加维修成本,这就需要电力企业加强对500kV输电线路的防雷工作的重视
期刊
摘要:配电设备点多面广、数量庞大,为了更好的监测电力设备的运行状态,研究分析带电检测技术在配网线路设备运检中的应用变得尤为重要。通过分析各种带电检测技术,将检测方法按照不同技术的适用范围予以结合运用,可以发挥不同种带电检测技术的优势,对于深化推进配网设备状态检修工作,及时发现设备隐患和故障,提高配网运维工作效率和质量都具有重要意义。  关键词:配电设备;配网运检;带电检测;状态检修  0 引言  
期刊
摘要:电力企业发展中变电站的建设是为电力传输所工作,在变电工作中对其运行进行维护,是日常的关键工作内容。然而在实际开展过程当中面临很多的问题,很难确保变电设施的稳定运行,使得有关工作没有办法高效的进行。所以,应该给出高效的解决对策来推动变电运行维护工作的更好开展,保证电力传输工作的顺畅开展。  关键词:变电运维;现场作业;安全防护;监控技术  1问题分析  1.1对于设备防护工作不重视  在当前电
期刊
[摘要]随着电网的不断发展,新建的变电站大多为数字化变电站或智能变电站,取代了传统的变电站,提高了变电站的自动化水平和智能化水平。在数字化变电站中,需要对继电保护装置进行合理的优化配置,保证继电保护装置能够正常可靠动作,对此进行详细的分析。  [关键词]变电站;智能;继电保护;配置  1数字化变电站的构造  数字化变电站,就是将变电站中的电气设备实现数字化转变,转换后与智能设备进行信息连通的过程,
期刊
摘要:发电机组是发电厂的核心设备,一旦出现运行故障,会给电力企业带来严重的损失。对此,本文对发电厂发电机组集控运行技术进行了分析,以确保供电的稳定性。  关键词:发电厂;发电机组;集控运行技术  1发电机组集控运行过程中遇到的问题  1.1发电机问题及解决措施  通常情况下,发电机过热问题的原因主要包括:(1)发电机操作过程没有严格按照正常的规范进行;(2)发电机自身的三相负荷电流不平衡,进而增加
期刊
摘要:随着当前我国对电力应用需求的进一步增加,用电要求也在不断提高,保障输电线路的安全稳定运行就显得比较重要。但受到诸多方面因素影响,输电线路运行中就会存在故障问题,影响线路的安全稳定使用,所以做好相应检修管理工作就显得格外重要。基于此,文章从输电线路运行故障以及检修管理的现状入手,就输电线路运行检修管理的技术方法实施详细探究,希冀能从理论层面对检修管理的研究,有助于解决实际线路运行问题。  关键
期刊
摘要:变电设备运维期间通过合理应用在线监测技术,不仅可以深化变电设备运维质量,同时还可以发现并解决变电设备运维故障问题,具有重要的应用意义。鉴于在线监测技术的重要性,本文主要以在线监测技术为研究对象,重点针对在线监测技术在变电设备运维管理中的优化措施进行总结与归纳,以期可以给变电设备高效、稳定运行提供良好保障。  关键词:变电设备;运维管理;在线监测;优化管理  前言:近些年来,为进一步加强变电设
期刊
摘要:随着科学技术水平的持续化提升,国内已经进入到了智能电力发展的全面时期,其中以智能变电站建设的数量增多最为明显。根据有关人员的调查统计发现,国内陆续的投运了较多的站点,其目的在于优化电力系统运输的流程以及质量,从而满足社会大众的切实需求。在长时间的调试过程当中,有关人员发现整个过程中存在较多的问题,这些问题如果不能得到科学的处理,那么势必会影响到调试工作的质量。因此,本文将会在接下来的部分对此
期刊
摘要:继电保护系统在智能变电站中发挥着至关重要的作用,是智能变电站的基础结构。在当今科学技术发达的社会背景下,应用先进技术手段对继电保护系统进行设计,能够促进硬件设施和软件结构的优化,为继电保护系统的平稳运行提供保障。继电保护系统在实际应用中需要加强对设备工作状态的监控,同时需要做好二次系统的整合工作,确保智能变电站安全且高效运转。文章分别从智能变电站继电保护的设计和应用两个方面展开分析与探究。 
期刊
摘要:为了可以更好的当前电气工程过程中存在的问题进行解决,需要将智能技术应用到电气自自动化控制系统当中。首先,本文深入分析了智能技术所发挥的优势,然后分析了电气自动化控制系统的一些功能。最后,分析了智能技术基础上的电气自动化控制和实现,进而大大提升了系统运行时候的安全性和有效性。  关键词:智能技术;电气自动化控制;实现  引言  在当前科学技术迅速发展的过程中,人工智能技术已经变为现代社会健康发
期刊