Проектирование цепей с более длительным сроком службы

11

Я узнал о ПИК микроконтроллере в течение определенного периода времени и обладаю достаточным количеством знаний о работе с цифровой электроникой. Я работал над базовыми электронными проектами, и теперь мне нужно работать над некоторыми коммерческими приложениями.

Мой вопрос о том, как спроектировать и построить надежные и долговечные схемы. Я построил схему автоматического контроллера освещения, которая принимает входной сигнал от LDR и отображает значение аналогового показания на семисегментной панели. Затем он делает некоторые вычисления и управляет светом через реле. Эта схема должна быть включена постоянно (24 часа в сутки). Первые несколько месяцев схема работала отлично, но примерно через 6 месяцев она начала работать со сбоями. Он отображал бессмысленные вещи на 7-сегментном дисплее (он показывал только части цифр), затем он зажигал лампочку на светодиодном индикаторе, но не включал реле. Это не ожидаемое поведение. Дело в том, что так будет не всегда. Иногда это работает отлично. Затем он снова начинает работать со сбоями. Нет точного порядка, в котором это работает.

Теперь мой вопрос: почему эти схемы ведут себя так? Я предполагаю, что это может быть потому, что он работает весь день без каких-либо интервалов. Это приложение должно работать весь день. Я использую PIC, потому что я знаю только о рис. Atmal более надежен, чем рис? (Я спросил, потому что atmal используется в большинстве приложений автоматизации, чаще, чем рис.) Мне нужен совет эксперта в области цифровой электроники. Как строится этот вид промышленного применения? Есть ли особые правила, которым нужно следовать? Как спроектировать более надежные схемы? Любые советы или рекомендации от эксперта будут высоко оценены. Спасибо...

РЕДАКТИРОВАТЬ

Как предлагается в ответах, я отредактирую свой ответ, предоставив дополнительные ресурсы, чтобы помочь выявить ошибки в дизайне.

Ниже приведено изображение, описывающее, как выглядит схема после того, как она была построена. Это 12В трансформатор с центральным отводом, который подает питание на цепь. Он выпрямляется с помощью полуволнового выпрямителя, а затем регулируется с помощью микросхемы 7805.

введите описание изображения здесь

Ниже приведен схематический дизайн.

введите описание изображения здесь

Если потребуется какая-либо дополнительная информация, я предоставлю все необходимое. Если программа нужна, я ее добавлю. Программа несколько длинная. Использует прерывания.

Дэниэл Уибер
источник
6
Если вы используете микросхему в пределах указанных значений (см. Таблицу данных), то практически любой производитель гарантирует 10-летний срок службы. И это при высокой температуре. Вы можете обвинить компоненты, но я думаю, что проблема в том, что в вашем дизайне происходит нечто неожиданное. Или, может быть, одна из микросхем пострадала от разряда от электростатического разряда, и это только сейчас. Прежде чем дать полезный совет, вам нужно сначала найти неисправный компонент.
Bimpelrekkie
2
В дополнение к тому, что сказал FakeMoustache, я сомневаюсь, что PIC является источником сбоя. Скорее всего, это отдельные компоненты или связанные с схемотехникой.
DigitalNinja
1
У меня есть PICs, работающие все время во многих грубых местах. Без вопросов. Единственная проблема, которую я имел, была коррозия в пробках и физически принудительный электрический конденсатор TFT со сломанным контактом.
Шидор
1
И кстати, я полагаю, вы имеете в виду Atmel вместо «atmal». Также PIC - это microC от MicroChip (их производит MicroChip). Atmel также является производителем микроконтроллеров, они производят микроконтроллеры Atmega. Оба являются просто цифровыми ИС, изготовленными в одинаковых производственных процессах и имеющими одинаковую надежность. Если бы один был более или менее надежным, чем другой, никто бы не купил их (по той же цене, что и они).
Bimpelrekkie
3
Вам необходимо опубликовать схему, а в идеале картину проблемной системы. Я также сомневаюсь, что ваши проблемы связаны с «продолжительностью жизни», а скорее с отсутствием чего-то действительно базового, например, чистоты источника питания или электромагнитных помех.
Техидуде

Ответы:

17

Прежде чем начать думать о переключении, убедитесь, что у вас есть хороший твердый дизайн. Вы должны начать думать обо всех возможных проблемах в дизайне. Хороший способ сделать это - перестать думать о микропроцессоре как о «волшебном ящике», в который вы помещаете код и выполняете то, что вам говорят, и начинаете думать о том, как он функционирует, на уровне шлюза и на уровне системы. Вы должны держать свой микропроцессор счастливым.

  1. Питание - если питание микропроцессора не является чистым, оно не будет работать правильно. Это означает, что вы должны взглянуть на конструкцию печатной платы и убедиться, что у вас есть хороший путь низкой индуктивности от источника питания, а также убедиться, что у вас есть достаточный уровень мощности рядом с микросхемой. Контролируйте и измеряйте мощность на устройстве, которое, как вы знаете, не работает с осциллографом и вольтметром, не так ли? Видите ли вы проблему, возникающую при скачке или падении мощности? Видите ли вы шипы или провалы на линии Vcc?
  2. Код \ Часы - есть ли ошибка в коде, которая заставляет его работать неправильно? Вы смотрели на код в прерывистой единице? Проверяет ли он (соответствует) код, который у вас есть сейчас? Вы получаете ухудшение флэш-памяти? Как насчет часов? Власть может на самом деле ухудшать время со временем . Ваши часы, какими они должны быть? Если вы замедлите время, ваш код перестанет работать?
  3. Защита окружающей среды. Вы используете микропроцессор в соответствии со спецификациями, для которых он был разработан? Является ли температура постоянной в неисправных устройствах? Находятся ли они в зоне воздействия таких факторов окружающей среды, как пыль, электромагнитные помехи, электростатический разряд или температура, которые могут привести к его выходу из строя. Защищены ли ваши входы от внешнего мира, могут ли люди пощекотать устройство? Тепло со временем будет вредить электронике. Получите тепловизор и посмотрите, все ли в порядке

Что вам действительно нужно сделать, это найти механизм отказа, вам нужно знать, почему он выходит из строя. Как только вы знаете, почему это не помогает, вы можете решить проблему. Если вы не можете найти это, то вам придется сделать свой дизайн непобедимым, чтобы предотвратить возникновение каких-либо проблем. Если вы этого не сделаете, вы можете переключить микропроцессоры и все еще иметь те же проблемы. Если вы хотите переключиться, ST создаст несколько великолепных микропроцессоров, которые больше подходят для промышленного применения.

Скачок напряжения
источник
2
Добавьте радиацию в список факторов окружающей среды. Ионизирующее излучение большинства видов (атомное, фотонное и т. Д.) Может привести к тому, что электроника испытает SEU или сбои одного события, что приведет к искаженному выходу.
rdtsc
Как вы предложили, я обновил свой ответ, добавив дополнительные ресурсы. Схематический дизайн и изображение схемы. пожалуйста, вы можете выяснить любые ошибки в дизайне.
Дэниел Уибер
Большое спасибо. У меня есть идея и больше знаний о создании более надежных схем. Я должен узнать больше, прежде чем приступить к созданию коммерческих приложений. Большое спасибо. Принят в качестве ответа.
Дэниел Уибер
Я вроде бы предполагаю, что излучение не является фактором, но если вы управляете этими вещами рядом с атомной станцией или другим источником излучения (или в космосе, это становится серьезной проблемой с коммерческим MCU, имеющим несколько SEU в неделю, даже Rad жесткие процессоры будут иметь SEU). Обычный MCU может иметь SEU, но я думаю, что это будет порядка лет с вероятностью этого в нормальной среде.
Пик напряжения
@danial weaber 7805 не остановит пропадание питания с вашими крышками. Допустим, потребляемая мощность от регулятора 5 В составляет максимум 100 мА (вы можете запустить эти калибры, если измерите фактический максимальный ток), что будет похоже на нагрузку 50 Ом. Ваша кепка составляет 10 мкФ, поэтому тау = RC -> тау = 50 * 10 мкФ = 0,5 мсек. Это примерно то время, которое понадобится вам для решения проблемы. Возможно, вы захотите купить дешевую китайскую «настенную бородавку» за несколько долларов, которые могут выдержать некоторое падение напряжения в сети переменного тока. Или вы можете использовать преобразователь DC в DC, который может быть более терпимым. Как выглядит ваше заземление на печатной плате?
Пик напряжения
7

Так как вы не говорите, я задаю вопрос, как физически построена проблемная схема - поскольку это звучит ТОЛЬКО как тип проблемы, которая обычно наблюдается, когда кто-то, кто не паяет, строит схему на временном макете «push to connect» и оставляет это на несколько месяцев.

Если это похоже на ваш случай, есть ваша проблема; в противном случае я все еще подозреваю плохие связи, но это становится проблемой "навыка пайки" больше, чем проблемой "неспособности паять что-либо".

Ecnerwal
источник
3
Добавление к этой неправильной технике пайки может привести к образованию соединений с плохой механической прочностью и другим проблемам, которые приводят к разрушению соединения через значительно более короткий период времени.
авария
Большое спасибо. Я обновил свой ответ, и если бы вы могли выяснить какую-либо ошибку в дизайне, это было бы очень благодарно.
Дэниел Уибер
Спайки выглядят хорошо, никаких эффектов не видно в пайке. Это может быть проблема, связанная с программой. Но тогда как это работает хорошо в то время
Даниал Уибер
... предоставить изображение стороны припоя? Что касается вопросов программирования, которые иногда работают, а иногда нет, в комментариях к этому вопросу уже упоминались различные варианты. И есть гнездо, в котором находится микросхема как точка потенциального сбоя без пайки (между гнездом и выводами ИС). Розетки иногда являются хорошей идеей, но могут вызвать проблемы. Если проблемы на время исчезнут, если вы удалите и замените микросхему, это может быть частью проблемы. ... Кроме того, ваши конденсаторы фильтра источника питания выглядят немного маловато - все 33 пФ между мостом и входом регулятора? В самом деле?
Ecnerwal
5

У вас нет развязывающего конденсатора на питании PIC, но на такой маленькой плате вам, вероятно, это сойдет с рук. Возможно, вы также захотите добавить защиту от затемнения, чтобы PIC сбрасывался, если напряжение падает ниже порогового значения.

Но я бы посмотрел на твой код.

Для начала, вы должны включить сторожевой таймер на микро. Если код перестает работать правильно, сторожевой таймер перезапустит его.

Скорее всего, вы только что где-то обнаружили ошибку. Как инженер по встроенному программному обеспечению, я предполагаю, что это связано с прерываниями, потому что именно здесь новички чаще всего делают ошибки. Тем не менее, как новичок, в коде можно сделать множество ошибок, так что это только первое место, на которое я посмотрю. (Не обижайтесь - я сам сделал много таких ошибок, в том числе и тогда, когда мне действительно следовало бы знать лучше. ;-)

Грэхем
источник
+1 большое спасибо. Теперь я понимаю, что сделал несколько ошибок. Мне нужно узнать намного больше, прежде чем начать создавать коммерческие приложения.
Даниэль Уибер
3

Я согласен с комментариями, что вам нужен хороший толстый конденсатор по обе стороны от 7805. Особенно с реле там. Я ожидаю, что это коренная проблема. Я бы также добавил развязывающий конденсатор в линии питания PIC.

Я бы тоже искал сухие суставы.

Я бы также тщательно проверил свою программу и использовал все средства наблюдения.

Но вот пара интересных моментов из вашего вопроса:

Это показало бессмысленные вещи на 7-сегментном дисплее (он показывал только части чисел)

Я буду пытаться понять, что случилось. PIC, например, разбился?

Теперь, если я правильно прочитал вашу схему, то для того, чтобы каждый из 7 сегментов отображал что- то , а что-то другое и постоянное по крайней мере на двух из них, тогда каждый из Q1, Q2 и Q3 должен быть все еще повернут последовательно, и выходы на сегменты должны быть правильными. Это скажет мне, что ваш PIC все еще выполняет хотя бы часть своего кода, но каким-то образом вывод цифр был зашифрован. Например, возможно, ему дали не цифру 0-9 для отображения, а цифру 17 или аналогичную (для которой она получает раскладку цифр из случайного места в памяти).

Ты говоришь:

горит лампочка на светодиодном индикаторе, но реле не включается

Если посмотреть на схему, то, если выход PIC не пульсирующий или что-то в этом роде (не невозможно, так как это также выходной порт таймера), это может быть либо электрическим отказом (например, сухим соединением), либо проблемой блока питания (см. Выше конденсаторы) или транзистор Q4 (возможно) не полностью насыщен. Я не читал спецификацию PIC, но максимальная I C BC547 составляет 100 мА (надеюсь, этого достаточно, чтобы управлять вашим реле и светодиодом), а hFE 120 на таком уровне, поэтому вам потребуется около 1 мА. в. 10к, следовательно, может быть немного больше. Я мог бы попробовать 3k3.

Кроме того, у вас нет полезных средств отладки. Поскольку ваш дисплей постоянно включен, возможно, вы можете заставить точку последней десятичной точки мигать один раз в секунду (или аналогично), чтобы показать, что все хорошо.

Если бы мне пришлось сделать дикий удар в темноте, я бы предположил, что, особенно когда реле включено, цепь потребляет значительный ток. Из-за отсутствия большого конденсатора на входной стороне 7805, когда переменное напряжение пересекает ноль, 7805 не будет обеспечивать никакого выходного тока (и может действительно истощать сам конденсатор) - из таблицы данных 7805 ' входное напряжение должно оставаться обычно на 2,0 В выше выходного напряжения даже во время низкой точки на входном пульсирующем напряжении » . Таким образом, напряжение на PIC будет снижено, возможно, достаточно, чтобы сломать его. Поместите область линии 5 В рядом с PIC, и если вы не видите ничего, кроме хорошей сплошной линии 5 В, вы знаете, что у вас есть проблема.

abligh
источник
+1 большое спасибо. Этот ответ дал мне хорошее представление о том, как спроектировать схему, и о некоторых ошибках, которые я сделал. Я проверю addind на конденсаторы и расскажу результаты.
Даниэль Уибер
3

Каждый раз, когда в микропроцессоре происходит нестабильное поведение, есть два основных источника проблемы. 1) отсутствующие или недостаточные «обходные» конденсаторы, 2) «плавающие» выводы микропроцессора.
У каждого «чипа» должна быть заглушка, прямо на контакте чипа, подключенном к Vcc (+ 5 В).
Любой неиспользуемый штифт должен быть привязан высоко или низко, но не должен оставаться «плавающим».

Я согласен, что вы не едете "достаточно трудно" Q4, я рекомендую 1K для R12.

Guill
источник
+1 спасибо в ответ. Попробую добавить конденсаторы на двухпроводном приводе. Нужно ли назначать значения для выводов, которые я не использую в проекте.
Даниил Уибер
Правильное слово - «разъединяющий» конденсатор, а не «байпас». Также согласны, что плавающие булавки могут делать забавные вещи Я бы добавил третий основной источник - отключение или похожие хитрые условия сброса. Но даже тогда, когда у вас есть новичок, который делает сложные вещи с прерываниями, мои деньги всегда идут на программное обеспечение.
Грэм