设计寿命更长的电路

电器工程 图片 avr 电路设计
2022-01-10 19:44:39

我已经了解了 pic 微控制器一段时间,并且对处理数字电子设备有一定的了解。我从事过基本的电子项目,现在我需要从事一些商业应用。

我的问题是关于如何设计和构建可靠且持久的电路。我构建了一个自动灯光控制器电路,它从 LDR 获取输入并在七段面板上显示模拟读数的值。然后它进行一些计算并通过继电器控制一盏灯。该电路需要永久开启(一天 24 小时)。最初几个月,电路运行良好,但大约 6 个月后,它开始出现故障。它在 7 段显示器上显示毫无意义的东西(它只显示部分数字),然后它点亮 LED 指示灯上的灯泡,但它没有打开继电器。这不是预期的行为。问题是它不会总是那样工作。有时它工作得很好。然后它又开始出现故障。它没有确切的工作顺序。

现在我的问题是为什么这些电路会这样。我认为这可能是因为它整天工作,没有任何间隔。这种应用程序需要整天工作。我使用 PIC 因为我只知道 pic。atmal比pic更可靠吗?(我问是因为 atmal 用于大多数自动化应用程序,比使用图片更频繁)我需要数字电子专家的一些建议。这种工业应用是如何构建的?有什么特别的规则要遵守吗?如何设计更可靠的电路?专家的任何建议或指导将不胜感激。谢谢...

编辑

正如答案中所建议的那样,我将通过提供额外的资源来帮助找出设计中的错误来编辑我的答案。

下图描述了电路建成后的样子。它是一个 12V 中心抽头变压器,为电路供电。它使用半波整流器进行整流,然后使用 7805 IC 进行调节。

在此处输入图像描述

下面是原理图设计。

在此处输入图像描述

如果需要任何其他信息,我将提供所需的一切。如果需要该程序,我会添加它。程序有点长。它使用中断。

4个回答

在开始考虑切换之前,请确保您有一个良好的可靠设计。您需要开始考虑在设计中可能遇到问题的所有方式。做到这一点的一个好方法是停止将微处理器视为您将代码放入其中并按照您告诉它的操作的“魔术盒”,并开始考虑它在门级和系统级上的功能。你需要让你的微处理器满意。

  1. 电源 - 如果微处理器电源不干净,它将无法正常工作。这意味着要查看 PCB 设计,确保电源具有良好的低电感通路,并确保芯片附近有足够的功率上限。监视和测量您知道不适用于示波器和电压表的设计的功率,是功率吗?当电源出现峰值或下降时,您是否看到问题发生?您在 Vcc 线上看到尖峰或下降了吗?
  2. Code\Clock - 代码中是否存在导致其无法正常运行的错误?您是否查看过间歇单元中的代码?它是否验证(匹配)您现在拥有的代码?你得到闪存退化了吗?时钟呢?随着时间的推移,电源实际上会降低时钟的性能你的时钟是它需要的吗?如果你放慢时钟,你的代码会停止运行吗?
  3. 环境保护。您是否按照设计的规格操作微处理器?发生故障的单元中的温度是否恒定?它们是否位于具有环境因素(例如灰尘、EMI、ESD 或温度)可能导致其发生故障的区域。您的输入是否受到外部世界的保护,人们会破坏设备吗?随着时间的推移,热量会对电子设备造成不利影响。拿热像仪看看是否一切正常

你真正需要做的是找到失败的机制,你需要知道它失败的原因。一旦你知道它失败的原因,你就可以解决问题。如果你找不到,那么你将不得不让你的设计立于不败之地,以阻止任何问题的发生。如果你不这样做,你可以切换微处理器,但仍然有同样的问题。如果您确实想切换,ST 会制造一些更适合工业应用的出色微处理器。

既然你没有说,我质疑有问题的电路是如何在物理上构造的——因为这听起来就像不焊接的人在临时的“推连接”面包板上构造电路并离开时通常会看到的问题类型几个月。

如果这与您的情况相似,那就是您的问题;如果不是,我仍然怀疑连接不良,但它变成了“焊接技能”问题,而不是“无法焊接任何东西”问题。

您在 PIC 电源上没有去耦电容器,但在这样的小板上,您可能会侥幸逃脱。您可能还需要添加掉电保护,以便在电压降至阈值以下时重置 PIC。

但我会看你的代码。

对于初学者,您应该在 micro 上启用看门狗。如果代码停止正常工作,看门狗将重新启动它。

不过,最有可能的是,您只是在某个地方遇到了错误。作为专业的嵌入式软件工程师,我猜这与中断有关,因为这是初学者最常犯错误的地方。不过,作为初学者,您可能会在代码中犯大量错误,所以这只是我首先要看的地方。(不要生气——我自己也犯了很多这些错误,包括我真的应该知道的更好的时候。;-)

我同意您需要在 7805 的任一侧都有一个不错的胖电容器的评论。尤其是那里有一个继电器。我希望这是根本问题。我也会在 PIC 的电源线上添加一个去耦电容器。

我也会寻找干燥的关节。

我还将彻底检查我的程序,并使用那里的任何看门狗设施。

但是,您的问题中有一些有趣的地方:

它在 7 段显示器上显示毫无意义的东西(它只显示部分数字)

我会努力弄清楚发生了什么。例如,PIC 崩溃了吗?

现在,如果我正确阅读了您的原理图,那么为了使 7 段显示器中的每一个都显示某些内容,并且至少在其中两个上显示不同且恒定的内容,那么 Q1、Q2 和 Q3 中的每一个都必须仍在转动依次打开,并且段的输出必须是正确的。这将告诉我您的 PIC 至少仍在运行它的一些代码,但不知何故,数字输出已被打乱。例如,可能没有给它一个数字 0-9 来显示,而是一个数字 17 或类似的数字(它从随机内存位置获取数字布局)。

你说:

它点亮 LED 指示灯上的灯泡,但没有打开继电器

查看原理图,除非 PIC 输出是脉动的或其他什么(并非不可能,因为这也是一个定时器输出端口),这必须是电气故障(例如干接头),PSU 问题(参见上面的重新电容器) ,或者 Q4 晶体管(可能)没有完全饱和。我还没有阅读 PIC 数据表,但是 BC547 的最大 I C为 100mA(希望这足以驱动你的继电器和 LED),在这种水平上 hFE 为 120,所以你需要大约 1mA因此,10k 可能有点多。我可能会尝试3k3。

此外,您没有有用的调试方法。由于您的显示器一直处于开启状态,也许您可​​以让最后的小数点每秒闪烁一次(或类似的)以表示一切正常。

如果我不得不在黑暗中猛烈抨击,我猜想特别是当继电器打开时,电路正在消耗大量电流。由于 7805 的输入侧没有大电容,当交流电压过零时,7805 将不会提供任何输出电流(并且实际上可能正在消耗电容本身)——来自 7805 数据表即使在输入纹波电压的低点期间,输入电压也必须保持比输出电压高 2.0 V。因此,PIC 上的电压将降低,可能足以使其崩溃。将 5V 线的范围放在 PIC 旁边,如果除了漂亮的 5V 线之外什么都看不到,那么你就知道你有问题。