Kika's
Blog
图片简介 | CC BY 4.0 | 换一张

从零开始设计一个NFC天线

2024-12-06

Outlines

这是一篇通俗的、直接面向应用的NFC天线设计教程,笔者只是电子业余爱好者,若有纰漏恳请指正。

NFC(Near Field Communication),又称近场通信,是一种近距离的RFID技术,要实现NFC功能,不仅需要NFC标签芯片(诸如ST25DV,NT3H2111等等芯片),还需要一个恰好为13.56MHz的感应天线。通常,我们利用PCB上按一定规则放置的环形铜线来实现一个13.56MHz的PCB天线,下面详细介绍如何通过计算和各种工具,来设计这样一个天线。

首先,要知道天线的频率是这样计算:

$$ f=\frac{1}{2 \pi \sqrt{LC} } $$

其中$L$是天线的等效电感,$C$包含了两方面的调谐电容:一是NFC芯片内部的调谐电容,一是我们设计时自己加入的调谐电容(这里说的是一个相当粗略的模型,更加详细严谨的讨论请参考ST的AN2972 Application note这篇文档)。

我们在设计天线时其实就是在根据需求不断地计算、调整这三个参数,下面将分别讨论如何计算这三个参数。

NFC芯片内部的调谐电容可以通过查看芯片的datasheet得知:以ST的st25dv04k芯片的手册为例,你可以在RF electrical parameters小节中找到$C_{TUN}$(Internal tuning capacitor)这个参数;以NXP的NT3H2111的手册为例,你可以在电气特性一节找到$C_i$输入电容为50pF。总之这个值和芯片有关,确定好芯片(你需要考虑支持哪些NFC协议)后这个值就定下来了。

天线的等效电感$L$可以通过ST公司的NFC Inductance工具或者NXP公司的NFC Antenna Tool来可视化设计并实时计算天线的等效电感。我们以NFC Inductance工具为例,根据你自己的PCB设计需求,修改天线的长宽(也就是Antenna Length和Antenna Width),然后你就可以实时看到你天线的等效电感。

此时,你已知了天线频率(13.56MHz)以及天线的等效电感,于是你便可以根据开头那个天线频率公式,来计算一下你所需要的电容$C$,你可以试试下面这个我用petite-vue写的一个LC电路计算器(知二推三):

C: pF
L: uH
F: MHz
{{ TIPS }}

算出电容$C$之后,需要注意这个电容是包含了芯片的内部调谐电容,减去芯片内部调谐电容得到的就是你需要自己外加的调谐电容(并联在天线两端)。

另外需要注意的一点是:贴片电容的值只有常见的那几个,如:39、43、47、51、56、100、150、200、220、270、300、330、390、470、560、680pF等,所以外加的调谐电容必须是一个常见的电容值,所以你现在得从这些常见的电容值中选择一个接近的电容值,然后再根据天线频率(13.56MHz)以及新的电容$C$来计算你需要的天线等效自感频率,之后你需要反过来再修改天线的其他参数(如Turns,Conductor等)来匹配新的等效电感,以此迭代修改设计。

最终你需要获得一组参数:既能满足PCB的设计需求,又能满足外加的调谐电容是一个常见的电容值,还能满足整个天线的自感频率正好为13.56MHz。当然,这里允许一定的误差。另外,天线越大,NFC感应的距离越远(有上限)。

得到一组理想的参数之后,就需要考虑如何在PCB设计软件中画出这样的一个天线。对于KiCad用户,下面这个Python脚本nfc_antenna_generator可以根据NFC Inductance工具的参数自动生成一个KiCad footprint,非常方便。

另外,需要注意NFC天线的layout,如下图,天线的顶层与底层两个面都不能进行铺铜,并且在天线周围也最好不要存在铜平面,同时NFC标签芯片要尽可能靠近天线。

下面是一种铺铜的最佳实践:

参考