КулЛиб электронная библиотека 

LibreCAD в руках электронщика [al_fuhrmann al_fuhrmann] (fb2) читать онлайн


Настройки текста:



al_fuhrmann LibreCAD в руках электронщика

Вступление

По этой важной программе удивительно мало имеется справочной информации. Многие, казалось бы, серьезные люди (преподаватели-кандидаты наук, конструкторы) задают очень наивные вопросы. Видимо, дело в РФ совсем плохо с образованием. Такое полное отсутствие исследовательских навыков, у тех, у кого они должны быть… А в тоже время, в западных странах, по всей вероятности, пользователи уже не нуждаются в инструкциях образца 80-х годов прошлого века: «нажмите кнопку… передвиньте мышку».

Конструкторские программы окружены всевозможной проприетарностью. Видимо, раз продукт позволяет делать бабки, то он и сам должен стоить крутых бабок. В то же время, LibreCAD бесплатная программа! Но справки по ней нет. Автор, со своим слабеньким умом, но живым воображением представляет себе, что разработчики просто… банально боятся, что их замочат! Наши российские ментальности именно в таком направлении мысль и подталкивают: «потому что нельзя быть на свете красивой такой». Раз программа хорошая, значит конкурент мощнейшему AutoCAD'у, или другим таким монстрам, а значит, надо мочить!

Ну, ладно, будем считать, что эти абзацы были как бы дымом из холодного мотора. Вернемся в тему.

Что можно сделать при помощи LibreCAD в электронике? Это ведь «механическая» программа. Но автор придерживается мнения, что это универсальная чертильная программа, для электроники она подойдет не хуже, чем для трактора или мясорубки. Сейчас, в связи с переходом на Linux во многих учреждениях, — вот и образование переводят постепенно с рельсов Микрософт на Линукс, — возникает большая потребность в приложениях. Linux, как и прочие UNIX'ы (тролли отдыхают — не отвечу) была системой для программистов, поэтому для другой инженерии она развивалась не очень. Теперь дело двигается.

LibreCAD — это 2D-чертилка. Это минус, в этом отношении AutoCAD намного лучше. Так бы и работать в нем, тем, у кого он есть, но беда в том, что теперь менты придираются ко всему. Если для любительских целей можно использовать потихоньку все, без всяких ограничений, то коммерческие программы — дело другое. А многие предприятия просто не в состоянии платить такие бабки за коммерческую лицензию. Тем более, бедные фрилансеры, услугами коих начинают пользоваться все больше и больше. (На страх гебистов-особистов из отделов кадров — те потихоньку остаются без работы.)

Однако, для электронщика отсутствие трехмерной графики катастрофой не является. Он работает, в основном, в плоскости: принципиальные и монтажные схемы, топология печатных проводников — все это плоское. Те же трехмерные задачи, с которыми может столкнуться электронщик, могут быть решены на пальцах, без всяких чертежей. Собственно говоря, дело электронщика — процессы, протекающие в схемах, а платами занимается конструктор, который может вообще ничего не смыслить в электронике, лишь бы шарил в механике. Тем не менее, часто электронщикам приходится пыхтеть и над разводкой печатных плат. В институтах электронщикам пытаются преподавать и конструкторские навыки.

Некоторые используют эмуляторы, например, wine для запуска некоторых привычных программ Windows в среде Linux. Вещь хорошая, безусловно, но и вставные зубы, и очки, и слуховые аппараты, и костыли, и даже горшки под лежачих, тоже, вещи очень неплохие. Однако, хотелось бы как-то обойтись без них.

Для рисования принципиальных схем хорошо подходит qucs — вещь, выходящая далеко за пределы простого редактора схем. Это симулятор SPICE, а редактор схем в нем — как ложка к обеду. Но сейчас речь о LibreCAD. Можно чертить схемы в qucs, но такого извращения, как генерация разведенной печатной платы в один клик, да еще превращение этой платы во всемирный товар, здесь не получится. qucs — это только симулятор. Да и вообще, авторазводчики — это «утупия». После них, все равно, все придется переделывать вручную. Недостаток LibreCAD — в невозможности создавать файлы Gerber для станков, но зато печать в LibreCAD выполняется превосходно. Далеко не всегда разведенная плата идет в серию сразу. Хорошо продуманный образец, все равно, придется снова рисовать в PCAD или OrCAD Layout или еще в чем-нибудь таком, но это будет более эффективным рисованием. Впрочем, черт с ним, а то тролли начнут спамить, засорять енторнет. Кому-либо предлагаемый текст может пригодиться; да и не только электронщикам, а всем, кого может заинтересовать рисовалка LibreCAD.

Автор этого опуса много смотрел на вопросы по LibreCAD и сам задавался многими из них. Как-то собрались и ответы и некоторые решения. Поэтому возникла идея предложить все это в виде нескольких простейших проектов, которые будут служить подсказкой для желающих освоить LibreCAD.

Несколько строчек по поводу теории

Концепция CAD-программ опирается на два мощнейших понятия, вокруг которых все вертится. Это блоки и слои. Пользователи часто работают по старинке, по карандашному. Будучи хорошими конструкторами, они могут очень вяло интересоваться компьютерами и в результате терять значительную часть времени на головоломки с интерфейсом.

Векторная графика

Это основа основ. В отличии от растровой, которая представляет изображение огромным массивом разноцветных или полутоновых точек, векторная устроена несравненно компактнее. Это просто набор команд для некоторого графического устройства. Файл векторного изображения — это программа на языке управления плоттером (или принтером). Для экономии памяти, оперативной и/или дисковой применяются и различные алгоритмы сжатия (без потери информации). Растровые форматы хороши для фото и видео. Здесь информация обрабатывается на манер телевизионного сигнала и это дает неплохое сжатие (jpeg) при вполне высоком качестве, несмотря на потерю части информации. Преобразование растрового изображения в векторное с хорошим качеством — достаточно сложная задача, и наоборот, векторное изображение превратить в растровое — раз плюнуть. Это легко сделает любой маляр или хулиган, пишущий на заборе известные слова.

Основная причина использования именно векторной графики:

• для чертежей

• графиков

• диаграмм

• пиктограмм

• логотипов

• рисунков (включая и художественные)

• шрифтов

состоит в неограниченной масштабируемости изображений. Ограничения существуют только по разрешающей способности пишущего устройства, которое и занимается «растеризацией». Все очень просто: если мы даем команду провести линию заданной толщины от точки к точке, то остальное — забота принтера или монитора. Его ПО (драйвер) строит растровый эквивалент этой команды. В зависимости от величины масштаба будет закрашена большая или меньшая область, но форма линии сохранится без изменений. Только очень мелкий масштаб начнет давать растровые погрешности. Плоттер делает то же самое, регулируя ширину своего пера, поэтому плоттерные изображения выглядят особенно четко. Как это делается технически — совершенно неважно, главное — результат.

Графические примитивы

Это элементы. К ним относятся: точка, прямая линия, прямоугольник, эллипс. Как и в обычной «циркульной» геометрии обычно используются линии первого и второго порядков: прямые и, соответственно, эллипсы. Прямые здесь — это отрезки прямых, эллипсы — как целые фигуры так и дуги. Окружность — это просто частный случай эллипса. Все как в обычной аналитической геометрии.

Более навороченные примитивы: текстовые блоки и размерности. Они также состоят из линий, но, чтобы не геморроиться с их частым построением, эта рутинная работа немного автоматизирована. Поэтому они тоже считаются примитивами.

Блоки

Чтобы не делать каждый раз дурную работу, можно прорисованный набор примитивов объединить. Он становится блоком, имеющим условную точку, относительно которой в нем вычисляются все остальные расстояния. Эта точка может быть использована для привязки или вращения блока. Поэтому ее нужно выбирать обдуманно.

Блок можно не только собирать, но и разбирать. Слово explode довольно точно описывает процесс разрушения блока. От взрыва он отличается только тем, что все линии остаются на своих местах, пока какую-либо из них не сдвинут или не удалят. Можно собирать блоки из блоков. В этом случае, они разваливаются в обратном порядке. Разборку блоков используют для их правки, а затем то, что было блоком, можно вновь сделать таковым. Нечего и говорить, какие возможности это открывает!

Слои

Еще большие возможности открывают слои. Слой — это способ управления видимостью блоков. Слой можно показать или скрыть, со всем его содержимым. Он подобен прозрачной кальке. Слоев может быть практически сколько угодно (это только вопрос памяти). Каждый слой имеет произвольное имя, что очень удобно.

Объекты чертежа располагаются в порядке прорисовки слоев. Этот порядок можно изменить, а также можно легко изменять принадлежность блоков и примитивов (объектов) различным слоям. Поэтому некоторые объекты могут «пропадать»; или неожиданно «появляться». Никуда они не пропадают и не появляются ниоткуда, просто закрыты изображением в слое нарисованном сверху (позже по времени), или выскакивают в верхнем слое. Очевидно, можно управлять перекрытием/наложением объектов, если это нужно, и ясен способ, как это сделать.

Атрибуты

Атрибутами являются свойства линий, такие как:

• толщина

• цвет

• стиль (сплошная, штрихи, вид концов)

• заливка (штриховка)

• семейство и стиль шрифта.

Атрибуты могут изменяться индивидуально или назначаться целому слою. Последнее означает, что по умолчанию все линии в слое будут подчиняться установленным его атрибутам.

Команды и задачи

Все манипуляции сведены к командам построения линий, их перемещения, симметрий, группировки и т. д. Есть очень удобные команды множественного копирования, с линейным или угловым перемещением.

Таким образом, если пораскинуть мозгами, чертежную работу можно очень существенно упростить по сравнению с тем, что раньше делали на кульмане.

Ну, как будто бы нигде не наврал. В следующих постах мы займемся несложными проектами, которые помогут (автор надеется, что они будут хоть немного полезными) разобраться с LibreCAD.

Сделаем рамку

Предполагается, что наши файлы хранятся: /home/you/lcad/

Хотя you можете поместить их хоть в /root… Это дело ваше.

Запустив LibreCAD в первый раз после установки, мы, скорее всего, получим окошко с предложением выбрать единицы измерения, и скорее всего, для каждой страны они будут подобраны автоматически. Так что остается просто принять их. А безымянный файл сохраним так:


/home/you/lcad/a4at.dxf


Имя файла означает A4 Album Template, это прихоть автора. Сначала мы имеем практически бесконечную плоскость (единицы измерения — просто условность). Рамка ограничит ее, хотя это просто способ придать документу форму, показать, что нигде и ничего не оторвано. Да что тут поучать, читатели и сами все знают. Наша задача просто разобраться, как все это сделать. Поэтому, мы не будем делать рамку по ЕСКД со всеми потрохами. Нарисуем простую, с самым примитивным штампом. А те, кому это надо, нарисуют то, что им нужно.

Но сначала посмотрим, каковы свойства документа, которые LibreCAD предлагает нам впервые. Для этого выберем команду меню:

Правка | Текущие свойства чертежа

На следующей серии окошек показано, какими свойствами обладает пока еще пустой чертеж.






В особых комментариях они не нуждаются. Единственное, что пришлось изменить — ориентация листа с портретной на альбомную, раз уж этого требует наш шаблон.

Отступив от размеров бумаги, скажем, 6 мм, построим прямоугольную рамку. Путем несложных вычислений мы сразу получаем размеры соответствующего прямоугольника: 210 − 12 = 198; 297 − 12 = 285.

В главном окне LibreCAD имеется командная строка, по которой нужно щелкнуть мышкой. И она готова ко вводу. Ввод каждой команды подтверждается нажатием клавиши Enter, а выход из команды — Esc. Если ваш курсор стоит в начале мировых координат (большой красный крестик) вы можете видеть его в левом нижнем углу области чертежа. Фон чертежа по традиции сделан черным. Когда-то это делалось, чтобы не палить зря монитор и глаза работника. Кто-то может предпочесть фон другого цвета и его изменить, но сейчас это уводит нас в сторону. Ведь и так автором налито много воды.

Координаты в чертеже организованы в 100 мм квадратную сетку, на которой лежит 10 мм точечная сетка. Все это тоже поддается настройке. Координаты вычисляются как прямоугольные декартовы (мм) и как полярные (в мм и градусах), общепринятым способом. Пересказывать школьную тему не буду.

Вот команды, которые нужно ввести для получения большой рамки и примитивного штампика:


line

0,0

0,198

285,198

285,0

0,0


Рамка готова. Завершаем команду Esc и начинаем новую:


line

285,30

150,30

150,0


Готова рамка углового штампика.


line

@0,12

285,12


Готова горизонтальная линия в штампике.


line

250,30

@0,-30


Готова вертикальная линия в штампике. Итак, мы видим, вводом команды line мы даем понять LibreCAD, что собираемся строить ломаную.

Собака означает локальные координаты. Они всегда отсчитываются от текущего положения курсора, которое обозначается крестиком в кружочке. Это очень удобно.

Вообще, в большинстве случаев, имея дело с черчением, пользоваться командной строкой гораздо удобнее, чем мышкой. Можно ТОЧНО построить объект, даже не видя его на чертеже. Мышь хороша для художественной графики, где координатами является вкус дизайнера. А чтобы не превращать голову в бухгалтерию (хотя что в этом плохого?) придумали привязку. Например, привязка к координатам позволила бы с тем же успехом нарисовать нашу рамку, однако, накладные расходы — масштабирование вида, двигание чертежа туда-сюда для обзора, свели бы на нет «дружественность» этого способа. Так что всячески рекомендую вам почаще работать с командной строкой.

Нарисованную рамку можно защитить от случайной порчи, заперев слой, в котором она нарисована. Для этого нужно щелкнуть замочек в списке слоев. У нас есть пока только один слой, с именем 0. Там же можно отключить видимость этого и любого другого слоя, путем воздействия на глаз (кнопку, и мышкой, а не кулаком).

Добавим текст, ведь рамки существуют для текстовых надписей. Это можно сделать командой text. Тут же появится окно для ввода текста и установки его атрибутов.

Для новичков в Linux несколько полезных советов кстати, касающихся поведения мыши в окнах:

• Scroll Up — колесо вперед: Приблизить

• Scroll Down — колесо назад: Отодвинуть

• Shift + Scroll Up — окно влево

• Shift + Scroll Down — окно вправо

• Ctrl + Scroll Up — окно вверх

• Ctrl + Scroll Down — окно вниз

• Wheel Press Down + Drag — свободное перетаскивание в окне при нажатом колесике.

Когда мы говорим, что окно поехало влево, то имеем в виду, что его содержимое начинает уходить вправо и т. д.  А возвращаясь к тексту просто вставим что нибудь внутрь рамки. При этом, возможно, придется разблокировать слой (сделать замочек серым, щелкая по нему). Обратившись к атрибутам слоя при помощи кнопки над списком слоев, можно выставить толщину линии, отличающуюся от предлагаемой по умолчанию.

Ну а теперь, можно попробовать распечатать. Нужно сказать, что печать в LibreCAD настолько безгеморройна, что появляется желание все время что-то печатать. Как и обычно, команда печати выбирается из меню Файл. Но сначала полезен Предварительный просмотр. В данном случае, будет полезно обнулить ширину полей принтера (отступов от краев страницы).

Над образцом есть текстовое поле, в котором нужно выставить масштаб 1:1, наиболее подходящий для нашего случая. Средняя кнопочка справа поможет центрировать изображение на листе (средняя из них). Нужно следить и за всплывающими подсказками, поясняющими элементы интерфейса.

Все подготовив, нажимаем печать и печатаем — на настоящем принтере или виртуальном, в pdf:



Проделав подобные упражнения два-три раза, мы получим необходимые навыки для дальнейшего. В следующем посте мы займемся блоками — их созданием и использованием.

Блоки и работа с ними

Займемся блоками. С их помощью можно создавать довольно сложные объекты, а с помощью этих объектов еще более сложные и т. д. «Магическое число» 7: 7 примитивов в блоке, 7 простых объектов в одном сложном, 7 архисложных объектов в чертеже — хороший пример структурной оптимизации. Мы действуем по аналогии с тем, что принято в программировании. Но какая разница?

Никакой магии, никакой нумерологии, здесь, конечно, нет. Автор думает, что здесь дело скорее в психологии: числа 4…10 легко удерживаются в памяти человека, обозримы, так сказать. В черепушке среднего человечка, к каким относится почти каждый из нас, грешных, такова «глубина стека». Но пора к делу. Создадим новый файл: ~/lcad/chip.dxf.

Нарисуем для начала чип-резистор. Это настолько примитивная вещь, что может быть описана очень лаконично:


polyline

3.1,1.6

3.1,0

0,0

0,1.6

3.1,1.6

line

0.45,0

0.45,1.6

line

2.65,0

2.65,1.6


Мы нарисовали, с точным соблюдением размеров, чип-резистор (SMD) типоразмера 1206. Однако, на мониторе, в области чертежа, ничего не происходит? Это не так. Выберем команду: Вид | Показать все — и можем увидеть результат.



Здесь нас ожидает приятный сюрприз: координатная сетка в LibreCAD динамическая! В предыдущем посте мы могли заметить и заподозрить эти признаки на серии окошек «Параметры чертежа». Динамические координаты автоматически изменяют свой шаг, в зависимости от увеличения в окне чертежа.

Теперь из рисунка нужно создать блок, чтобы он не рассыпался на три части: прямоугольник, образованный полилинией и два вертикальных отрезка.

Из меню выберем команду меню: Блок | Создать блок. Теперь нужно выделить наше построение целиком при помощи курсора-крестика в окне чертежа. Но сначала нужно найти уточнение режима выбора (рамкой), и затем протянуть рамку по диагонали построения:



Вот теперь будет весьма целесообразно включить привязку к координатной сетке в меню: Привязка | По сетке. Затем помещаем курсор в точку с координатами 0.22,0.8. Это середина контактной площадки. Благодаря такому выбору мы сможем легко вставлять блок в нужное место.



Осталось нажать Enter и ввести имя блока в появившееся окно: R1206. Затем ОК, и блок готов. Теперь можно легко вставить его в любое место, используя подходящую команду меню Блок или кнопку над списком блоков.


Теперь попробуем построить более сложный блок — SMD-транзистор. Поскольку от построения требуется, в первую очередь, максимальная точность, то лучше по-прежнему, придерживаться метода ручного ввода линий с указанием координат. Это лучший способ избежать ошибок. В дальнейшем, когда требования к точности станут мягче, мы еще успеем наляпать. Рассматривая чертеж транзистора из подходящего даташита, мы переносим его в LibreCAD:



Этот чертеж можно построить с минимумом усилий или с максимумом усилий, лишь бы соблюдалась максимальная точность. Если действовать без пердячьего пара, то сначала нужно создать временный блок, представляющий вывод из корпуса. Он повторяется в трех экземплярах. Создав один экземпляр, мы затем размножим его и разместим в нужных местах.

Нетрудно определить размеры вывода по чертежу и построить его. Можно попробовать сделать это графическими инструментами, но в любом случае, нужно совершенно точно знать, как пройдут линии. Здесь очень помогает привязка к координатам. Как ее включить вы уже знаете.

Расстояние от корпуса (длина вывода) 0.5 мм, ширину вывода считаем равной 0.4 мм. Первую линию проще и быстрее построить из командной строки, потому, что меньше будет возни с масштабом просмотра.

После этого дадим команду Вид | Показать все. Линия будет показана «вплотную», а шаг точечной сетки станет равным 0.1 мм. Выберем в меню линий, режим проведения линий по двум точкам:



Теперь можно провести линию от нуля координат на 4 точки вправо, а после щелчка протянуть ее вверх на 0.5 мм (5 точек). Кнопки и колесико мыши позволяют неплохо рулить в чертеже. Не забывайте о списке из предыдущего поста. Тем не менее, хочется настоятельно напомнить читателям о необходимости иметь достаточное число «опорных» линий, которые позволят держать размеры всегда под контролем. Иначе не избежать досадных обломов.

Чтобы обозначить сгиб вывода проведем линию с ординатой 0.025 немного не доводя ее до пересечения с другими. Сейчас координатная сетка имеет шаг 0.1 мм. Колесом мыши можно приблизить сетку настолько, что появится более мелкая, привязка будет работать и в ней. Построим линию.

Теперь можно создать блок из этого построения, назовем его pin. Многое зависит от выбора точки привязки. Нам выгодно выбрать ее посередине вывода, с того края, где будет находиться корпус. После того, как блок будет готов и появится в списке, его можно удалить из области чертежа. При необходимости он может быть легко вставлен.

Нарисуем прямоугольник 3.0 х 1.4 мм, который будет представлять корпус транзистора. Дело вкуса, изображать на нем фаску или нет, главное — чтобы размеры были правильными. Автор изобразил что-то вроде крышки гробика, на последующих рисунках это будет видно. Координаты прямоугольника:

левый низ: 0,0

правый верх: 3,1.4

Теперь нужно вставить выводы. Начнем со сложной процедуры. Сначала установим точку, к которой будем привязывать блоки. После небольших расчетов выясняем координаты: 0.55 мм от края находится средняя линия вывода. Устанавливаем в этой точке относительный ноль, в качестве маячка. Выбираем блок pin для вставки и настроим вставку на панели, которая появляется над чертежом:

Угол: 180

Массив: 2, 1

Расстояние: -1.9

Масштабный коэффициент остается, конечно, без изменений, 1.0. Проверим, включена ли привязка к координатам? В области чертежа приближаемся к маячку, и когда координатная сетка примет требуемые параметры шагов, делаем вставку:



Мы вставили сразу два вывода в требуемое расположение. Третий вывод вставить еще проще, только потребуется вернуть настройки по умолчанию в панели настроек:

Угол: 0

Массив: 1,1

Расстояние: 0,0

Но сначала выберем режим привязки: Привязка | Центр. Блок pin быстро приклеится к середине верхней стороны прямоугольника. Осталось сделать немногое — превратить чертеж в блок. Для этого можно «взорвать» его (меню Изменение | Explode), чтобы развалились его блоки. Сами линии, разумеется, тютелька в тютельку сохранят свое положение. Убедиться, что блоки, действительно, оказались разрушенными, можно выделяя мышкой отдельные линии. (Блоки всегда выделяются целиком.)

Затем мы выбираем точку привязки в середине площадки первого вывода и создаем блок с именем SOT-23:



В следующем посте мы создадим графические обозначения резистора и транзистора, а также несложную схему из этих элементов (простейший операционный усилитель). Там же мы увидим выгоду, которую можно извлечь из использования слоев.

Пример с электрической схемой

Для рисования схем, как уже говорилось, можно использовать схемный редактор симулятора. В qucs например, можно практически произвольно настраивать графику элементов и подсхем. Но раз уж мы дерзнули объявить LibreCAD универсальной рисовалкой, то должны это доказать.

Нарисовать графические символы и сделать из них блоки это только полдела, необходимо еще убедиться, что ими можно удобно манипулировать, редактируя схему. Тогда игра стоит свеч.

Графическое изображение резистора (Европа) построить несложно: это вытянутый прямоугольник с двумя короткими отрезками на одной оси:



Мы назовем его R, а читатели легко построят сами. Пусть пока полежит. Позже автор приведет решение задачи, для сравнения.

Начнем строить транзистор, то есть его графическое изображение. Это еще и пример «наследования». Построим «родительскую» фигуру. Это окружность с радиусом 7.5 мм, в которой проведены дополнительные линии. Окружность обычно подчеркивает, что это дискретный прибор (одиночный транзистор). Перед рисованием включим привязку к координатам. Затем выберем из меню рисование окружности по центру и запишем в поле для радиуса 7.5. Выберем центр в удобном месте и вставим фигуру. Затем прорисуем линии, как показано на рисунке ниже:



Можно заметить, что концы выводов располагаются по узлам линейной сетки. Это облегчит рисование схем в будущем.

Теперь решим чуть более сложную задачу. Правый нижний вывод обычно называется эмиттером. Он отличается стрелкой, направленной в зависимости от тока. (Это для несведущих в электронике.) Как бы там ни было, нам нужно нарисовать стрелку в двух вариантах. Сейчас перед нами чисто чертежная задача — точно изобразить геометрию, как показано на следующем рисунке.



Мы должны провести линию под относительным углом, например, 15 градусов к эмиттерному выводу, а в качестве привязки использовать пересечение отрезка с окружностью. Для этого:

• выберем пересечения как точки привязки

• войдем в меню Линии

• выберем Линия под относительным углом

• выберем эмиттерный вывод как базовый объект

• запишем в поля появившейся панели:

Угол: 15.0

Расстояние: 3.0

• щелкнем мышкой в окне чертежа

• изменим угол:

Угол: -15.0

• повторим линию симметрично базовой.

У нас появится картинка:



Это не совсем то, к чему мы стремимся, но продолжим. Сейчас мы разделим линии пополам относительно пересечения:

В меню Изменения (Modify) выберем пункт Разделить (Divide) и затем щелкнем любую из только что построенных линий. Мы выбрали объект для разделения. Точкой будет, конечно, точка пересечения с окружностью. Щелкнем там — и готово. Повторим операцию с другой линией. Теперь выделение линий ясно покажет, что они разделились:



Но не будем удалять выделение. Оно нам еще пригодится. И как раз сейчас. Выше говорилось о «наследовании» объектов, но здесь, скорее, приходится говорить о «клонировании». Но ничего страшного. Отодвинем выделенную часть в сторонку при помощи меню Изменить | Сдвиг / Копирование. Чтобы осуществить параллельный перенос выделенной стрелки, мы должны выбрать базовую точку в ее вершине, и перетащить в сторону. Для экономии нервов и времени это нужно делать в следующей последовательности:

• отменить все выделения: Ctrl+K

• выбрать команду Изменить | Сдвиг / Копирование

• переключить привязку на пересечения

• выбрать отрезки, щелкнув их мышкой и нажав Enter.

Если в окне отмасштабировано только одно пересечение, курсор автоматически будет на нем.

• указать базовую точку, щелкнув мышкой

• переключить привязку на сетку

• перетащить объекты в подходящее место и щелкнуть

• в появившемся окне указать: Удалить оригинал.

Должно получиться:



Мы решили задачу получения стрелки с нужными параметрами. Можно было бы нарисовать ее произвольно, но лучше делать все аккуратно, да и поупражняться в точных построениях лучше на примере простой графики, а не на примере какого-нибудь редуктора с десятью валами и кучей шестерен.

Теперь создадим копию транзистора рядом с имеющимся (не удаляя оригинал) и удалим в копии стрелку, выделив ее линии и нажимая Del. Выделим, перетащим и вставим «запасную» стрелку так, как показано на следующем рисунке:



Для решения этой задачи нужно действовать аналогично только что проделанным манипуляциям, применяя параллельный перенос с соответствующей привязкой.

Полученные символы транзисторов превратим в блоки. Причем левый назовем npn, а правый pnp (по названию полупроводниковой структуры). Базовую точку обеих блоков выберем на… базе. Это левый (или средний) вывод.

Теперь все готово для рисования схемы операционного усилителя. С точки зрения чертежника (которому обычно по барабану, что нарисовано, лишь бы ошибок не было) требуется лишь, используя некий первичный документ, из головы или по бумажке (ж. Радио #5–6 1981, стр. 77):



построить чертеж с заданными свойствами. Для этого требуется:

• вставить нужные блоки

• сориентировать вставленные блоки

• соединить выводы блоков линиями

• надписать позиционные обозначения.

В результате должно получиться следующее изображение:



При работе над этим рисунком полезно учесть такие, экономящие время и силы, советы:

Блок лучше вставить один раз, а затем размножить в обозримой области копированием с нужными параметрами: число копий, поворот или осевая симметрия:



Если текущая координатная сетка не позволяет протянуть линии до соединений:



то ее можно в любое время сделать более мелкой, выделить линию, и протащить до требуемой точки. А также можно попробовать переключить привязку на концы линий, середину, пересечения и т. п.

Построенные уже линии допускают правку одной мышкой по схеме:

1. выделение левым щелчком

2. перетаскивание при нажатой левой кнопке

3. сброс выделения левым щелчком.

В любой момент доступны команды масштабирования вида, навигации по виду, выбор точек привязки.

Теперь возникает вопрос о точках пересечения проводников. Для специалиста очевидно, где в построенной схеме должны быть эти точки, а где нет. В других случаях и специалист может запутаться, поскольку появится больше возможных вариантов. Но этот вопрос у нас очень тесно связан с другим, который, может быть, мы себе еще и не задавали: а какова, вообще, толщина линий в наших построениях?

Все наши линии имеют нулевую толщину! LibreCAD показывает их нам просто из жалости. Если мы напечатаем чертеж, то он будет выглядеть отвратительно. Но для этого у нас есть слои, которыми мы можем манипулировать, как картами в колоде.

Пока мы рисуем в слое 0. Это слой по умолчанию, его нельзя ни удалить, ни даже переименовать. Атрибуты слоя можно получить, щелкнув самую правую кнопку над списком слоев. Мы сразу увидим, что туда входит: цвет ч/б, толщина 0.0, сплошная линия (в смысле не штриховая).

При создании блоков мы могли бы назначить любым линиям любую толщину. Но вряд ли это целесообразно. Значительно удобнее изменять свойства блоков по мере надобности. Например, установим толщину линий в слое 0 равной 0.35 мм и попробуем распечатать схему в масштабе 1:1. Сравните этот результат с печатью линий нулевой толщины.

Обозначить точки пересечений можно окружностями, но получить их проще как те же точки, нарисованные более жирным пером. Однако, их нужно превратить в блок! Требование формальное,  но если вы не хотите геморроя, то лучше вам последовать моему совету. Дело в том, что точки переносить хлопотно, а блок можно выделить и перетаскивать.

Более того! Изменение атрибутов блока повлияет на все его экземпляры, и можно будет легко подбирать желаемый вид документа. Следующий рисунок это наглядно демонстрирует:



Блок junk редактируется в своем окне. Но как только мы щелкнем по окну со схемой, ее вид полностью обновляется. Технология очень простая:

• нужно выделить блок-точку щелчком

• выбрать команду Изменить | Атрибуты

• нажать Enter для ввода выбранной команды

• в появившемся диалоге сделать желаемые изменения

• закрыть диалог кнопкой ОК

• вернуться в документ с блоком.

Перед печатью не помешало бы добавить в схему позиционные обозначения элементов. Остальное непринципиально, достаточно и этого. Мы создадим и используем новый слой, в котором будут находиться эти обозначения. Текущий слой можно запереть, чтобы предотвратить его случайное повреждение. Это делается при помощи щелчка по замочку. Если он стал черным, значит в слое редактирование запрещено.

Прежде, чем добавлять текст, убедимся в том, что именно слой для текста был выбран. Работая с несколькими слоями, нужно с самого начала взять привычку следить за текущим слоем.

Добавляемые текстовые блоки можно редактировать позднее, для этого есть команда, которую можно найти в меню Изменить | Свойства. Поэтому можно смело вставлять блоки с любым текстом, например R1. Дальше надо выбрать команду Свойства, и начать выделение текста щелчками, каждый раз изменяя текст на требуемый в появляющемся диалоге.

Наконец, можно сделать еще один слой для свободных заметок. В любой момент мы можем спрятать или показать любой из слоев, включая слой 0. Полезно будет изменить блок junk. Тип закраски блока junk нужно выбрать как «По блоку».

Схема, пригодная для печати, показана на следующем рисунке:



А это рисование заметок произвольной линией:



Как уже говорилось, очень легко можно подготовить любую версию схемы или чертежа к печати. Достаточно включить или выключить отображение заранее подготовленных слоев. LibreCAD подойдет даже для иллюстраторской работы. (Правда, GIMP и Inkscape подходят еще лучше).

В следующем посте мы доведем дело до конца и соберем плату с печатным монтажом для нашей схемы.

Печатный монтаж

Он явился гениальным изобретением в технике. Диэлектрическая пластина, например, гетинакс или текстолит, снабжается прочно наклеенной по всей поверхности медной фольгой толщиной 200… 50 микрон. Затем некоторые части фольги закрашиваются кислотоупорной краской, а остальная часть вытравливается в растворе хлорного железа. Образуется рисунок проводников. В ранних версиях технологии под установку радиоэлементов обязательно сверлили отверстия, потому что детали — громоздкие кубики и бочонки — были довольно массивными.

Позднее появилось использование второго слоя медной фольги, а затем пошли в ход и многослойные платы. Например, плата системного блока компьютера может содержать до 10 слоев вытравленной фольги.

Со временем масса радиоэлементов стала мизерной — такие «блохи», которые распаиваются на платы, например, сотовых телефонов, не оторвутся от нее даже при огромных ускорениях. Можно утверждать, что если мобильник упадет с самолета на асфальт, то многие его детали так и останутся на месте. (Хотя много других разлетится вдребезги.) Тогда и появилась концепция SMD (Surface Mounting Device). Собственно говоря, ремонтники электронной аппаратуры и раньше вовсю напаивали детали на поверхность, но в массовом производстве этого не было. SMD-элемент: резистор, транзистор, диод, микросхема и т. д. припаивается прямо к фольге, к ее контактным площадкам. Никаких отверстий для этого не сверлится. Отверстия делаются для выводов массивных элементов, и еще есть переходные отверстия. Последние используются для соединения слоев в многослойных платах.

Теперь для людей, далеких от электроники, будет понятно, чем мы будем заниматься в этом посте. Нам нужно сделать рисунок на фольге, который будет закрашен и обтравлен. Всем остальным он может быть интересен просто как пример работы со слоями. Желающие повторить работу ничего не потеряют, но приобретут полезные навыки, как и автор, который уже прошел этим путем.

Начнем с компоновки. На плату, контуров которой пока даже нет, мы разместим наши SMD-компоненты из таких соображений (технических требований): они должны быть поближе друг к другу; монтажные дорожки не должны иметь пересечений, или допускать их нужно с крайней неохотой; транзисторы дифференциального каскада (V1 и V2) должны находиться в хорошем тепловом контакте.

Для начала сохраним копию файла с которым мы работали chip.dxf, как pcb.dxf Это делается как обычно, из меню Файл. В созданной копии pcb.dxf и будем работать.

Принципиальная схема в новом чертеже нам будет мешать, поэтому лучше выделить все и удалить. Для этого все слои должны быть «разморожены» — замочки должны быть бледными. Проверьте и обеспечьте.

Хотя чертеж очищен, но блоки по прежнему, остаются на месте, хранятся в файле чертежа. Мы используем вставку нужных блоков (R1206 и SOT-23), их размножение, а также поворот и осевую симметрию, исходя из соображений удобства.



Поскольку при помощи слоев можно эффективно манипулировать различными атрибутами, то использовать их нужно не стесняясь. Главное — определить наиболее характерные линии в построении.

Для платы можно создать слой board. В нем мы будем хранить изображения элементов, а также впоследствии нарисуем контуры платы. Наше техзадание исходит из плотной компоновки и расположения транзисторов V1 и V2 поближе друг к другу (ради одинаковой температуры).

Теперь начнем создавать контактные площадки. По размеру они должны быть немного больше самой «лапки» вывода. Это делается для надежной пайки. Мы начинаем эту работу в новом слое copper, но нельзя исключать, что со временем наши планы поменяются. Это может быть связано с толщиной линий и границ.

Делаем в удобном расположении прямоугольник:



Делаем скругление, выбирая команду меню Изменение | Скругление. Радиус берем 0.1 мм:



Делаем заливку: выбираем команду Черчение | Штриховка, а в качестве «краски» выбираем сплошную заливку текущим цветом:



Теперь осталось сделать блок. Продолжаем самостоятельно делать контактную площадку под резисторы 1206.

Возможные проблемы: при использовании дорожек границы контактных площадок могут выехать за пределы допустимого:



Поэтому лучше контактные площадки, или блоки из них, помещать в отдельный слой, выбирая толщину линий равной нулю. Для дорожек создаем еще один слой, и в нем применяем удобную толщину линий:



Можно создать слой для временных заметок, например, позиционных обозначений и маркировки выводов:



Чтобы контролировать по схеме проделанную работу, можно в другом окне рисовать проделанные соединения на принципиальной схеме другим цветом:



Готовый результат (но еще не «расфасованный») показан ниже:



Еще одним документом в подобных случаях является сборочный чертеж. Его получают монтажники для ручной сборки и он вообще хранится как один из документов. При автоматизированной сборке возможны другие варианты.



Вот теперь определяются габариты платы, и мы можем нарисовать ее контуры:



А вот так она будет выглядеть при печати (показано в увеличенном виде):



При печати на прозрачной пленке можно непосредственно переносить изображение на фоторезист и изготавливать печатный монтаж с высокой точностью.

Если мы захотим отпечатать документ, то мы можем открыть ранее созданный шаблон, сохранить его под другим именем и перенести в него копии чертежей и схем из других документов. Для этого достаточно открыть нужные файлы, выделить требуемые изображения и скопировать их в буфер обмена. При этом могут возникнуть определенные «тонкости», способные вызвать раздражение неопытных пользователей. Долг автора — помешать этому.

Например:



На рисунке показана разная толщина линий, а принтер или даже плоттер может повести себя еще хуже, чем монитор. Чтобы такого не происходило, нужно постоянно следить за толщиной линий выводимых на печать. С этой целью можно выделять блоки или отдельные их части для помещения в специально созданные слои. Выделенные части командой меню Изменение | Свойства можно подстроить по цвету и ширине линий, а также выбрать стиль линии (сплошная или штриховые). Можно «взорвать» блоки, столько раз, сколько вообще уровней их вложения и снова преобразовать все элементы в блок.

Все выделенные по каким-либо признакам линии и контуры можно легко поместить в один из слоев, назначить ему вполне определенные атрибуты и управлять ими. Также можно создать блоки, которые имеют разные слои с разными атрибутами.

Размерности, которые внимательный читатель уже давно нашел в меню и левой панели инструментов вполне настраиваемы. Иногда проще и, так сказать, эстетичней, удалить размерности и нарисовать стрелки. Например, в нашем случае, мы собираемся увеличить маленькую плату в пять раз, чтобы ее лучше было видно на сборочном чертеже. Соответственно, увеличатся и цифры в размерностях. Принципиальную схему, наоборот уменьшим вдвое. Вот так это должно выглядеть:



Площадки в нижней части платы служат для распайки ее на другую плату. Разумеется, это пример, цель которого только показать технологию работы. Вывод из всего проделанного автор делает такой: LibreCAD — вполне мощная рисовалка. По удобству он уступает программам sPlan и SprintLayout, но по функциональным возможностям неограничен. К тому же удобство — это вопрос навыка.

Наконец, остался еще один вопрос: о библиотеках. В следующей заметке мы разберем способы работы с библиотеками: создание своих библиотечных элементов и их использование.

Библиотеки

Осталось последнее, что нужно сделать в понимании LibreCAD: разобраться с библиотеками. Оказывается, мы уже почти создавали и использовали библиотечные элементы: ~/lcad/a4at.dxf

Библиотека в LibreCAD — это каталог (папка) с библиотечными элементами, файлами чертежей dxf (формат обмена чертежами. Аббревиатура сама лезет в голову: Drawning eXchange Format, что же еще?). Путь к каталогу по умолчанию: /usr/share/librecad/library.

Через интерфейс программы библиотекой пользоваться очень удобно: Вид | Toolbars | Просмотр библиотек. (Перевод интерфейса немного небрежен, но это мелочи.) В появляющейся слева панели, которую можно отделить в самостоятельное окно, можно выбрать папки в пределах библиотечного каталога и увидеть, а самое главное, легко вставить в чертеж что-либо из их содержимого:



Предпросмотр сильно облегчает выбор библиотечного элемента, а навигация в каталогах библиотеки — еще больше. Как можно заметить, пингвиненок был вставлен как блок. Рамки также могут быть вставляемы как блоки, но мы можем определить и собственный путь к библиотеке, чтобы не лазить в «неудобный» каталог /usr. Для этого нужно использовать:

Правка | Настройки программы | Пути

и записать свой путь в соответствующей строке, например, /home/you/lcad/lcadlib. И тут же выясняется, что этот способ не работает. По крайней мере в версии:



Файл ~/.config/LibreCAD переписывается успешно, но программа его игнорирует. Однако ничто не мешает нам попробовать следующее:


sudo mc


Затем выбрать /usr/share/librecad/library/templates и с другой стороны ~/lcad. Затем просто скопировать a4a.dxf в каталог templates. Аналогично, с правами root можно создать любой каталог в library и пользоваться им для хорошо отработанных библиотечных элементов. Наконец, можно копировать данные из других чертежей как блоки, мы уже это делали ранее.

Если у вас не установлен mc (Midnight Commander), то это нетрудно сделать:


sudo apt-get install mc


Можно использовать и командную строку в терминале:


$ sudo cp ~/lcad/chip.dxf /usr/share/librecad/library/misc

[sudo] password for you:


После ввода пароля для пользователя you команда выполнится. Можно посмотреть:


$ ls -l /usr/share/librecad/library/misc


итого 188


-rw-r--r-- 1 root root 63765 мая   17  2012 a3.dxf

-rw-r--r-- 1 root root 67492 сент. 20 07:46 chip.dxf

-rw-r--r-- 1 root root 11516 мая   17  2012 screw.dxf

-rw-r--r-- 1 root root 13265 мая   17  2012 t-part.dxf

-rw-r--r-- 1 root root 25865 мая   17  2012 tux.dxf


Те, кто недавно пришел в Linux из Windows могут испытывать затруднения, но все дело осложнено только правами доступа. Эта тема выходит за пределы LibreCAD и мы ее не рассматриваем. Читатели могут самостоятельно поискать по запросу «права доступа к файлам в unix» или что-то подобное. Если добавить еще рецепт для удаления:


$ cd /usr/share/librecad/library/misc

$ ls

a3.dxf  chip.dxf  screw.dxf  t-part.dxf  tux.dxf

$ sudo rm chip.dxf

[sudo] password for you:

$ ls

a3.dxf  screw.dxf  t-part.dxf  tux.dxf

$ cd ..

$ ls

misc  template  templates

$ cd templates

$ ls

a4at.dxf  empty.dxf

$ sudo rm a4at.dxf

$ ls

empty.dxf

$


Собственно говоря,  работает только команда sudo rm, которая удаляет указанные файлы с административными правами, но это, так сказать, руки. Команда cd - это ноги, а команда ls - это глаза, потому что при помощи cd мы перемещаемся по каталогам, а при помощи ls «озираемся», просматриваем их содержимое. Команда sudo - это ключ, вернее, замок, а ключ - это наш пароль. Такова UNIX (Linux) - темное подземелье с коридорами, комнатами и сундуками, запертыми на ключ. Зато как неуютно здесь взломщикам. Главное - не разевать рот, и не сделать доступным пароль посторонним.

Можно заранее подготовить библиотеку, а затем скопировать ее каталог в нужное расположение. Самое главное - работая с правами root - проявлять предельную бдительность. Ибо это пробирка: либо с панацеей, либо с чумой и холерой, настоящая граната в посудной лавке. Другими словами, неаккуратное обращение с файлами может испортить систему до такой степени, что проще будет ее полностью переустановить, чем восстанавливать. При этом может пропасть куча ваших данных и удобных настроек.

Конечно, LibreCAD мог бы вести себя немного любезнее, как в Windows: должен был бы сработать первый вариант. Может быть, если немного повозиться, так и удастся сделать. Где-то может лежать файл конфигурации, правкой которого удалось бы все исправить, но сейчас некогда. Дежурный вариант у вас есть.


Оглавление

  • Вступление
  • Несколько строчек по поводу теории
  •   Векторная графика
  •   Графические примитивы
  •   Блоки
  •   Слои
  •   Атрибуты
  •   Команды и задачи
  • Сделаем рамку
  • Блоки и работа с ними
  • Пример с электрической схемой
  • Печатный монтаж
  • Библиотеки