Переход с PCAD на Eagle |
Добавил(а) microsin | ||||||||||||||||||||||||||||||
После долгого периода работы на PCAD 2004 стало интересно попробовать EAGLE. Почти все проекты (схемы и платы) в Интернете, которые есть в свободном доступе, сделаны именно в этой системе проектирования, поэтому Eagle - обязательный must have для каждого радиолюбителя. В статье рассмотрены трудные моменты (не очевидные с точки зрения пользователя, привыкшего к среде PCAD), с которыми пришлось столкнуться при начале работы с EAGLE 5.6.0 for Windows (или 6.2.0, отличия невелики). Вам вполне может хватить возможностей бесплатной версии (все, что описано в разделе Установка, делать не надо), ограничения невелики - разводить можно только в двух слоях, размер платы не больше чем 100x80 мм. После того, как удалось подружиться с Eagle, поделюсь впечатлениями и личным сравнением с PCAD 2004. Безусловно, Eagle не такая "крутая", как PCAD 2004 и тем более как Altium Designer. Однако её намного проще освоить и можно намного быстрее получить готовый результат. Маленькая, но шустрая да удаленькая. Помню, как начал получать удовольствие от работы в PCAD, когда "воткнулся". Так вот - удовольствие от работы в Eagle я начал получать ГОРАЗДО БЫСТРЕЕ. Сначала плевался на "неудобную" работу в редакторе, но потом все стало на свои места. Особенно радует обилие компонентов и простота их создания, что всегда напрягало в PCAD. [Установка] Как ставить EAGLE (Easily Applicable Graphical Layout Editor) Version 5.6.0 for Windows, Professional Edition, Copyright (c) 1988-2009 CadSoft. 1. Запускаем Setup, ставим, выбираем Don't license now. [Первое знакомство] Рекомендую документ на русском языке - учебник Eagle Johnn Dorfman. Небольшой по объему, он позволяет быстро начать ориентироваться в незнакомой среде Eagle (см. Ссылки [1]). Панель управления Eagle (Control Panel) при первом запуске поражает минимализмом. Однако за этой простотой скрываются большие возможности. Большие плюсы по сравнению с PCAD 2004: Минусы Eagle по сравнению с PCAD 2004: Недостающую функциональность в Eagle можно добавить с помощью расширений, написанных на языке ULP. Обычно ULP-программы через нехитрый пользовательский интерфейс запрашивают у пользователя входные параметры какой-то операции, а потом генерируют текст скрипта (файл с расширением *.SCR), запуск которого производит необходимые действия в среде утилит Eagle. Некоторые функции, изначально встроенные в PCAD (например, генерация шелкографии, или отчетов BOM) делается в Eagle через "костыли" в виде скриптов ULP. [Библиотеки] Библиотеки компонентов - файлы с расширением *.lbr, которые лежат в папке c:\Program Files\EAGLE-5.6.0\lbr\. Первое, что нужно сделать - отключить использование всех библиотек, что сильно ускорит работу. Дело в том, что библиотек слишком много, и там 90% ненужного. Поэтому отключаем все библиотеки и выберем для работы только нужное. Для этого в Control Panel щелкаем правой кнопкой на папке Libraries -> lbr и выбираем Use none. Затем раскрываем папку Libraries и выбираем только нужные библиотеки. Напротив невыбранной библиотеки стоит серый маленький кружок, а напротив выбранной - жирный зеленый. Отличие "невыбранной" библиотеки от "выбранной" только в том, что из "выбранных" библиотек можно использовать детали в редакторе принципиальной схемы, а из "невыбранных" - нельзя. Какие библиотеки стоит включить (или хотя бы стоит их просмотреть, так как детали оттуда Вам скорее всего пригодятся):
См. также обзор скриптов [9]. Контур символа рисуют командой wire. Ножки для символа расставляют командой pin. При расставлении ножек правой кнопкой мыши можно менять ориентацию вставляемой ножки. Сначала тупо расставляют ножки, потом их можно отредактировать командой info. При редактировании ножек командой info дают имена по даташиту и присваивают тип (I/O, In, Out, Pwr и т. д.). Завершают редактирование символа вводом двух текстовых меток >VALUE и >NAME в слоях Values и Names соответственно. Поведение графических редакторов библиотеки весьма необычно (в принципе, это относится и к другим редакторам - схемы и печатной платы). Стандартные команды копирования и вставки не работают. При операциях копирования, перемещения, поворота почаще обращайте внимания на строку статуса (в нижней части экрана редактора) - там отображается подсказка о том, какие кнопки надо нажимать для того или иного действия. В работе с редакторами (это относится не только к библиотекам, а также и к редакторам печатной платы и схемы) очень полезно ознакомиться с основными принципами работы клавиатуры и мыши [11]. Русские символы в описании библиотеки и компонентов лучше не использовать - иначе они иногда будут отображаться как знаки вопроса. Скрипт make-symbol-device-package-bsdl.ulp позволяет упростить создание новых компонентов библиотеки. Хотя, возможно, проще создавать новые компоненты методом копирования и правки. Для автоматического создания библиотеки, в которой будут находиться все компоненты, которые используются в проекте, есть очень удобный скрипт exp-project-lbr.ulp. Предположим, у Вас уже есть проект (принципиальная схема *.SCH и печатная плата *.BRD), и Вы хотели бы создать библиотеку, которая содержит только те элементы, которые используются в проекте. Из редактора схем запустите скрипт exp-project-lbr.ulp через меню File -> Run..., переставьте радиокнопку Creation Mode в положение One library, и снимите галочку Generate LBR-Name_/PAC/SYM/DEV (это сделает имена компонентов в библиотеке короче). Затем нажмите сначала кнопку Collect data, а затем Create library. Получите файл *.LBR, который будет содержать все компоненты проекта (Device, Package, Symbol). Если Вы запустите скрипт exp-project-lbr.ulp из редактора печатной платы, то в библиотеку попадут только корпуса компонентов (Package). Часто задаваемые вопросы по библиотекам перенес в [10]. [Рисование схемы] Перед рисованием схемы лучше всего все необходимые компоненты сгруппировать в одной библиотеке, и положить этот файл библиотеки (с расширением *.lbr) в папку проекта. Начинают рисование схемы с размещения деталей, и эти детали берут из нашей новой библиотеки проекта, для чего нужно в меню Library -> Use выбрать наш файл библиотеки. Можно файл библиотеки положить и в папку проекта, но тогда настройте пути до библиотек - добавьте туда и папку проекта. Рисование соединений происходит интуитивно и понятно. Пришлось только немного повозиться с шинами. Шина рисуется командой или кнопкой/командой bus. После того, как шина нарисована, к ней подводятся проводники. После того, как проводники подведены к шине, нужно присвоить цепям проводников имена, что делается командой или кнопкой info (вводят Net Name). После этого провода, входящие в шину с одинаковыми именами цепей, оказываются соединенными. Одинаковые имена вводятся другой командой name. Для наглядности можно и нужно пририсовать проводам шины надписи, это делается кнопкой или командой label. Вставляется текст, который берется из имени цепи проводника. Шина именуется таким образом, что в имя шины входят через запятую все имена проводников, входящих в шину. Чтобы не ругался инструмент проверки ошибок Erc (Net name XXXX not present in bus YYY), необходимо шине задать имя в соответствии с этими правилами. Например, если в шину входят провода PC2,PD0,PD1 и RESET, то шина должна иметь имяPC2,PD0,PD1,RESET. После просмотра видео tt07.mov (см. Ссылки [1]) выяснился смысл несуразицы пользовательского интерфейса Eagle. Оказывается, многие действия можно ускорить применением ввода текстовых команд консоли редактора (в виде сокращений). В обучающем видео это часто демонстрируется. На мой взгляд - довольно сомнительный метод оптимизации работы, гораздо эффективнее использовать шорткаты наиболее часто используемых команд и макросы (так, как в PCAD 2004). При рисовании схемы вместо команды Wire лучше приучить себя использовать команду Net, тогда будет меньше ошибок, и точки связей будут расставляться автоматически. [Рисование печатной платы] От схемы к печатной плате переход простой - достаточно в редакторе схемы нажать только кнопку Board. Внимание! С этого момента Ваш проект переходит в состояние активности Forward&Back Annotation (подробности см. далее). Непривычно то, что любые изменения в схеме сразу же отражаются в изменения на чертеже печатной платы. Координатная сетка простейшая, без обозначения "круглых" значений. Контур платы рисуется в слое Dimension. Редактор по сравнению с PCAD 2004 неудобный (или непривычный?). Колесиком меняется только зум, а еще хочется чтобы была прокрутка (c модификаторами Alt, Shift, Ctrl). Прокрутка схемы здесь с помощью удержания средней кнопки мыши (нажатие колеса). Обозначения деталей двигать невозможно (только через Smash). Номера ножек деталей не видны (хинты по цепям, ножкам и деталям не высвечиваются). Чтобы переставить деталь со слоя на слой (например, с Top на Bottom), используется инструмент Mirror. Команда rat оптимизирует отображение неразведенных соединений (видео tt08.mov из архива, см. см. Ссылки [1]). Кроме того, она включает заливку для полигонов. Для изменения положения позиционных обозначений (RefDes в PCAD 2004 и >NAME в Eagle) на печатной плате и удаления ненужных значений (>VALUE в Eagle) решается командами smash, move, delete, grid. Команда smash отделяет атрибуты >NAME и >VALUE от детали, команда move позволяет двигать атрибуты, командой delete можно удалить ненужные значения >VALUE, а командой grid можно сделать более мелкой координатную сетку, чтобы можно было точно поставить атрибут на новое место. Правой кнопкой мыши при перемещении атрибута его можно также и вращать. Если применить smash удерживая кнопку Shift, то атрибуты снова группируются вместе с компонентом, и занимают старое место. Команда grid last возвращает предыдущий размер координатной сетки (видео tt08.mov из архива, см. ссылки [1]). Команда show имя_объекта позволяет визуально выделить компонент или цепь. Выделение одновременно отображается и в редакторе схемы, и в редакторе печатной платы - независимо от того, где команда show была введена. Начало координат (X=0, Y=0) на чертеже печатной платы обозначено белым крестиком. Лучше всего, чтобы этот крестик совпадал с левым нижним углом печатной платы, тогда удобнее всего отсчитывать координаты - Х растет вправо от крестика, Y растет вверх от крестика. Соответственно влево и вниз от крестика координаты X и Y будут отрицательными. Ручная трассировка. При ручной разводке переключиться на другой слой с установкой переходного отверстия (via) можно, если щелкнуть средней кнопкой мыши (напомню, что удержание средней кнопки мыши позволяет схватить и двигать чертеж). Появится меню, в котором можно выбрать слой разводки. Во время ручной разводки можно правой кнопкой менять стиль прокладывания трассы (под прямым углом, под 45o, с закруглением). Из специальной панели можно также поменять толщину трассы (Width), вид и размер переходного отверстия (Via Drill, Diameter). Диаметру auto соответствует диаметр площадки переходного отверстия, равный 39.622 мил (1.006 мм). Как лучше настроить координатную сетку (grid). Я уже говорил, что лучше, чтобы координатная сетка при рисовании печатной платы была в mil-ах, и на миллиметры нужно переходить (временно) только если Вам надо измерить какие-то расстояния (например, размер печатной платы). Вот так, на мой взгляд, лучше настроить координатную сетку: Немного о назначении параметров, так как они могут быть не очевидны. Size - шаг координатной сетки. Multiple - множитель сетки. Если не равен 1, то тогда видимый размер шага сетки будет больше реального шага в указанное число раз. Попробуйте установить множитель - может, кому-то понравится, но мне показалось неудобным. Alt - если нажать и удерживать кнопку Alt, то видимый шаг сетки останется старым, а реальный шаг координатной сетки поменяется на указанное значение. Я поставил тут шаг меньше для того, чтобы при нажатии кнопки Alt можно было более точно (с шагом 5 mil) позиционировать объекты. В редактор печатных плат (Layout) можно добавить для удобства дополнительное меню команд, расположенное справа. Настраивается скриптом menu.scr, и также необходимо включить это меню через Options -> User interface -> Command texts -> поставить галочку. Часто задаваемые вопросы по редактору печатной платы перенес в [10]. [Автороутер] Поначалу возможности встроенного автороутера не впечатлили - мне показалось, что он медленный (по сравнению со SPECCTRA) и неэффективный. Но потом выяснилось, что это не так - долго и криво он разводит, если плата безнадежна (нет места для прокладки проводников). Чем меньше шаг трассировки, тем медленнее происходит разводка. Главное отличие от SPECCTRA - не переразводит уже проложенные соединения, и не меняет толщину уже проложенных проводников, даже если класс сети проводника требует увеличить толщину уже проложенной трассы. Стратегия трассировки отличается от PCAD + SPECCTRA. Здесь нельзя воспользоваться фиксацией проводников с предварительной ручной разводкой. Фиксации проводников тут нет, но можно часть разводки сделать вручную, автороутер уже сделанную разводку не трогает. Статистика трассировки записывается в файл *.pro. Временные данные по разводке сохраняются в файле *.job, так что если Вы прервали разводку, то можно её продолжить с прерванного места. На начальных этапах трассировки нужно вручную развести очевидные цепи. Далее перед запуском автотрассировки временно максимально облегчают трассировку уменьшением допусков (например, загружают в Design Rules правила для 5 класса точности). Далее после пробной трассировки становится видно, какие детали надо подвинуть (или переместить на другой слой), чтобы освободилось место для трассировки. Потом допуски возвращают на актуальные (на желаемый класс точности). После того, как плата полностью оттрассирована, вручную корректируют прокладку трасс, и инструментом ERC проверяют правильность отсутствие ошибок. [Некоторые проблемы, с которыми приходится сталкиваться новичкам (см. также [10]] 1. Внимание! При созданной печатной плате она всегда должна быть открыта в редакторе, если Вы редактируете схему (и наоборот). Это нужно для того, чтобы и схема и плата были синхронны друг с другом. В Eagle отсутствует привычная для PCAD возможность сохранения принципиальной схемы в виде списка соединений (netlist), и обмена информацией таким способом между принципиальной схемой *.sch и печатной платой *.brd. Отсутствует также инструмент ECO (Engineering Change Orders), позволяющий записывать в файл сделанные изменения (в принципиальной схеме или печатной плате), и применять их потом в другой половине проекта (печатной плате или схеме соответственно). Пока вы рисуете только схему, и платы у Вас еще нет, то нет необходимости заботиться о синхронизации схемы и платы - в терминах Eagle это состояние проекта Forward&Back Annotation not active. Но как только Вы создали из схемы плату, то Вам обязательно нужно следить за тем, чтобы одновременно были открыты два окна Вашего проекта - одно с редактором схемы, другой с редактором платы (Forward&Back Annotation активна). Eagle 6.2.0 отличается от 5.6.0 тем, что активно предупреждает о возможности нарушения синхронизации, если Вы случайно закрыли одно из окон. Например, если поменяли корпус у элемента в библиотеке и на схеме, то нельзя эти изменения перенести на печатную плату, если у Вас был закрыт редактор печатной платы с открытым файлом печатной платы. Не существует возможности синхронизации печатной платы и схемы через список соединений, подразумевается, что они всегда автоматически синхронны. Из-за этого часто вылезают глюки и ошибки (Board and schematic are not consistent! No forward-/backannotation will be performed! Use the ERC command to get a detailed error report.). Такая ошибка может произойти, если Вы закрыли файл печатной платы, но сделали при этом изменения в схеме. Поэтому всегда открывайте сразу и файл схемы, и файл печатной платы! Самый тупой способ исправить ошибку - удалить файл *.brd и создать его заново, но если уже проведено много работы по разводке, то такой способ не подходит. На примере рассинхронизации одного компонента можно поступить следующим образом (предположим, у Вас бала закрыта печатная плата, а Вы поменяли в библиотеке тип и корпус компонента, и поменяли схему): - откройте файл платы кнопкой Board в редакторе принципиальной схемы. Получите сообщение "Board and schematic are not consistent! ...". 2. Подсветку/поиск цепей и элементов делает команда show, тут нет Highlight/Unhighlight. 3. Если точка привязки объекта (обозначается маленьким крестиком) не совпадает с координатной сеткой, то возможны проблемы с размещением и использованием объекта. Например, если вывод символа не попадает на координатную сетку по умолчанию (100 мил, или 2.54 мм, или 0.1 дюйма), то в редакторе схем нельзя присоединить в выводу никакую цепь. Поправить ситуацию можно, если в редакторе символа исправить положение вывода. Это делается так: Для выравнивания точек отсчета компонентов чертежа (origins) по ячейкам координатной сетки есть скрипт cmd-snap-board.ulp [9] 4. При рисовании принципиальной схемы перемещение зеленых линий цепи (net) командой move или копирование цепи командой copy таким образом, чтобы цепь попала на вывод компонента, не образовывает соединения с выводом компонента. Для образования соединения нужно перемещать сам компонент так, чтобы его вывод совпал с цепью. Будьте особенно внимательны к перемещениям зеленых линий цепей, если они не оканчиваются на выводе компонента схемы! Иначе Вы рискуете получить трудно обнаруживаемую ошибку в печатной плате, которую найдете только при испытании работы схемы. Хорошая практика - попробовать "потаскать" детали схемы, тогда "оторванные" цепи сразу станут видны. 5. Цепи в редакторе печатной платы проводятся командой net. 6. Отменить/убрать разводку всех цепей можно командой ripup *. Удалить разводку только цепи GND можно командой ripup GND. Иногда бывает нужно переразвести не всю цепь, а только часть его, и при попытке удаления сегмента дорожки (Edit -> Delete) в редакторе печатной платы выскакивает ошибка "Can't backannotate this operation. Please do this in the schematic!".
Исправить положение можно, удалив нужный сегмент дорожки не командой Edit -> Delete, а командой Edit -> ripup. 7. Если Вы хотите иметь отдельную библиотеку для Вашего проекта (хотите, чтобы она лежала в папке Вашего проекта), и не хотите её смешивать со всеми остальными библиотеками (которые лежат, как известно, в папке c:\Program Files\EAGLE-5.6.0\lbr или $EAGLEDIR\lbr), то вам нужно настроить пути для библиотек, и добавить туда путь до папки, где лежит Ваша отдельная библиотека. Делается это через меню Control Panel: Options -> Directories -> Libraries. Например, Ваша библиотека teensy-comp.lbr лежит в папке c:\Program Files\EAGLE-5.6.0\projects\teensy10. Тогда настройка Libraries будет такой: $EAGLEDIR\lbr;$EAGLEDIR\projects\teensy10 Как видно, все пути добавляются через точку с запятой, и можно использовать макроподстановку $EAGLEDIR, означающую папку, куда установлен EAGLE. После такой настройки опций библиотека teensy-comp.lbr будет всегда доступна для команд, и не нужно будет вводить полный путь до библиотеки. 8. Если Вы решили сохранить плату .brd (или схему .sch) под новым именем, то автоматически сохранится под новым именем и вторая половина проекта - схема .sch (или плата .brd). [Forward&Back Annotation - синхронизация схемы и платы] Система проектирования Eagle устроена так, что схема и плата всегда логически соединены друг с другом через механизм Forward&Back Annotation. Обычно не нужно никогда заботиться о синхронизации схемы и платы - все изменения, которые Вы делаете в одном из редакторов, автоматически переносятся в другой (например, если в схеме Вы добавили деталь или соединение, то это само произойдет и на чертеже печатной платы). Однако в этой секции перечислено все, что явно или неявно для пользователя связано с активностью системы Forward&Back Annotation. ▪ Когда Вы добавляете новую деталь (part) в схему (schematic), то посадочное место детали (package) также добавляется и на печатную плату (board) в нижний левый угол чертежа. Если в детали есть выводы питания (power pins, у которых есть направление "Pwr", они не входы и не выходы), то соответствующие ножки автоматически получат соединения с их соответствующими цепями питания (power signals). [UPD141201] Вышла новая версия Eagle 7.2. Анонсированы следующие улучшения: • Улучшенный автотрассировщик с топологической предварительной автотрассировкой. Кроме того, начиная с версии 7.1 удалена система управления сторонними лицензиями (3rd party License Management system), которая появилась в версии 7.0. [Ссылки] 1. Обучающие материалы по Eagle. В архиве - учебник Eagle Johnn Dorfman на русском языке (tutor1.1.chm), демонстрационные видео с сайта tangentsoft.net (tt07.mov, tt08.mov, tt09.mov, tt10.mov, tt11.mov, tt12.mov, tt13.mov, tt14.mov). |