{"id":6448,"date":"2019-12-02T17:37:19","date_gmt":"2019-12-02T12:07:19","guid":{"rendered":"https:\/\/nuclearrambo.com\/wordpress\/?p=6448"},"modified":"2024-10-03T15:26:30","modified_gmt":"2024-10-03T09:56:30","slug":"radar-beamforming-to-track-target","status":"publish","type":"post","link":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/","title":{"rendered":"Radar Beamforming to track target"},"content":{"rendered":"\n<p>he Matlab phased array toolbox is a collection of many interesting algorithms and functions. With so many tools at your disposal, the phased array toolbox lets us build a complete end to end radar system. I tried the phased array toolbox for the first time to build a pulsed radar which can determine approximate azimuth angle of the target with respect to the radar. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Setting up the stage<\/h2>\n\n\n\n<p>In order to simulate a <a href=\"http:\/\/www.geo.uzh.ch\/microsite\/rsl-documents\/research\/SARlab\/GMTILiterature\/PDF\/Skolnik90.pdf\">radar system<\/a> in Matlab, you need to have everything defined. For example, the transmitter, the antenna system, the target itself and so on. Let us define a few things related to the radar before we proceed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">System specifications<\/h3>\n\n\n\n<p>Our operating frequency will be 9850MHz. The transmit power will be set at 5W and receiver preamplifier gain set to 10dB with a noise figure of 5. Additionally, we shall be transmitting a pulse with Linear frequency modulation for pulse compression. The LFM pulse will have sweep bandwidth of 5MHz. The radar pulse repetition frequency would be set to 10kHz resulting in a maximum unambiguous range of 15km.<\/p>\n\n\n\n<p class=\"has-text-align-center\">\\(R_{max}&nbsp; = \\frac{c}{2 \\times PRF}\\)<\/p>\n\n\n\n<p>Our pulse width will be equal to \\(1\\mu s\\) resulting in a range resolution of,<\/p>\n\n\n\n<p class=\"has-text-align-center\">\\(\\Delta R = \\frac{c\\times pulse width}{2} = 150 meters\\)<\/p>\n\n\n\n<p>Since we are going to transmit an LFM pulse, our range resolution increases. Higher the sweep bandwidth, higher is the pulse compression ratio (PCR) and better the range resolution gets.<\/p>\n\n\n\n<p class=\"has-text-align-center\">\\(\\Delta R = \\frac{c}{2 \\times B} = 30 meters\\)<\/p>\n\n\n\n<p>A staggering improvement in range resolution by a factor of 5. Further in this article we will also see how LFM improves the detection probability as compared to an unmodulated pulse.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The antennas<\/h3>\n\n\n\n<p>We begin by setting up a simple array antenna. In this example, we will use a Uniform Linear Array having 4 radiating elements. Below, we see the arrangement of the antenna array as well as its radiation pattern.<\/p>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/ula\/\" rel=\"attachment wp-att-6449\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/ULA.jpg\" alt=\"\" class=\"wp-image-6449\"\/><\/a><figcaption class=\"wp-element-caption\">Uniform linear array having 4 elements<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/ula_pattern\/\" rel=\"attachment wp-att-6450\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/ULA_pattern.jpg\" alt=\"uniform linear array beamforming\" class=\"wp-image-6450\"\/><\/a><figcaption class=\"wp-element-caption\">Radiation pattern of the uniform linear array<\/figcaption><\/figure>\n\n\n\n<pre class=\"wp-block-preformatted\">antenna=phased.ULA;\nantenna.NumElements = 4;\ncosineElement = phased.CosineAntennaElement;\nantenna.Element = cosineElement;\nantenna.ElementSpacing = (3e8\/9850e6)\/2;\nOpFreq = 9850e6;\nviewArray(antenna);\npattern(antenna,OpFreq,-180:180,0,...\n    'Type','directivity',...\n    'PropagationSpeed',3e8)\n<\/pre>\n\n\n\n<p>Next, we set up the transmit waveform as follows.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">% Waveform Specs\nwaveform=phased.LinearFMWaveform;\nwaveform.SweepBandwidth = 5e6;\nwaveform.SampleRate = 100e6;                    % 100 MHz sample rate\nwaveform.PRF=10000;                             % Pulse Repetition Frequency of 10000 pulses per second\nwaveform.PulseWidth=1e-6;                       % Pulse width of 1us\nnSamples = waveform.SampleRate\/waveform.PRF;    % Define pulses on 10000 samples\nb = getMatchedFilter(waveform);\nmatchedFilter = phased.MatchedFilter('Coefficients', b, 'SpectrumWindow','Hamming')\ny = step(waveform);\nt = (0:nSamples-1)\/waveform.SampleRate;<\/pre>\n\n\n\n<p>Along with the waveform, we also initialize our matched filter coefficients in this code.<\/p>\n\n\n\n<p>Next, we place a target parameters using the following code,<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">% Transmitter Specs for amplification\nTX=phased.Transmitter('Gain',20);\nTX.PeakPower = 50;\n\n\n% Target Specs\nTgtModel=phased.RadarTarget;\nTgtModel.MeanRCS = 0.1;\nTgtModel.OperatingFrequency = OpFreq;\ntgtDistance = 1.2e3;\ntgtAz = 0.25;\ntgtPos=[cos(tgtAz)*tgtDistance;sin(tgtAz)*tgtDistance;0];              % Target at 1.2 km distance, 14.3 degree azimuth\ntgtVel=[75*cos(tgtAz);75;0];                     % Radial velocity is 150 m\/sec\n% Platform Specs\nPlatformModel=phased.Platform;\nPlatformModel.InitialPosition = tgtPos;\nPlatformModel.Velocity = tgtVel;<\/pre>\n\n\n\n<p>The target is set to have an RCS of 0.1 square meters located at an azimuth angle of 0.25 radians (~14.3 degrees) and 1.2 km away.<\/p>\n\n\n\n<p>When we transmit our radar pulse, it propagates through the free space, hits the target and returns. The electromagnetic waves decay at a rate governed by square law. Also, the channel behaves differently for different frequencies. Therefore, we need to set the channel parameters as well to get a realistic result.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">% Channel Specs\nChannelModel = phased.FreeSpace;\nChannelModel.TwoWayPropagation=true;\nChannelModel.OperatingFrequency = OpFreq;\nChannelModel.SampleRate = waveform.SampleRate<\/pre>\n\n\n\n<center><p><script type=\"text\/javascript\">\n\tatOptions = {\n\t\t'key' : 'a488f095e80c8a74746e5fdca977eaea',\n\t\t'format' : 'iframe',\n\t\t'height' : 90,\n\t\t'width' : 728,\n\t\t'params' : {}\n\t};\n\tdocument.write('<scr' + 'ipt type=\"text\/javascript\" src=\"http' + (location.protocol === 'https:' ? 's' : '') + ':\/\/www.profitabledisplaynetwork.com\/a488f095e80c8a74746e5fdca977eaea\/invoke.js\"><\/scr' + 'ipt>');\n<\/script><\/p><\/center>\n\n\n\n<h2 class=\"wp-block-heading\">Transmitting the pulses<\/h2>\n\n\n\n<p>Most of the things that we need are ready for action. We shall send 64 pulses and receive them to form a radar data cube.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">for ii=1:nPulses\n    wf=step(waveform);                                                 % Generate waveform\n    [tgtPos, tgtVel] = step(PlatformModel,1\/prf);                     % Update target position\n    [~, tgtAng] = rangeangle(tgtPos, radarPos);                        % Calculate range\/angle to target\n    s0 = step(TX, wf);                                                 % Amplify signal\n    s1 = step(txArray,s0, tgtAng);                                     % Radiate the signal from the array\n    s2 = step(ChannelModel, s1, radarPos, tgtPos, radarVel, tgtVel);   % Propagate from radar to target and return\n    s3 = step(TgtModel, s2);                                           % Reflect signal from Target\n    s4 = step(rxArray,s3,tgtAng);                                      % Receive the signal at the array\n    s5 = step(rxPreamp,s4);                                            % Add rx noise\n    datacube(:,:,ii) = s5(:,:);                                        % Build data cube 1 pulse at a time\n    \nend<\/pre>\n\n\n\n<p>At the end of the loop, we end up with a 3-dimensional matrix containing data from 4 receive channels with a sample length of 10000 and we do this for 64 pulses.<\/p>\n\n\n\n<p>Based on this data cube, we can steer the receiver channels to look in certain direction. For example, we can digitally focus on \\(30^o\\) azimuth and observe the data in that direction. Let us try that.<\/p>\n\n\n\n<p>First, we initialize a <a href=\"https:\/\/in.mathworks.com\/help\/phased\/ref\/phased.phaseshiftbeamformer-system-object.html#mw_8a8c8a2d-c74b-4887-b027-86f84f42d534\">beamformer object<\/a> to steer the main lobe towards \\(30^o\\) azimuth. Apply the beamforming over one pulse width data samples and observe it&#8217;s output.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">beamformer3 = phased.PhaseShiftBeamformer('SensorArray', antenna, ...\n    'OperatingFrequency',OpFreq, 'Direction', [30; 0]);\nbf3 = beamformer3(datacube(:, :, 13));\nplot(t(1:10000), abs(bf3));<\/pre>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/steered-beam\/\" rel=\"attachment wp-att-6462\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/steered-beam.jpg\" alt=\"beam steering radar mimo\" class=\"wp-image-6462\"\/><\/a><figcaption class=\"wp-element-caption\">Steered beam towards 30 degrees azimuth<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/radar_30deg\/\" rel=\"attachment wp-att-6460\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/radar_30deg.jpg\" alt=\"beam forming in matlab radar\" class=\"wp-image-6460\"\/><\/a><figcaption class=\"wp-element-caption\">Data after steering the beam towards 30 degrees Azimuth.<\/figcaption><\/figure>\n\n\n\n<p>Clearly, the pulse is hardly visible in this noisy plot. Based on what I said earlier, the modulated pulse helps increase the probability of target detection. By running a matched filter over this data, we will see if we can extract anything out of this.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">mf = abs(step(matchedFilter, bf3));\nplot(t, mf);<\/pre>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/beamforming-matched-filter\/\" rel=\"attachment wp-att-6461\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/beamforming-matched-filter.jpg\" alt=\"\" class=\"wp-image-6461\"\/><\/a><figcaption class=\"wp-element-caption\">Matched filtering definitely helped us detect the reflected pulse embedded in noise<\/figcaption><\/figure>\n\n\n\n<p>Now, let us steer the beam to 15 degrees (close to where our target is located) and observe the antenna pattern as well as the processed data output. Ideally, we should see that the detected pulse has a higher amplitude as compared to when we looked towards \\(30^o\\) azimuth.<\/p>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/beamforming-pattern-15-degrees\/\" rel=\"attachment wp-att-6465\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/beamforming-pattern-15-degrees.jpg\" alt=\"\" class=\"wp-image-6465\"\/><\/a><figcaption class=\"wp-element-caption\">15 degrees antenna radiation pattern<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/15-degrees-pulse-output\/\" rel=\"attachment wp-att-6464\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/15-degrees-pulse-output.jpg\" alt=\"mimo radar beam steering example\" class=\"wp-image-6464\"\/><\/a><figcaption class=\"wp-element-caption\">Raw radar data when we are observing 15 degrees azimuth<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/15-degrees-mf-output\/\" rel=\"attachment wp-att-6463\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/15-degrees-mf-output.jpg\" alt=\"\" class=\"wp-image-6463\"\/><\/a><figcaption class=\"wp-element-caption\">Matched filtering on raw data<\/figcaption><\/figure>\n\n\n\n<p>Comparing the raw data, we can see an increased amplitude of the reflected pulse when we beamform at \\(15^o\\) azimuth. Correspondingly, the matched filter output also shows a better peak amplitude.<\/p>\n\n\n\n<center><p><script type=\"text\/javascript\">\n\tatOptions = {\n\t\t'key' : 'a488f095e80c8a74746e5fdca977eaea',\n\t\t'format' : 'iframe',\n\t\t'height' : 90,\n\t\t'width' : 728,\n\t\t'params' : {}\n\t};\n\tdocument.write('<scr' + 'ipt type=\"text\/javascript\" src=\"http' + (location.protocol === 'https:' ? 's' : '') + ':\/\/www.profitabledisplaynetwork.com\/a488f095e80c8a74746e5fdca977eaea\/invoke.js\"><\/scr' + 'ipt>');\n<\/script><\/p><\/center>\n\n\n\n<h2 class=\"wp-block-heading\">Basic tracking<\/h2>\n\n\n\n<p>A very basic target tracking algorithm works by transmitting two pulses which are slightly offset in either azimuth or elevation (whichever direction you want to track, most of the times both directions). This technique is known as lobing. We can do a similar thing digitally over our radar data cube. The only thing required is that the target should fall in our main lobe.<\/p>\n\n\n\n<p>First, I did a steered the beam towards \\(20^o\\) and then another beam \\(4^o\\) apart. We collect the data from both the beams, run a matched filter over it and observe the obtained target peaks as follows.<\/p>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/lobing-example\/\" rel=\"attachment wp-att-6466\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"420\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/lobing-example.jpg\" alt=\"digital tracking of target\" class=\"wp-image-6466\"\/><\/a><figcaption class=\"wp-element-caption\">The two beams result in a difference in amplitudes of received pulses.<\/figcaption><\/figure>\n\n\n\n<p>Had the targets been centred in the main lobe (boresight), we would see equal amplitudes. Over the next few iterations, we try to minimize the difference by increasing the beam azimuth angle.<\/p>\n\n\n\n<p>Remember that we are not changing the axis of our radar platform anywhere but simply working on the radar data cube we obtained previously.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">for ii=1:nPulses\n    % First beam\n    beamformer1 = phased.PhaseShiftBeamformer('SensorArray',antenna,...\n        'OperatingFrequency',OpFreq,'PropagationSpeed',3e8,...\n        'Direction',[Az_;0],'WeightsOutputPort',true);\n    % Second offset beam\n    beamformer2 = phased.PhaseShiftBeamformer('SensorArray',antenna,...\n        'OperatingFrequency',OpFreq,'PropagationSpeed',3e8,...\n        'Direction',[Az_ + 4;0],'WeightsOutputPort',true);\n    [bf0(:, ii), w0] = beamformer1(datacube(:, :, ii));\n    [bf1(:, ii), w1] = beamformer2(datacube(:, :, ii));\n\n    % Match filter both beams\n    matchFiltered1(:, ii) = abs(step(matchedFilter, bf0(:,ii)));\n    matchFiltered2(:, ii) = abs(step(matchedFilter, bf1(:,ii)));\n    \n    [pk1, idx] = max(matchFiltered1(:,ii));\n    pk2 = max(matchFiltered2(:,ii));\n    \n    if (pk1 - pk2) &gt; 0\n        Az_ = Az_ - 0.5;\n    end\n    if (pk1 - pk2) &lt; 0\n        Az_ = Az_ + 0.5;\n    end\nend<\/pre>\n\n\n\n<p>Eventually, the two target peaks become equal and finally end up with <strong>Az_<\/strong> value close to the actual target position.<\/p>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/target-angle\/\" rel=\"attachment wp-att-6467\"><img loading=\"lazy\" decoding=\"async\" width=\"286\" height=\"266\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/target-angle.png\" alt=\"beamforming mimo target tracking\" class=\"wp-image-6467\"\/><\/a><figcaption class=\"wp-element-caption\">Az_ is the estimated target position and tgtAng is the actual target position<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>I am just now learning concepts of MIMO, phased array radars and target tracking. I toyed around the Matlab phased array toolbox to get my hands dirty. There is a <a href=\"https:\/\/in.mathworks.com\/help\/phased\/ref\/phased.sumdifferencemonopulsetracker.step.html\">Monopulse target tracking algorithm<\/a> which is widely used and my next post could be about that. It allows us to accurately track moving targets.<\/p>\n\n\n\n<p>Additionally, we can also steer the transmit beam and obtain much better results. That is when we would enter the realm of active electronic scan arrays.<\/p>\n\n\n\n<p>For those who want the code, email me.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>he Matlab phased array toolbox is a collection of many interesting algorithms and functions. With so many tools at your disposal, the phased array toolbox lets us build a complete end to end radar&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":6449,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1212,1562],"tags":[1722,1721,1647,1720,1551],"class_list":["post-6448","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-electronics-2","category-tutorials","tag-antennas","tag-arrays","tag-dsp","tag-lfm","tag-radar"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Radar Beamforming to track target<\/title>\n<meta name=\"description\" content=\"I tried the phased array toolbox for the first time to build a pulsed radar which can determine approximate azimuth angle of the target with respect to the radar.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Radar Beamforming to track target\" \/>\n<meta property=\"og:description\" content=\"I tried the phased array toolbox for the first time to build a pulsed radar which can determine approximate azimuth angle of the target with respect to the radar.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/\" \/>\n<meta property=\"og:site_name\" content=\"Nuclearrambo\" \/>\n<meta property=\"article:published_time\" content=\"2019-12-02T12:07:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-03T09:56:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/ULA.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"560\" \/>\n\t<meta property=\"og:image:height\" content=\"420\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"nuclearrambo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@darkusul\" \/>\n<meta name=\"twitter:site\" content=\"@darkusul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"nuclearrambo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/\"},\"author\":{\"name\":\"nuclearrambo\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c\"},\"headline\":\"Radar Beamforming to track target\",\"datePublished\":\"2019-12-02T12:07:19+00:00\",\"dateModified\":\"2024-10-03T09:56:30+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/\"},\"wordCount\":1037,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#organization\"},\"keywords\":[\"antennas\",\"arrays\",\"dsp\",\"lfm\",\"radar\"],\"articleSection\":[\"Electronics\",\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/\",\"name\":\"Radar Beamforming to track target\",\"isPartOf\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#website\"},\"datePublished\":\"2019-12-02T12:07:19+00:00\",\"dateModified\":\"2024-10-03T09:56:30+00:00\",\"description\":\"I tried the phased array toolbox for the first time to build a pulsed radar which can determine approximate azimuth angle of the target with respect to the radar.\",\"breadcrumb\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/nuclearrambo.com\/wordpress\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Radar Beamforming to track target\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#website\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/\",\"name\":\"Nuclearrambo\",\"description\":\"Information is FREE! Progress is MUST! Awakening is inevitable!\",\"publisher\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/nuclearrambo.com\/wordpress\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#organization\",\"name\":\"Nuclearrambo\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png\",\"contentUrl\":\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png\",\"width\":1489,\"height\":1152,\"caption\":\"Nuclearrambo\"},\"image\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/twitter.com\/darkusul\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c\",\"name\":\"nuclearrambo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g\",\"caption\":\"nuclearrambo\"},\"description\":\"Salil is an electronics enthusiast working on various electronics systems. In his free time he writes on the blog, talks over ham radio or builds circuits. He has Yaesu FT2900R VHF transceiver, FT450D HF transceiver, TYT UV8000E and Quansheng UVK6 Handheld transceivers.\",\"sameAs\":[\"http:\/\/nuclearrambo.com\/wordpress\"],\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Radar Beamforming to track target","description":"I tried the phased array toolbox for the first time to build a pulsed radar which can determine approximate azimuth angle of the target with respect to the radar.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/","og_locale":"en_US","og_type":"article","og_title":"Radar Beamforming to track target","og_description":"I tried the phased array toolbox for the first time to build a pulsed radar which can determine approximate azimuth angle of the target with respect to the radar.","og_url":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/","og_site_name":"Nuclearrambo","article_published_time":"2019-12-02T12:07:19+00:00","article_modified_time":"2024-10-03T09:56:30+00:00","og_image":[{"width":560,"height":420,"url":"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2019\/12\/ULA.jpg","type":"image\/jpeg"}],"author":"nuclearrambo","twitter_card":"summary_large_image","twitter_creator":"@darkusul","twitter_site":"@darkusul","twitter_misc":{"Written by":"nuclearrambo","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#article","isPartOf":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/"},"author":{"name":"nuclearrambo","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c"},"headline":"Radar Beamforming to track target","datePublished":"2019-12-02T12:07:19+00:00","dateModified":"2024-10-03T09:56:30+00:00","mainEntityOfPage":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/"},"wordCount":1037,"commentCount":1,"publisher":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#organization"},"keywords":["antennas","arrays","dsp","lfm","radar"],"articleSection":["Electronics","Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/","url":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/","name":"Radar Beamforming to track target","isPartOf":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#website"},"datePublished":"2019-12-02T12:07:19+00:00","dateModified":"2024-10-03T09:56:30+00:00","description":"I tried the phased array toolbox for the first time to build a pulsed radar which can determine approximate azimuth angle of the target with respect to the radar.","breadcrumb":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/nuclearrambo.com\/wordpress\/radar-beamforming-to-track-target\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/nuclearrambo.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Radar Beamforming to track target"}]},{"@type":"WebSite","@id":"https:\/\/nuclearrambo.com\/wordpress\/#website","url":"https:\/\/nuclearrambo.com\/wordpress\/","name":"Nuclearrambo","description":"Information is FREE! Progress is MUST! Awakening is inevitable!","publisher":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/nuclearrambo.com\/wordpress\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/nuclearrambo.com\/wordpress\/#organization","name":"Nuclearrambo","url":"https:\/\/nuclearrambo.com\/wordpress\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/","url":"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png","contentUrl":"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png","width":1489,"height":1152,"caption":"Nuclearrambo"},"image":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/twitter.com\/darkusul"]},{"@type":"Person","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c","name":"nuclearrambo","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g","caption":"nuclearrambo"},"description":"Salil is an electronics enthusiast working on various electronics systems. In his free time he writes on the blog, talks over ham radio or builds circuits. He has Yaesu FT2900R VHF transceiver, FT450D HF transceiver, TYT UV8000E and Quansheng UVK6 Handheld transceivers.","sameAs":["http:\/\/nuclearrambo.com\/wordpress"],"url":"https:\/\/nuclearrambo.com\/wordpress\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts\/6448","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/comments?post=6448"}],"version-history":[{"count":19,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts\/6448\/revisions"}],"predecessor-version":[{"id":8443,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts\/6448\/revisions\/8443"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/media\/6449"}],"wp:attachment":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/media?parent=6448"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/categories?post=6448"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/tags?post=6448"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}