MATLAB Answers

Collector for array formed of replicated subararrays

4 views (last 30 days)
Katia
Katia on 18 Feb 2020
Commented: Katia on 20 Feb 2020
I'm trying to use the Collector object with an array formed of replicated subarrays, but I keep receiving messages of 'not enough inputs'; that is:
collector = phased.Collector('Sensor',array,'OperatingFrequency',fc);
rxData = collector(sig,targetAngle);
'Not enough input arguments. Expected 3, got 2.'
Could someone please help me with that? What other inputs are necessary?
Another question regarding either the Collector or Radiator objects, do they take into account the antenna gain at the designated angle of the specified sensor when simulating the transmitting/received signal?
Thanks in advance.

  0 Comments

Sign in to comment.

Accepted Answer

Honglei Chen
Honglei Chen on 18 Feb 2020
They do consider the gain at different angles.
As to the input, you may want to check with your setting in array. Did you turn on steering in the replicated subarray? if so, you need to pass in the steering information to the function call.
HTH

  3 Comments

Katia
Katia on 19 Feb 2020
Thanks for the fast reply.
Yes, I did set the steering in the replicated array. This is what I have:
array =
phased.ReplicatedSubarray with properties:
Subarray: [1×1 phased.URA]
Layout: 'Rectangular'
GridSize: [6 1]
GridSpacing: [0.6000 1]
SubarraySteering: 'Phase'
PhaseShifterFrequency: 1.2600e+09
NumPhaseShifterBits: 0
ws = steeringvec(fc,targetAngle);
rx = collector(sig,targetAngle,ws);
rx = collector(sig,targetAngle,ws);
Error using phased.Collector/parenReference
Not enough input arguments. Expected 4 (in addition to System object), got 3.
Honglei Chen
Honglei Chen on 19 Feb 2020
Since you turned on the steering, you also need to specify where you want to steer the elements to, you may want to try
rx = collector(sig,targetAngle,ws,targetAngle)
HTH

Sign in to comment.

More Answers (0)


Translated by