北方 发表于 2023-9-21 12:39

高精密电流放大器ADI AD8428设计到实践的全程手搓

<div class='showpostmsg'><h4 id="jive_content_id_01_Rating_and_Parameters_of_Polymer_Capacitor_in_the_Kits">1 概述</h4>

<p>&nbsp; &nbsp; 这个设计是要完成一个类似心电记录仪心跳电压捕捉电路,并验证电容器选型对这个电路的影响。根据微压级别的信号,至少需要24位的采集精度,或者通常是两级运放来提高采样电压。两级放大可以保证放大倍数,但是滤波和抗干扰的电路设计就复杂了。所以能选择一款高精度的仪表放大器直接解决问题是最好不过。</p>

<p>&nbsp; &nbsp; ADI AD8424是一款高精度电流放大器,虽然说国产替代一直在进行中,但是作为模拟芯片的设计和生产却很需要时间积累和经验验证。而ADI的模拟毫无疑问是模拟芯片的第一阵列。</p>

<p>本帖是全程手搓的,而ADI也提供了这样的条件,从芯片选型到模拟设计软件,极大降低了开发者的技术难度,提高了效率,保证了质量。<span style="font-size:12px;">小插一个无关设计的小观点,其实,国产替代要不得的一件事就是全面跪倒,脊梁寸断,但更要不得的是全面替代,断人财路。其实,世界还是挺大的,合作共赢一起发财才是持久之路。ADI技术领先,保证供应,还能价格合理,朋友多多的有什么不好。</span></p>

<p>这个是最后的电路设计图。</p>

<div></div>

<p>PCB电路设计图如下,</p>

<div></div>

<h4 id="jive_content_id_02_Simulation_of_AD8428_Instrumentation_Amplifier_by_ADI">2 使用ADI的辅助工具进行AD8428 Instrumentation Amplifier模拟设计</h4>

<p>2.1 使用ADIsim软件</p>

<p>&nbsp; &nbsp; 模拟设计软件先不说好用不好用,首先是非常好玩的。ADIsim是一个非常友好的模拟工具,易于使用,而且还是免费的。AD8428在做设计的时候还是一款新品,所以没有在这个设计库里,需要先下载SPICE文件然后倒入。SPICE文件是TXT格式的,可以直接自定义编辑功能和设置,当然,首先要真正了解并熟悉这款新品才行。</p>

<div style="text-align: center;"></div>

<p>使用ADIsim的设计图,</p>

<div style="text-align: center;">
<div style="text-align: center;"></div>

<p>&nbsp;</p>
</div>

<p>进行功能模拟的结果。虽然基本功能有效,但是还不大理想,所以后来就弃坑了,因为有更好的替身。</p>

<div style="text-align: center;">
<div style="text-align: center;"></div>

<p>&nbsp;</p>
</div>

<p>2.2&nbsp; LTspice</p>

<p>LTspice是Linear的头牌,中文是凌特,已经消失,因为被ADI并购了,所以但凡看到LT起头的ADI产品,都是源自Linear,而LTspice就是对标ADIsim并超越ADIsim的顶流。深切怀疑,Linear被并购的原因就是因为胸怀利刃LTspice,而招致失身之锅。相比AD打头的产品,大家都知道LT打头的都主打一个性价比,其实也是很能打的,当初被并购也是花了大价钱的,应该更是两情相悦的结果。因为,这样对LTspice来说,ADI的也是官方全系列支持的。当然,现在还是需要导入spice的。</p>

<p>2.2.1 原理图的设计</p>

<p>AD8428是根据ADI样片申请获得的,但是流程老复杂了,独苗一个,型号AD8428ARZ,这个东东是好东西,值得垂涎一下。</p>

<div style="text-align: center;">
<div style="text-align: center;"></div>

<p>&nbsp;</p>
</div>

<p>放大器下看看丝印。</p>

<div style="text-align: center;"></div>

<p>&nbsp; &nbsp; 因为全程有手册,提供了官方的设计参考图。这个原理图看似极简设计,其实各种共模和差模参数极其强悍,因为专门为这个出了包括《你好放大器》这样的神作,就不搞文字搬运了,这里省掉n千字。</p>

<div style="text-align: center;"></div>

<p>转换成适合模拟运行的电路设计,这里需要增加互补的电压源作为输入信号,在LTspice中,这个参数可以完美修改,甚至可以编程成为特定波形,如方波,三角波,正弦波,你想你就可以拥有。</p>

<div style="text-align: center;"></div>

<p>执行暂态模拟的结果如下,对应于一个1.8毫秒的脉冲,就这个样子。</p>

<div style="text-align: center;"></div>

<p>这个原理图还可以导出BOM元件表,</p>

<div style="text-align: center;">
<div style="text-align: center;"></div>

<p>&nbsp;</p>
</div>

<p>这些元件的参数都可以任意调整和变化,反复多种测试,选择最合适的匹配参数。</p>

<p>2.2.2 其中电容器的变化和适配对性能的影响最大。其中影响最大的就是ESR,对于平波,滤波和去耦都有极大的好处。通常意义的电容等效电路如下,</p>

<div style="text-align: center;"></div>

<p>对不同的输入频率,ESR和等效阻抗Z的频率相应如下,在特征频率下取得最优数值,</p>

<div style="text-align: center;"></div>

<p>2.2.3 不断更换上面的电容值,</p>

<p>C5, C7 =&nbsp;10uF</p>

<p>C2 ,C3 =&nbsp;4.7uF ,</p>

<p>C1 =&nbsp;4.7uF , 大约为C2和C3的10倍</p>

<p>C4,C6 =0.1uF MLCC,</p>

<p>稳态模拟结果如下</p>

<div style="text-align: center;"></div>

<p>对应于电容的参数都是可以随时调整的,如调整C5的ESR值,更换为最终选择电容的参数0.06欧</p>

<div style="text-align: center;"></div>

<p>其他模拟如暂态模拟,交流摇摆模拟等都可以一键完成,下面是一部分游戏过程的截图。</p>

<div style="text-align: center;"></div>

<div style="text-align: center;"></div>

<div style="text-align: center;"></div>

<p>这个可比当年在面包板上插积木好玩多了,也可以重新理解当时老师讲的一些规律性的东西。唯一欠缺的就是实地炸电容,烧电阻的快乐烧烤场景。</p>

<h4 id="jive_content_id_03_Schemtic_Design_and_PCB_Design">3 打板和设计</h4>

<p>3.1 这时候设计,用的是&nbsp;<a href="https://easyeda.com/" rel="noopener noreferrer nofollow" target="_blank" title="https://easyeda.com/">https://easyeda.com/</a>&nbsp; ,这个也最后易帜了,不过现在的国内的名字就是力创eda,海外版的还是没有变化。电路原理设计如下</p>

<div style="text-align: center;"></div>

<p>生产PCB</p>

<div style="text-align: center;"></div>

<p>偷懒的自动布线,</p>

<div style="text-align: center;"></div>

<p>3D演示</p>

<div style="text-align: center;"></div>

<p>3.2 当然,这个是不可以的,还是要重新布局和选择BOM,选择合适的电容</p>

<div style="text-align: center;"></div>

<p>&nbsp;</p>

<div style="text-align: center;"></div>

<div style="text-align: center;"></div>

<p>这才是最终版</p>

<div style="text-align: center;"></div>

<p>和最终的PCB</p>

<div style="text-align: center;"></div>

<div style="text-align: center;"></div>

<p>输出BOM</p>

<div style="text-align: center;"></div>

<p>打印一下</p>

<div style="text-align: center;"></div>

<p>&nbsp;</p>

<h4 id="jive_content_id_04_PCB_making_and_Solding">4. 手搓PCB</h4>

<p>4.1 这个PCB有些过于简单,就下单了手搓6件套,包括紫外光刻,这个手搓的光刻精度是毫米级的,做独立二极管戳戳有余,但是搞5G芯片,可能还是要200年的吧</p>

<div style="text-align: center;"></div>

<p>最后继续降低,连光刻的不想用了,双面板纯手搓了,刻刀,油性笔,使用环保蚀刻剂硫氧化纳,&nbsp;<em>Na<sub>2</sub>S<sub>2</sub>O<sub>8</sub>+Cu=Na<sub>2</sub>SO<sub>4</sub>+CuSO<sub>4</sub></em></p>

<div style="text-align: center;"></div>

<p>真实手搓图,这个是把PCB设计打印在白纸上,然后刻刀刻线,然后用油性笔透描的,所以有焊盘和断线的地方,不过,没关系,有些手抖也没关系,连直尺都木有用,直接拿出小学的绘画压箱功底,背面全黑没有问题吧。</p>

<p>.</p>

<div style="text-align: center;"></div>

<p>这边搞双色的</p>

<div style="text-align: center;"></div>

<p>溶解蚀刻剂,大概10分钟吧,</p>

<div style="text-align: center;"></div>

<p>看起来不太行</p>

<div style="text-align: center;"></div>

<p>那就继续,直到变成浅蓝色,到最后</p>

<div style="text-align: center;"></div>

<p>完工。</p>

<div style="text-align: center;"></div>

<p>最后,除掉油性笔痕,通常用能脱油的洗洁精就可以,</p>

<div style="text-align: center;"></div>

<p>当然,大力出奇迹,用砂纸也是可以的。</p>

<div style="text-align: center;"></div>

<p>手工焊,难度基本为零,美观程度,也基本为零。</p>

<div style="text-align: center;"></div>

<div style="text-align: center;"></div>

<p>需要补充一下,经此一役,尤其是现在某立创的优惠打板上线后,鉴于心理阴影面积过大,宁可付费打板也不再手搓了。</p>

<h4 id="jive_content_id_05_Test_with_MKR1000">5 使用Arduino开发板读数</h4>

<p>5.1 I选用Arduino MKR 1000 读取ADC参数,因为AD8428已经放大到可以读取的精度了,所以其实是第二级放大器是由12位精度的ADC来实现的,这个是多数MCU可以轻松搞定的,最多可以读取4096的数据,进行0~3.3V的数据对应转换。</p>

<div style="text-align: center;"></div>

<p>参考代码</p>

<pre>
<code class="language-cpp">const int analogInPin = A0;// Analog input pin that the potentiometer is attached to
const int analogOutPin = 9; // Analog output pin that the LED is attached to


int sensorValue = 0;      // value read from the pot
int outputValue = 0;      // value output to the PWM (analog out)


void setup() {
// initialize serial communications at 9600 bps:
Serial.begin(115200);
}


void loop() {
sensorValue = analogRead(analogInPin);
// map it to the range of the analog out:
outputValue = map(sensorValue, 0, 1023, 0, 255);
// change the analog out value:
//Serial.print("sensor = ");
Serial.print(sensorValue);


// wait 2 milliseconds before the next loop for the analog-to-digital
// converter to settle after the last reading:
delay(2);
}</code></pre>

<p>5.2&nbsp; 使用两个9V电池提供差分电压供电,这样输入端可以连接到心电贴片读数,</p>

<div style="text-align: center;"></div>

<div style="text-align: center;">
<div style="text-align: center;"></div>

<p>&nbsp;</p>
</div>

<p>使用串口猎人115200-N-8-1.读取读数,改变采用周期,这里是选择了1kHz,这个数据可以导出为txt文件,进行更进一步处理。</p>

<div style="text-align: center;">&nbsp;</div>

<div style="text-align: center;"></div>

<p>&nbsp;</p>

<h4 id="jive_content_id_05_Test_with_MKR1000">6 AD8428的原理和配置</h4>

<p>6.1&nbsp;AD8428内部的逻辑图如下,可以有3种放大配置模式,</p>

<div style="text-align: center;">
<div style="text-align: center;"></div>

<p>&nbsp;</p>
</div>

<p>6.2 其中差模输入模式如下图,放大倍数计算公式如下,可以看出,更改<span style="font-size:18px;">C</span><span style="font-size:12px;">D</span> 和<span style="font-size:18px;">C</span><span style="font-size:12px;">C</span>的数据就可以自行选择放大倍数。</p>

<div style="text-align: center;">
<div style="text-align: center;"></div>

<p>&nbsp;</p>
</div>

<p>这个帖子主要是介绍了如何利用工具完成一款ADI放大器的设计到打板的过程。更多的技术细节和原理在ADI的各种开放资料都可以获得,相比这个芯片的高性能,这么搞虽然可以完成任务,但质量其实还是呵呵的。所以,后来也就不这么搞了,但是使用LTspice的过程却从此上了瘾,有原理图都想导入spice模拟一下。</p>
</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>

lugl4313820 发表于 2023-9-22 07:40

<p>这个帖子主要是介绍了如何利用工具完成一款ADI放大器的设计到打板的过程。更多的技术细节和原理在ADI的各种开放资料都可以获得,相比这个芯片的高性能,这么搞虽然可以完成任务,但质量其实还是呵呵的。所以,后来也就不这么搞了,但是使用LTspice的过程却从此上了瘾,有原理图都想导入spice模拟一下。</p>

<p>大佬的动手能力不一般呀!</p>

常见泽1 发表于 2023-9-24 09:59

<p>这个LTSPICE是真的好用</p>
页: [1]
查看完整版本: 高精密电流放大器ADI AD8428设计到实践的全程手搓