Repository navigation
SWR/Impedance calculation way out #467
Replies: 6 comments 10 replies
|
The mesh looks good, nice to see easyMesh4openEMS in action here! From your screenshot, it seems that your boundary condition is too close. It should be at least lambda/4 away from the device. If you are using PML boundary, that needs some additional margin: PML is implemented inside the simulation volume, with one cell per PML order, e.g. 8 cells on each side are occupied by PML8 material. That said, there might also be a mistake in your measurement. In openEMS, the lumped port is truely floating. In measurement, if the coax feedline was attached to ground plane with no ferrite to suppress common mode, the coax shield will then become part of your radiating structure. This would detune the antenna, especially if the PCB ground itself is small. |
|
Any reasons you can think of as to why the larger vertical ground plane design did not affect the SWR while the horizontal one did ? I would have thought the vertical one (the same axis as the antenna section), that more closely matches the real world would have been the one that brought the simulation in line ? On the PCB I have an UFL with a 0402 0R to the antenna drive track (there is another 0402 0R to the actual drive circuit removed). I think reasonably closely matches the Openems design (well the PCB has an 8mm long 50 Ohm track (over an internal ground plane (4 layer PCB)) to the antenna feed point) and the VNA is calibrated to the UFL connector on its lead. So I think the openems design reasonably closely matches. However I am only simulating a single copper plane rather than the actual 4. I did try making that single plane the thickness of the PCB in case that helped. Mind you I'm not sure the material priority settings I was using were actually working and maybe the substrate material was being used. I will play a bit more with that. Attached is the Python code again as a *.py and *.txt (in case this system has issues with *.py): sim-antenna-example.py Thanks for you input :) |
|
Design2 "python sim-antenna-example.py 2" is the main one. |
|
A bit of feedback for anyone interested. (repeated sent to wrong discussion) I have played with many more Openems designs, mainly trying to produce a model that is closer to the reality, but still simple.
Now I know with simulations, it can be "easy" to create modules and simulations that get results that look Ok, but are really quite wrong. However this is a prototype PCB, produced by JLCPCB, and looking at the order I'm not 100% sure if it has the expected 0.22mm dielectric stackup, it could have the 0.1mm. I will try and work out a way to determine this. Simulation model: Hope this is of interest, I will continue playing and also change my code to get the actual radiated power which is really what I wanted to do in the first place in order to try different antenna designs. |
















Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Hi, I am new to Openems and am trying to use Openems to simulate a simple 868 MHz PCB antenna design that I have a PCB for so I can experiment with antenna designs. It certainly isn't a good 868 MHz antenna! After playing for a bit I have a Python program generating a simplified PCB arrangement, meshing it and running the Openems simulation with that.
In general it appears to be working an yielding return loss and SWR graphs that are about right in terms of frequencies, but with very high SWR/Return loss that does not match those provided by a NanoVNA on the real PCB. I have played around with a lot of aspects and am currently using the easyMesh4openEMS meshing system. No mater what I try I don't seem to be able to get my simulation to reasonably match the real world.
My Python code simply creates a PCB substrate, places a square ground plane on this and then creates a quaterwave PCB track antenna to the right of this roughly matching the PCB design.
Simulating a large flat plate with a quaterwave antenna perpendicular to this appears to work reasonably well (python sim-antenna-example.py 1).
Simulating my real PCB ((python sim-antenna-example.py 2) which is a PCB antenna with quite a small ground plane, is way off.
The nanoVNA reports a SWR of about 5, while Openems reports about 23 with a very low antenna impedance.
I wonder if anyone can provide me with any pointers on what I am doing wrong ?
The results look like the attached image vs the NanoVNA and the Python code is attached.
This is using the GIT OpenEms with Git easyMesh4openEMS on Linux Fedora43.
All reactions