Смекни!
smekni.com

Разработка и отладка программного обеспечения виртуальной лаборатории Программирование микроконтроллерных (стр. 2 из 3)

Проблема может быть решена за счет использования в качестве БМВВ аппаратных средств ВВК [13-15]. ВВК построенный на основе открытой архитектуры, а его технических возможностей довольно для удовлетворения требований лабораторного практикума, стоимость значительно низшая. В отличие от готовых решений, ПО ВВК легко может быть приспособленное к использование во ВЛ. ВВК использует аппаратные возможности учебно-отладочного стенда "AVR-Microlab".

Аппаратное обеспечение изображено на рисунке 2.

Рисунок 2 - Архитектура аппаратного обеспечения ВЛ

Таким образом, использование двух учебно-отладочных стендов дает возможность реализовать лабораторный практикум в полном объеме. Аппаратное обеспечение может быть легко подсоединено ко всем современным ПК через интерфейс USB.

1.4 Архитектура ПО ВЛ "Программирование икроконтроллерных систем"

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

ВЛ с открытой архитектурой состоит из следующих компонентов:

Ядро - центральный компонент ВЛ, основной задачей которого являются предоставления компонентам системы набора сервисов, необходимых для реализации;

Шина сообщений - обеспечивает интерфейс взаимодействия компонент ВЛ;

Адаптеры ВЛ - реализуют зависимые от типа ВЛ операции взаимодействия с native-службами операционной системы (или систем) и физическими ресурсами за специальными протоколами;

Клиентское ПО - web-интерфейс пользователя; ПО складывается из 2 частей - общей оболочки и реализации клиентских частей протоколов взаимодействия с ресурсами ВЛ;

Программное обеспечение администрирования - программа, которая разрешает централизованно руководить одним или несколькими серверами ВЛ.

Рисунок 3 - Открытая архитектура программного обеспечения ВЛ

Как видим взаимодействие " человек-оборудование" в ВЛ нуждается в реализации клиент-серверной системы. Сервер должен руководить оборудованием. Также нужно выполнять визуализацию на стороне клиента. Эти задачи выполняет ПО.

Технологии программирования, которые используются при создании ПО ВЛ, должны удовлетворять следующим требованиям:

иметь возможности реализации клиент-серверной системы;

иметь возможность работы с аппаратными ресурсами серверного ПК, к которым подсоединено другое оборудование;

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

Остановимся на первом критерии. Клиент - Серверную систему можно построить двумя способами:

прямая коммуникация между клиентом и сервером (рисунок 4)

коммуникация между клиентом и сервером на основе идеологии Web

Рисунок 4 - Прямая коммуникация между клиентом и сервером

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

Trac является открытым программным обеспечением, разработанным и поддерживаемым компанией Edgewall Software.

Trac использует минималистичный веб-интерфейс, основанный на технологии wiki, и позволяет организовать перекрёстные гиперссылки между базой данных зарегистрированных ошибок, системой управления версиями и wiki-страницами. Это даёт возможность использовать Trac в том числе и как веб-интерфейс для доступа к ВЛ

Основой для Trac'а является SVN репозиторий. Один из самых распространенных методов использования TRAC


Рисунок 5 - Работа Trac

Также возможны и другие способы, например без Apache - Trac будет работать как standalone сервер. Можно еще подключить LDAP для аутентификации. Работа с системой ведется через веб-интерфейс. Для входа нужен логин и пароль. Основные элементы интерфейса:

Рисунок 6 - Интерфейс системы Trac


Основные функции.

Управление проектом:

разделение проекта на этапы (milestones)

контроль выполнения (roadmap)

все изменения по проекту заносятся на временную шкалу (timeline)

поддержка rss

Tickets Стандартная функциональность - учет ошибок, замечаний, пожеланий с возможностью фильтрации и занесение соответсвенно в milestone, roadmap.

Я так же использую в качестве ToDo. Достаточно просто и удобно.

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

Функциональность может быть расширена за счет дополнительных модулей.

Управление пользователями Простая система - что могут делать пользователи, а что нет.

WiKi В trac встроена система WiKi с возможностью делать ссылки на milestone, roadmap, ticket. Органично вписывается и удобна в использовании при ведении проекта.

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

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

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

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

Система Trac разрешает создать систему дистанционного образования, в частности существует:

Возможность создания информационного архива с учебными материалами;

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

Возможность создания контроля знаний и разного рода тестирований;

Возможность информирования студентов о тех или другие события, мероприятия;

Возможность оставлять личные вопросы преподавателю во время, отличное от лабораторных занятий.

2. Реализация ГСПФ на основе програмно-отладочного стенда „AVR MicroLAB"

2.1 Аппартные способы реализации ГСПФ

Для реализации ГСПФ необходимы такие аппаратные ресурсы как порты вода/вывода микроконтролера, память данных и память программ микроконтролера.

Для реализации генератора сигналов произвольной формы используется блок цифр-аналогового преобразователя, построенного на ИМС DA3 типа TLC5615 фирмы Texas Instruments, что представляет собой десятирозрядний ЦАП с последовательным SPI - интерфейсом, выведенным на порт "B" контролера. Таким образом, употребятся разряды 4-7 порта В. Фильтр исходного сигнала первого порядка организуется с помощью модуля блока исходных ключей, в состав которого входят 2 RC фильтры НЧ для фильтрации исходных сигналов микроконтроллера. Они подключаются к выходам 4-5 порта С.

Рисунок 7 - Функциональная схема ГСПФ

Структурная схема распределения ресурсов микроконтроллера на рис.8


Рисунок 8 - Схема распределения ресурсов МК

Протокол обмена данными между ПК и стендом

Для реализации передачи данных от ПК к стенду и в обратном направлении определен протокол запросов и ответов. Их структура представлена в табл 1.

ъ
к МК "Старт" "Стоп"
код ГС код ГС
старт стоп
частота
тип генерации
объем данных
дані (256 b)
К ПК Ответ
код ГС
0

2.2 Программные средства для реализации ГСПФ

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

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