Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: III Международной научно-практической конференции «Наука вчера, сегодня, завтра» (Россия, г. Новосибирск, 21 августа 2013 г.)

Наука: Технические науки

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Денисов А.С., Куверин И.Ю. МЕТОДИКА РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ МИКРОКОНТРОЛЛЕРА ATMEGA 644 В ПРИБОРЕ ДЛЯ ДИАГНОСТИРОВАНИЯ ДВИГАТЕЛЕЙ ВНУТРЕННЕГО СГОРАНИЯ // Наука вчера, сегодня, завтра: сб. ст. по матер. III междунар. науч.-практ. конф. № 3. – Новосибирск: СибАК, 2013.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Статья опубликована в рамках:
 
Выходные данные сборника:

 

МЕТОДИКА  РАЗРАБОТКИ  ПРОГРАММНОГО  ОБЕСПЕЧЕНИЯ  МИКРОКОНТРОЛЛЕРА  ATMEGA  644  В  ПРИБОРЕ  ДЛЯ  ДИАГНОСТИРОВАНИЯ  ДВИГАТЕЛЕЙ  ВНУТРЕННЕГО  СГОРАНИЯ


Денисов  Александр  Сергеевич


д-р  техн.  наук,  профессор,  зав.  кафедрой  «Автомобили  и  автомобильное  хозяйство»,  Саратовского  государственного  технического  университета  имени  Гагарина  Ю.А.  г.  Саратов


Куверин  Игорь  Юрьевич


канд.  техн.  наук,  доцент  кафедры  «Автомобили  и  автомобильное  хозяйство»,  Саратовского  государственного  технического  университета  имени  Гагарина  Ю.А.  г.  Саратов


E-mailigorkuv@mail.ru

 

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

Большие  перспективы  в  дальнейшем  развитии  данных  методов  открываются  при  разработке  аппаратного  обеспечения  на  основе  современных  микроконтроллеров  ведущих  мировых  производителей.  В  настоящее  время  проводится  разработка  микроконтроллерного  прибора  для  диагностирования  дизельных  двигателей.  Основным  компонентом  разрабатываемого  прибора  является  микроконтроллер  ATmega644  8-битного  семейства  AVR  гарвардской  архитектуры  (программа  и  данные  находятся  в  разных  адресных  пространствах)  американской  фирмы  Atmel  [1]. 

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

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

Наиболее  целесообразным  является  использование  объектно-ориентированного  языка  C,  имеющего  развитую  систему  команд. 

Для  программирования  на  языке  С  микроконтроллера  выбран  кросс-компилятор  CodeVisionAVR  [2],  так  как  он  имеет  наиболее  удобный  автоматический  генератор  программ  (CodeWizardAVR),  позволяющий  значительно  упростить  написание  программ.  Кроме  того,  CodeVisionAVR  обеспечивает  выполнение  почти  всех  элементов  языка  C,  которые  разрешены  архитектурой  языка  С,  с  некоторыми  добавленными  характеристиками,  которые  реализуют  преимущество  специфики  архитектуры  AVR  [3].  Также  данный  компилятор  имеет  большой  набор  прикладных  библиотек  для  работы  со  стандартной  периферией.

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

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

 


Рисунок  1.  Упрощенная  схема  устройства  для  диагностирования  двигателей  внутреннего  сгорания  в  симуляторе  Proteus

 

Моделирования  сигнала  датчика  начала  тактирования  проводилось  с  помощью  генератора  импульсов  1.  Для  моделирования  сигналов  датчика  угловых  меток  использовался  генератор  импульсов  2.  Контроль  длительности  и  формы  сигналов  проводился  с  помощью  четырехканального  осциллографа  3.  Для  проверки  работы  8-канального  аналого-цифрового  преобразователя  использовались  генераторы  сигналов  4—11  для  каналов  0—7  соответственно.  Для  проверки  настройки  LCD  дисплея  использовалась  его  модель  12.  Для  отображения  русского  шрифта  модель  дисплея  была  модифицирована  с  помощью  специальной  программы-перекодировщика. 

Дисплей  в  приборе  используется  для  контролирования  режимов  работы,  вывода  служебной  информации,  сведений  о  разработчике  устройства,  в  режиме  тахометра  на  дисплей  выводится  информации  о  частоте  вращения  коленчатого  вала  двигателя.  Кнопка  13  пуска  и  переключения  режимов  является  интерактивной  и  может  переключаться  непосредственно  во  время  работы  программы.  Моделирование  передачи  данных  в  компьютер  по  протоколу  RS-232  осуществлялся  с  помощью  виртуального  терминала  14.

После  загрузки  программы  в  память  микроконтроллера  15,  а  также  задания  тактовой  частоты  и  установки  конфигурационных  бит  (fuse  bits)  в  окне  свойств  микроконтроллера,  возможно  проведение  запуска  симуляции. 

Управление  работой  симуляции  осуществлялось  панелью  интерактивной  симуляции  1  (рис.  2). 

 


Рисунок  2.  Симуляция  работы  прибора  для  диагностики  двигателей  внутреннего  сгорания  в  программном  комплексе  Proteus

 

Контроль  работы  программы  проводился  с  помощью  следующих  контрольных  панелей  и  окон:  2,  3  —  панели  генераторов  импульсов  соответственно  датчика  начала  тактирования  и  датчика  угловых  меток,  4  —  контрольная  панель  четырехканального  осциллографа,  5  —  контрольная  панель  виртуального  терминала,  6  —  окно  регистров  процессора,  7  —  окно  переменных,  8  —  окно  наблюдения  за  регистрами  микроконтроллера,  9  —  окно  с  текстом  программы  на  языке  С.

На  панели  осциллографа  10  —  импульсы  сигнала  датчика  начала  тактирования,  11  —  импульсы  сигнала  датчика  угловых  меток.

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

Использование  программного  комплекса  Proteus  позволило  провести  отладку  программы  прибора  для  диагностирования  двигателей  внутреннего  сгорания  с  целью  последующей  загрузки  прошивки  в  память  микроконтроллера.

 

Список  литературы:

1.Евстифеев  А.В.  Микроконтроллеры  AVR  семейств  Tiny  и  Mega  фирмы  ATMEL,  5-е  изд.,  стер.  М.:  Издательский  дом  «Додэка  XXI»,  2008.  —  560  с.

2.Лебедев  М.Б.  CodeVision  AVR.  Пособие  для  начинающих  (+  CD-ROM).  М.:  Додэка  XXI,  2010.  —  592  с.

3.Шпак  Ю.А.  Программирование  на  языке  С  для  AVR  и  PIC  микроконтроллеров.  М.:  МК-Пресс,  Корона-Век.  2011.  —  544  с.

Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

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