Как сделать схему в протеусе
Работа в Proteus. Часть 1
В наш век новейших технологий уже не обязательно собирать какую-либо схему на макетной плате, дабы убедиться в ее работоспособности. Существуют программы-симуляторы для симулирования работы схем в реальном времени. Одной из них и является Proteus. Это довольно многофункциональная программа для симуляции различных схем. Собственно в состав Proteus’a входят программы с названиями ISIS (программа-симулятор) и ARES (трассировка печатных плат), в которой разводку плат можно трассировать автоматически, по предварительно составленной схеме в ISIS.
Начнем с ознакомления с интерфейсом. Для выбора компонентов нужно нажать на кнопку «P» в левом верхнем углу экрана (возле надписи «DEVICES»).
После этого появится окно такого вида:
Если вы не можете найти элемент, то можно воспользоваться функцией поиска. Для этого просто надо вбить полное или частичное название искомого элемента в графу, расположенную в верхнем левом углу и выбрать среди выданных результатов нужный вариант.
Теперь можно приступить к моделированию какой-нибудь схемы. Для начала можно попробовать «собрать» мультивибратор на 2-х транзисторах, по такой схеме:
Для выбора транзисторов жмем «P»-«Transistors» и выбираем наш 2N4410. Конденсаторы расположены под заголовком «Capacitors», резисторы в «Resistors», а светодиод в «Optoelectronics». Что касается батареи, то она размещена в группе «Simulator Primitives». Размещать компоненты желательно внутри рабочей области (синего прямоугольника). Далее следует выбрать автотрассировку связей, это делается либо через меню, либо через панель «быстрого доступа», второе более предпочтительно. Для активации автотрассировщика через панель, нужно нажать эту клавишу:
Итак, автотрассировщик активирован, элементы размещены, теперь можно соединять их выводы по схеме. Соединив выводы, мы получили примерно такой результат:
Схема составлена, теперь можно посмотреть, как она будет работать. Для этого нужно нажать на кнопку «play» в левом нижнем углу. Все! Ваша первая симуляция работы схемы успешно завершена! Теперь можете экспериментировать в полной мере, успехов вам!
Проектирование электронных устройств в Proteus 8.1. Часть 2
В комплект продуктов Proteus входят средства для создания электрических схем (редактор ISIS), а также для разработки и трассировки печатных плат (редактор ARES). Редактор ISIS используется для проектирования электрических схем, их тестирования и отладки. Редактор ARES это PCB приложение программы Proteus, которое используется для разработки печатных плат, выполнения определенных функций CAD систем и подготовки результатов проектирования к производству.
Первым этапом проектирования узла печатной платы в системе Proteus является разработка схемы электрической принципиальной, которая выполняется в редакторе ISIS. На этой стадии проектирования производится выбор необходимых компонентов, их размещение в рабочем поле чертежа, связь компонентов при помощи цепей и шин. При необходимости можно модифицировать свойства компонентов, добавлять текстовые надписи.
После создания пустого листа схемы его нужно заполнить символами необходимых компонентов из библиотеки. В Proteus создать новый проект схемы можно при помощи команды File/New Project. Необходимо отметить, что по умолчанию при создании нового проекта запускается мастер New Project Wizard (рис. 1).
Рис. 1. Окно мастера New Project Wizard
Работа мастера состоит из нескольких этапов, на которых указываются название проекта и его месторасположение на диске компьютера (при этом есть возможность создать проект с чистого листа или использовать имеющиеся разработки, которые поставляются вместе с программой), задается необходимость создания разработки ISIS (при этом указывается формат чертежа) и/или ARES, необходимость включения в проект определенного микроконтроллера. По окончании работы мастера система на основе заданных установок создаст новый проект, который может содержать рабочее поле чертежа (рис. 2а), контур печатной платы (рис. 2б), заготовку программного кода для микроконтроллера (рис. 2в).
Рис. 2. Результаты работы мастера New Project Wizard: (а) рабочее поле чертежа, (б) контур печатной платы, (в) заготовка программного кода для микроконтроллера
Необходимо отметить, что во время одного сеанса работы над проектированием устройства может быть одновременно открыт проект схемы, проект платы, 3D-вид устройства и редактор написания кода программы (если в схеме используется микроконтроллер). При этом для каждого редактора будет создана отдельная вкладка.
Размещение символов компонентов на схеме.
Выбор компонентов из базы данных для последующего их размещения в рабочей области программы производится в окне Pick Devices (рис. 3).
Рис. 3. Окно Pick Devices
Данное окно можно открыть при помощи команды контекстного меню Place/Component/From Libraries или посредством нажатия на кнопку P на панели DEVICES (по умолчанию данная панель расположена в левой части программы и содержит список имеющихся в проекте компонентов). Открыть данную панель можно нажатием на кнопку Component Mode на левой панели инструментов редактора ISIS.
В левой верхней части окна Pick Devices расположено поле Category, в котором в виде списка отображаются все имеющиеся в наличии библиотеки компонентов. Выбор библиотеки из списка производится посредством щелчка левой кнопки мыши по строке с ее названием. Ниже поля Category находится поле Sub-category, в котором таким же способом задается семейство компонентов выбранной библиотеки Proteus. В поле Results отображаются все компоненты выбранного семейства. Выбор компонента производится посредством выделения при помощи левой кнопки мыши строки с названием компонента в поле Results. В поле Manufacturer можно выбрать производителя компонента. Если производитель не имеет значения – выберите значение All Manufacturers в этом поле. Для ускорения поиска компонентов можно воспользоваться строкой фильтра Keywords, которая расположена в верхнем левом углу окна Pick Devices.
После того как выбор компонента произведен, его условное графическое обозначение отобразится в поле предварительного просмотра Preview. Посадочное место компонента будет показано в поле PCB Preview. Если для выбранного компонента доступно несколько посадочных мест, то все возможные варианты будут доступны для выбора из выпадающего списка в меню, которое расположено под полем PCB Preview. Для того, что бы разместить выбранный компонент на схеме, необходимо в окне Pick Devices нажать на кнопку ОК. После чего данное окно будет закрыто, а символ компонента будет прикреплен к курсору мыши, при помощи которого необходимо поместить символ в нужное место на схеме (щелкнуть в нужном месте схемы левой кнопкой мыши).
При добавлении в схему символов многосекционных компонентов, щелкните левой кнопкой мыши в рабочем поле программы столько раз, сколько секций компонента вам нужно добавить в проект. При этом для каждой секции системой будет назначено свое название (рис. 4).
Рис. 4. Два однотипных многосекционных компонента U3 и U4 в рабочем поле схемотехнического редактора программы Proteus
Параметры уже размещенных на схеме символов компонентов (в зависимости от компонента это могут быть значения сопротивления, тип корпуса, напряжение пробоя, прямое напряжение, тип модели: цифровой или аналоговый, а так же позиционное обозначение) при необходимости можно редактировать в окне Edit Component (рис. 5). Данное окно можно открыть путем двойного щелчка левой кнопки мыши по уже размещенному в рабочем поле программы символу компонента.
Рис. 5. Окно Edit Component
На схеме расположение символов компонентов можно изменять – поворачивать, отражать. Если в этом есть необходимость, выделите нужный символ при помощи левой кнопки мыши, при помощи правой кнопки мыши вызовите контекстное меню, в котором при помощи левой кнопки мыши выберите необходимую команду:
Соединение символов компонентов на схеме
Для связи между компонентами в схеме используют цепи и шины. В Proteus для добавления цепи в схему нет специальной команды.
Для прокладки соединительного проводника между элементами необходимо подвести курсор мыши к выводу элемента, от которого будет брать начало проводник и щелкнуть по этому выводу левой кнопкой мыши, после чего протянуть проводник в нужном направлении. Изгибы цепи осуществляются при помощи щелчков левой кнопкой мыши в рабочем поле проекта. Для того, что бы закончить прокладку цепи, необходимо подвести курсор мыши к следующему выводу и щелкнуть по нему левой кнопкой мыши. Прокладка завершена. В случае, когда цепь имеет электрические узлы, т. е. соединяет более двух выводов элементов, по всей длине проводника можно присоединять другой проводник к этой цепи. При этом в данном месте формируется электрический узел.
Там, где несколько цепей идут по общему пути, используются шины. Шина группирует цепи, упрощая читаемость схемы. Для добавления шины в схему используется кнопка Buses Mode, которая расположена на левой панели инструментов программы. Прокладывается шина на схеме при помощи курсора мыши. При этом она отображается утолщённой синей линией. Подключение к шине производится также как и к проводнику, но электрический узел при этом не формируется.
Симуляция схемы
Сохранить разработанную схему можно при помощи команд File/Save Project и File/Save Project As основного меню программы.
Работа в Proteus. Часть 2
В предыдущей статье я рассказал о базовых принципах работы в PROTEUS’е. В этой же я покажу, как симулировать работу микросхем цифровой логики, использовать специальные инструменты (осциллограф, генератор, вольтметр и др.), а так же о работе в ARES.
Работу цифровых микросхем в PROTEUSе не так уж и сложно моделировать, проблема лишь в том, что при составлении схем нужно помнить, что PROTEUS – программа ТЕОРЕТИЧЕСКАЯ и поэтому устройства, работающие на практике не всегда удаться смоделировать в ней, и наоборот.
Так прекрасно работающий генератор на двух логических элементах ТТЛ логики при симуляции не заработает, так как это идеальный мультивибратор, и для запуска на входах элементов должен быть некий потенциал, чего при симуляции в PROTEUS’е естественно не будет. Теперь о питании микросхем: в предыдущей статье я настоятельно советовал всегда укладываться в синий прямоугольник, теперь поясню – в пределах этого прямоугольника работает «автотрассировщик», а также шины питания микросхем (дело в том, что питание на микросхемы подводится через шины VCC и GND), выбрать их можно следующим образом: на левой панели выбрать «Terminals Mode» («Терминал»), в рядом расположенном окошке высветятся варианты, нам же нужны лишь «POWER» и «GROUND».
Так как мы симулируем лишь работу счетчика и дешифратора, то генератор собранный на микросхеме можно опустить, а вместо него вставить очень полезный инструмент с той же функцией. Этот инструмент называется «Часовой генератор» и генерирует прямоугольные колебания с частотой, которая устанавливается вручную (по умолчанию 1 Гц). На схеме он отображается так:
Вообще, в PROTEUS’е существуют различные генераторы: синусоиды, аудио и др. посмотреть и поэкспериментировать с ними можно кликнув на значок «Генератор». На левой панели программы.
В окошке справа высветятся варианты генераторов. После того как вы расположили элементы схемы и соединили их нужно выставить частоту генератора. Это можно сделать кликнув по значку генератора левой кнопкой мыши два раза. В открывшемся окне в графе частота изменить частоту на 10 Гц. Теперь можно жать на «Пуск» и наслаждаться результатом.
Теперь о работе в Ares.Чтобы открыть текучий проект из PROTEUS’а в ARES, нужно нажать на значок ARES на верхней панели. Откроется окно программы:
Сначала нам потребуется выделить область для автоматического размещения компонентов на плате, это делается следующим образом: выбираете элемент 2-D графики квадрат:
потом в левом нижнем углу из списка слоев выбираете слой Board Edge
и рисуете внутри синего прямоугольника квадрат или прямоугольник желтого цвета, примерно так :
Выглядит неказисто, но для этого программа дорожки не нарисовала, мы можем спокойно поменять расположение элементов. Для этого просто щелкаем по элементу правой кнопкой мыши и выбираем пункт «Перетащить». Я расположил элементы так:
Элементы расположены, можно разводить плату. Для этого нужно выбрать «Сервис», пункт «Автотрассировка», во всплывшем окне жмем «ОК». И вуаля!
Программа все за нас сделала! Теперь, если мы хотим полюбоваться внешним видом платы выбираем «Вывод», пункт 3-D визуализация! Кстати, хочу обратить ваше внимание на одну деталь-имена проектов в протеусе пишите на АНГЛИЙСКОМ, иначе они в ARES не откроются!
Удачи вам в ваших экспериментах. Что касается микроконтроллеров, то оставим их до следующей статьи!
Проектирование электронных устройств в Proteus 8.1. Часть 12
Проектирование схем электрических принципиальных с использованием микроконтроллеров в программной среде Proteus 8.1. Часть 2
В Proteus реализовано большое количество функций для профессионального проектирования микроэлектронных устройств, ориентированных на самые современные средства моделирования. Одной из таких функций является имитация работы микроконтроллеров.
В этой статье процесс моделирования схем с использованием микроконтроллеров рассмотрен на примере микроконтроллера 80С51.
Моделирование схемы включающей микроконтроллер и трансляция программного кода.
Для наглядной демонстрации работы программы инициализации микроконтроллера воспользуемся цветными пробниками логических уровней 0 и 1. Для того, что бы добавить пробник в рабочее поле проекта, необходимо вызвать окно Pick Devices (рис. 1) и в поле Category выбрать из списка библиотеку Debugging Tools, в поле Sub-category выбрать строку Logic Probes, а в поле Results – строку LOGICPROBE, затем нажать кнопку ОК.
Рис. 1. Выбор пробника логических уровней в окне Pick Devices.
Добавим в рабочее поле проекта микроконтроллер 80С51 (подробно процесс создания нового проекта с использованием микроконтроллера в Proteus был рассмотрен в первой части статьи) и подсоединим пробники к исследуемым линиям портов микроконтроллера. В результате чего, при появлении на выходе линии порта значения логической единицы, пробник будет подсвечен красным цветом, при появлении же значения логического нуля пробник будет подсвечен синим цветом. Так же на пробниках визуально отображаются значения 0 и 1.
После того как в рабочей области проекта собрана схема (рис. 2), а на вкладке Source Code введен код программы (рис. 3), можно запускать моделирование.
Рис. 2. Демонстрационная схема с использованием микроконтроллера и цветных пробников логических уровней.
Рис. 3. Программа инициализации микроконтроллера.
Процесс моделирования запускается при помощи кнопки Run the simulation, которая находится в левом нижнем углу окна программы. Для того, что бы временно приостановить процесс симуляции, используйте кнопку Pause the simulation, or start up at time 0 if stopped (кнопка находится в левом нижнем углу окна программы). Остановить моделирование можно при помощи кнопки Stop the simulation.
В результате, в том случае если компилятор в листинге программы не обнаружит ошибок, на диске вашего компьютера в рабочей папке проекта будут созданы следующие файлы:
Рис. 4. Нex файл машинного кода.
Рис. 5. Файл с ассемблерным кодом программы.
Рис. 6. Вкладка 8051 CPU Source Code.
Программа инициализации микроконтроллера пишется на языке программирования asm51. Это язык ассемблера, который предназначен специально для написания программ для микроконтроллеров семейства х51. В том случае, если в ходе компиляции кода программы инициализации микроконтроллера были обнаружены ошибки, они будут отмечены компилятором в файле *.lst. При этом hex файл не будет сгенерирован до тех пор, пока ошибки не будут устранены. В файле листинга для каждой обнаруженной ошибки компилятор указывает причину ошибки и номер строки, в которой она была обнаружена. На рисунке 7 представлен фрагмент файла *.lst, в котором отладчик сообщает об ошибке номер 2 (Неопределенный идентификатор), которая состоит в том что в коде программы неверно указано название порта ввода/вывода данных (в используемом микроконтроллере нет порта с названием Р6).
Рис. 7. Фрагмент файла листинга *.lst.
Отладка программы инициализации выполняется на вкладке 8051 CPU Source Code, которая отображается после приостановки процесса симуляции. Для того, что бы временно приостановить симуляцию схемы, используйте кнопку Pause the simulation, or start up at time 0 if stopped (кнопка находится в левом нижнем углу окна программы). Отчет об ошибках полученных в результате трансляции программного кода отображается в нижней части вкладки Source Code на панели VSM Studio Output (рис. 8).
Рис. 8. Отчет об ошибках полученных в результате трансляции программного кода.
Состояние памяти и регистров микроконтроллера можно просмотреть при помощи следующих команд основного меню программы:
Рис. 9. Состояние: (а) регистров, (б) памяти SFR, (в) внутренней памяти микроконтроллера.
Меню Debug (рис. 10) доступно для вызова во время приостановки симуляции схемы.
Проанализируем работу демонстрационной схемы, представленной на рисунке 2. На вкладке main.asm (рис. 3) при помощи команды mov были даны указания программе инициализации микроконтроллера записать в порт Р2 следующие значения линий порта Р2.7-Р2.0 – «00001111», а в порт Р1 – значения линий порта Р1.7-Р1.0 – «01010101». После запуска моделирования при помощи цветных пробников мы можем проверить правильность работы программы. Как видно из рисунка 2 на выводах портов микроконтроллера Р1 и Р2 действительно та комбинация которую мы указали в коде программы.
Сопряжение микроконтроллера х51 с микросхемами 7-сегментных индикаторов в Proteus.
Система, в которой используется микроконтроллер, может не только чем-то управлять, но и что-то отображать. Чаще всего в качестве узла отображения в схеме используют знакосинтезирующие индикаторы. Каких-либо стандартных правил сопряжения микроконтроллера с индикаторами не существует, и в каждом конкретном случае сопряжение может выполняться по-разному.
На рисунке 11 представлен пример соединения микросхемы 7-сегментнного индикатора с микроконтроллером. Принцип соединения микроконтроллера с элементами схемы такой же, как и для других компонентов схемы.
Рис. 11. Сопряжение микросхемы 7-сегментного индикатора с микроконтроллером.
Для того, что бы отобразить цифру, нужно «зажечь» определенные сегменты индикатора. При использовании в схеме микроконтроллера сделать это можно программным способом. Разные комбинации светящихся элементов индикатора, обеспечиваемые внешней коммутацией, позволяют отображать цифры от 0 до 9 и децимальную точку. В представленном примере у индикатора элементы имеют общий катод.
Для управления 7-сегментным индикатором в схеме используется двоично-десятичный дешифратор 74HC4511 (отечественный аналог 1564ИД23). Микросхема дешифратора выполняет преобразование двоичного кода полученного с микроконтроллера в код цифры для дальнейшего отображения на микросхеме 7-сегментного индикатора. Микросхема 74HC4511 – это специальный дешифратор, предназначенный для преобразования двоичного кода в семисегментный код и управления семисегментными и жидкокристаллическими индикаторами. Входы А, B, C, D – информационные входы. Выходы QA-QG – выходы на семисегментный индикатор. Двоичные коды и соответствующие им десятичные цифры представлены в таблице 1.
Таблица 1. Двоичные коды и соответствующие им десятичные цифры.