среда, 23 июля 2008 г.

Вспоминая лето 2007 года

В июле-августе 2007 года в одном из сборочных цехов завода АДС (ОАО "Псковский завод аппаратуры дальней связи" http://www.ads.pskov.ru/?r=1 ) нами была внедрена в эксплуатацию модернизированная система управления установкой контроля монтажа изделий.
В сентябре 2007 года я начал было сочинять статью об этом событии для официального сайта СКБ ВТ, однако вскоре понял, что статья совсем “не пишется” по той причине, что данная система сделана не на контроллере производства СКБ ВТ, а использована плата CPU188 компании "Fastwel" практически в чистом виде. И само содержание работы вряд ли интересно сторонним читателям, поскольку в ней нет никаких особенных новшеств или открытий. А сейчас подумал, что неформально можно было бы рассказать об этой небольшой, но в чём-то все же интересной разработке.
Предыстория всего этого такова: СКБ ВТ на протяжении многих лет занималось работами, связанными с разработкой и внедрением АСУТП. Но в целом можно сказать, что это все были эпизодические работы, и какой-то системный подход не просматривается даже спустя много лет.
Все же мы специализировались, прежде всего, в создании средств для АСУТП. Это, прежде всего, МПСУ с набором контроллеров и модулей УСО, различные системы программирования для МПСУ, системы тестирования модулей и т.д.
К сожалению (наверное, теперь об этом можно только сожалеть), у нас не образовалось подразделения, которое бы реально занималось бы маркетингом в области АСУТП, а также созданием типовых или специализированных систем, их производством, испытанием и внедрением. В результате, наверное, мы многое упустили, добровольно отдали это направление в руки более активных людей (в Пскове в первую очередь).
И вот это предложение от руководства завода АДС. Не буду вдаваться в подробности, почему про нас там вспомнили. В принципе, до этого кое в чем мы помогали АДС и раньше. По крайней мере, в их установках контроля параметров изделий ещё с 1997 года работает наш МПСУ в каркасе КМ-13, а позднее был поставлен МПСУ в каркасе КМ8.
Задача была сформулирована просто: надо было обеспечить автоматизированный контроль монтажа изделий, которые выпускает завод АДС, поскольку с прежней установкой контроля УКМ-1 работать стало невозможно. Название изделий не имеет принципиального значения, потому что суть контроля монтажа для любых изделий одна и та же: измерение сопротивления между точками одной цепи, а также между точками разных цепей; далее по значению сопротивления делается вывод о наличии или отсутствии связи в цепи, а также о наличии замыкания между цепями. При этом задача упрощается тем, что изделие "прозванивается" в условиях отсутствия установленных плат с элементами. Так можно "звонить" печатные платы, каркасы, жгуты, кабели и т.п.
Надо сказать, что опыт создания подобных систем у СКБ ВТ имеется ещё с 70-х годов, когда была разработана и внедрена система "Агат" на базе УВК "Электроника К-200", производившая контроль монтажа жгутов и прочее, прочее. Как тут не вспомнить наших "патриархов" Натана Рахлевского, Володю Акимова. Я как раз только что пришёл работать в СКБ ВТ из двадцатого цеха, сидел и настраивал комплекс "Рубин" (тоже машина К-200 с периферией в рамах и стойках) и воочию наблюдал процесс настройки и отладки "Агата", когда рядом работали молодые Света Горбунова, Лена Андреева, Лена Погорельская. Ну, ладно, это лирическое отступление...
Вернёмся к АДС. Работа была поручена нашему отделу ОАСК (отдел автоматизированных систем контроля), ранее ОГПС, руководитель работы Роман Львович Каган, за схемы отвечал Виталий Федорович Губанов, за программы отвечал я, разработчик программ Станислав Чащухин.
Необходимость в новой системе у заказчика возникла оттого, что прежняя система собственной разработки УКМ-1, которая была введена в эксплуатацию в 1984 году, практически пришла в негодность из-за невозможности дальнейшей эксплуатации управляющей микроЭВМ типа Д5-38. Во время первой "экскурсии" в цех, где стоит эта установка УКМ-1, мы с интересом наблюдали, как приборист Немчинов Борис Федорович путём каких-то волшебных манипуляций и настойчивых заклинаний запускал машину и с третьей или пятой копии считывал программу с ленточной кассеты. Все это напоминало ввод программ на бытовом компьютере, который некогда выпускало СКБ ВТ (кстати, у меня за спиной на столе лежит этот "музейный экспонат", который я некогда купил, сам не знаю для чего). У меня сложилось впечатление, что это был, видимо, последний запуск старой системы, потому что через месяц рядом со стойкой контроля я уже не увидел ни машину Д5-38, ни допотопный дисплей для неё. А в тот момент рядом с нами находились начальник этого цеха Командинов Андрей Жоресович и главный метролог завода Холомков Валерий Алексеевич, которому было поручено курировать работу с нами.
Надо честно сказать, что тогда я ещё не представлял, с какого боку следует подступаться к разработке, но держался бодро, не выдавая своих опасений. В чем заключались эти опасения? Во-первых, было понятно: если делать систему с нуля, то мы её не сделаем, поскольку опыт "Агата" показал, что на это требуется масса времени, людей и денег. Мало вероятно, что директор АДС на все это согласился бы. Во-вторых, был обычный небольшой мандраж от предстоящей работы с пока ещё многими неизвестными, поскольку, например, у заказчика могло не оказаться ни внятной документации на прежнюю систему, ни людей, которые что-то помнят о старой разработке.
К чести заводчан они сохранили документацию, по которой впоследствии я смог разобраться со схемами стойки контроля.
Холомков в своём маленьком кабинете отдела метрологии вручил нам пакет с документацией, среди которой не хватало только одной папки. И как потом оказалось, без неё можно было обойтись, но при этом потратить значительное время, восстанавливая отсутствующие данные по другим документам.
И даже нашёлся человек, который писал программы для машины Д5-38. Правда, ему очень не хотелось что-то вспоминать. Я смог один лишь раз его “вытащить” из какого-то отдела в цех, где минут 20 терзал вопросами. И отмечу, что Николай (так его зовут) хоть и не рассказал что-то существенное, но некоторые его объяснения позволили мне правильно "уложить в голове" ряд “непонятностей”.
А дальше было так. Я в течение месяца изучал документацию на УКМ-1 и сочинял несколько документов к техническому заданию для разработки программного обеспечения. Причем для себя уже решил, что в качестве контроллера будем применять плату CPU188. Для меня выбор был основан на следующих аргументах: этот контроллер нам (прежде всего, Станиславу) хорошо был знаком по ряду разработок в СКБ ВТ, обучение для его программирования не требовалось, и даже можно было использовать накопленный задел программ по связи между компьютером оператора и контроллером по последовательному каналу; плата CPU188 имеет встроенный ввод-вывод дискретных сигналов, разрядности которого вполне хватало для обмена сигналами со стойкой контроля. По данной ссылке можно посмотреть свойства и внешний вид этой платы: http://www.fastwel.ru/products/356046/micropc/micropccpu/240105.html
Наконец, "живая" плата CPU188 давно лежала в моём сейфе и, казалось бы, ждала своего применения. Мы ранее использовали её для разработки программ и выполнения отладочных работ, но в перспективе её использование не просматривалось.
Правда, я получил изрядную долю критики в свой адрес со стороны технического руководителя СКБ ВТ (Ильин С.Н) за столь, как казалось, моё единоличное решение по выбору контролера. Мало того, в процессе разработки мы даже купили плату дискретного ввода-вывода для шины PCI якобы для опробования её применения в системе, но я спокойно и дипломатично привел дело к тому, что решение по CPU188 осталось в силе.
Итак, что же получилась за система? В двух словах так: компьютер оператора закачивает по последовательному каналу в плату CPU188 управляющую программу и тестовый массив для выбранного из меню изделия, компьютер также обеспечивает интерфейс оператора и вывод результатов контроля. Подробности изложены в документации на программное обеспечение. Мы полностью сохранили стойку контроля от прежней системы, включившись в параллельный интерфейс управления этой стойкой. Проще говоря, выбросили старую машину с дисплеем, заменили её контроллером и компьютером. Компьютер принесли из какого-то отдела завода, нам было достаточно, чтобы в нем работала Windows-98, и функционировал свободный COM-порт.
Отдельно можно долго рассказывать, сколько времени я убил на то, чтобы, сравнивая две разные таблицы в документации на установку и контролируемые изделия, выявить расхождения в конфигурации цепей, чтобы затем составить правильную базу данных по двум изделиям. А ещё масса времени ушла на ввод екселевской таблицы, содержащей практически всю схему стойки контроля, потому что только так оказалось возможным разобраться в командами управления устройствами внутри стойки контроля как для проверки монтажа, так и для выполнения диагностики самой стойки. Само собой, что разработка программ тоже потребовала от Стаса ощутимых усилий.
В.Ф. Губанов
Схемотехническая и конструкторская разработка новой системы управления была менее объёмной, потому что надо было только разработать кабель, соединяющий контроллер с интерфейсным разъёмом стойки контроля, а также блок питания контроллера. Но зато Виталий Губанов много сделал для того, чтобы в начальный период отладки нашей системы мы смогли разобраться, как надо подавать управляющие сигналы в стойку, чтобы она "задышала". Для этого пришлось основательно "полазить" по платам стойки контроля. Кстати, именно отсутствие в документации на стойку точных сведений о последовательности подачи сигналов в разных режимах вызывало у меня сильное опасение: а что если наткнёмся на какое-то непреодолимое препятствие в устройстве стойки? Не могу сказать, что не было описаний работы устройств стойки контроля. Они были и во многом помогали. Но дело как всегда состояло в тех тонкостях, о которых авторы документов умалчивали. Во-первых, отсутствовали временные диаграммы управляющих сигналов, из которых было бы ясно, какой уровень сигналов является активным, а какой пассивным, а также каковы интервалы между включением и отключением сигналов, выдачи кодов данных и т.п. Во-вторых, я выявил ряд ошибок в документации, расхождений со схемами. И, наконец, благодаря чутью Губанова, мы нашли несколько существенных доработок в платах стойки, которые никак не были отражены в документации. С этим мы знакомы: цеховые регулировщики или кто-то ещё в процессе то ли внедрения установки, то ли её последующего ремонта, изменяли схему платы, припаяли другие элементы и провода, но при этом не откорректировали документацию. Может быть, для себя кто-то что-то записывал, но всё это давно утеряно.
Да, чуть не забыл сказать, что когда мы недели две втроём (я, Виталий и Стас) разбирались в цехе с
устройством стойки контроля, ползая рядом с ней иногда и на коленках, в качестве отладочного контроллера с успехом применяли наш МПСУ с контроллером М521 и модулями ввода-вывода дискретных сигналов М201 и М203.
Мне не хотелось на первых порах спалить порты UNIO платы CPU188. А модули МПСУ мы смогли бы легко заменить или отремонтировать. Я вообще остаюсь верным применению МПСУ хотя бы вот так, для выполнения отладки системы.

Ещё был интересный момент, когда мы вставляли наш контроллер с блоком питания внутрь стойки контроля. Это было естественное решение: не вешать контроллер где-то сбоку, а поместить внутрь стойки, тем более, что свободной пространство там имелось. Но вот вопрос: к чему подключить блок питания? Наружу вилку 220 вольт выносить как-то некрасиво (да и заказчик сопротивлялся такому решению), а внутри никаких лишних розеток не было. Схему на разводку сети 220 вольт внутри стойки мы не нашли. Зато нашли открытые контакты мощного сетевого трансформатора в одном из блоков питания стойки. Вот в этот момент пригодилась решительность (и опыт бывшего внедренца) нашего начальника Романа Кагана. Мы ему доверили припаять сетевые концы к первичной обмотке этого трансформатора.
Р.Л. Каган
Вытащили блок питания, нашли в цехе большой паяльник. Но при попытке сначала отпаять закрученный на контакте провод этот контакт на трансформаторе вдруг обломился. Вот тут-то мы сильно заволновались, и уже Роман уже стал “прокручивать” в голове и вслух тоже, где мы будем искать и покупать такой трансформатор... Вот же невезение: столько времени и сил затратить на разработку и отладку системы и вдруг из-за какого-то контакта попасть в очень неприятную ситуацию. Хорошо, что никого из заказчиков рядом не оказалось в это время (женщины монтажницы не в счёт).
Наверное, от отчаянья или по какой-то интуиции Роман попробовал зачистить от краски то, что осталось от сломанного контакта. И это, к счастью, получилось. Он припаял два провода, проверили надёжность пайки и поставили блок питания на место в стойку. Включение питания стойки вместе в нашим контролером прошло хоть и волнительно, но успешно. Стартовая диагностика прошла нормально, а последующий контроль монтажа технологического изделия показал, что система работает, как надо. Можно было звать Холомкова, Немчинова и Командинова, чтобы показывать работу системы. Я отдал заказчикам комплект документации на программное обеспечение, и чуть позднее был подписан акт приемки-сдачи работы.

Комментариев нет: