Комплекс программ
|
Предыстория.
Для производства фюзеляжа RRJ (Super-Jet) встал
вопрос: - как это делать. ?????
Способ 1. Намотка | Способ 2. Клепка + сварка |
Этот
метод появился в 70-80 гг. прошлого столетия. Его появление было обусловлено
появлением новых видов материалов : акрил, углеводородное
волокно. Данные виды материала превосходили по прочности разные типы металла. | Этот способ - древний
как мир, в котором мы живем. Все гражданские самолеты прошлого и нынешнего столетия развивающихся стран производятся по этой технологии. Почитать больше: Глава18.Прогрессивные технологии клепки и их соединений. -Для начала производится большой объем фрезерования на станках с ЧПУ. -Затем полученные панели гнут. - И в конце концов их собирают вместе посредством клепки или сварки. |
История. .............. Я ко всему Этому, имел косвенное отношение, очень далекое :).
1) Ну, для начала Руководство выбрало оборудование. Само. Кто выбирал, какими мыслями руководствовался - история об этом умалчивает.
Сначала выбирали руководителя. На эту должность хотели
толкнуть меня. Толкал мой коллега : моральный урод - Разин (ныне
сотрудник Би-Питрон, директор какой-то), вечно меня
подставлявший, постоянно лезший в мою личную жизню, вымогавший у меня деньги (о, это отдельная история -
прикольно было :):)), а позже спиздивший очень много у меня информации
(4-5 лет я был на взводе, и еще месяц другой, и я бы набил этому лысому уроду
рожу ~).
Для меня фамилия Разин стала синонимом мерзопакости. Поэтому, как только я узнавал, что человек - друг или знакомый этого урода, моментально разрывал любые отношения.
Я подумал: "Зачем в группу клепки Инженер-ПРОГРАММИСТ
!? Что я там потерял и чем я буду заниматься? Работой обычного технолога по
машиностроению или сварке ?" Поэтому, я сделал
рожу тапочком, задал пару глупых
вопросов по типу: "... а что такое ТЭМ, ЭМ, и клепка вообще....", посидел пару раз с дурацким лицом ..... и.. от меня культурно отстали. Я был очень рад. На
место руководителя - перешел человек из Инженерного центра. А ближайшем его
коллегой стал друг Разина - Санин.
Оооооо , об этом человеке нужно рассказать
особо. Отдельно.. Особенно для людей из г. Рыбинска , чтоб они не думали, что все так
прекрасно на КнаАПО в городе К.
Санин. Ник - Cooler. Окончил техникум. Устроили на завод на должность техник-конструктор.
Женат,
есть ребенок. Даже кажется 2-а. Возраст
~34
... ~36 года.
Особого ума нет.
Когда
переводился на инженерную должность утаил, что диплома о высшем у него - нет.
ВО получил уже заочно. Работая техником-конструктором -
прославился тем, что умело качал фильмы, инфу про
телефоны ( особенно в бум мобильников), играл в игрушки (специалист). А еще он считал
себя гуру
web - программирования, так как
подвизался в фирму по созданию
web-сайтов.
В чатах очень часто угрожал людям - простыми словами :
"у меня друзья
в органах завода, так что заткнись, а то я устрою так , что тебя уволят".
Папа у него работал в РСО (режимно-секретное объединение мудаков). В
числе подвигов Этого, простите, мутанта, стояло вымогательство
2000$
у человека, чтоб его не уволили, за то,
что, Тот работал под чужой учеткой. Кстати, настучал на него Мутант - намеренно, с умыслом, хладнокровно... Но человека всё равно
уволили его друзья - "уроды". |
|
Сначала я не особо верил слухам про Этого Мутанта. Мало ли люди болтают. Пока мне не довелось с этим прямо столкнуться. декабрь 2007 года. Вечер. В автобусе возвращаемся домой. В новостях
передают: |
Мне очень понравился сайт из города
Рыбинска :
http://Rybinsk20.Narod.Ru
или http://rybgrad.narod.ru
.Хех, талант.
идем дальше,
5) Обучение:
ну надо провести обучение , поэтому откомандировали группу Клепки,
механиков, Программиста из Отдела информационных технологий в Германию летом
2006 года. Предварительно, со всех бухгалтер взял обещание (письменное), от
том, что они не могут уволится в течение 5 лет, иначе возвратят предприятию
стоимость их вояжа за границу.:):).
Тренировались на панели
T7.92.0461.000.000.70
и частично на
T7.92.2025.000.901.70.
По окончании обучения им выдали сертификаты.
Обучающие NC -
программы преподавателя :
TRAINING_STR.zip
6) Создание FPDF -
файлов.
Самое главное...:) Всерьез встал вопрос, кто и как будет
создавать эти несчастные файлы FPDF.
Тут меня опять
затронули, хотя я вообще не хотел и не желал туда влазить. Дело в том, что у
Разина (ответственного за это дело) было огромное желание сделать
- "
ассоциативность траектории обхода и чтоб операция по
работе с клепками напоминала обычную операцию по обработке."
Я его прекрасно понимал, но на том
этапе развития отношений между отделами завода и внедрением оборудования, лучше
с новаторскими идеями было не лезть. А предоставить все идти
своим чередом. В итоге,
на одном из совещаний он жутко, в очередной раз, меня подставил, перед Лазовичем.
Лазович |
- это очень
опытный инженер-конструктор. Мужчина в годах
(ну, его зарплата была в 2-3 раза больше моей :):), как и возраст:, занимавшемся Югом сначала его
появления на заводе. С 1995года. Вместе с Тихонович Еленой
- очень умной женщиной (тоже в годах), он занимался разработкой утилит
и сопровождением ПО из ОКБ Сухого, в основном для
конструкторов. Жутко гнобил её. А еще, много "похоронил"
хороших программистов и умных людей :):):).
{ .... } { .... } И название файлов, начинающихся с program_ugnx*
goto Label; Label: .... 3 - для ведения логов и вывода ошибок программы, этот человек применял конструкцию (примерно как показано ниже): #define PRTERR if(errorCode) {PrintErrorMessage(errorCode,__LINE__);errorCode=0;goto term;} static void PrintErrorMessage(int errorCode, int line) { if(errorCode) { char message[133]; UF_get_fail_message(errorCode,message); UF_UI_set_status(message); fprintf(prterr,"errorCode=%d message=%s line=%d \n", errorCode,message,line); } } ..... //переменные для обработки времени struct tm* newtime; time_t aclock,start_time,finish_time; double work_time; int min,sec; time(&start_time); //включаем секундомер //попытка открыть файл ошибок на D: if((prterr=fopen("D:\\prterr.txt","w"))!=NULL) { goto label_clock; } ..... //попытка открыть файл ошибок на C:/TEMP/ if((prterr=fopen("C:\\TEMP\\prterr.txt","w"))!=NULL) { goto label_clock; } ..... term: time(&finish_time); work_time=difftime(finish_time,start_time); min=(int)work_time/60; sec=(int)(work_time-min*60); fprintf(prterr,"\n working time is %u min %u sec\n",min,sec); fflush(prterr); fclose(prterr); Вы когда-нибудь решали Задачу
Эйнштейна эээээ на Unigraphics ? Этот
человек - может с гордостью Вам заявить: Он решал. |
Так вот, на совещании возник вопрос, о том, что расставлять заклепки лучше
автоматически, как делает это ЮГ в операциях сверления. И Лазович задал Разину
вопрос - а как он будет решать эту задачу, это ведь целая
научно-исследовательская работа? Тот перевел все стрелки на меня...
блина... От неожиданности, я попал впросак. У меня горели уши, долго-оооооо
:):):):)
Ну, да ладно..
ОИТ - на радостях сделал 2-е версии программы для создания
FPDF:
riveting_machin_IPAC_25_nov_2005_v1.c | application_v11.zip |
riveting_machin_IPAC_25_nov_2005_v2.c | application_v12.zip |
Но обе они не прокатили. :( Дело оказалось серьезней, особенно когда ими
начинают заниматься серьезные дяди.
В итоге, после небольшой перепалки и взаимных обвинений - все это вылилось в
большое техзадание (ТЗ):
........
5.2 Состав комплекса программ
а) Программа создания линейной сборки. Программа обеспечивает получение линейной сборки из технологической сборки. |
2006_05_15_may_get_linear_assembly.zip nx4_get_linear_assembly_2007.zip |
б) Программа простановки атрибута rivet всем заклепка. Программа проставляет атрибут rivet всем заклепкам сборки. Этот атрибут является ограничителем выбора компонент для последующих программ комплекса. | 2006_04_28_april_set_component_attribute.zip |
в) Программа создания компонент - маршрутов клепки. Программа порождает компоненты, в которые будут помещаться заклепки одного маршрута. | 2006_05_29_ may_move_instance.zip |
г) Программа перемещения заклепок по компонентам – маршрутам. Программа размещает заклепки по компонентам маршрутам, чтобы исключить попадание заклепки в разные маршруты. | |
д) Программа присвоения атрибутов заклепкам. Программа создает или корректирует атрибуты по спецификациям FPDF файла. | nx4_make_path_control.cpp |
е) Программа создания уникального имени заклепки. Программа присваивает порядковый номер заклепке в маршруте. + Цвет |
Rivet_first_2006.zip 2006_05_31_may_set_IPAC_attributes.zip set_attr_from_color_2007.zip nx4_set_attribute_RIVET_for_rivets.cpp |
ж) Программа порождения FPDF файла. Программа собирает заклепки из сборки, сортирует по уникальным именам и создает текстовый файл FPDF. |
2006_06_01_june_create_FPDF.zip nx4_create_FPDF_version_05.zip |
д) * программа расчета критических углов качания позиционера станка IPAC | 2006_05_23_may_critical_projection_angle_II.zip |
..........
5.3. Список атрибутов. [
rivet.txt
значения атрибутов
zaklepka.zip ]
Разрабатываемое ПО присваивает компонентам сборки следующие атрибуты:
rivet тип заклепки ( work - рабочая metal -
металлизированная techno - технологическая )
path имя маршрута: назначается пользователем
pr_code процесс код выбирается пользователем определяется согласно
документации
ad_code дополнительный код выбирается пользователем определяется согласно
документации
fast_code код заклепки выбирается пользователем определяется согласно
документации
grip_lng толщина пакета выбирается пользователем определяется согласно
документации
point_id идентификатор отверстия формируется программой
.........
И получили 2-ую версию этой разработки, состоящей из 9 программ (
*.dll ) :
ugii_user_dir_v2.zip
Но и этот вариант не был окончательный.
Спустя некоторое время, пришло время 3-ей версии (а может и пятой) пакета dll
для создания FPDF.
user_tools_ipac.zip (версия 2007 года)
Судя по иконкам - человек это делавший, обладал хорошим чувством юмора :)
P.S. Что я еще могу написать? Что можно сказать в принципе об этой сугубо простой утилитарной задаче, решение которой возвели в степень маразма с 2005-2009гг. Смотрите. И делайте. Не повторяйте ошибок.
Настало время показать и рассказать об программе (комплексе), которую решили сделать для показа (типа выпендриться).
Сразу возникла простейшая и
глупая проблема: используя UGOPEN невозможно открыть внутренности операции типа Point-to-Point (подтипа Drill ). Это можно делать только используя Grip. :) Проверьте сами. :):) |
7) Смешные странности:
В группе
автоматической клепки из 5 человек: 3 начальника и 2 подчиненных.
расстояние между 4-мя клепальными
автоматами и группой подготовки автоматической клепки - составляло и составляет
~2 км.
1 автомат клепал фюзеляж за 3-4 дня,
а фрезеровать деталей всем цехом - длинномеров (в 3 смены) необходимо было 1 месяц.
рабочим-операторам занятых на клепальных
станках, чтоб не разбежались - сделали Оклады + Бонусы.
BA-OLPS - документация на систему, язык описания FPDF, общий принцип работы и построения.
Первоначальное описание
системы о том, как будет все работать :
AP1614_DesignReview.rar Из документации следует,
что BA-OLPS расшифровывается как
Обучаемое пособие на 34 стр (на русском, отсканированное, сканировал
технолог). Пример маршрута для панели: marshrut_F3_high_panel.rar
Спецификация на клепки :
Stackthickness_Fastener_Specification.zip |
Программы Клепки
Долго
думал, выложить эти программы или нет. Вроде по размеру они подходят, а
вот в остальном...:((((.
Исходники: Revers_CNC_for_IPAC.zip
Revers_FPDF_for_IPAC.zip |
|
После процесса эксплуатации можно написать положительные и отрицательные свойства: Положительные свойства: |
||
Тут у меня наконец появились Идеи, сформировавшиеся
в конечные коды... но.. как всегда... обрезали и не дали..:):): |