Галлюцинации АОИ
Как неудачная шелкография на печатной плате заставила систему автоматической оптической инспекции находить несуществующие короткие замыкания. Реальный случай из практики Райт Электроникс.
На нашем производстве произошёл довольно необычный случай. АОИ начала обнаруживала аномальное количество коротких замыкания между выводами микросхемы на одном из изделий. При этом никаких замыканий в действительности не было. Мы проверяли платы, корректировали настройки оборудования, экспериментировали с распознаванием цвета. Но проблема продолжала повторяться.
Более того, попытки сделать контроль менее чувствительным приводили к неприятному побочному эффекту: AOI начинала пропускать реальные дефекты пайки — непропаи.
Причина оказалась простой и непобедимой. Виновата была не паяльная паста, не температурный профиль печи и не установщик компонентов. Проблему создала обычная шелкография печатной платы.
Расскажем, как это произошло, почему автоматический контроль можно обмануть несколькими неудачно расположенными линиями и какое решение мы в итоге приняли.

Что такое шелкография печатной платы
Шелкография (Silkscreen, Legend) — это слой маркировки, который наносится на поверхность печатной платы. Чаще всего он представляет собой белые надписи и линии на зелёной паяльной маске. Хотя встречаются и другие сочетания цветов.
На шелкографии обычно размещаются:
позиционные обозначения компонентов: R15, C24, U3;
контуры корпусов;
указатели первого вывода микросхем;
знаки полярности;
обозначения разъёмов и контактов;
номер и ревизия печатной платы;
логотип производителя и другая служебная информация.
На первый взгляд этот слой носит исключительно информационный характер. Он не проводит электрический ток, не участвует в работе схемы и практически не влияет на электрические характеристики устройства. Поэтому при разработке PCB основное внимание уделяется медным проводникам, переходным отверстиям, посадочным местам компонентов и паяльной маске. А шелкография нередко оформляется уже на завершающем этапе проектирования. Но с точки зрения производства всё немного сложнее.
Зачем шелкография нужна производству
Для автоматического SMT-монтажа наличие шелкографии не является обязательным. Установщик компонентов Pick&Place работает по заранее подготовленной программе. Для каждой позиции в ней определены координаты центра компонента и угол поворота. Реперные метки позволяют оборудованию уточнять положение платы. Поэтому надпись R15 рядом с резистором автомату не нужна.
Но после установки компонентов производственный процесс не заканчивается. Есть ручной монтаж, контроль качества, ремонт, диагностика и обслуживание изделия. И здесь шелкография становится полезным инструментом.
Представим печатную плату с несколькими десятками микросхем, транзисторов, диодов и разъёмов. Если на плате нанесены позиционные обозначения, оператор или технолог может быстро определить расположение нужного компонента. Если маркировка отсутствует, приходится постоянно обращаться к сборочному чертежу и сопоставлять его с реальной PCB. Особенно это неудобно при ручном монтаже и ремонте.
Нам встречались изделия, на которых шелкография отсутствовала полностью. Работать с такими платами можно, но отдельные операции становятся сложнее.
Однако однажды мы столкнулись с противоположной проблемой. Шелкография присутствовала, но оказалась настолько неудачно расположена, что начала мешать автоматическому контролю пайки.
Наш случай: короткие замыкания, которых не существовало
При производстве одного из изделий AOI начала регулярно выдавать предупреждения о коротких замыканиях между выводами микросхемы. Сам по себе такой дефект хорошо известен. При пайке микросхем с небольшим шагом выводов иногда образуются перемычки из припоя между соседними контактами.
Причинами могут быть избыточный объём паяльной пасты, смещение компонента, особенности трафарета и другие технологические факторы. Поэтому предупреждение о коротком замыкании всегда требует внимания. Но в нашем случае визуальная проверка показывала, что замыканий нет. Контакты были разделены, а припой не образовывал электрических перемычек.
При дальнейшем разборе выяснилось, что проблема связана с шелкографией, расположенной в области выводов микросхемы. Её рисунок оказался таким, что система оптического контроля воспринимала элементы маркировки как признаки короткого замыкания. Причём ошибка повторялась на одной и той же проблемной области.
Получилось, что на плате не было дефекта пайки, но присутствовал рисунок, который оборудование интерпретировало как дефект. Мы в шутку назвали это галлюцинациями AOI. Конечно, речь не о галлюцинациях в том смысле, в котором этот термин сейчас используют применительно к нейросетям. Просто система машинного зрения делала неверный вывод на основе полученного изображения. Но название очень точно передавало происходящее.

Почему AOI может перепутать шелкографию с припоем
Чтобы понять причину, нужно немного разобраться в принципе работы автоматической оптической инспекции.
AOI — Automatic Optical Inspection — проверяет печатную плату с помощью камер и системы обработки изображений. В зависимости от модели оборудования используются различные варианты освещения, цветовой анализ, оценка геометрии, сравнение с эталоном и другие алгоритмы. При проверке паяных соединений система анализирует признаки, по которым можно определить возможный дефект.
Например, у микросхемы с выводами по периметру необходимо проверить:
наличие компонента;
правильность его положения;
смещение и ориентацию;
доступные для осмотра паяные соединения;
наличие возможных перемычек между контактами;
признаки недостаточного количества припоя или непропая.
Но AOI не измеряет электрическое сопротивление между выводами. Она не знает напрямую, есть короткое замыкание или нет. Она анализирует изображение и делает вывод о вероятности дефекта на основании оптических признаков. А на изображение влияют не только металлические выводы и припой. На нём присутствуют паяльная маска, шелкография, тени, отражения света и другие элементы поверхности PCB.
Если маркировка расположена в зоне паяного соединения или непосредственно рядом с ней, она может исказить картину, на основании которой система принимает решение. Например, светлая линия шелкографии в промежутке между соседними выводами способна мешать алгоритму, который оценивает границы контактов и наличие соединяющих их участков. Конкретный результат зависит от используемого освещения и алгоритмов AOI.
Именно поэтому проблема может проявляться на одном оборудовании или в одной конфигурации контроля и практически не проявляться в другой.
Почему не помогало изменение цвета
Первое, что хочется сделать в такой ситуации, — попытаться отделить изображение шелкографии от изображения припоя. На первый взгляд задача простая. Шелкография белая, припой серебристый, паяльная маска зелёная. Кажется, что система должна легко различать эти области по цвету. Но в реальности всё гораздо сложнее.
Поверхность припоя отражает свет. В зависимости от направления освещения, формы паяного соединения и угла наблюдения один и тот же участок может выглядеть ярким, тёмным или иметь различные оттенки. Белая шелкография тоже по-разному выглядит при различных условиях освещения. А границы между элементами изображения не всегда оказываются такими однозначными, как представляется человеку.
Мы пробовали изменять цветовые настройки контроля. Однако из-за особенностей расположения шелкографии существенного улучшения это не давало. Система продолжала воспринимать проблемные участки как возможные короткие замыкания.
Тогда возник другой вариант.
Почему нельзя просто увеличить допуски AOI
У систем автоматического оптического контроля есть настройки чувствительности и допустимых отклонений. Они позволяют адаптировать контроль под особенности конкретного изделия. Если оборудование слишком часто выдаёт ложные предупреждения, логично попробовать сделать критерии менее строгими. В некоторых ситуациях такая настройка действительно помогает. Но у этого подхода есть опасная сторона.
Чем мягче критерии контроля, тем выше риск пропустить настоящий дефект. Именно с этим мы и столкнулись. При увеличении допусков количество ложных срабатываний можно было уменьшить, но одновременно AOI начинала пропускать непропаи.
Получалась довольно неприятная ситуация.
С одной стороны, строгие настройки приводили к постоянным предупреждениям о несуществующих коротких замыканиях. С другой — более мягкие настройки снижали достоверность обнаружения реальных дефектов. Это уже не просто неудобство. Это вопрос контроля качества. Задача AOI заключается не в том, чтобы показывать как можно меньше ошибок, а в достоверном обнаружении дефектов, которые могут повлиять на качество и работоспособность изделия.
Если ради уменьшения ложных предупреждений приходится пропускать реальные непропаи, значит, проблема не решена, она просто стала менее заметной.
Почему ложные срабатывания AOI опасны для серийного производства
Иногда кажется, что ложное предупреждение — не такая уж большая проблема. Оператор посмотрел на изображение, убедился, что замыкания нет, и разрешил дальнейшее прохождение изделия. Но в серийном производстве даже небольшие дополнительные операции имеют значение.
Представим, что на каждой плате возникает несколько одинаковых ложных срабатываний. На проверку каждого предупреждения требуется время. Если изделие выпускается в количестве нескольких сотен или тысяч штук, суммарные затраты становятся заметными.
Однако есть и другая проблема. Когда оборудование постоянно сообщает об ошибке на одной и той же позиции, возникает риск привыкания. Оператор начинает ожидать, что предупреждение снова окажется ложным, это крайне нежелательная ситуация для любого процесса контроля. Поскольку рано или поздно на той же позиции может появиться настоящий дефект. Поэтому важно стремиться не только к высокой чувствительности AOI, но и к разумному количеству ложных срабатываний.
В нашем случае проблема была особенно неприятной именно потому, что простая корректировка параметров распознавания ухудшала обнаружение непропаев.

Как мы решили проблему
В итоге мы решили не снижать требования к контролю ради устранения ложных предупреждений. Для текущей партии организовали дополнительную визуальную проверку проблемных участков. Это позволило продолжить производство и обеспечить дополнительный контроль там, где автоматическое распознавание работало недостаточно достоверно. Разумеется, такое решение нельзя назвать идеальным. Дополнительная визуальная проверка требует времени сотрудников. Кроме того, она не устраняет причину возникновения ложных срабатываний, а причина была заложена в самой конструкции печатной платы.
Для следующих производственных запусков мы согласовали изменение шелкографии. Именно это стало основным решением проблемы на перспективу.
Таким образом, у нас получилось два уровня решения:
Для текущей партии — дополнительный визуальный контроль.
Для последующих запусков — согласованная корректировка шелкографии печатной платы.
Такой подход позволил не ослаблять критерии обнаружения реальных дефектов ради борьбы с особенностями маркировки. И это, пожалуй, главный практический вывод из всей истории.
Как правильно размещать шелкографию
Универсального решения для всех печатных плат не существует.
Но есть несколько простых рекомендаций.
1. Не размещать надписи в зоне паяных соединений
Позиционные обозначения лучше выносить за пределы контактных площадок и областей, где требуется оптический контроль.
Например, надпись U12 рядом с микросхемой значительно полезнее, чем обозначение, частично заходящее в область её выводов.
2. Не перегружать шелкографию контурами
Иногда разработчик старается показать на плате полный контур каждого компонента. Для простых корпусов это удобно, но при высокой плотности монтажа линии могут проходить слишком близко к контактам. В таких случаях лучше использовать упрощённые контуры или отказаться от части графических элементов.
3. Правильно обозначать ориентацию компонентов
Метки первого вывода микросхем, знаки полярности и другие ориентиры должны быть однозначными. Но при этом они не должны мешать установке и контролю компонентов. Это особенно важно для корпусов, которые внешне почти симметричны.
4. Учитывать ручной монтаж и ремонт
Не стоит отказываться от всей шелкографии только ради максимального освобождения поверхности PCB. Позиционные обозначения и знаки полярности действительно помогают при ручных операциях. Поэтому задача разработчика — найти разумный баланс между информативностью маркировки и её технологичностью.
5. Проверять шелкографию вместе с посадочными местами
На этапе подготовки PCB полезно рассматривать не отдельный слой шелкографии, а его совмещение с контактными площадками, паяльной маской и контурами компонентов. Так гораздо проще обнаружить проблемные участки ещё до серийного изготовления печатных плат. Для решения этой задачи обычно используют тестовые партии.
Почему этот случай может быть интересен для заказчика контрактного производства
На первый взгляд история выглядит довольно специфической. Неудачно расположили шелкографию — AOI начала ошибаться. Но у неё есть более общий смысл.
При разработке электронного устройства важно учитывать не только его электрические характеристики. Необходимо также понимать, как изделие будет производиться и контролироваться. Например, разработчик может создать полностью работоспособную электрическую схему и корректную PCB. Все компоненты будут устанавливаться правильно. Плата будет нормально паяться. Но вспомогательные элементы конструкции способны неожиданно усложнить производственный процесс, и как следствие привести к удорожанию изделия и снижению конкурентоспособности из-за более высокой цены.
Причём подобные проблемы не всегда обнаруживаются на этапе изготовления первых прототипов. Они могут проявиться только при переходе к серийному производству, когда начинает использоваться полноценный автоматизированный контроль. Именно поэтому взаимодействие разработчика и контрактного производства важно не только при устранении брака. Иногда достаточно согласовать небольшие изменения документации, чтобы сделать последующие партии более технологичными.
Вместо вывода
До этого случая мы, разумеется, знали, что шелкография должна быть правильно расположена. Но обычно её рассматривают с точки зрения удобства монтажа, читаемости обозначений и отсутствия краски на контактных площадках.
Наш опыт показал ещё одну, менее очевидную сторону вопроса. Шелкография может влиять на достоверность автоматического оптического контроля. Этот случай хорошо показывает, почему иногда проблему невозможно правильно решить исключительно настройкой оборудования. Бывает, что причина находится в исходной документации.