玩天线、玩对讲机的对NanoVNA应该都玩过吧,没玩过的也见过,至少也是听过的。一个小小的盒子,两根SMA头,测驻波、画史密斯图,这就是穷人的第一台矢网。
这个方案来自日本开发者edy555,github的开源仓库是2017年建的,到现在有1418颗星了。

整机是这样的,2.8寸屏加一块电路板,电池充电电路都在上面。整个就是一个PCB裸露的状态,没有任何外壳给它遮风挡雨。
先说矢网(矢量网络分析仪)是什么东西。搞射频的用矢网就和我们搞硬件的用万用表示波器一个道理,它用来测一个器件对射频信号的响应。反射多少(S11)、传过去多少(S21),天线匹配好不好、滤波器通带在哪,一扫就出来了。常见的品牌台式矢网几万到几十万,而NanoVNA只需要两百块。

这是官方框图,我们顺着它把测驻波的路径梳理一遍。Si5351锁相环出激励信号,打到被测件上。被测件挂在SMA口,板上的电阻桥把入射和反射分开。射频信号频率太高,不能直接采,SA612混频器把它搬到音频频段。TLV320AIC3204这个音频Codec负责把中频采样成数字信号。
这个里面还有一颗STM32F072单片机,它负责拿到数据做FFT,算出幅度和相位,一比较,驻波比和阻抗就画出来了。
最离谱的是混频这颗SA612,这是收音机里几毛钱一颗的双平衡混频片。板子上焊了三颗,拿音频Codec当ADC用,硬是被这套架构凑成了射频仪器。为什么不直接采射频信号呢?看看原理图就明白了,STM32F072这颗M0单片机自带的ADC又慢又糙,根本采不动几十兆赫兹的信号。但是如果把射频先搬到音频频段,音频Codec便宜量大精度还高,这套超外差的思路收音机用了一百年,用来做这仪器手拿把掐。标称50kHz到300MHz,用谐波能摸到900MHz,一屏101个点。真是天才的想法!

这是模拟前端的部分原理图,左边26MHz温补晶振加Si5351,右边三颗SA612一字排开。

Codec这页原理图的角落还留着作者的邮箱和推特。

PCB照片,两颗SMA头,三颗SOIC混频片在左边一列。这种两百块的仪器,精度就别指望了,台式机拿它当未成年的玩具看。但是测天线驻波这个场景,它其实也够用了。
调一根433的天线、验一把滤波器,用它测量的结果至少比盲调强那么一丢丢。
这个开源方案出来之后,国内厂商把衍生型号卷出了花。带4.3寸大屏的F版卖599,3GHz的V2两百到五百,最便宜的兼容款价格直接打到了一百多。还有衍生的TinySA频谱仪,同一套思路换了种仪器。我觉得这种曲线救国的思路是值得学习的。
这是这个项目的仓库地址:github.com/ttrftech/NanoVNA。