|
| 1 | +Based on the measurement, Analyzer did not provide accurate SWR results. The raw SWR |
| 2 | +was very dependent on frequency and did not match an expected SWR. |
| 3 | + |
| 4 | +The raw SWR samples are shown below: |
| 5 | + |
| 6 | +Freq[Hz]/Expected SWR 1 1,5 2 3 4 7,8 20 |
| 7 | +3000000 1,00517 1,14305 1,55263 2,43736 3,28571 6,40952 16,12222 |
| 8 | +7000000 1,00504 1,14516 1,53968 2,38526 3,15544 5,93103 13,83333 |
| 9 | +9000000 1,00482 1,15789 1,53251 2,32927 3,07463 5,6129 11,98413 |
| 10 | +10500000 1,00442 1,14634 1,49639 2,24953 2,92593 5,20588 10,2755 |
| 11 | +11500000 1,0042 1,13889 1,46739 2,14992 2,76547 4,77483 8,95402 |
| 12 | +14000000 1,00386 1,1346 1,41396 1,97744 2,47143 3,88776 6,27692 |
| 13 | +21000000 1,00377 1,1477 1,40177 1,90788 2,3211 3,41633 5,03364 |
| 14 | +28000000 5,8951 1,1529 1,43052 2,02791 2,48699 3,83 5,8951 |
| 15 | + |
| 16 | +Therefore a calibration is highly recommended. It was tested many interpolation techniques with |
| 17 | +various results. Very negative think was a strong frequency dependence. Therefore the |
| 18 | +Antenna analyzer bandwidth (1-30MHz) was divided into the chunks - 30 chunks; 1per 1MHz |
| 19 | + |
| 20 | +After bandwidth splitting, it was possible to analyze the SWR curve and find a technique |
| 21 | +for computing real (expected) SWR from raw SWR. The best interpolation result returned a polynominal |
| 22 | +function order 3 |
| 23 | + |
| 24 | +Folowing formula shows how the rela SWR is computed by Antenna Analyzer. |
| 25 | + |
| 26 | +real SWR = coef3 * RAW_SWR^3 + coef2 * RAW_SWR^2 + coef1 * RAW_SWR + con |
| 27 | + |
| 28 | +where coef3..1 and con are pre-computed values for each chunk. The coefficients are computed by calibration.py |
| 29 | +and have to be copy&pasted to arduino source code. |
| 30 | + |
| 31 | +What does the utility calibration.py do: |
| 32 | + |
| 33 | +1) calibration.py connects the Antenna Analyzer |
| 34 | +2) User is asked to enter a calibration Load |
| 35 | + example "500" means: user has connected 500 Ohm dummy load and calibration can start |
| 36 | +3) calibration.py receives SWR values from Antenna Analyzer for every bandwidth chunk |
| 37 | +4) User should repeat steps 2 and 3 with various dummy loads - recommended dummy load range is 50 - 1000 Ohm |
| 38 | +5) If user enters an empty string then the utility computes the coefficients. |
| 39 | +6) The coefficients are printed as C-array initialization structure. |
| 40 | +7) The C-array initialization structure has to be copy&pasted to arduino source code - initialization part |
| 41 | +8) The arduino source code has to be compiled and uploaded to Arduino. |
| 42 | + |
0 commit comments