PCB Antenna Design and Optimization
Design PCB antennas with arbitrary planar geometry using Antenna Toolbox™ and the PCB Antenna Designer app. The resulting PCB antennas can consist of multilayer patches and slots created with any arbitrary metal layer. Draw arbitrary shapes with a graphical point-and-click approach and specify variables to parametrize the design and automate the PCB design space exploration. Create arbitrary metal layers by applying Boolean operations in a chosen order and connect them using vertical interconnects (vias). Use MATLAB® to programmatically describe your own recipe for the design of a PCB antenna and fabricate it through Gerber file generation.
Verify that the described PCB geometry is feasible and proceed with electromagnetic analysis to determine far and near field radiation, current distribution, and port properties such as impedance and S-parameters. Antenna Toolbox uses the Method of Moments to compute the antenna performance and allows you to customize the mesh density in metal and dielectric layers to trade off accuracy and speed.
Optimize the antenna performance using state-of-the-art surrogate methods. You start by parametrizing the geometry of the PCB antenna by defining variables that are linked directly or indirectly to the geometry. First, you choose which variables you want to tune, and for those, you define the bounds. Then you select the objective function, such as gain or bandwidth, and add a constraint to the optimization problem. The SADEA algorithm will use AI to create a surrogate model and optimize your antenna.
Highlights:
- Design PCB antennas with arbitrary geometry
- Use variables to programmatically define the PCB geometry and metal layers
- Analyze the antenna performance using the Method of Moments
- Customize and validate the mesh of the PCB structure to trade off accuracy and speed
- Optimize the antenna performance using surrogate methods
Published: 20 Sep 2022
Welcome to this MathWorks video in which we are going to design, analyze, and optimize a planar antenna using the PCB Antenna Designer app, which is part of Antenna Toolbox. This reference shows the geometry of the antenna, and its dimensions are given in the table. In this slide, we will see a series of steps that can be used to create the geometry of the antenna.
The first step is to create the ground plane with the dimensions Lg and Wg, with the center at the origin. In order to create the top layer, you'll have to follow the steps from serial number 2 to 12 in this particular order. The first step is to create this particular square with the center at the origin and then subtract all the rectangles following the square in order to create the final structure.
The next step is to create these four rectangles with the dimensions given in the table. And then subtracting these rectangles from the square will give the nine smaller squares, as shown in the figure. The next step is to create these four slots with the length Wp and width S1 with different centers, as shown in the table.
The last step is to create the L shape using the two rectangles, as shown in the table. In order to create this structure, we basically create one square and then subtract all the rectangles from that square in order to obtain the final structure. Now, let us go to the PCB Antenna Designer app and start constructing the structure in the app. Open the PCB Antenna Designer app by typing PCB Antenna Designer in the command line and hitting enter.
Another way to open the app is to go to the Apps gallery and go to the signal processing and communication section, and you can see the icon for the PCB Antenna Designer. Click on the icon to open the app. For now I just hit enter here, and you can see that the MATLAB is in the busy state, and the app will open up in a minute. Once the app is opened up, you can see that there are two tabs in the app. One is the Design tab, and the other one is the Analysis tab.
The Design tab has all the features to create a structure. It has the shapes gallery, the Boolean operations. It has options to Add Feeds, Vias, and the Load. And it has options to validate the design. You can also export your design to the workspace or as a script.
The Analysis tab is used to mesh the structure and analyze it. It has options to plot impedance and S-parameters of the antenna. You can also plot Current, 3D Pattern, Azimuth, Elevation Pattern. The Analysis tab also has an Optimize button, which can be used to optimize your structure. Click on the New Session button to proceed further. You can see that there are three panels on the left hand side, Canvas on the center, and the 3D-View on the right side.
There are three panels on the left side. The first panel is the PCB Stack. The second one is the Properties panel, and the third one is the Design Variables panel. The PCB Stack panel displays all the shapes, the order of the operations, and the feed, vias, and the loads that are present in the structure. Whichever layer is selected here, the properties for that layer are displayed under the Properties panel.
The Design Variables panel is used to create the design variables, which can be used to build a structure, and those variables can also be used to optimize the antenna. The 2D canvas that is present in the center of the app is an interactive canvas which is used to draw the shapes, resize them, and perform Boolean operations on them. The window on the right shows the 3D view of the antenna, which gives the entire stack above the antenna, including the dielectrics and metal layers.
Let us start the design by creating the design variables in our structure. Click on the plus symbol here to add a new variable. Change the variable name as Lg and assign the value as 45. Similarly create all the variables that are there in the structure. The first step in the geometric construction is creating the whole shape. The BoardShape defines the dielectric of the antenna structure. Click on the rectangle, move your pointer onto the 2D canvas, and click and drag to draw a rectangle.
The rectangle can be resized using these points, as shown here. Open the Property panels to see the properties of the rectangle and modify the properties of the rectangle to the center as 0 comma 0, length as Lg, and width as Wg. Once the BoardShape is created, the next step is to create the layers of the antenna. The antenna geometry has three layers-- the ground plane, the dielectric, and the top layer. Go to the Layers property and click on the Add Layers to add a metal layer.
Once the MetalLayer1 is displayed in the tree, click on the rectangle and drag on the canvas to draw the rectangle. Once the rectangle is created, modify the properties of the rectangle to center as 0 comma 0, length as Lg, and width as Wg. The next step is to add the dielectric layer. Click on the Add Layer property and Add Dielectric Layer. The dielectric layer will take the same shape as the BoardShape that was defined earlier.
The next step is to create the top layer of the antenna. Click on the Add Layer and Add Metal Layer. Click and drag the rectangle, modify the properties of the rectangle to center at the origin and length and width as shown here. The next step is to create four different rectangles, and subtracting those rectangles from this particular square is going to create nine smaller squares, as shown previously in the presentation.
Click on the rectangle here. Click and drag to draw a rectangle. Modify the properties of the rectangle to center as Wp plus Ws by 2, length as Wp, and put 3 plus Ws by 2, and width as Ws. Now we have to create three more rectangles with similar length and width but varying centers. Right-click on the Rectangle6 and copy it. Right-click on the MetalLayer2 to paste it. It will create another rectangle, which says Rectangle6_Copy1.
Perform the same operations two more times to create two more copies of the Rectangle6. Now modify the dimensions of Rectangle6_Copy1 and change the center to minus Wp plus Ws by 2. This will move the rectangle to the negative side. Similarly, modify the properties of the Rectangle6_Copy2 and Rectangle6_Copy3 in order to create four different rectangles. Now select these four rectangles from the tree and click on the Add operation.
Once the Boolean add operation is performed, select Rectangle5 and then select the Rectangle6 and click on the Subtract operation. This operation will subtract four smaller rectangles from the square and create nine smaller squares. In the similar way, we add rectangles for the other slots and the L shape slot and subtract those rectangles from the Rectangle5 in order to create the final structure.
Once the sector is ready, click on the Add Feed button. You can see that Feed1 is populated under the Feed option on the tree. Change the StartLayer and StopLayer so that the feed is given from the top to the bottom layer. Since our top layer is MetalLayer2, keep the StartLayer as MetalLayer2 and change the StopLayer to MetalLayer1. Now the feed will be defined from the top layer to the bottom layer.
Change the center of the feed to the points given by Px and Py. Now you can see that the feed location is defined here. Click on the Feed and change the FeedDiameter to 0.25. Once the feed is defined, click on the Validate Design button to validate your design. Now you can see that all the tests are passed, and your structure is ready for simulation.
Go to the Analysis tab and enter the Center Frequency as 5.5 gigahertz, Frequency Range from 4.5 to 6.5. For this particular structure, I'm going to do a manual mesh instead of an automesh. Click on the Analysis button to change the Meshing to manual mode. Assign the Max Edge Length and Min Edge Length to 0.0014 meters and the Growth Rate to 0.76. / Click on the OK button.
Now you can run the Impedance, S-parameters, Current, 3D Pattern, Azimuth, and Elevation Pattern on this particular antenna. Click on the S-parameter plot in order to plot the S-parameters for the range from 4.5 to 6.5. You can see that a dialogue opens up showing the progress of the simulation for 21 points. The simulation is completed, and you can see the S-parameters from 4.5 to 6.5 gigahertz. Similarly, you can plot the gain for this particular antenna, and you can see that the maximum value is 8.23 dB at 5.5 gigahertz. The mesh can also be plotted by selecting the option on the Analysis Tab. And this is the mesh block for this particular structure.
The next step is to perform optimization on the antenna. Once you click on the Optimize button, a separate window will open up where the settings for the optimization can be entered. So click on the Optimization button, which is there on the Analysis tab. And within a minute, a separate window will open up. The Optimizer tab has different options to set up the optimization. You can see that there is an option for selecting the objective function. You can enter the frequency range, the center frequency. You can select the optimizer to SADEA optimizer or Surrogate Opt and the maximum number of Iterations.
You can also set whether you want to use Parallel Computing when performing the operation or not. On the left-hand side, you have the Design Variables panel, which was created earlier. And in the second panel, you have the constraints that you can set when running the optimization. So here, if you click on this dropdown, so you can see that there are all these constraints-- that is, the Area, Volume, S11, Gain, Front to Back Lobe Ratio. All these can be set as a constraint function, and the value can be given here.
In this example, let us set the objective function for maximizing the gain. The other things that you can set are maximize the front-to-back ratio, maximize the bandwidth, or you can minimize the area. Click on the Maximize Gain for the objective function. Select the frequency range and give only one value that is 5.5. You only want to maximize the gain at the center frequency of 5.5. Leave the optimizer to SADEA and take the option for Parallel Computing and select the design variables that you want to include in the optimization.
In this example, I've selected S1, Lx, and Ly. I have added the Lower Bounds and the Upper Bounds for all these variables. So the optimization problem that I'm setting here is to maximize the gain while keeping the S11 value less than minus 10 dB at the frequency of 5.5. Once the optimization problem is set, click on the Run button on the Optimizer tab.
So the optimization is completed, and we have the values for the gain and the S11 constraints for the 100 iterations. And if you can see at the bottom, you have the value of the objective function and the variables that were chosen for the optimization. That is S1, Lx, and Ly. If you are happy with the result, then click on the Accept button so that the design variables are replaced with the variables that are obtained in the optimization. You will see that the values of Lx, S1, and Ly have been updated in the design variables panel.
And I've done the simulation again with the updated structure, and the pattern is shown with a maximum value of 8.5 dB at 5.5 gigahertz. And the S-parameters for this particular antenna is well below minus 10 dB for the required range of frequencies. In this way, you can design, analyze, and optimize any PCB antenna using the PCB Antenna Designer app. Thank you.