Введення.
Темою запропонованого дипломного проекту є розробка програмного забезпечення для передачі результатів проектування по СМП ПП на розробку конструкційних рішень деталей і оснащення.
У проекті пропонується програмне забезпечення p-flex, розроблене для інтеграції пакетів PCAD і T-FLEX для СМП.
Одним з недоліків PCAD-a є те, що він представляє лише плоский (двомірний) вид ПП. Для розробників деталей оснащення часто буває необхідно знати об'ємні розміри ПП, тому що від них прямо залежать конфігурація і габарити виробу. Розроблене програмне забезпечення значно полегшує контроль відповідності розмірів, тому що вона повністю автоматизує процес передачі габаритів ПП (з урахуванням висоти! тобто в тривимірному вигляді) з системи PCAD прямо в систему розробки деталей оснастки - T-FLEX. Розробнику потрібно лише вставити фрагмент, який зображає плату, попередньо підготовлений розробленою програмою p-flex, прямо в свій складальний креслення T-FLEXа на призначене їй місце і візуально проконтролювати відповідність розмірів. Зауважимо, що використання пропонованого ПЗ звільняє розробника деталей оснащення від використання PCAD (тоді, як раніше йому доводилося вручну аналізувати ПП в PCADе і виходячи з її розмірів будувати свою роботу).
Крім передачі габаритних параметрів між системами, запропоноване ПО допомагає здійснювати контроль за КД, тому що здатна, за стандартним pdf-файлу системи PCAD, створити повний перелік елементів, що містяться на ПП, за необхідною формою і помістити його у файл. dbf у вигляді бази даних. Електронний вигляд і форма переліку елементів дозволяють легко використовувати його для формування текстової конструкторської документації.
Крім свого головного призначення розроблене ПО допомагає продемонструвати можливості системи T-FLEX як параметричної системи проектування нового покоління, і показати її переваги у порівнянні з AutoCADом.
Короткий опис маршруту проектування ПП.
Нижче пропонується опис наскрізного маршруту проектування друкованих плат (СМП ПП) від схеми електричної принципової до виходу на технологічне обладнання з використанням системи PCAD4.5: структура маршруту та програмне забезпечення.
Дається основна послідовність дій користувача у процесі наскрізного проектування РЕУ для двухшарових і багатошарових субблоків з двостороннім установкою елементів штирьовий і планарних.
Відзначимо, що в СМП ПП не розглядаються завдання, пов'язані з логічним моделюванням принципових електричних схем.
1. ЗАГАЛЬНІ ПОЛОЖЕННЯ.
1.1 ОСНОВНІ ХАРАКТЕРИСТИКИ наскрізного маршруту проектування ПП.
Програмне забезпечення наскрізного маршруту проектування друкованих плат (ПО СМП ПП) є інтегрованим набором проблемно орієнтованих програмних пакетів, що працюють в інтерактивному режимі. Засоби системи PCAD (передбачається можливість використання пакетів від версії 4.5) дозволяють проектувати принципові електричні схеми, двошарові і багатошарові друковані плати. Програмні засоби, включені в маршрут, дозволяють отримувати, за інформацією проектуються у системі PCAD, конструкторську документацію (система "Схід" - для текстової та PCAD - для графічної), готувати і контролювати вхідну інформацію для пакету програм виходу на технологічне обладнання (пакет програмування керуючої інформації для маршруту).
Наявність великої кількості взаємозалежних пакетів і їх баз даних забезпечує наскрізне проектування РЕУ.
Результати проектування ПП можна передати в T-Flex CAD, повністю параметричну (на відміну від інших) систему проектування для подальшої розробки деталей і оснащення, вироблення конструкційних рішень, а також контролю на відповідність габаритів ПП і елементів конструкції.
ПО СМП ПП складається з декількох пакетів програм та їх баз даних зв'язаних у єдину базу даних проектованого вироби, що дозволяє звести до мінімуму введення вихідної інформації і уникнути повторного завдання параметрів проекту, тим самим скорочує кількість можливих помилок при введенні вихідних даних, час проектування виробу і його вартість, забезпечує якість розробок.
Програмне забезпечення наскрізного маршруту проектування ПП функціонує в середовищі MS-DOS на персональних комп'ютерах IBM PC / AT або PC / XT, з об'ємом пам'яті 640Кб, а також на інших ПЕОМ, повністю сумісних з зазначеними.
Для роботи системи потрібні:
- 10 МБТ дискової пам'яті на вінчестері
- Пристрій введення типу "миша".
Програмне забезпечення системи дозволяє проектувати ПП з наступними характеристиками і параметрами:
установка корпусів на платі - двостороння і одностороння
тип встановлюваних корпусів - штирьовий і планарні
розмір плати - не більше 500х500 мм (60х60 дюймів)
роздільна здатність ширини провідників і відстаней - 0.025 мм (0.001дюйма)
кількість компонентів - не більше 500
різних компонентів - не більше 400
кількість ланцюгів в електричній схемі - не більше 1000
загальна кількість контактів:
всіх корпусів і отворів - не понад 32000
число провідникових шарів - не більше 50.
1.2СОСТАВ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ наскрізного маршруту проектування ПП ..
До складу ПО СМП ПП входять: пакет програм системи PCAD (версія 4.5), пакет програм "Схід", пакет програм підготовки та контролю виходу на технологічне обладнання та програми підготовки інформації для КД і ТД на виготовлення виробу, і кошти поєднання всіх перерахованих пакетів для автоматизованої передачі інформації про проектований виробі між ними (одним з них є преедлагаемий пакет p-flex для зв'язку PCAD - T-FLEX).
Пакет програм системи PCAD містить у своєму складі три графічних редактора PCCAPS, PCPLACE і PCCARDS і набір утиліт і програм, що виконують службові функції.
Крім стандартних програм PCAD версії 4.5 до складу ВО включений пакет програм, розроблених в НІІА для забезпечення виходу на технологічне обладнання, яке використовують у НІІА. Розроблений пакет включає в себе програми коригування, контролю, прорісовок топології і формування керуючої інформації для технологічних установок.
2.Етапи РЕАЛІЗАЦІЇ ПРОЕКТУ.
Наскрізний маршрут проектування друкованих плат включає в себе етапи: створення графічного опису схеми електричної принципової зі списком з'єднань засобами графічного редактора PCCAPS, підготовки КД на схему, упаковку логічних елементів в мікросхеми, розміщення їх на конструктиві, проектування топології ПП і підготовки КД і УІ для технологічного обладнання.
Передбачається, що користувач знайомий з основними принципами роботи з MS DOS ПЕОМ.
Як програма-утиліти MS DOS рекомендується використовувати програму NORTON.
3. БАЗА ДАНИХ СИСТЕМИ PCAD
У ході експлуатації системи PCAD було виявлено, що при розробці РЕУ необхідно дуже уважно використовувати, своєчасно і ретельно коректувати всі елементи бази проектування щодо розподілу інформації по шарах, їх розташування у таблиці верств графічних редакторів системи PCAD призначенням та парності. З особливою увагою слід ставиться до формування і коригування конструктивом для ПП, бібліотечних ЕЛЕМЕНТІВ для схеми та плати, файлів. PS і. SSF, бібліотечних і створюваних при проектуванні файлів-БЛОКІВ. При створенні файлів-БЛОКІВ не включати зайвих шарів.
При виборі бібліотечних файлів для використання в проекті контролювати їх коректність для топологічної інформації з таблиці шарів і налаштування шарів на приналежність до провідниковим і парності шарів.
Особливо УВАЖНО при підготовці інформації слід ставитися до стану активності шарів, тобто де формується інформація залишить свій слід, тому що не завжди є можливість її перенести або перевірити, де вона сформована. Так наприклад, при підготовці конструктиву для упаковки плати і розміщення елементів, необхідно записати його з активним станом шару COMP, для забезпечення правильного формування таблиць при постановці елементів, незалежно від сторони і способу їх розміщення: одно-чи двостороннього. Докладніше ці вказівки наведені у відповідних інструкціях.
Крім того відомо, що при розробці РЕУ необхідно дуже уважно використовувати, своєчасно і ретельно коригувати бібліотеки РЕК. Виправлення невірно введених РЕК на заключних етапах проектування дорого обходиться, іноді доводиться повертатися до самого початку (до виправлення принципової схеми) від вже виготовленої друкованої плати.
Опис РЕК в БД в загальному випадку складається з двох частин:
- Умовно - графічне позначення РЕК (УДО) на електричній схемі (файли з розширенням. Sym). УДО створюється засобами схемного графічного редактора PCCAPS. Правила та порядок створення УДО наведені в інструкції по створенню умовно - графічного позначення РЕК для наскрізного маршруту проектування з використанням системи PCAD4.5 і вище
- Конструкторсько - технологічне відображення РЕК (КТО) (файли з розширенням. Prt), що включає інформацію про висновки РЕК для підключення КП, відображення РЕК на складальному кресленні ПП, а при використанні ХТО при проектуванні ПП по наскрізного маршруту, також пакувальну інформацію. ХТО створюється засобами топологічного графічного редактора PCCARDS.
- Відображення РЕК для p-flex передане по наскрізного маршруту проектування в T-flex. (См.описание)
За станом, корекцією та поповненням БД стежить спеціальна група на чолі з адміністратором БД.
Перед початком роботи з проектом, необхідно переконатися в тому, що всі компоненти, які використовуються у цьому субблоки, присутні в БД.
З усіх питань, пов'язаних з використанням БД PCAD, користувачеві слід звертатися до адміністратора БД або створити відсутні компоненти, користуючись вищевказаними інструкціями щодо створення УДО і ХТО (в цьому випадку всю відповідальність за правильність і повноту інформації для проходження маршруту несе сам користувач).
Перейдемо тепер безпосередньо до опису роботи по СМП ПП з використанням пакету PCAD.Для забезпечення проектування РЕУ користувач повинен мати у своєму розпорядженні наступним:
- Набір пакетів програмного забезпечення;
- ТЗ на проектування РЕУ;
- БД, в якій повинні бути всі використовувані в проекті елементи.
Перед початком робіт по ТЗ на робочому диску в директорії PCAD слід створити свій піддиректорій, ім'я якого, як правило, відповідає імені розробляється ПП. У цьому директорії надалі будуть перебувати всі файли, необхідні для проектування блоку РЕУ. Усі роботи з проекту повинні проводитися з цього директорія. Настійно рекомендується зберігати на ГМД Вихідна інформація для кожного етапу проекту та не менше ДВОХ останніх КОПІЙ інформації ПОТОЧНОГО ЕТАПУ.
Директорії, що містять програмне забезпечення і БД, доступні для читання і перебувають у віданні адміністратора системи:
/ PCAD / EXE - набір завантажувальних модулів маршруту проектування
/ PCAD / UTIL - ПО підготовки та контролю УІ для виходу на технологічне обладнання
/ PCAD / DRV - супровідні драйвери
/ PCAD / LIB - бібліотеки
/ PCAD / ... - Бази даних
проведення поточних робіт та запис інформації про проект у ці директорії небажана і може призвести до псування програмного забезпечення.
З усіх питань, пов'язаних з встановленням ПЗ для роботи за маршрутом, слід звертатися до адміністратора ПО маршруту.
4. ПОБУДОВА ПРИНЦИПОВОЇ ЕЛЕКТРИЧНОЇ СХЕМИ І ПІДГОТОВКА ІНФОРМАЦІЇ ДЛЯ ПЕРЕДАЧІ Конструктора.
Початковою фазою при проектуванні РЕУ по наскрізного маршруту є створення схеми електричної принципової, що включає в себе наступні етапи:
1.Створення схеми електричної принципової.
Програма PCCAPS, файл. Sch.
УВАГА!
При створенні електричної схеми всіма компонентами схеми
повинен бути присвоєний атрибут PRT, який містить ім'я ХТО РЕК.
Цю інформацію розробник електричної схеми отримує з облікової інформації БД або від конструктора РЕУ і вносить в. Sch файл на етапі створення схеми. Атрибут PRT може бути змінений при конструкторської доопрацюванні схеми.
2.Виділення списку електричних з'єднань.
Програма PCNODES, файл. Nlt.
3.Об'едіненіе списків електричних з'єднань в один, у разі багато листового опису.
Програма PCLINK, файл. Xnl.
4.Перевірка електричної схеми в плані порушення загальних правил побудови електричних схем і вимог наскрізного маршруту проектування.
Програма PCERC, файл протоколу. Erc.
5.Полученіе переліку елементів РЕУ.
Система Схід 3.1, файл. Pe3.
Система P-FLEX, файл. Dbf
6.Полученіе ескізу і КД електричної принципової схеми.
Виконання перерахованих етапів проводиться розробником РЕУ.
При проектуванні РЕУ по наскрізного маршруту проектування конструктор РЕУ повинен отримати від розробника електричної схеми наступну інформацію:
- Список електричних з'єднань (. Nlt або. Xnl файл);
- Роздруківку переліку елементів;
- Ескіз електричної схеми (креслення і / або. Sch файл).
- Файли-фрагменти із зображенням ПП для передачі в T-FLEX
Якщо при проектуванні РЕУ по наскрізного маршруту розробник виконує упаковку плати і первинне розміщення елементів, то конструктор РЕУ повинен отримати від розробника електричної схеми наступну інформацію:
- Роздруківку переліку елементів;
- Ескіз електричної схеми (креслення і / або. Sch файл).
- Опис списку ланцюгів і розміщення компонентів на друкованій платі (. Pkg або. Plc файл);
- Файл опису пакувальної інформації (. Pkl файл).
Користуючись переданої інформацією - конструктор РЕУ проводить проектування РЕУ, виконуючи наступні етапи маршруту.
5. ПЕРЕВІРКА ВИКОНАННЯ У ЕЛЕКТРИЧНОЇ СХЕМІ ВИМОГ наскрізного маршруту проектування РЕУ (PCERC і PCFORM), ПІДГОТОВКА конструктивом для УПАКОВКИ І РОЗМІЩЕННЯ.
5.1ПРОВЕРКА ЕЛЕКТРИЧНОЇ СХЕМИ.
Перед початком обробки отриманого від розробника. Nlt або. Xnl файлу конструктору необхідно провести вхідний контроль перевірку виконання ст. Nlt або. Xnl файлі вимог наскрізного маршруту проектування.
5.1.1.Программа PCERC забезпечує перевірку правильності введення електричної принципової схеми.
Вхідним файлом для програми PCERC є файл списку ланцюгів в двійковому вигляді (. NLT і. XNL). У результаті перевірки формується файл звіту (. ERC), який може бути виведений на екран або принтер.
Правила та порядок виконання цього етапу:
- Після завантаження програми PCERC по головному меню програми операція GCONFIGURE (конфігурація модуля) виконати настройку, тобто вибрати необхідні перевірки.
Програма PCERC дозволяє здійснити до десяти різних перевірок електричної схеми виробу. Можна здійснити перевірку відразу за всіма правилами, тільки по одному з правил, або за кількома правилами в будь-якій комбінації.
До виконання робіт з проектування топології необхідно виконати перевірку наявності та правильності пакування вентилів в корпус - перевірка 8 Packaging consistency check (перевірка упаковки).
У разі наявності в. Nlt або. Xnl помилок, що призводять до некоректності подальшої обробки, конструктор повинен повідомити про це розробнику електричної схеми. Розробник повинен усунути зазначені помилки і передати конструктору новий варіант. Nlt або. Xnl файлу (і. Sch файлу).
5.1.2.Программа PCFORM забезпечує перевірку наявності та правильності завдання в компонентах атрибута PRT.
Наявність у КОЖНОГО компонента РЕУ PRT атрибута є обов'язковою умовою для подальшої обробки.
Наявність в електричній схемі певної кількості компонентів периферії і правильність завдання їх опорних імен також є обов'язковою умовою правильного отримання БД РЕУ.
Вхідним файлом для програми PCFORM є файл списку ланцюгів в двійковому вигляді (. NLT і. XNL). У результаті для виконання перевірки сформувати файл звіту (. MAT) - список компонентів по опорних іменам, який можна вивести на екран або принтер, для цього на запити програми вказати:
Attribute Keyword: Ввести ім'я переданого
в. mat файл атрибуту
компонентів PRT
List Components By: NAME Прогалиною встановити
REFERENCE DESIGNATOR.
Для виконання перевірки переглянути вміст отриманого. MAT файлу.
. MAT файл містить таблицю, що включає такі графи:
ITEM - номер
QTY - кількість вентилів
COMP-NAME - ім'я УДО (. SYM файлу)
REFERENCE-DESIGNATOR - опорне ім'я вентилів
DESCRIPTION - виділений значення атрибуту
(PRT - ім'я КТО)
У один рядок (під один номер) потрапляє група компонентів, у яких однакові всі три значення: ім'я УДО, опорне ім'я вентиля, значення атрибута.
У таблиці необхідно перевірити наступне:
- ВСІ компоненти повинні мати атрибут PRT;
- Значення PRT атрибута повинно бути обов'язково задано з розширенням.
- Значення PRT атрибута для вентилів, що входять в один корпус, повинно бути однаковим.
Тобто одне і те ж опорне ім'я може зустрічатися більше ніж в одному рядку тільки в тому випадку, якщо компонент є неоднорідним. При цьому значення PRT атрибута в цих рядках повинно бути ОБОВ'ЯЗКОВО однаковим.
Невиконання хоча б одного із зазначених вимог призводить до неможливості подальшої обробки. Nlt або. Xnl або до її некоректності.
У цьому випадку конструктор повинен повідомити про це розробнику електричної схеми. Розробник повинен усунути зазначені помилки і передати конструктору новий варіант. Nlt або. Xnl файлу (і. Sch файлу).
5.2ПОДГОТОВКА конструктиву.
Послідовність дій.
1.Виклик PCCARDS
- Командою DETL встановити "детальний" режим роботи графічного редактора, пpи цьому меню команд забарвлене в зелений колір,
- Командою VLYR перевірити вихідну таблицю верств за рекомендаціями пункту 3 для графічного редактора PCCARDS, якщо таблиця змінена, вийти з редактора, видалити з робочої директорії файлу. Cmd,. Cm $,. Dbg, повторити виклик PCCARDS.
2.Для забезпечення трасування МПП перевірити в таблиці шарів наявність шарів для внутрішніх трас: INT1, INT2 ,..., INTi. Пpоставіть прапор трасування S для всіх внутрішніх трас (SCMD / LPAR), а так само для COMP і SOLDER і забезпечити парність внутрішніх шарів.
3.Ввесті в необхідних місцях заборони на проведення трас (DRAW / FREC, шари BARALL, BARCMP, BARSLD, BARIN1 ...), заборона на розміщення міжшарових отворів (шар BARVIA) і заборони на розміщення елементів (шари BARPLC, BARCMP, BARSLD) . Товщина лінії (W: 0).
4.Для забезпечення двостороннього розміщення елементів об'єднати в паpи (SCMD / LPAR) такі шари:
PADCOM-PADSLD, FLCOMP-FLSOLD, PIN-PINBOT,
SLKSCR-SLKBOT, REFDES-REFDBT, DEVICE-DVCBOT,
BARCMP-BARSLD, BARTOP-BARBOT, MSKGTP-MSKGBT
і т.п.
5.Обрісовка контуру плати (DRAW / LINE).
Проводиться на 2-х шарах:
а) SLKSCR (товщина лінії W: 10)
б) KONTUR (W: 10)
Розміщення контуру плати робити так, щоб лівий нижній кут мав координату (0,0).
6.Обрісовка області трасування (DRAW / RECT, DRAW / LINE).
BRDOUT (W: 0) виконати окреслення поля трасування прямокутником чи ламаної лінією, тільки лінія промальовування повинна бути безперервною.
7.В центрах кріпильних отворів:
намалювати такі знаки (DRAW / LINE, CIRCLE):
- На шарі KONTUR: перехрестя (W = 0) і коло необхідного радіуса (W = 5).
- На шарі SLKSCR: перехрестя (W = 0) "+".
8. Встановити командою VLYR шар COMP 1 ABL A. У центpе кожного кріпильного отвору поставити компонент з ім'ям OTV.PRT. Команда (ENRT / COMP).
9.Ввесті ключ ФШ з ім'ям KLUCH.PRT. Команда (ENTR / COMP). або Ключ - на шарі TRO ввести спалах (DRAW / FLSH, APER = 10).
10.Завесті куточки по контуру плати на шарі TRO.
Команда DRAW / LINE товщина лінії (W: 16).
11.Установіть сітку трасування 50х50.
12.Командой SYMB встановити символьний режим (меню забарвиться в червоний колір). Поставити нульову точку (ENTR / ORG) в лівому нижньому кутку контуру плати для забезпечення свердління отворів.
13.Проіменовать кожен компонент починаючи з ключа ФШ.
Команда NAME / RSQE ім'я 1,2 ,..., N.
14. Встановити командою VLYR шар COMP 1 ABL A.
SOLDER і всі верстви INTn ABL, шар BRDOUT ON, шари PIN, PINTOP, PINBOT і SLKSCR, SLKTOP, SLKBOT ON, для додаткового контролю різними між собою за кольором. Інші верстви OFF.
Поставити ширину провідника 10.
Команда EDIT / WIRE товщина лінії (W: 10).
15.Запомніть файл з розширенням. PLA або. PCB.
Команда FILE / SAVE.
6. УПАКОВКА ЕЛЕКТРИЧНОЇ СХЕМИ В БД РЕУ (PCPACK).
Виконання цього етапу проводиться конструктором або розробником РЕУ, після узгодження з конструктором способу установки ХТО, отримання або перевірки правильності підготовки обраного конструктиву.
Програма PCPACK виконує важливу функцію упаковки логічних елементів в мікросхеми, в результаті чого замість образу електричної схеми (. SCH) з'являється образ друкованої плати (. PKG).
Упаковка електричної схеми в БД РЕУ забезпечує передачу інформації, що міститься в електричній схемі, в. Pkg файл - вихідний для проектування топології РЕУ і є одним з основних етапів проектування.
Упаковка електричної схеми в БД РЕУ вимагає:
- Використання ХТО, що містять повентільную пакувальну інформацію;
- Конструктив ПП (. PCB).
- Обов'язкового виконання вимог, перевірка яких здійснювалася в розділі 5.
Для проведення пакування електричної схеми в БД РЕУ необхідно виконати наступне:
6.1.Подготовіть БД проекту.
- Керуючись ТЗ на проектування РЕУ, роздруківкою переліку та технологічними обмеженнями, а також з огляду на розміри і вибраний спосіб установки елементів визначити контур плати, розташування кріпильних отворів і розташування зон заборони трасування на платі і їх характер, вибрати конструктив з існуючих у бібліотечній наборі або підготувати його керуючись рекомендаціями наведеними в розділі 5.1.
- Помістити всі використовувані в РЕУ ХТО в бібліотечну директорію проекту або в директорію, з якої буде здійснюватися запуск програми PCPACK (поточну директорію). Можна також помістити частину ХТО в бібліотечну директорію, а частина в поточну.
Примітка. В якості бібліотечної директорії проекту може виступати тільки одна директорія, тому ВСІ ХТО, використовувані в РЕУ, повинні бути поміщені в одну з двох (бібліотечну або поточну) або в обидві із зазначених директорій.
- Перевірити наявність в БД ХТО елементів, зазначених у переліку.
Якщо необхідно вибрати або розробити спосіб установки для елементів потребують спеціальних умов використання або для економії площі поля розміщення, а також враховуючи додаткові вимоги ТЗ або технології виготовлення РЕУ. У разі необхідності, провести корегування і доповнити БД ХТО.
Для застосування зв'язку PCAD -> T-FLEX, рекомендується заздалегідь підготувати файли. Pdf, для використовуваних у проекті ХТО (. Prt), і передати їх в підкаталог PDF програми p-flex.
7. АВТОМАТИЗОВАНЕ РОЗМІЩЕННЯ РЕК НА ДРУКОВАНОЇ ПЛАТИ (PCPLACE).
Редактор PCPLACE є одним з трьох графічних редакторів системи PCAD (PCCAPS, PCPLACE, PCCARDS) і призначений для розміщення РЕК на друкованій платі. PCPLACE має багато спільного з графічним редактором PCCAPS.
Нижче будуть описані істотні особливості, притаманні редактору PCPLACE.
Вхідним файлом для запуску розміщення є БД ПП, сформовані пакетами PCNLT або PCPACK (. PKG).
Перш ніж приступити до розміщення елементів при двосторонньому монтажі на ПП в редакторі PCPLACE, треба перевірити і налаштувати у вихідному файлі. PKG таблицю верств - визначити пари шарів "верх-низ", як описано в розділі 10.2.
Опис усіх команд редактора PCPLACE наведено в Пакеті документації по графічним редакторам входять в систему PCAD версії 4.5 (див. pcadhelp).
При роботі використовується дюймова система одиниць - Мілс:
1мілс = 0.001дюйма = 0.025мм.
ПІДГОТОВКА ФАЙЛУ При двосторонньому МОНТАЖІ РЕК НА ПП.
Перш ніж приступити до розміщення елементів при двосторонньому монтажі на ПП в редакторі PCPLACE, треба перевірити і в разі необхідності відкоригувати в подібному файлі. PKG таблицю верств і визначення пар шарів "верх-низ". Для цього командою SCMD / LPAR графічного редактора PCCARDS потрібно об'єднати в пари з забороною для трасування (ознака S і тип перехідного отвору для вказаної пари повинні бути зняті) наступні шари:
PADCOM - PADSLD -
FLCOMP - FLSOLD -
SLKSCR - SLKBOT -
PIN - PINBOT -
DEVICE - DVCBOT -
REFDES - REFDBT -
DRCCOM - DRCSLD -
MSKGTP - MSKGBT -
MSKFTP - MSKFBT -
BARCMP - BARSLD -
BARTOP - BARBOT - для автоматичного розміщення компонентів
Таке об'єднання дозволяє виконувати командою CLYR / COMP (або командою FLIP в PCPLACE) перестановку компонента з боку шару COMP на SOLDER і навпаки з автоматичним перенесенням графічної інформації на альтернативні шари.
8. ПРОЕКТУВАННЯ ТОПОЛОГІЇ ПП (PCCARDS.)
Наступний за розміщенням етап - трасування. Як і розміщення трасування можна здійснювати або автоматично, або вручну, або комбінуючи обидва ці способи. Вихідний файл для трасування - це файл xxx.PLC, отриманий у результаті розміщення. Найчастіше доводиться використовувати загальний випадок, коли частина трас проводиться вручну, а інші автоматично.
PCCARDS є останнім з трьох графічних редакторів системи PCAD (PCCAPS, PCPLACE, PCCARDS). Цей потужний редактор призначений для роботи з топологією ПП, створення бібліотек ХТО РЕК, формування наборів контактних майданчиків і конструктивів. Принцип роботи PCCARDS багато в чому схожий з роботою інших графічних редакторів PCADа.
Як і в інших графічних редакторів системи PCAD в PCCARDS використовується структура шарів для відображення інформації на екрані. У PCCARDS по СМП ПП використовуються, як робочі, такі основні шари:
PIN - з'єднувальні контакти на верхній стороні ПП
PINBOT - з'єднувальні контакти на нижньому боці ПП
BRDOUT - межі поля трасування
SLKSCR - креслення графічних символів з верхнього боку ПП
SLKBOT - креслення графічних символів з нижньої боку ПП
DEVICE - назва елементу на верхній стороні ПП
DVCBOT - назва елементу на нижній стороні ПП
REFDES - опорні позначення на верхній стороні ПП
REFDBT - опорні позначення на нижньому боці ПП
ATTR - атрибути
COMP - траси з боку елементів (верхній шар)
SOLDER - траси з нижнього боку ПП
INT1, INT2, .. INTi - траси внутрішніх шарів.
MSKGTP, MSKGBT, MSKFTP, MSKFBT - графіка маскують верств ПП;
Перші 17 шарів стандартної таблиці (п.3) зарезервовані для створення файлів контактних майданчиків (файли. PS) та їх підвантаження в. PCB, інші - для проектування і редагування топології ПП і створення бібліотечних елементів.
Система PCAD дозволяє проектувати багатошарові ПП (МПП) з двостороннім монтажем РЕК на МПП. Для здійснення цієї можливості в PCCARDS необхідно об'єднати в пари шари ПП, відзначають "низ-верх" (п.5.2.4).
При роботі використовується, як правило, дюймова система одиниць - Мілс, при розробці маршруту вибрано відповідність:
1мілс = 0.001дюйма = 0.025мм.
Так як для передачі в T-Flex використовуються тільки дані про графік елементів і атрибути, а також розміщення на поле ПП, подробиці робіт по маршруту не наводяться.
9. ЗАСТОСУВАННЯ Спроектувати ТОПОЛОГІЇ.
За спроектованої і перевіреної. PCB інформації можна
отримати: графічну КД, УІ на фотоплотерам для виготовлення ФШ і УВ на свердлильний верстат для підготовки кріпильних і перехідних отворів монтажу (наскрізних і міжшарових). А також передати інформацію про спроектованої плати в системи Восток3.1, AutoCAD (, Спринт-КРР) і порівняти її з вихідним описом схеми електричної принципової (. SCH файл).
Для передачі інформації про спроектованої плати в середу системи "Схід" необхідно скористатися документацією:
- СХІД-ЗАСТОСУВАННЯ Інструкція користувачеві із застосування системи програмних засобів Восток3.1.
- Інструкція користувачеві щодо застосування програмних засобів PCAD-VOSTOK
Для передачі інформації про спроектованої плати в середу системи AutoCAD необхідно скористатися документацією:
- Інструкція користувача NXACAD - передача зображення з PCAD в AutoCAD
Етапи отримання графічної КД, УІ для виготовлення ФШ і УВ на свердлильний верстат для підготовки кріпильних і перехідних отворів монтажу (наскрізних і міжшарових) по наскрізного маршруту проектування ПП наведені нижче для виконання робіт у системі PCAD та спільних спеціальних програм контролю підготовленої інформації. Робота з програмним забезпеченням орієнтованим на застосовуване технологічне обладнання описана в окремих документах:
- Інструкції користувачеві на "Автоматизоване робоче місце (АРМ) підготовки керуючих програм (УП) для СМ-600 за результатами наскрізного маршруту проектування друкованих плат".
Документація та інструкції користувачеві до системи CAMbridge, до програми оптимізації опису топології для ГІ ЕМ-5039 і до програми RT11.
Для передачі інформації про спроектованої плати в середу системи T-Flex слід скористатися описом пакету p-flex (див. Керівництво по применеия програмного забезпечення).
10. ОТРИМАННЯ ТЕХНОЛОГІЧНОЇ ІНФОРМАЦІЇ (креслень КД, УІ для фотошаблонів та сверловки) на проектований друкований вузол.
Наскрізний маршрут проектування ПП забезпечує отримання наступних вихідних конструкторсько-технологічних документів:
- Пошарові креслення плати;
- Керуюча інформація для фотооригіналів шарів плати;
- Керуюча інформація на верстати з ЧПУ для свердління отворів;
- Складальне креслення осередки;
- Складальне креслення плати друкованої багатошарової.
По. Pcb БД топології плати після перевірки можна програмними засобами СМП ПП отримати і передати на технічний контроль для отримання облікових номерів (на зберігання в архіві результатів проектування ПП) всі перераховані вище документи крім останнього, який в свою чергу формується засобами редактора PCCARDS (в окремому файлі. PCB або в тому ж) за результатами підготовки попередніх документів і містить технічні вимоги і креслення збірки МПП. Ці БД:. Pcb та документи - складають БД проектованої плати, повинні зберігатися в архіві результатів проектування по СМП ПП і можуть використовуватися при внесенні змін і доопрацювання.
Формування складальних креслень осередки та МПП.
Для складального креслення осередки формування виконується по БД. PCB ПП в PCCARDS. Для підготовки інформації необхідно включити шари містять всю інформацію передану на складальне креслення осередки з файлу. Pcb спроектованої плати, саме це зображення може бути передане в T-flex.
Вибрати формат (наприклад: FT2M2.PCB - формат A2, масштаб промальовування 2:1 - для плат з розміром конструктиву не більше 170х110, а для конструктивів більшого розміру FT1M2.PCB).
Використовуючи команди ZOUT, PAN і VIND зменшити розмір зображення плати на екрані приблизно до чверті лінійного розміри екрану і розмістити його по центру екрану для зручності перегляду поля креслення.
Довантажити ст. PCB файл командою FILE / BKLD і розмістити зображення формату навколо конструктиву плати з урахуванням можливості формування виносних розмірів, розміщення блоків вид збоку і технічних вимог для складального креслення і оцифрування для пошарового.
Довантажити ст. PCB файл командою FILE / BKLD і розмістити зображення блоків: вид збоку, технічних вимог для складального креслення, необхідних сервісних блоків.
Відредагувати їх при необхідності і доповнити відсутніми елементами графіки, використовуючи шари призначені для додаткової інформації КД креслення (наприклад: FORM1, FORM1B, FORM2, FORM2B, NADKDP, NADKDZ, KDIN1, ... - для написів у штампах і на поле з урахуванням їх підключення за належністю кресленню / кресленнями КД).
Для редагування текстів у штампах формату виполнітьмаскірованіе компонентів. Відредагувати тексти в штампах формату, ТТ і виносну текстову інформацію - використовуючи команди DROW / TEXT, MOVE, COPY, DEL, написи в штампі і на полі креслення, призначені тільки для складального креслення перенести в шар SLKSCR (командою CLYR / IDEN).
УВАГА! команду DROW / TEXT застосовувати для редагування тексту, тобто встановити курсор на рядок тексту і ввести або скоригувати зміст напису без зміни її атрибутів, а команди MOVE, COPY, DEL застосовувати для зміни кількості рядків та їх розташування.
Отримати. PLT файл для промальовування складального креслення осередки. Крім верств вихідного. PCB файлу для складального креслення (SLKSCR та ін), включити в стані ON або ABL додаткові шари КД формату для складального креслення: FORMAT, FORTXT, FORM1 і т.п.
Зберегти підготовлену інформацію у вигляді. PCB файлу на робочій дискеті і для організації архіву результатів проектування ПП.
Для складального креслення МПП формування виконується в БД. PCB МПП засобами PCCARDS на полі пошарового креслення шару з боку установки елементів (COMP - верхня сторона плати). Якщо поля обраного для цього креслення формату недостатньо, можна завантажити в цю ж базу додатковий блок формату поза полем основних креслень або підготувати додатковий файл. PCB для складального креслення МПП.
Так як для підготовки інформації про складання МПП необхідно
використовувати дані одержувані при підготовці пошарових креслень і УІ свердління отворів, слід попередньо отримати необхідну інформацію для таблиці отворів і підготовки технічних вимог. Прийоми виконання робіт та підготовки інформації описані вище, але слід використовувати спеціальні шари. Після доповнення шаблонів даними по спроектованої плати, зберегти інформацію у файлі. PCB і підготувати файл. PLT для промальовування КД.
Опис технічних вимог до програми.
Що пропонується до розгляду програмний продукт призначається для передачі інформації про конструкції друкованої плати з пакету PCAD в T-FLEX по наскрізного маршруту проектування для вироблення подальших конструкційних рішень і розробки деталей оснастки.
1. Склад програмного забезпечення:
p-flex.exe: основний файл, який здійснює всю роботу;
gabarits.dbf: база даних у вигляді таблиці, куди заносяться всі знайдені параметри елементів, присутніх в конструкції аналізованої плати. Цей файл створюється при пeрвом запуску програми і постійно поповнюється новими даними при подальшому аналізі плат;
error.txt: цей файл створюється при кожній обробці нового pdf-файлу плати і містить у текстовому вигляді імена елементів плати, на які не були знайдені габаритні розміри (тобто не знайдено pdf-файл на елемент c такою назвою в підкаталозі PDF) .
f4.grb, plata.grb, 2d.grb: графічні файли-образи у форматі T-FLEX, по ктором програма створює образ плати і елементів.
2. Технічні характеристики:
програма розроблена для IBM-совестімих комп'ютерів з процесорами 286-AT і вище. Для прийнятного швидкодії рекомендується використовувати комп'ютер з процесором не нижче ніж 386-DX40;
програма призначена для використання в середовищі MS-DOS4.0 або вище, але може, так само, працювати під управлінням WINDOWS у режимі емуляції MS-DOS, або у вікні DOS;
для нормальної роботи програми необхідно 400kb вільної пам'яті DOS (програма буде працювати і з меншою кількістю пам'яті, але при великій кількості елементів на платі вона вийде в DOS з повідомленням про помилку);
програму можна запускати з будь-якого зручного користувачеві каталогу, тому що при запуску програма робить каталог, в якому знаходиться, поточним;
(!) Увагу: в каталозі, де розташовується файл p-flex.exe користувач обов'язково повинен створити підкаталог з назвою PDF і саме в ньому мають розташовуватися pdf-файли елементів (отримані користувачем з prt-файлів за допомогою програми pdfout.exe, з пакету PCAD), у противному випадку програма не зможе виявити габаритні параметри елементів, присутніх на платі.
3. Можливості програмного пакета.
представлена на розгляд програма здатна обробляти pdf-файли (отримані програмою pdifout.exe) у форматі PCAD4.5, PCAD7, PCAD8 - тобто з усіма версіями PCAD, вживаними на даний момент - і забезпечує передачу даних незалежно від версії PCAD;
програма створює постійно поповнюється в процесі роботи базу даних, в яку заносяться основні атрибути: ім'я ptr-файлу елемента, його довжина, висота, ширина, точка прив'язки і т.п.
програма створює файли-фрагменти T-FLEX, які представляють собою графічний образ плати (міститься в уже згадуваному pdf-файлі) у тривимірному вигляді (ізометрії), що дозволяє візуально оцінити її об'ємний розмір і прийняти рішення по розробці деталей і оснащення, з якими пов'язані розміри цієї плати; користувач за своїм бажанням може поставити обмеження на висоту елементів по верхній і нижній стороні плати, а елементи, що виходять за ці обмеження, будуть виділені в T-FLEX червоним кольором;
програма створює файли-фрагменти T-FLEX, які представляють собою графічний образ плати (міститься в уже згадуваному pdf-файлі) у двомірному вигляді (плоскому): спереду, ззаду, справа, зліва, зверху і знизу - що дозволяє розробнику завантажити такий вигляд разом з відповідним видом корпусу і візуально простежити відповідність розмірів;
програма має можливість, за бажанням користувача, підготувати перелік елементів по формі документа, що утримуються на аналізованої платі, у вигляді стандартного dbf-файлу (для передачі на оформлення текстових документів та іншу обробку);
програма зображує всі елементи на платі, використовуючи прикладену до неї графічну бібліотеку в форматі T-FLEX, у вигляді паралелепіпедів з реальними розмірами по висоті, довжині, ширині і місцем розташування на платі (можливе створення докладної графічної бібліотеки на всі елементи, що дозволить абсолютно точно передавати їх графічний образ).
4. Вимоги до формату pdf-файлів.
Всі вимоги до формату файлів слід врахувати при створенні БД PCAD по СМП ПП в PCCARDS, до отримання файлів. Pdf.
На шарі KONTUR повинен бути заведений контур друкованої плати, тому що саме там програма буде його шукати. Якщо контур плати буде створений на якому-небудь другомм шарі, то для програми це рівнозначно його відсутності взагалі.
На шарі атрибути для кожного елемента повинен бути заведений параметр Н = ххх.ххх, де ххх.ххх - висота даного елемента в мм. Саме виходячи з цих параметрів програма буде визначати висоту при створенні об'ємного образу елемента, а за відсутності такого параметра елементу автоматично присвоюється висота в 10мм.
Коли при аналізі плати програма виявляє елемент, вона робить перевірку на наявність цього елемента на шарі шовкографії і при негативному результаті елемент просто ігнорується.
Керівництво
по застосуванню програмного забезпечення.
1.Запуск.
Для запуску програми набрати в командному рядку DOS ім'я програми - p-flex.exe (із зазначенням шляху до неї в тому випадку якщо поточний каталог не є каталогом, в якому розташована програма) і через пробіл ім'я pdf-файлу аналізованої плати (отриманого з pcb -файлу за допомогою програми pdfout.exe), наприклад:
ххх.exe sample.pdf
На екрані з'явиться вікно - головне меню:
З цього меню користувач зможе управляти всією подальшою роботою програми вибираючи ті чи інші пункти меню за допомогою функціональних клавіш.
2.Функціональні клавіші.
-Навігаційні клавіші встановлюють курсор на потрібний вам пункт меню;
-Клавішею ENTER здійснюється вибір того пункту меню, на якому стоїть курсор;
-Клавішею INSERT в інтерактивному режимі можна переключити режим заміщення / вставки букв з розсуненням рядка;
-Клавіша ESC, як правило, виконує повернення до попередньої функції або меню (аналогічно пункту ВИХІД).
3.Описание використання функціональних можливостей програми.
Після запуску відкривається головне меню програми, що складається з пунктів, керуючих подальшою роботою:
-АТРИБУТИ - при виборі цього пункту ставати активним вікно з атрибутами і користувач може налаштувати атрибути на свій розсуд:
- Ім'я комплекту: вказує назва каталогу для системи T-FLEX, в якому розташовані файли f4.grb, plata.grb, 2d.grb, необхідні для формування елементів плати засобами пакета T-FLEX за результатами роботи p-flex.
- Обмеження зверху (знизу): граничні значення параметрів по висоті елементів з верхньої та нижньої сторони плати (якщо висота елемента більше цих параметрів, то елемент буде виділений червоним кольором).
- Товщина плати: параметр, що визначає товщину плати (тому що в PCAD немає поняття про товщину плати, то цей параметр визначається користувачем, за замовчуванням = 0).
- Ім'я pdf - файлу: у цьому пункті користувач може ввести назву pdf-файлу PCAD-а, який він хоче обробити із зазначенням шляху до нього. Якщо при запуску програми був вказано ім'я файлу pdf, у вигляді ключа, то воно автоматично потрапляє в цей пункт. При введенні імені файлу програма перевіряє існування такого файлу за вказаним шляхом і, якщо він не існує, то користувач не має можливості вийти з вікна АТРИБУТИ до тих пір, поки не введе правильне ім'я файлу інакше залишається можливість виходу з esc, без збереження всіх змін, зроблених у цьому вікні.
-КОМПОНОВКА - даний пункт не активний при виборі, до тих пір, поки не буде вказано правильне ім'я аналізованого pdf-файлу у вікні АТРИБУТИ (про що свідчить палаюче посеред екрана повідомлення "Не бачу pdf-файлу"). Якщо pdf-файл доступний, то при виборі цього пункту меню починається його аналіз: за швидкістю цього процесу користувач може стежити за процентною лінії, яка відображається на екрані.
Внизу екрана відображається загальна кількість знайдених на платі елементів а так само повідомлення про результат пошуку контуру плати на шарі KONTUR.
Після завершення аналізу плати програма вибирає габарити елементів з файлу gabarits.dbf по їх назві, а якщо не знаходить потрібного, то виконує пошук pdf-файлу, (для prt, обробленого pdifout.exe) у підкаталозі PDF (який повинен знаходитися в тому ж каталозі що і програма). При успішному пошуку вона аналізує цей файл, знаходить у ньому габарити елемента і заносить їх у базу gabarits.dbf. Тобто якщо на аналізованій платі є елементи зі стандартним назвою, але не стандартними (оновленими) габаритами, то необхідно видалити gabarits.dbf, а в підкаталог PDF скопіювати всі. pdf-файли елементів плати, і тоді габарити всіх елементів плати просканує і файл підготується заново. (В існуючій версії кожен елемент за розмірами округляється до паралелограма, тобто куля наприклад стане кубом. Для точної графічної передачі елементів в тривимірному вигляді потрібне створення спеціальної графічної бібліотеки в форматі T-FLEX, чому буде присвячена наступна версія програми.) Габарити елемента поміщаються в базу gabaritrs.dbf. Тобто якщо елемент зустрічався хоча-б раз у будь-якій платі, то у всіх наступних платах дані на нього будуть братися з бази без повторної обробки його PRT-файлу.
Якщо контур плати був виявлений, то при створенні файлів для T-FLEX в них передадуться габаритні розміри плати, з шару KONTUR, округлені за формою до прямокутника (існуюча версія не обробляє складні контури). Якщо-ж контур знайдений не був то програмою створюється власний прямокутний контур плати за умовою: відстань від краю плати до граничних елементів дорівнює 10 мм.
Після цього пропонується меню компоновки:
- Вихід (або ESC) - вихід в попереднє (головне) меню, якщо цей пункт вибирається першим, то при виході відбувається відмова від створення файлів плати у форматі T-FLEX;
- Тривимірна компоновка - при виборі цього пункту починається процес створення файлів зображення плати в тривимірному вигляді у формат T-FLEX. На екрані відображається кількість елементів, створених у файлах T-FLEX, відповідно на нижній і верхній стороні плати. При цьому створити 3-і файлу у форматі T-FLEX: ***** top.frg-файл елементів верхньої сторони плати, ***** bot.frg-файл елементів нижньої сторони плати, ***** plt. frg-файл контуру плати (символом ***** позначаються п'ять перших символів кожного файлу, вони загальні для всіх трьох файлів, які користувач редагує на свій розсуд у пункті Файл). Після завершення автоматично пропонується меню компоновки і користувач, за бажанням, може або створити будь-який інший вид плати, або вийти в головне меню;
- Ім'я файлу - при виборі цього пункту курсор переходить у вікно з ім'ям файлу і дозволяє змінити його на свій розсуд;
- Опис - при виборі цього пункту створюється стандартний dbf-файл, що містить перелік усіх елементів аналізованої плати.
- Двовимірна компоновка - при виборі цього пункту пропонується меню з різними двовимірними видами плати: спереду (F), ззаду (A), ліворуч (L), праворуч (R). Під кожним пунктом намальована плата і стрілкою показано напрямок погляду на неї.
При виборі потрібного пункту відбувається створення файлів двовимірного зображення, відповідного виду, у форматі T-FLEX (створюється файл ***** 2d #. Frg, де ***** - ім'я задається користувачем при виборі пункту "ім'я", а # - символ ознака виду: F, A, L, R).
Після цього знову пропонується меню компоновки.
Алгоритм та опис програми.
Програма розроблена і написана в СУБД CLIPPER 5.2 з використанням стандартних форматів файлів баз даних.
Враховуючи обсяг програми і складність алгоритму, використовувалися методи структурованого програмування і текст програми розбитий на декілька файлів, в яких виділено основні функції, таким чином, щоб їх легко було редагувати під час налагодження.
1.Основная програма міститься у файлі dbfill.prg, яка в своїй роботі використовує процедури і функції, описані у допоміжних програмних файлах.
На першому кроці виконання програма зчитує ім'я pdf-файлу, заданого в командному рядку, робить поточним каталог в якому вона знаходиться, створює змінні, необхідні в роботі як її, так і іншим підпрограм:
PARAMETERS fname / / вважати параметри командного рядка
PUBLIC higt, higtd, pnow: = 0, filelen, exit :='', attr :='', desc, bufer: = SPACE (65000),; compon [0,9], nomcomp: = 0
PUBLIC koef: = 0.1, str, stolb, parts, znak, kontur [0], verkont: = 0, parametr
PUBLIC errfile [0] / / масив повідомлень про помилки
PRIVATE razm, filend, not, L, p1, str2, colo
PUBLIC tlplat: = 7 / / товщина плати
set cursor off
cls
colo: = setcolor ('g + / b')
tmppat: = dirname () / / робить поточним каталог в якому знаход.
pat: = LOWER (exename ()) / / виконуваний файл
c1: = RAT ('tel', pat)
pat: = LEFT (pat, c1-2)
DIRCHANGE (pat)
Далі викликається функція, активізує головне меню програми, яка, в залежності від обраного пункту, передає управління тій або іншій процедурі:
IF fnameNIL
cls
setboxgrow (3)
wbox (0)
set date format 'dd: mm: yyyy'
/ / Відкриття основного вікна
ZAGOL ('ОБРОБКА PDF-файла' + DTOC (DATE ()))
SETCOLOR ('N / G')
wmenu: = wind (1,2, maxrow () -3, maxcol () -3, 'Головне меню', 5)
perv: = 1
SHOWTIME (0,72, 'G / G')
attrtmp: = 'DEMO'
higttmp: = 30.00
higtdtmp: = 30.00
exittmp: = 'out'
GL () / / виов фкнкціі головного меню
WINCLOSE ()
SETCOLOR (colo)
cls
ELSE
SETCOLOR (colo)
cls
@ 3,0 SAY 'Не введено ім'я pdf URL!'
ENDIF
SETCOLOR (colo)
DIRCHANGE (tmppat) / / повертає збережений поточний каталог
SETCOLOR ('g / n')
@ MAXROW () -1,15 SAY 'Shurasoft 1997 Mihail & Alexandr Company'
SETCOLOR (colo) / / повернення поточного кольору при виході
? ' '
RETURN
//************************************************ *****************
FUNCTION GL () / / головне меню
CLEAR GETS
cglold: = setcolor ('n / rg')
@ 11,5 CLEAR TO maxrow () -2, maxcol () -6
@ 11,5 TO maxrow () -2, maxcol () -6 DOUBLE
set cursor off
set scoreboard off
readexit (. F.)
set cursor on
set date format to 'dd.mm.yyyy'
setpos (12, (maxcol () / 2) -4)
dispout ('АТРИБУТИ', 'g + / b')
@ 13,7 say "Ім'я комплекту ................................" color ('W + / rg') get attrtmp color ('rg + / rg, n / w')
@ 14,7 say "Обмеження по висоті зверху в mm ............" color ('W + / rg') get higttmp picture '@ B 999.99' color ('gr + / rg, n / w')
@ 15,7 say "Обмеження по висоті знизу в mm ............." color ('W + / rg') get higtdtmp picture '@ B 999.99' color ('gr + / rg, n / w')
setcolor (cglold)
set cursor off
mas :={{' Атрибути ',' Компонування ',' Вихід'},{" Редагування атрибутів файлу "," скомпонувати файл у форматі T-FLEX "," Вихід у DOS "}}
str: = MENU (mas, 14, perv)
perv = str
str1: = 10
IF str = 1 / / якщо обраний пункт АТРИБУТИ-запустити меню, / / що дозволяє змінити атрибути
set cursor on
read
set cursor off
ELSEIF str = 2 / / якщо обраний пункт КОМПОНОВКА-запустити / / процедуру аналізу pdf-файлу
WSELECT (0)
SETCOLOR ('n / bg')
PUBLIC pnow: = 0, filelen, desc, bufer: = SPACE (65000), compon [0,9], nomcomp: = 0
PUBLIC kontur [0], verkont: = 0, parametr
PUBLIC errfile [0] / / масив повідомлень про помилки
CREATDB ()
wzapis: = wind (2,3, maxrow () -7, maxcol () -6, "Компонування", 5)
higt: = higttmp
higtd: = higtdtmp
attr: = alltrim (attrtmp)
CONT ()
winclose ()
wselect (wmenu)
ELSEIF str = 0 / / якщо не вибрано не один пункт
perv = 4
ENDIF
IF str3
wselect (wmenu)
GL ()
ENDIF
RETURN
//************************************************ *****************
FUNCTION CONT () / / функція аналізуірующая pdf-файл
PUBLIC kolkomp, koltop: = 0, kolbot: = 0, dx, dy / / виделенме параметрів еле-/ / ментів
/ / Dx, dy-поправка на 0
desc: = FOPEN (fname)
filelen: = FSEEK (desc, 0,2)
prflen: = filelen
FSEEK (desc, 0,0)
CLS
? 'ЙДЕ ПОШУК КОМПОНЕНТ ...'
not: = SEARCHCOMP (@ koef) / / виклик функції яка виконує всю роботу з аналізу тексту pdf-Айла, знаходить імена, позначення, габарити всіх елементів, що знаходяться на платі і упаковує їх у вигляді файлу бази даних
kolkomp: = 0
IF len (not)> 0
kolkomp: = not [1]
koltop: = not [2]
kolbot: = not [3]
ENDIF
FCLOSE (desc) / / закриття pdf файлу
//***** ОБРОБКА ПАРАМЕТРІВ У ЗНАЙДЕНИХ ЕЛЕМЕНТІВ ****
IF kolkomp> 0
AUTOKONTUR (kolkomp) / / виділення контуру плати за максимальними габаритами елементів на ній
ENDIF
//******* ВИБІР ВИДУ ПЛАТИ ******************************
exit: = alltrim (exittmp)
CLEAR GETS
st: = 1
cls
DO WHILE (st4) / / Пропонується меню, де можна вибрати напрямок погляду на плату
cglold: = setcolor ('n / rg')
@ 9,12 CLEAR TO 11, maxcol () -13
@ 9,12 TO 11, maxcol () -13 DOUBLE
set cursor off
set scoreboard off
readexit (. F.)
set cursor on
@ 10,14 say "Ім'я получаемоемого файлу ......" color ('w + / rg') get exittmp picture 'NNNNN' color ('gr + / gr, n / w')
setpos (10,50)
dispout ('. frg', 'w + / gr')
setcolor (cglold)
mas :={{' Двовимірна ',' Тривимірна ',' Назва файлу ',' Вихід'},{" Створення файлу виду збоку (двовимірне зображення) "," Створення файлу виду з боку (тривимірне зображення) "," Змінити ім'я получаемоемого файлу ',' Вихід у головне меню '}}
st: = MENU (mas, 13, st)
IF st = 1
@ 9,0 CLEAR TO maxrow (), maxcol ()
set cursor off
TO2D (kolkomp) / / перерахунок точок прив'язки в тривимірні координати
PRINTINFO ()
ERRF ()
inkey (6)
cls
ELSEIF st = 2
@ 9,0 CLEAR TO maxrow (), maxcol ()
set cursor off
TO3D (kolkomp) / / перерахунок точок прив'язки в тривимірні
координати
PRINTINFO ()
ERRF ()
inkey (6)
cls
ELSEIF st = 3
set cursor on
read
exit: = alltrim (exittmp)
set cursor off
ELSEIF st = 0
st = 4
ENDIF
ENDDO
RETURN
//************************************************ *****************
FUNCTION INP (dl, pods, typ) / / допоміжна функція для введення
даних з клавіатури
oldcol: = col ()
oldrow: = row ()
er: = space (maxcol ()-col ())
IF typ'n '
FOR L = 1 TO 2
ACCEPT pods TO tmp
IF LEN (tmp) dl
L = 1
@ Oldrow +1, oldcol SAY er
SETPOS (oldrow, oldcol)
ELSE
tmp = ALLTRIM (tmp)
L = 2
ENDIF
NEXT
ELSEIF typ = 'n'
FOR L = 1 TO 2
ACCEPT pods TO tmp
IF LEN (tmp) y [5]})
FOR L: = 1 TO st0
compon [l, 4] = compon [l, 4] + dx
/ / Compon [l, 5] = 0
/ / Compon [l, 8] = 0
IF compon [L, 2] = 'bot'
compon [L, 5] = compon [L, 5]-compon [L, 3]-tlplat / / для ел. нижній
боку
ENDIF
NEXT
tkont2: = kontur [2]
tkont4: = kontur [4]
kontur [2] =- 10
kontur [4] = kontur [2]
//******* СТВОРЕННЯ Фото-ФРАГМЕНТІВ ************
IF kolkomp> 0
SETPOS (MAXROW () -1,0)
? 'Йде створення файлу елементів на нижньої боці:'
dlin: = ALLTRIM (STR (kontur [3]-kontur [1]))
nn: = FILECR2D (kolkomp, 'top', dlin)
?? Nn
ENDIF
FOR L: = 1 TO st0 / / зворотний перерахунок координат для приведення
/ / Масиву габаритів у початковий вигляд
IF compon [L, 2] = 'bot'
compon [L, 5] = compon [L, 5] + compon [L, 3] + tlplat / / для ел. нижній
боку
ENDIF
compon [l, 4] = compon [l, 4]-dx
NEXT
kontur [2] = tkont2
kontur [4] = tkont4
ELSEIF st = 2
TO2DZAD (st0)
ELSEIF st = 3
ELSEIF st = 4
ENDIF
winclose ()
RETURN
//************************************************ ****
FUNCTION AUTOKONTUR (L1) / / виділення контуру плати за
максимуму
minY: = compon [1,5]
maxY: = minY
minX: = compon [1,4]
maxX: = minX
IF verkont = 0
PUBLIC kontur [4]
FOR L: = 2 TO L1
IF compon [L, 4]> maxX
maxX: = compon [L, 4]
ELSEIF compon [L, 4] maxY
maxY: = compon [L, 5]
ELSEIF compon [L, 5] n [n, 1]-назва елемента (рядок)
/ / Compon [n, 2]-сторона установки ('top' або 'bot')
/ / Compon [n, 3]-висота елемента (число)
/ / Compon [n, 4]-координата х-точки прив'язки (число)
/ / Compon [n, 5]-координата у-точки прив'язки (цифра)
/ / Compon [n, 6]-поворот елемента (число від 0 до 3)
/ / Compon [n, 7]-ширина елем. (Число)
/ / Compon [n, 8]-довжина елем. (Число)
/ / Compon [n, 9]-позначення елемента (рядок)
tmz1: = SEAR ()
setcolor (olsear)
RETURN tmz1
FUNCTION INSERTCOMP () / / виділення параметрів елементів з рядка тексту
USE 'gabarits.dbf' / / відкриття бази даних з розмірами елементів
FOR L = 1 TO LEN (compon) / / виділення координат точки прив'язки
елемента
IF compon [L, 1] = NIL
L = LEN (compon)
kolkomp: = L-1
ELSE
kolkomp: = len (compon)
str2 = ALLTRIM (compon [l, 4])
IF compon [l, 2] 'bot'
koltop = koltop +1
ELSEIF compon [l, 2] = 'bot'
kolbot = kolbot +1
ENDIF
p1 = At ('', str2)
compon [l, 4] = VAL (SUBSTR (str2, 0, p1-1)) * koef / / виділення х точки прив'язки
str2 = LTRIM (SUBSTR (str2, p1, 30))
p1 = At ('', str2)
IF p1 = 0
p1 = AT ('}', str2)
ENDIF
compon [l, 5] = VAL (SUBSTR (str2, 0, p1-1)) * koef / / виділення у точки прив'язки
SCROLL (10,0, MAXROW (), MAXCOL (), 1)
st0: = compon [l, 1] + compon [l, 2] + 'X =' + STR (compon [l, 4]) + 'Y =' + STR (compon [l, 5]) + 'Ro = '+ str (compon [l, 6])
gab: = GABARIT (compon [L, 1], L) / / виклик даних про розміри елемента
ENDIF
NEXT
USE / / закриття бази даних з розмірами елементів
RETURN {kolkomp, koltop, kolbot}
//************************************************ ****
FUNCTION GABARIT (st0, nn) / / визначення габаритів елемента за його імені
PRIVATE naiden: = 0, gabar: = {0,0,0} / / по заданому імені елемента
повертає масив з 3 чисел / ширина / довжина / висота /
WHILE naiden = 0
LOCATE FOR name = st0 + SPACE (10-LEN (st0))
IF FOUND () =. T.
gabar [1]: = SHIR * koef
gabar [2]: = DLIN * koef
IF compon [nn, 3] = 0
compon [nn, 3] = Vis * koef
IF Vis = 0
compon [nn, 3] = 90 * koef
ENDIF
ENDIF
EXIT
ELSE
gabar [1] = 0
gabar [2] = 0
gabar [3] = 0
hcomp: = 0
dat: = POISK (st0) / / пошук даних про новий елементі та занесення його
/ / У базу
IF VALTYPE (dat) 'C'
APPEND BLANK
REPLACE NAME WITH st0
REPLACE SHIR WITH gabar [1] / koef
REPLACE DLIN WITH gabar [2] / koef
REPLACE VIS WITH hcomp / koef
REPLACE X WITH dat [1] / koef
REPLACE Y WITH dat [2] / koef
gabar [1]: = SHIR * koef
gabar [2]: = DLIN * koef
IF compon [nn, 3] = 0
compon [nn, 3] = Vis * koef
ENDIF
ELSE
EXIT
ENDIF
ENDIF
ENDDO
ROT (X * koef, Y * koef, gabar [1], gabar [2], nn)
RETURN gabar
//************************************************ ****
FUNCTION ROT (a, b, shc, dlc, L) / / функція враховує поворот елемента щодо осі і що проводить відповідний перерахунок його координат
IF compon [L, 6] = 0 / / облік повороту елемента
IF compon [L, 2] = 'bot'
compon [L, 4] = compon [L, 4] + shc-a
compon [L, 5] = compon [L, 5]-b
ELSE
compon [L, 4] = compon [L, 4] + a
compon [L, 5] = compon [L, 5]-b
ENDIF
compon [L, 7] = shc
compon [L, 8] = dlc
ELSEIF compon [L, 6] = 1
IF compon [L, 2] = 'bot'
compon [L, 4] = compon [L, 4] + b
compon [L, 5] = compon [L, 5]-a
ELSE
compon [L, 4] = compon [L, 4] + b
compon [L, 5] = compon [L, 5] + a-shc
ENDIF
compon [L, 7] = dlc
compon [L, 8] = shc
ELSEIF compon [L, 6] = 2
IF compon [L, 2] = 'bot'
compon [L, 4] = compon [L, 4] + a
compon [L, 5] = compon [L, 5] + b-dlc
ELSE
compon [L, 4] = compon [L, 4]-a + shc
compon [L, 5] = compon [L, 5] + b-dlc
ENDIF
compon [L, 7] = shc
compon [L, 8] = dlc
ELSEIF compon [L, 6] = 3
IF compon [L, 2] = 'bot'
compon [L, 4] = compon [L, 4]-b + dlc
compon [L, 5] = compon [L, 5] + a-shc
ELSE
compon [L, 4] = compon [L, 4]-b + dlc
compon [L, 5] = compon [L, 5]-a
ENDIF
compon [L, 7] = dlc
compon [L, 8] = shc
ENDIF
RETURN
//************************************************ ****
/ / Функція яка послідовно зчитує pdf-файл шматками по 65000 байт (тобто після аналізу 1-го шматка у 65000 байт зчитується наступний і т.д.
FUNCTION READF () / / читання шматка файлу 65000 з поточної позиції
PRIVATE bait:=CHR(10),seek,contr,sost:=' ',buf
bufer=SPACE(65001)
contr:=FREAD(desc,@bufer,65000)
IF cont