电路在面包板上工作,但在PCB上不工作


9

我有一个相当简单的电路,可以很好地在面包板上工作,但是将其传输到PCB时遇到了很多麻烦。我看到了非常奇怪的行为,这超出了我目前的经验,因此希望获得一些建议。

该电路实现了一个wifi运动传感器,尽管我遇到的问题在进入RF部分甚至图的uC部分之前就已经发生了: 在此处输入图片说明

我圈出了遇到麻烦的部分。

R3是下拉电阻,在检测到运动时b / c AMN42121会将其驱动为高电平,但将其悬空以保持不运动,因此需要下拉电阻。

我使用C1平滑了运动与不运动之间的过渡。C1使输出电平缓慢且平稳地变为LOW,因此在几秒钟的不运动之后达到“不运动”状态。

反相器是否存在b / c attiny的外部中断是由LOW电平触发的,所以我需要对逻辑进行反相。不幸的是,我不得不对一个逆变器使用如此大的DIP封装,但找不到其他东西。

我为此电路制作了一个双面PCB,如下所示: 在此处输入图片说明

同样,到目前为止,我只组装了圈出的区域。

焊接完S1,R3和C1之后,我从传感器输出中得到以下信号: 在此处输入图片说明

这正是我想要看到的,因此到目前为止一切都很好。

接下来,我焊接到IC2的插座中,然后插入逆变器。这就是奥秘开始的地方。起初一切都很好,但是在弄乱了电路板一段时间后,电路突然停止工作。当我将探头放置在传感器输出上时,而不是上面看到的好信号,我看到了以下两个示例的变化:

范例1: 在此处输入图片说明

范例2: 在此处输入图片说明

请注意,与第一个示例不同的是,第二个示例中的信号不是由运动生成的-锯齿形状只是自己产生的,而没有我的任何动作。

经过大量测试,我能够确定以下内容:

  1. 从插座上拔下逆变器电源可使传感器再次正常工作。
  2. 切断逆变器电源,同时保持其插入状态,可使传感器正常工作。
  3. 使用其他逆变器无效。
  4. 有时,用助焊剂去除剂或丙酮将电路板浸入并用刷子擦洗,有时会使传感器再次工作,但时间很短。一方面,我可以通过用牙刷积极擦洗使信号看起来像这样: 在此处输入图片说明

请注意,即使在最后一张图片中,信号也不会一直回到低电平。几乎在我停止刷牙后效果消失了。

到目前为止,这表明存在一些焊接缺陷,但我确实看不到该问题。我已经用强大的放大倍数仔细检查了整个电路板,并测试了所有可以想到的连续性点-一切检查完毕。这是IC插座和传感器上焊接工作的特写: 在此处输入图片说明

我现在没主意了,所以任何建议都将不胜感激。谢谢。

编辑:

我刚刚发现了一些有趣的东西。仔细查看示例2(锯齿形信号),可以发现向下倾斜是预期C1放电曲线的一部分。当电压水平接近逆变器的阈值并在那里花费太多时间时,逆变器似乎会变得困惑!它产生的噪声很小,然后执行一些操作将输入踢回HIGH,或者只是无限期地挂在“不确定的”嘈杂状态,直到传感器输出再次以动作b / c变为HIGH(示例#1)。

为了验证这一理论,我用一个小10倍的盖子代替了C1,从而使放电曲线更加陡峭,“瞧!” -逆变器不再混乱,电路正常工作!

当然,这违反了C1的目的,因为它现在没有提供我想要的那么多延迟。我不确定为什么面包板上的逆变器没有这个问题,但是它确实暗示可以很简单地解决这个问题。我读到面包板具有很大的“杂散”电容,所以也许我只需要在某个地方策略性地增加一些电容器?有任何想法吗?

编辑2: 提供顶视图,因为一些评论者要求它: 在此处输入图片说明


神圣的香蕉,那些焊点看起来很糟糕。您在那里急需一些助焊剂。
康纳·沃尔夫

@Connor Wolf:您指的是未连接任何东西的IC引脚吗?那些几乎没有被焊接,b / c,我认为没有理由焊接它们。还是您在谈论其他焊点?
Val Blant 2013年

为什么要使用逆变器?使用220-470欧姆的串联电阻将传感器的输出连接到PB2,就可以了。您可以添加一个下拉电阻,但是10Meg太高了。更改为10k。另外,您不需要连接C1。您可以使用简单的延迟例程在软件中进行过滤。除此之外,C1可能会增加传感器的负载,以便在连接逆变器IC时,负载太大,传感器无法驱动,也许?
Abdullah kahraman

我已经检查过,传感器可以提供最大100uA的输出!逆变器需要约1mA的输入电流!因此,我建议的上述下拉电阻10k太大了。用330k或470k进行更改
Abdullah kahraman

@abdullah kahraman:对不起-我不明白你的想法。attiny上的INT0在转换为LOW时触发,因此“无运动”必须由HIGH输入表示。那不对吗?您能详细解释一下您的想法吗?
Val Blant 2013年

Answers:


7

编辑-由于我对电路的误解,我正在编辑答案以关注传感器的输出-您是否正在使用模拟输出馈入逆变器-如果您愿意,则应尝试使用74HC14之类的施密特触发器


1
@ValBlant我不是ATtiny花花公子的专家-如果您已经确定极性一定不是这样-逆变器的输入信号电平是多少-您​​是否可以但不应用适当的逻辑电平-也许您还需要像74HC14这样的施密特触发器逆变器?
安迪(aka)

1
也许如果您取下了盖子并看到了它的外观,那么,如果有必要,您可以在ATtiny代码中执行一些操作,以使电路在瞬变之间保持活动状态?您是否像先前有人建议的那样在逆变器上放置了10n的去耦器?
安迪(aka)

1
我认为您需要一个施密特触发器花花公子-他们可以处理草率的模拟慢上升时间和下降时间-这就是他们的意图。尽管总有一个很好的理由,也许您最初的电路是因为fl幸而工作了!
安迪(aka Andy)

1
@ValBlant请注意TC74HC04数据表上的“输入上升和下降时间”规范,该规范指定了建议的最慢输入信号(在Vcc = 4.5V时上升/下降时间为500ns)。这是一个容易遗漏的规范,尤其是在东芝数据表中未明确将其指定为最大值的情况下。
克里斯·约翰逊

1
使用带施密特触发器的逆变器解决了我的问题。
Val Blant

11

如果不仔细研究电路,很明显,您没有去耦电容器。

将一个焊接在每个芯片的电源引脚上。

另外,您的“擦洗可以正常工作”的注释表明您的某处干燥或断续。仔细检查所有焊接。

关于DIL芯片的过大杀伤力,您可以只使用一个晶体管,然后将延时内容放入软件中。


好的,刚刚阅读了一些有关去耦电容器的文章。我很惊讶我需要类似的东西来给逆变器供电,这不是一个高速设备,但是我一定会尝试一下。大多数资料都建议在IC的电源引脚上使用0.1uF的陶瓷电容。我没有这个范围内的任何陶瓷盖,但是我有一些电解电容。那行得通吗,或者我绝对需要陶瓷吗?
Val Blant 2013年

关于逆变器,我实际上最初是从晶体管开始的,但后来意识到晶体管逆变器在打开时会消耗太多功率。我的电路必须在大约60uA(不传输时)下工作,这是我无法使用晶体管实现的,但是反相器IC似乎可以完成工作。
Val Blant 2013年

刚刚尝试使用0.1uF和1uF电解作为去耦电容,完全没有变化。但是,我发现了一些有趣的东西,我认为这可能是一个提示。我将使用新信息更新主要帖子。
Val Blant 2013年

3

您主要关心的问题似乎是减少功耗。

AMN42121连续消耗约50uA。74HC04连续消耗约20uA。ATTINY85在唤醒时会间歇性消耗约300uA。无线电在发射时将使用毫安。

多久触发一次传感器?您是否进行过任何功率计算以估计电池寿命?

我建议您丢弃反相器和“减速”电容器,按照传感器数据表将传感器通过10K下拉直接连接到MCU,并在MCU中写入延时逻辑。

[编辑]尽管您有一些错误,但我很高兴看到您一次测试一个电路。这比尝试对完成的项目进行故障查找要容易得多。


1
我也不认为需要逆变器。除INT0 / 1外,AVR还具有PCI-引脚更改中断。PCI会检测引脚状态的变化(高电平还是低电平)。您可以对此进行触发,然后添加防弹跳代码。
lyndon

我认为74HC04的消耗量不止于此。
Abdullah kahraman

对uC中的代码进行详细的电池寿命计算和一些算法分析表明,你们是正确的-使用逆变器而不是Pin Change中断,我一点都没有收获。如果要我再做一次,我会按照你的建议去做。但是,在最坏的情况下,我使用当前电路的电池寿命将为270天,因此我认为我将保持设计不变,在逆变器上使用施密特触发器,然后继续进行下一个项目。谢谢你们!
Val Blant
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.