Геннадий Мартынов, руководитель направления системной интеграции
Gennadiy.Martynov@dipaul.ru
Взаимодействие базы данных MYCenter MH c внешней информационной системой предприятия.
Статья посвящена вопросам разработки системы интеграции между учетной системой предприятия, хранящей информацию об используемых в производстве компонентах и материалах, и базой данных оборудования поверхностного монтажа MYCRONIC с целью автоматического поддержания актуального количества компонентов в основной базе предприятия. Создание подобного взаимодействия позволяет получать актуальные сведения о реальном количестве компонентов, имеющихся на складах, открывая дополнительные возможности по более точному планированию материальных ресурсов, минимизации складских запасов и снижению трудоемкости подготовительных операций.
В современном мире коммуникации играют огромную роль. Подобно тому, как результативность команды специалистов возможно определить, оценивая характер общения ее непосредственных участников, так и эффективность любого производства напрямую зависит от конструктивного сотрудничества между различными департаментами, отделами и участками, вовлеченными в общий процесс. Какой бы ни был высокий уровень взаимопонимания между людьми в коллективе, использование различных информационных инструментов для планирования рабочего времени и управления проектами позволяет увеличить эффективность их труда. Применительно же к технологическому процессу, в котором заняты не только люди, но и оборудование, сложно представить действительно успешное производство, не использующее информационную систему, контролирующую внутреннюю деятельность предприятия.
Для современных производств электроники задача создания и развития управляющей автоматизированной информационной системы становится все более злободневной. Следует отметить, что проектирование универсальной единой информационной системы с нуля кажется если и не невозможным, то уж точно нецелесообразным, поэтому на реальном предприятии обычно речь идет о построении и развитии взаимодействия между различными как уже существующими, так и вновь внедряемыми системами, решающими специфические задачи. В связи с этим именно системная интеграция начинает играть все более важную роль в процессе наращивания IT-инфраструктуры организации.
В последнее время заказчики все чаще интересуются построением взаимодействия между технологическим оборудованием по автоматизированной сборке электроники и существующими системами учета, используемыми на предприятии. Исторически сложилось так, что в большинстве случаев речь идет о взаимодействии с системой «1С», однако принципы, изложенные ниже, в равной степени справедливы для любой информационной системы и любой компании. А потому мы введем термин ИСП — «информационная система предприятия», используемый далее в статье, намеренно избежав употребления таких специальных понятий, как ERP, MES и т. д., чтобы особо подчеркнуть возможность интеграции между различными типами информационных систем.
На любом предприятии особенно остро стоит вопрос правильного учета компонентов и материалов, имеющихся на производстве и предназначенных для сборки продукции. Актуальная информация позволяет не только точно планировать производственный процесс, гибко реагируя на внезапные изменения планов и избегая простоев оборудования из-за неожиданно возникшего дефицита, но и точнее рассчитывать финансовые ресурсы предприятия, корректнее оценивать себестоимость выпуска продукции, минимизировать потери и т. д. Таким образом, задача построения интеграции между системой учета компонентов и точками их непосредственного расхода должна решаться одной из первых. И здесь автоматическая сборочная линия, активно потребляющая SMD-компоненты в ходе работы, может смело выступать в качестве флагмана. К счастью, именно эта часть является наиболее удобной для начала процесса системной интеграции, практически мгновенно принося ощутимый эффект.
Далее мы детально коснемся темы построения интеграции с базой данных материалов, применяемых в оборудовании поверхностного монтажа MYCRONIC, и опишем основные положения, которые необходимо взять за основу, прорабатывая данный вопрос.
Основы взаимодействия
У компании MYCRONIC есть мощный инструмент под названием MYCenter MH, который пришел на смену ПО MYLabel, являясь дальнейшей эволюцией и развитием системы учета и подготовки SMD-компонентов для сборки на автоматической линии. MYCenter MH обеспечивает автоматизированную загрузку компонентов в питатели автомата путем считывания штрих кодов с катушки и тем самым минимизирует риск допуска ошибки оператором. После считывания штрих кодов на катушке с компонентом и на питателе происходит автоматическая привязка питателя к катушке. При этом в оборудование попадает информация о фактическом количестве элементов в носителе, которая по мере сборки изделия автоматически обновляется в базе данных MYCenter MH. Другими словами, уже имеется механизм, обеспечивающий автоматизированное списание компонентов в катушке по мере их расхода на сборочной линии.
Нужно отметить, что возможности ПО MYCenter MH выходят за рамки автоматизации процесса загрузки компонентов в питатели установки, система позволяет также учитывать и контролировать остатки SMD-компонентов на производстве, управлять местоположениями комплектации через маркировку полок на стеллажах хранения или коробок с комплектацией, а также может участвовать в планировании работы автоматической сборочной линии. Это открывает дополнительные возможности по использованию имеющегося функционала для специфичных задач предприятия, дополняя существующую ИСП-систему, если в ней отсутствует какого-либо элемент из описанного выше функционала.
При загрузке носителей с компонентами в питатели с помощью MYCenter MH требуется, чтобы каждый носитель имел уникальный код, обеспечивающий однозначную идентификацию конкретной упаковки — в идеале в течение неограниченного времени. Это позволяет учитывать расход компонентов и вести учет местоположений по каждому носителю, одновременно загружать несколько носителей с одинаковым компонентом в установщик, готовить различные комплекты для разных производственных заказов или сборочных линий, а также формировать отчеты об использовании конкретных компонентов на смонтированных печатных платах.
Для этой цели в MYCenter MH имеется функционал по присваиванию уникальных номеров каждой катушке и печати соответствующих штрих кодов. В классическом случае предполагается, что катушки, устанавливаемые в автоматическую линию MYCRONIC, предварительно маркируются в MYCenter MH, и этот код применяется для загрузки питателей в машину. Если такой же функционал предусмотрен в ИСП, где, в свою очередь, также печатаются коды катушек, получается, что приемка компонентов дублируется, — это вносит немалую путаницу и неэффективно расходует рабочее время. Операцию приемки компонентов целесообразно выполнять в одном месте, используя далее полученную информацию в разных системах без дополнительных усилий.
Можно выделить два подхода в организации учета компонентов в ИСП. В первом случае регистрируются номенклатурные позиции (имена компонентов), и во внимание не принимается конечное число конкретных носителей на складе. Таким образом, в базе предприятия указывается только суммарная наличность компонентов, а информация о количестве отдельных упаковок и местоположении каждой из них не фиксируется.
Во втором случае учет ведется в том числе по каждому носителю, которому присваивается уникальный номер, однозначно идентифицирующий его среди остальных. Уникальный номер дается носителю даже в том случае, если в партии были одинаковые катушки от одного поставщика. Вариант, при котором катушки из одной поставки, имеющие одинаковый компонент, получают одинаковый код, а из различных поставов — разный, больше относится к первому случаю, и конкретные решения зависят от поставленных задач.
Если ИСП построена по принципу уникальности каждого носителя, тогда возможно использование напрямую в MYCenter MH штрих кода носителя, сгенерированного ИСП. При этом исключается необходимость повторной приемки каждого носителя в MYCenter и печати дополнительных этикеток со штрих кодом на каждую катушку, пенал или поддон. Если учет в ИСП организован по принципу фиксации только номенклатурных позиций, приемки в MYCenter MH каждого носителя с присвоением ему индивидуального кода и печати отдельной этикетки избежать не удастся.
Впрочем, взаимодействие между двумя системами (MYCenter MH и ИСП) можно построить при любом способе организации ИСП, однако детали работы конечного механизма интеграции, естественно, будут различаться.
Уникальность кодов маркировки носителей
Вопрос уникальности кодов используемых катушек требует выработки отдельной системы их маркировки. По умолчанию в MYCenter MH установлен обычный индексатор, который увеличивает свое значение на единицу после печати очередной этикетки (индексы начинаются с единицы). Однако если говорить о построении системы маркировки, охватывающей несколько информационных систем, где могут использоваться разные принципы идентификации, целесообразно организовать специальную систему маркировки, дополнительно кодирующую интересующую информацию, такую как дата приемки компонента, номер накладной, и т. д. Позиции в коде можно зафиксировать для кодирования разного рода данных, зарезервировав, к примеру, последние два символа для создания действительно уникальных индексов для катушек с одинаковыми компонентами, пришедшими в рамках одной поставки. То есть трем катушкам с одинаковым компонентом YY, поступившим по товарной накладной XXXX от 1.03.2018, присваиваются номера YYXXXX0103201801, YYXXXX0103201802 и YYXXXX0103201803. При этом MYCenter MH получает уникальный код катушки, а если ИСП не требует уникальности и построена по другому принципу, она может просто отбросить некоторые символы, создав нужную систему маркировки.
Синхронизация имен компонентов
Нередко ИСП содержит собственные имена компонентов (названия номенклатурных позиций), отличающиеся от имен компонентов, принятых на линии автоматического монтажа MYCRONIC. Следует отметить, что оборудование MYCRONIC не допускает употребления имен компонентов, содержащих символы кириллицы, причем длина имени компонента MYCRONIC ограничена 35 символами. В связи с этим возникает потребность ассоциировать имена компонентов в оборудовании MYCRONIC с именами, принятыми в ИСП. Если обозначения в ИСП не превышают 35 символов (и метки также не имеют знаков кириллицы), можно использовать имена из ИСП напрямую в TPSYS и MYCenter. При необходимости корректировки существующей базы данных установщика MYCRONIC, содержащей отличные от ИСП имена компонентов, можно выполнить предварительную разовую синхронизацию базы данных TPSYS с сохранением ее целостности, заменив старые обозначения компонентов теми, что приняты в ИСП.
Кроме того, допустим вариант, когда ИСП полностью берет на себя функцию по предоставлению корректного имени компонента, принятого в MYCRONIC, например за счет добавления специального поля к базе данных, где указано название, используемое в TPSYS. Во многих случаях выбирают именно этот вариант, однако он требует определенной квалификации работников склада.
Ассоциацию между именами можно построить и в случае, когда в базе MYCRONIC каждый компонент имеет добавочный код, принятый в базе данных ИСП. Для этого задействуют дополнительное поле Barcode, допускающее строку длиной до 40 символов. Следует помнить, что здесь также не допускаются символы кириллицы в коде и в российских реалиях это становится существенным ограничением, а потому такую схему чаще использую за рубежом.
Какой бы подход ни был выбран в результате, вопросу синхронизации имен компонентов необходимо уделить особое внимание перед непосредственной реализацией сервиса взаимодействия между информационными системами.
Особо хочется отметить, что можно построить механизм автоматического создания новых компонентов в базе данных TPSYS после их формирования в ИСП. Данная функция востребована на реальном производстве и позволяет поддерживать в синхронизированном состоянии еще и список номенклатурных позиций, обеспечивая единообразие маркировки на предприятии. От инженера, готовящего программы монтажа, может потребоваться только дополнительное описание параметров корпуса нового компонента в процессе программирования оборудования, при этом необходимость дальнейшего создания корпуса на автоматическом сборочном участке никак не отразится на эффективности работы сервиса интеграции между информационными системами.
Механизм взаимодействия в случае индивидуального учета каждого носителя в ИСП
Индивидуальный учет каждого носителя в ИСП является предпочтительным, при этом механизм взаимодействия между системами можно реализовать различными способами. Непосредственно в MYCenter MH можно активировать дополнительную опцию связи с внешней ERP-системой. Данная опция позволяет взаимодействовать с MYCenter MH через веб-сервис, причем алгоритм работы MYCenter MH строится на основе ответов, получаемых от соответствующего сервиса. Использование описанной опции предполагает следующую процедуру работы.
Каждый раз при сканировании штрих кода носителя, сгенерированного ранее ИСП (индивидуального штрих кода носителя — CarrierID) с помощью сканера, подключенного к MYCenter MH, эта база вызывает функцию указанного веб-сервиса и запрашивает внешнюю ИСП о связанных с отсканированным носителем данных. Внешняя ИСП возвращает информацию о названии компонента в носителе и текущем количестве компонентов и дополнительно пересылает код партии компонента (BatchID ). Если в дальнейшем оператор загружает носитель в питатель установщика, внешняя ИСП-система получает уведомление о том, что носитель находится в работе (с указанием серийного номера питателя). Когда оператор на автоматической линии выгружает компонент из питателя, MYCenter сообщает внешней ИСП о том, что носитель более не находится в работе, а также отправляет в ИСП количество истраченных компонентов. В ответ на этот запрос ИСП должна подтвердить, что полученная информация корректно обработана в системе и питатель может быть выгружен, в противном случае носитель остается загруженным в питатель автомата до следующего удачного обмена информацией, чтобы предотвратить потерю сведений.
В последние версии ПО была также добавлена функция контроля загрузки компонентов в питатели со стороны ИСП. В момент загрузки компонентов в питатели ИСП должна пересылать код подтверждения, разрешающий выполнение данной операции. Такая функция запрещает использование некоторых компонентов на линии, предотвращая их несанкционированное применение (изоляция брака, резервирование под конкретный заказ и т. д.).
Если же происходит повторное сканирование штрих кода носителя, прежде уже участвовавшего в работе, то каждый раз происходит обновление количества компонентов в носителе в локальной базе данных MYCenter перед очередной загрузкой компонента в питатель. Таким образом, внешняя ИСП является полноправным владельцем информации о каждом носителе и индивидуально контролирует оставшееся в них количество компонентов .
В случае использования стандартного сервиса списание количества израсходованных компонентов происходит дискретно во время операций загрузки и выгрузки носителя в питатели установщика. Непосредственно в процессе сборки печатных плат на линии никакого списания компонентов не происходит. В некоторых случаях это является ограничением. Для реализации возможности списания компонентов в носителях в «реальном времени» предусмотрен специализированный сервис MYCROSCOPE-Harvester, разработанный компанией «Диполь». Этот сервис постоянно прослушивает сообщения от сборочной линии в процессе ее работы и генерирует соответствующие события по мере окончания сборки очередной платы/панели. Сервис позволяет гибко настраивать как формат отчета об израсходованных компонентах, так и способ взаимодействия с внешней ИСП-системой. В базовом варианте формируется отчет о расходе компонентов по каждому загруженному носителю после окончания сборки очередной платы/панели. При комбинированном использовании опции L-010-0615 ERP for MYCenter и сервиса MYCROSCOPE-Harvester внешняя ИСП-система должна специальным образом обрабатывать информацию о расходе компонентов, получаемую после выгрузки носителя из питателя, поскольку данные о количестве уже обновлены отдельно через сервис MYCROSCOPE-Harvester .
Следует отметить, что возможен вариант построения взаимодействия между информационными системами и без опции L-010-0615 ERP for MYCenter: взаимодействие с базой данных MYCenter MH выполняется напрямую, без привязки к алгоритму работы программы MYCRONIC через специализированный сервис MYConnect, также разработанный «Диполь». В этом случае создание новых записей о носителях в базе данных MYCenter MH должно происходить до их загрузки в питатели сборочного автомата. Подобно тому, как реализуется взаимодействие с применением стандартной опции, сервису MYConnect необходимо предоставить информацию о названии компонента, их количестве в упаковке, номере партии BatchID, а также о коде CarrierID, который будет считываться в MYCenter MH. Важно отметить, что вызов функции компонента MYConnect должен осуществляться ИСП самостоятельно, а не в ответ на запрос от MYCenter MH, как в первом варианте. Вызов функции по созданию нового носителя в базе MYCenter MH выполняется, как правило, сразу после создания новых записей в базе данных ИСП, и обмен информацией после каждого считывания штрихкода CarrierID между ИСП и MYCenter MH также не производится. При организации взаимодействия между информационными системами без помощи стандартной опции L-010-0615 ERP for MYCenter теряется возможность постоянного обновления сведений о количестве компонентов в носителе при каждом сканировании его штрихкода, и нет взаимосвязи в моменты загрузки/выгрузки питателя , однако полностью сохраняется возможность использования MYCROSCOPE-Harvester для списания компонентов в «реальном времени», что в большинстве случаев отвечает задаче интеграции в полном объеме.
Сервис MYConnect представляет собой сборку Microsoft .NET, доступную стороннему коду как через Web-service, так и с использованием технологии COM, либо путем указания ссылки на нее в случае разработки под NET Сервис MYConnect добавляет дополнительный функционал к процессу взаимодействия, в частности, речь идет об автоматическом создании новой номенклатуры (названия компонента), если она появляется в ИСП.
Рис. 1. Схема взаимодействия между информационными системами с использованием опции L-010-0615 ERP for MYCenter
Механизм взаимодействия в случае учета общего количества по каждой номенклатурной позиции
При данном способе организации ИСП также возможно информировать внешнюю ИСП о расходе компонентов, однако нужно отдельно выполнять приемку компонентов в MYCenter MH, присваивая носителям индивидуальные штрих-коды и маркируя ими носители. Учет конкретных носителей в данном случае остается в области ответственности ПО MYCenter MH, во внешнюю систему поступает только информация об интегральном расходе по номенклатурным позициям и остатках компонентов.
Естественно, здесь тоже следует проработать вопрос привязки имен компонентов, принятых в ИСП, к именам, используемым в базе данных MYCRONIC. В остальном механизм напоминает принцип работы системы при индивидуальном учете носителей в ИСП. Также в этом случае, как правило, отпадает необходимость построения взаимодействия через стандартную опцию L-010-0615 ERP for MYCenter, в силу бесполезности большинства ее функций, поскольку владельцем информации о каждом индивидуальном носителе будет являться MYCenter MH. Применение описанной опции может быть оправдано при потребности информирования ИСП о том, что специальные компоненты поступают в работу, а разрешение на их использование должно контролироваться основной учетной системой предприятия.
Механизм списания в «реальном времени» при подобном подходе также будет полностью работоспособен, только и в данном случае учет расхода ведется лишь по имени компонента, индивидуальные коды носителей не участвуют в обмене.
Рис. 2. Механизм взаимодействия между информационными системами с использованием опции L-010-0615 — ERP for MYCenter
Заключение
Несмотря на универсальность описанных выше принципов, в процессе создания реального сервиса по взаимодействию между системами решается ряд специфичных задач, начиная от согласования имен используемых компонентов и выработки системы идентификации носителей, удовлетворяющей целям различных систем, и заканчивая конкретными способами обмена информацией между ними. Сам механизм обмена данными между сервисами можно построить различными способами, включая взаимодействие с программным кодом через прямой вызов функций интерфейсного компонента либо путем обмена через XML или текстовые файлы, промежуточную базу данных и т. д. Выбор конечного механизма общения всегда остается на усмотрение заказчика. В каждом случае специалисты «Диполь» готовы помочь и подсказать наиболее успешные методики построение такой системы.
Особо отметим, что создание подобной системы существенно повышает общий уровень производственной культуры, и эффект от такого внедрения начинает ощущаться очень быстро, полностью окупая затраченные временные и материальные ресурсы.
Это является хорошим стимулом для дальнейшего развития предприятия и постепенного перевода производства на цифровые рельсы, приближая эру «умного производства».
Термины и определения
- MYCRONIC (ранее MYDATA) — шведский производитель SMT-оборудования для поверхностного монтажа SMD-компонентов. Ссылка на сайт производителя www.mycronic.com.
- TPSYS — управляющая программа автомата поверхностного монтажа компании MYCRONIC. TPSYS обладает интерфейсом по управлению автоматом сборки печатной платы и содержит серверные компоненты, позволяющие хранить и обслуживать внутреннюю базу данных станка. В качестве базы данных в TPSYS используется свободная объектно-реляционная система управления с открытым кодом PostgreSQL.
- MYCenter MH — MYCenter Material Handing — программное обеспечение компании MYCRONIC, разработанное для автоматической загрузки SMD-компонентов в питатели автомата по установке компонентов MYCRONIC/MYDATA путем считывания штрихкода на носителе (на упаковке с компонентом) и штрихкода на переносном питателе. MYCenter MH ведет отдельную базу данных SMD-компонентов, позволяя производить списание элементов в носителях в процессе сборки печатной платы, обладает, в частности, функциями по контролю за перемещением компонентов на производстве за счет поддержки штрихкодированных местоположений. В связке с ПО MYPlan предлагает позиции в магазинах для наилучшего места установки питателя с компонентом, создавая оптимизированные комплекты питателей для сборки печатных плат, а также обеспечивает поддержку автоматизированного склада для хранения компонентов SMD Tower. MYCenter MH является эволюцией ПО MYLabel, предназначенного для тех же задач. Однако в отличие от MYLabel, использовавшего внешнюю базу данных Access, MYCenter MH хранит все сведения на сервере TPSYS в базе данных PostgreSQL.
- MYCenter CAD — MYCenter CAD Convertion — программное обеспечение компании MYCRONIC, созданное для удаленного программирования SMD-автоматов компании MYCRONIC/MYDATA. MYCenter CAD и MYCenter MH используют единый интерфейс для доступа к внутренним базам данных TPSYS, различаются между собой только вкладками на основной форме приложения, открывающими доступ к различным функциям.
- MYCenter — общее название программного обеспечения компании MYCRONIC без указания конкретных лицензий (CAD или MH), включенных в конечный продукт. MYCenter может поставляться без лицензий CAD и MH, разрешая пользователю редактировать базу данных автомата на удаленном рабочем месте.
- Носитель с компонентом — обозначение одного из возможных вариантов упаковки SMD-компонента. Существуют три основных типа упаковки: катушка, пенал или поддон. В терминах базы данных MYCenter имеет обозначение Carrier.
- Питатель — устройство для подачи компонентов в установщик в процессе монтажа изделия. В английской литературе используется термин Feeder.
- CarrierID — уникальный идентификатор носителя с компонентом в базе данных MYCenter MH.
- BatchID — идентификатор партии компонента, который отображается в логе сборки автомата MYCRONIC. Данный код служит для идентификации компонентов, установленных на печатную плату.