Add multiple vias or feeds in a pcb antenna

7 views (last 30 days)
Ciro Grieco
Ciro Grieco on 28 Jan 2022
Edited: Janakinadh on 29 Apr 2022
rect1 = antenna.Rectangle("Center",[0 0],"Length",75e-3,"Width",37.5e-3);
rect2 = antenna.Rectangle("Center",[0 0],"Length",150e-3,"Width",75e-3);
p = pcbStack("BoardShape",rect2,"Layers",{rect1, rect2});
p.ViaLocations = [0 0 1 2];
show(p);
Error using surf2patch (line 47)
Z must be size 2x2 or greater.

Error in em.PCBStructures/makecylinder

Error in pcbStack/createGeometry (line 1081)
tempViaGeom{i} = em.PCBStructures.makecylinder(dia/2,viaHeight(i),50,[vias(i,1:2) layer_heights(vias(i,4))]);

Error in em.MeshGeometry/protectedshow

Error in em.MeshGeometryAnalysis/show (line 31)
protectedshow(obj);
This is a script, if I run the script I get this error messege. I would like to add 2 vias (in this example I add only one, but I would like to know how I can add more) but I get this error, I don't understand why, there isn't one example on this in the documentation

Answers (1)

Janakinadh
Janakinadh on 29 Apr 2022
Edited: Janakinadh on 29 Apr 2022
Hello,
The visualization seems to fail because the ViaDiameter is empty.
rect1 = antenna.Rectangle("Center",[0 0],"Length",75e-3,"Width",37.5e-3);
rect2 = antenna.Rectangle("Center",[0 0],"Length",150e-3,"Width",75e-3);
p = pcbStack("BoardShape",rect2,"Layers",{rect1, rect2});
p.ViaLocations = [0 0 1 2];
p.ViaDiameter
ans = []
So, try to visualize after setting the ViaDiameter.
p.ViaDiameter = 1e-3;
show(p)
You can add 2 vias by doing something such as:
p.ViaLocations = [0 0 1 2;0.01 0 1 2];
show(p)
Hope this helps.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!