Моделирование приборов и систем в Proteus
Изучение программное среды Proteus для моделирования автоматических систем на базе микроконтроллеров, интеллектуальных датчиков и жидкокристаллических индикаторов информации. Предназначение программ ISIS и ARES. Выставление на поле микроконтроллера.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 25.11.2014 |
Размер файла | 326,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Лабораторная работа№1. Моделирование приборов и систем в Proteus
Цель работы: изучение программное среды Proteus для моделирования автоматических систем на базе микроконтроллеров, интеллектуальных датчиков и жидкокристаллических индикаторов информации.
Краткие сведения
В PROTEUS VSM входят как простейшие аналоговые устройства, так и сложные системы на микроконтроллерах.
Достоинства:
- огромная библиотека моделей элементов, пополнять которую может сам пользователь;
- широкий выбор инструментов и функций, среди которых вольтметр, амперметр, осциллограф, всевозможные генераторы, способность отлаживать программное обеспечение микроконтроллеров.
Proteus VSM состоит из двух самостоятельных программ:
- ISIS (Intelligent Schematic Input System) - графический редактор принципиальных схем со встроенным менеджером библиотек;
- ARES - графический редактор печатных плат со встроенным менеджером библиотек и трассировщиком.
Программа ISIS
Основной программой является ISIS, в ней предусмотрена связь с ARES для передачи данных проекта, необходимых при создании печатной платы.
При запуске программы появляется основное окно ISIS.
Рисунок 4.1 Вид основного окна ISIS
Самое большое пространство отведено под окно редактирования EDIT WINDOW, в котором происходят все основные процессы создания, редактирования и отладки схемы устройства.
Слева вверху находится маленькое окно предварительного просмотра Overview Window. Щелкая левой кнопкой мыши по окну, можно перемещаться по окну предварительного просмотра, если схема имеет большие размеры.
Перемещать окно редактирования по схеме можно другим способом: удерживая нажатой кнопку SHIFT, двигать курсор мыши, не нажимая ее кнопок.
Приближать и отдалять схему в окне можно соответственно кнопками F6 и F7 или же колесом мыши. F5 центрирует схему в окне, а нажатие F8 подгоняет размер схемы под окно редактирования.
Под окном предварительного просмотра находится Object Selector - список выбранных в данный момент компонентов, символов и других элементов. Выделенный в списке объект отображается в окне предварительного просмотра.
Все возможные функции и инструменты Proteus VSM доступны через меню и пиктограммы, находящиеся под меню и слева от основного окна, а также через клавиши F1-F12.
Внизу основного окна расположены слева направо: кнопки вращения и разворота объекта вокруг своей оси, панель управления интерактивной симуляцией (выглядит как панель магнитофона): ПУСК - ПОШАГОВЫЙ РЕЖИМ - ПАУЗА - СТОП и строка статуса, отображающая ошибки, подсказки, текущее состояние процесса симуляции и т.д. Справа отображаются в милидюймах (th) координаты курсора.
Манипулирование объектами осуществляется после их выделения при выключенном процессе симуляции проекта. Для выделения объекта нужно щелкнуть по нему правой кнопкой мыши. Для выделения группы объектов можно либо, удерживая клавишу Ctrl, последовательно щелкать правой кнопкой по всем объектам, либо, удерживая правую кнопку, протащить область выделения по необходимым объектам. Выделять объекты надо очень осторожно, т.к. повторный щелчок правой кнопкой мыши по выделенному объекту удалит его. Удаление выделенных объектов происходит при нажатии кнопки DELETE. Отменить последние и все предыдущие действия по порядку можно с помощью кнопок отмены UNDO, REDO. Кнопки отмены действуют как назад, так и вперед.
Выделенные объекты можно перемещать по схеме, ухватив их левой кнопкой мыши и передвинув в нужное место, отпустить кнопку.
Процесс симуляции проекта осуществляется нажатием кнопки ПУСК, расположенной внизу основного окна панели управления.
Все элементы находятся в библиотеке компонентов. Чтобы попасть в библиотеку, нужно перейти в режим COMPONENT, нажав на соответствующую пиктограмму. Теперь, либо щелкнув по пиктограмме Р (Pick Devices - выбор приборов), либо дважды щелкнув левой кнопкой в поле выбора компонентов Object Selector, попадем в библиотеку.
Компоненты можно выбирать по категориям Category, подкатегориям - Subcategory, по производителю Manufacturer (используется очень редко) или же искать по ключевым словам в окне «маска», например, ATMega16.
Порядок выполнения работы
1. Выбор элементов схемы термометра
В программе ISIS Proteus выбрать в компонентах микроконтроллер ATMega16, интеллектуальный датчик температуры DS18B20, LCD типа LM016L, резистор R=4.7k, осциллограф и собрать схему (рисунок 4.4).
Выберем микроконтроллер ATMega16 библиотеки AVR2: нажатием на Р открывается окно Pick Devices, выбираем категорию - Microprocessor ICs, подкатегорию - AVR Family и в поле результатов выделяем левой кнопкой ATMega16 (справа появится условное обозначения и размеры корпуса), нажимаем справа внизу ОК, закрывается окно и на основном поле курсором в нужном месте устанавливается выбранная микросхема.
Затем навести курсор на микроконтроллер и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором в пункте CKSEL Fuses выбрать - (0100) Int RC 8MHz, затем ОК.
Датчик температуры DS18B20: категория - Data converter, подкатегория - Temperature sensors. Навести курсор на датчик и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором в пункте Granually поставить - 1, затем ОК.
LCD типа LM016L: категория - Optoelectronics, подкатегория - Alphanumeric LCDs. Навести курсор на LCD и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором в окне Other properties написать - {STATE=1}, затем ОК.
Резистор R=4.7k: категория - Resistor, подкатегория - Generic. После установки на поле выделить курсором и нажать правую кнопку, в появившемся окне выделить строку Правка свойств, в окне которой выставить 4.7 К и нажать ОК.
Осциллограф: справа нажимаем на пиктограмму «Визуальные инструменты», выделяем Oscilloscope и передвигая курсором, устанавливаем на поле нажатием левой кнопки. Навести курсор на осциллограф и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором поставить галочку в пункте Исключить из РСВ, затем ОК.
Земля и + источника: нажимаем на правую пиктограмму «Terminals», нажимаем поочередно Ground и Power.
Внимательно соединяем каждое устройство в строгом соответствии приведенной схемы (рисунок 4.2).
Рисунок 4.2 Основное окно программы ISIS
2. Сохранить файл, например, под названием Test.
В результате должны появиться 2 файла с расширениями Test.DSN и Test.DBK.
3. Прошивка hex-файла программы.
Для создания hex-файла прошивки микроконтроллера AVR можно использовать компиляторы AVR STUDIO, AVR IAR или ICC AVR.
Текст программы в Си имеет вид.
/*
* GccApplication1.c
*
*/
#include <avr/io.h>
#include "lcd.h"
#include <util/delay.h>
#include <stdio.h>
//определяем порт и бит к которому подключено устройство 1-wire
#define W1_PORT PORTC
#define W1_DDR DDRC
#define W1_PIN PINC
#define W1_BIT 0
//функция определяет есть ли устройство на шине
unsigned char w1_find()
{
unsigned char device;
W1_DDR |= 1<<W1_BIT;//логический "0"
_delay_us(485);//ждем минимум 480мкс
W1_DDR &= ~(1<<W1_BIT);//отпускаем шину
_delay_us(65);//ждем минимум 60мкс и смотрим что на шине
if((W1_PIN & (1<<W1_BIT)) ==0x00)
device = 1;
else
device = 0;
_delay_us(420);//ждем оставшееся время до 480мкс
return device;
}
//функция посылает команду на устройство 1-wire
void w1_sendcmd(unsigned char cmd)
{
for(unsigned char i = 0; i < 8; i++)//в цикле посылаем побитно
{
if((cmd & (1<<i)) == 1<<i)//если бит=1 посылаем 1
{
W1_DDR |= 1<<W1_BIT;
_delay_us(2);
W1_DDR &= ~(1<<W1_BIT);
_delay_us(65);
}
else//иначе посылаем 0
{
W1_DDR |= 1<<W1_BIT;
_delay_us(65);
W1_DDR &= ~(1<<W1_BIT);
_delay_us(5);
}
}
}
//функция читает один байт с устройства 1-wire
unsigned char w1_receive_byte()
{
unsigned char data=0;
for(unsigned char i = 0; i < 8; i++)//в цикле смотрим что на шине и сохраняем значение
{
W1_DDR |= 1<<W1_BIT;
_delay_us(2);
W1_DDR &= ~(1<<W1_BIT);
_delay_us(7);
if((W1_PIN & (1<<W1_BIT)) == 0x00)
data &= ~(1<<i);
else
data |= 1<<i;
_delay_us(50);//задержка до окончания тайм-слота
}
return data;
}
//функция преобразует полученные с датчика 18b20 данные в температуру
int temp_18b20()
{
unsigned char data[2];
int temp = 0;
if(w1_find()==1)//если есть устройство на шине
{
w1_sendcmd(0xcc);//пропустить ROM код, мы знаем, что у нас одно устройство или передаем всем
w1_sendcmd(0x44);//преобразовать температуру
_delay_ms(750);//преобразование в 12 битном режиме занимает 750ms
w1_find();//снова посылаем Presence и Reset
w1_sendcmd(0xcc);
w1_sendcmd(0xbe);//передать байты ведущему 18b20 в первых двух содержится температура)
data[0] = w1_receive_byte();//читаем два байта с температурой
data[1] = w1_receive_byte();
//загоняем в двух байтную переменную
temp = data[1];
temp = temp<<8;
temp |= data[0];
//переводим в градусы
temp *= 0.0625;//0.0625 градуса на единицу данных
}
//возвращаем температуру
return temp;
}
int main(void)
{
int temp;
char bufer[16]="123";
lcd_init(LCD_DISP_ON);
lcd_puts(bufer);
while(1)
{
temp = temp_18b20();
if(temp > 1000)//если температура <0
{
temp = 4096 - temp;
temp = -temp;
}
sprintf(bufer,"temp=%i ", temp);
lcd_clrscr();
lcd_puts(bufer);
lcd_putc(223);
lcd_putc('C');
}
}
Затем навести курсор на микроконтроллер и щелчком правой кнопки мыши открыть окно Edit Properties с выпадающим меню, в котором в пункте Programm File добавить полученный hex-файл программы GccApplication1.hex, который расположен в папке Термометр.
Запуск симуляции клавишей ПУСК продемонстрирует работу термометра.
Содержание отчета
- цель работы;
- схема моделирования термометра;
- выводы.
Контрольные вопросы
моделирование программа proteus микроконтроллер
1) Какие программы входят в Proteus VSM?
2) Для чего предназначена программа ISIS?
3) Для чего предназначена программа ARES?
4) Как найти и выставить на поле микроконтроллер серии AVR?
5) Как найти и выставить на поле LCD?
6) Как найти и выставить на поле DS18B20?
Размещено на Allbest.ru
...Подобные документы
Описание работы элементов программы в виде блок-схем. Анализ структурной схемы модели домофона. Блок-схема работы открытия двери ключом. Моделирование в Proteus: принцип динамического опроса и индикации, внешний вид жидкокристаллического дисплея.
курсовая работа [1,4 M], добавлен 12.04.2019Принцип действия устройства сбора информации на базе микроконтроллера МК51: индикация, "рабочий режим" и передача данных персонального компьютера. Алгоритм начального опроса датчиков. Электрическая принципиальная схема устройства, текст программы.
курсовая работа [102,5 K], добавлен 21.10.2012Роль интеллектуальных информационных систем в развитии общества. Проблемы концептуального классификационного моделирования для систем, основанных на знаниях. Иерархическая структура универсума. Интенсиональность и параметричность классификации, структура.
реферат [15,4 K], добавлен 19.02.2011Инструментальные средства проектирования интеллектуальных систем. Анализ традиционных языков программирования и представления знаний. Использование интегрированной инструментальной среды G2 для создания интеллектуальных систем реального времени.
контрольная работа [548,3 K], добавлен 18.05.2019Принципиальная электрическая схема микропроцессорной системы. Моделирование в Proteus 7.10. Алгоритмы обработки и хранения информации. Аналого-цифровой преобразователь. Назначение выводов источника опорного напряжения. Значения сопротивления резисторов.
курсовая работа [1,4 M], добавлен 28.05.2013Основы систематизации языков имитационного моделирования, моделирование систем и языки программирования. Особенности использования алгоритмических языков, подходы к их разработке. Анализ характеристик и эффективности языков имитационного моделирования.
курсовая работа [1,4 M], добавлен 15.03.2012Структурно-информационный анализ методов моделирования динамических систем. Математическое моделирование. Численные методы решения систем дифференциальных уравнений. Разработка структуры програмного комплекса для анализа динамики механических систем.
дипломная работа [1,1 M], добавлен 14.05.2010Изучение современных принципов, подходов и методов моделирования сложно формализуемых объектов. Решение задач структурной и параметрической идентификации. Характеристики вычислительных систем как сложных систем массового обслуживания. Теория потоков.
курс лекций [2,3 M], добавлен 18.02.2012Характеристика современных зарубежных и отечественных SCADA-систем. Описания программного комплекса для визуализации и диспетчеризации технологических процессов. Обработка, отображение и архивирование информации об объекте мониторинга или управления.
реферат [600,8 K], добавлен 26.10.2014Имитационное моделирование как один из наиболее широко используемых методов при решении задач анализа и синтеза сложных систем. Особенности имитационного моделирования систем массового обслуживания. Анализ структурной схемы системы передачи пакетов.
курсовая работа [1,2 M], добавлен 28.05.2013Проект выполнения курсовой работы, выполненный MS Project. Полное наименование системы и ее условное обозначение, область применения. цели создания программного обеспечения АП "АПОС". Обоснование выбора среды моделирования. Составление IDEF-комплекта.
курсовая работа [2,2 M], добавлен 27.12.2009Теоретические основы моделирования систем в среде имитационного моделирования AnyLogic. Средства описания поведения объектов. Анимация поведения модели, пользовательский интерфейс. Модель системы обработки информации в среде компьютерного моделирования.
курсовая работа [1,5 M], добавлен 15.05.2014Методы количественного и качественного оценивания систем, моделирование и разработка концептуальной модели, показатели пропускной способности, достоверности передачи данных. Интеграция систем ситуационного, имитационного и экспертного моделирования.
курсовая работа [240,3 K], добавлен 24.06.2010Особенности систем массового обслуживания и сущность имитационного моделирования с использованием GPSS. Структурная схема модели системы и временная диаграмма. Сравнение результатов имитационного моделирования и аналитического расчета характеристик.
курсовая работа [214,2 K], добавлен 23.06.2011Особенности моделирования биологических систем с использованием программы "AnyLogic". Влияние различных факторов на популяции жертв и хищников. Принципы имитационного моделирования и его общий алгоритм с помощью ЭВМ. Анализ результатов моделирования.
курсовая работа [922,2 K], добавлен 30.01.2016Программное средство системного моделирования. Структурная схема модели системы, временная диаграмма и ее описание. Сравнение результатов имитационного моделирования и аналитического расчета характеристик. Описание машинной программы решения задачи.
курсовая работа [146,5 K], добавлен 28.06.2011Программные средства имитационного моделирования систем массового обслуживания. Программная среда Matlab, ее структура и основные компоненты, функциональные особенности, а также назначение. Разработка подсистем моделирования. Инструкция пользователя.
дипломная работа [3,3 M], добавлен 10.07.2017Разработка структурной и принципиальной схемы. Блок-схема основной программы и подпрограмм обработки прерываний. Имена переменных, используемых в них. Результаты моделирования работы устройства в программе ISIS пакета Рroteus. Разработка печатной платы.
курсовая работа [1,5 M], добавлен 13.11.2016Анализ робототехнических систем. Принципы компьютерного моделирования. Классификация компьютерных моделей по типу математической схемы. Моделирование пространства и объектов рабочей области с помощью визуальной среды Visual Simulation Environment.
дипломная работа [2,0 M], добавлен 08.06.2014Изучение общих понятий теории систем и системного анализа. Методика построения объектных репозиториев открытых информационных систем. Принципы восприятия визуальной информации. Средства визуального моделирования рабочих процессов по интеграции данных.
курсовая работа [195,1 K], добавлен 04.06.2015