Pick and Place файл
Каждый день мы получаем от заказчиков пакеты документов для производства. Там есть Gerber-файлы, BOM, иногда сборочные чертежи, ещё реже файлы разработки. Кто-то присылает сразу Pick & Place, кто-то удивленно переспрашивает: «А зачем? У вас же есть схема и расположение элементов». Но без этого файла мы возможно не сможем запустить автоматическую линию. Разбираемся, почему.
Что такое Pick and Place файл
Pick and Place файл (он же PnP-файл, XY-файл, centroid-файл, файл координат компонентов) — это текстовый документ, который содержит точные координаты каждого компонента на печатной плате . По сути, это цифровая карта для автомата установки компонентов.
Выглядит он как обычная таблица (обычно в формате .csv) с несколькими колонками :
| Колонка | Что означает | Пример |
|---|---|---|
| Designator (RefDes) | Позиционное обозначение компонента на схеме | R1, C5, U3, LED2 |
| Mid X | Координата центра компонента по оси X (в мм) | 25.40 |
| Mid Y | Координата центра компонента по оси Y (в мм) | 18.20 |
| Layer | Сторона платы (Top / Bottom) | Top |
| Rotation | Угол поворота компонента в градусах | 90.00 |
Этот файл генерируется автоматически в любой современной САПР печатных плат — Altium Designer, KiCad, Eagle, Sprint Layout и других . Разработчик нажимает пару кнопок — и получает готовый PnP-файл вместе с остальной документацией.
Зачем нам этот файл, если можно «посмотреть по картинке»
Это главный вопрос, который нам задают. Некоторые рассуждает так: «У вас же есть Gerber-файлы, там нарисовано расположение компонентов. Вы можете открыть их на компьютере и вручную запрограммировать автомат».
Технически — да, можем. Вот только:
1. Ручное программирование занимает часы, а автоматический импорт — секунды
На автоматической линии установки компонентов (pick and place machine) стоит программное обеспечение, которое умеет читать PnP-файл напрямую . Оператор загрузил файл — и автомат уже знает, куда ставить каждый резистор, конденсатор и микросхему.
Без PnP-файла оператору пришлось бы вручную вбивать координаты каждого компонента. На плате средней сложности (200–300 компонентов) это занимает 4–5 часов работы квалифицированного специалиста. А потом еще проверять, не ошибся ли он в одной цифре.
2. Человеческие ошибки — главный враг качества
Даже самый опытный оператор может ошибиться. Перепутать X и Y, пропустить запятую, не заметить, что компонент нужно повернуть на 180 градусов . Одна такая ошибка — и вся плата уходит в брак. Автоматический импорт данных уменьшает человеческий фактор.
3. Шелкография не всегда точна (а иногда ее вообще нет)
Многие думают, что компоненты можно расставить по рисунку на плате — по шелкографии (белым буквам и контурам). Но:
На мелких компонентах (0402, 0201) шелкография часто отсутствует
Некоторые разработчики принципиально не наносят шелкографию
На панели из нескольких одинаковых плат (когда платы производятся группой) позиционные обозначения могут дублироваться. Например, на каждой из шести плат в панели есть свой R1 и C2. Для оператора это не проблема — автомат ставит компоненты по координатам, а не по имени. Но если пытаться программировать вручную по чертежу, легко запутаться .
Что именно содержится в PnP-файле (подробный разбор)
Чтобы понимать, насколько критичен этот файл, давайте разберем его содержимое подробнее.
Координаты (Mid X / Mid Y)
Это центр компонента на плате. Отсчет идет от одной из угловых точек платы (обычно левого нижнего угла) . Координаты указываются в миллиметрах или дюймах — современное оборудование понимает оба формата, но миллиметры предпочтительнее .
Для чего это нужно? Автомат установки компонентов берет компонент из ленты (фидера) и должен поставить его ровно в то место, где на плате нанесена паяльная паста. Координаты указывают автомату это место с точностью до сотых долей миллиметра.
Поворот (Rotation)
Показывает, на сколько градусов нужно повернуть компонент относительно его стандартной ориентации . Обычно:
0° — компонент стоит «как в ленте»
45°, 90°, 180°, 270° — повернут
Экзотические углы. В нашей практике была плата, где заказчик пассивными компонентами выкладывал смайлики.
Для полярных компонентов (диоды, конденсаторы, микросхемы) правильная ориентация критична. Если поставить светодиод или электролитический конденсатор на 180° в обратную сторону — он либо не будет работать, либо выйдет из строя.
Сторона (Layer)
Указывает, на какой стороне платы устанавливается компонент — Top (верхняя) или Bottom (нижняя) . Это важно для двустороннего монтажа. Автомат сначала ставит компоненты на одну сторону, плата проходит печь оплавления, затем переворачивается, и автомат ставит компоненты на другую сторону.
Позиционное обозначение (Designator)
Связывает запись в PnP-файле с записью в BOM (спецификации) . По Designator'у мы проверяем, что на место R1 ставится именно резистор на 10 кОм, а не на 1 кОм.
Можно ли обойтись без PnP-файла?
Формально — да. Фактически — это плохая идея.
Вариант 1: Самостоятельная выгрузка из исходников
Да, мы можем сами выгрузить PnP, если заказчик предоставил PcbDoc, Kicad_pro и т.д. другими словами исходные файлы разработки. Но чаще заказчики не готовы делиться исходной документацией. Это можно понять и мы никогда не настаиваем на этом варианте.
Вариант 2: Ручное программирование
Мы не беремся за ручное программирование автомата для серийных заказов. Причины:
Время настройки увеличивается до неприемлемого
Высокий риск ошибки оператора
Любое изменение в расположении компонентов требует перенастройки
Ручное программирование допустимо только для простых (не более 20 компонентов) единичных (1-5 шт.) прототипов. Для серии — нет.
Когда мы действительно не можем начать без PnP
Мы не запустим заказ в производство, если в пакете документов нет PnP-файла, а заказчик не предоставил альтернативу. Без данных о координатах автомат просто не знает, куда ставить компоненты.
Почему заказчики не присылают PnP-файл (и как это исправить)
Из нашей практики, основные причины:
«Я не знал, что это нужно» — разработчик просто не в курсе, что такой файл существует. Особенно часто это встречается у инженеров, которые раньше сдавали платы только на изготовление (fabrication), а не на полную сборку (assembly).
«Я думал, вы сами сделаете» — и мы действительно можем сделать. Но это услуга, которая увеличивает срок подготовки производства и стоимость заказа.
«Моя САПР не умеет экспортировать» — умеет любая серьезная САПР. Вопрос в том, знает ли разработчик, где эта кнопка находится.
Но самое частое - просто забыли прислать, и вопрос решается за считанные минуты.
Как правильно сформировать PnP-файл
Несколько простых правил для заказчика:
Включайте в PnP-файл все компоненты — не только SMD, но и выводные (THT). Это нужно для проверки (DFM-анализа), даже если выводные компоненты будут паяться вручную .
Используйте один файл для обеих сторон — не разделяйте Top и Bottom в разные файлы.
Формат CSV — это стандарт, который понимает любое оборудование и ПО .
Проверьте заголовки колонок — они должны называться Designator, Mid X, Mid Y, Layer, Rotation (или аналогично, главное — понятно) .
Исключите компоненты Do Not Populate (DNP) — если в проекте есть компоненты, которые не нужно монтировать, их не должно быть в PnP-файле .
Что мы делаем с PnP-файлом после получения
Процесс выглядит так:
Входной контроль — проверяем, что файл читается, все колонки на месте, координаты в разумных пределах.
Сверка с BOM — убеждаемся, что каждый Designator из PnP есть в спецификации.
Сверка с Gerber-файлами — проверяем, что координаты компонентов совпадают с посадочными местами на плате.
Импорт в ПО установщика — загружаем данные в программу автоматической линии.
Только после этого запускаем монтаж.
А если заказчик вообще не может предоставить PnP-файл?
Бывает и такое. Например, разработка велась в устаревшей САПР, которая не экспортирует координаты, или исходные файлы утеряны.
В этом случае мы предлагаем услугу создания PnP-файла по образцу платы. Процесс:
Мы получаем эталонную плату (или несколько штук)
Специалист вручную измеряет координаты каждого компонента
Создает PnP-файл, сверяя с BOM и визуальным расположением
Это дорого и долго. На плате с 500 компонентами такая работа может занять несколько дней. Мы всегда рекомендуем заказчикам найти исходные файлы проекта — это сэкономит время и деньги.
Что в итоге?
Pick and Place файл — это не прихоть, а требование технологии. Без него автоматическая линия установки компонентов не заработает.
Файл генерируется автоматически в любой САПР. Разработчику не нужно ничего рисовать вручную — достаточно нажать правильную кнопку.
Мы не беремся за серийные заказы без PnP-файла (или без альтернативы вроде PcbDoc). Это прямой путь к браку и срыву сроков.
Если файл утерян — мы можем создать его заново, но это платная услуга. Дешевле и быстрее найти исходники проекта.