Научный журнал
Успехи современного естествознания
ISSN 1681-7494
"Перечень" ВАК
ИФ РИНЦ = 0,775

МНОГОПОТОЧНЫЙ СЕРВЕР МИКРОКОНТРОЛЛЕРОВ INTEL MCS-196

Кипрушкин С.А. Курсков С.Ю. Мурсалимов О.А.
Данная работа посвящена созданию многопоточного сервера микроконтроллеров MCS-196 распределенной информационно-измерительной системы, используемой для спектроскопического анализа пучковых и плазменных объектов [1-3]. Разработанный сервер предназначен для подключения к системе до четырех указанных микроконтроллеров и управления их ресурсами. Микроконтроллеры обеспечивают интеграцию в распределенную систему цифровых счетчиков и аналоговых вакуумметров.

Прикладной протокол распределенной системы базируется на стеке протоколов TCP/IP, что обеспечивает доступ к ее ресурсам в сетях Интранет/Интернет. Прикладной протокол регламентирует порядок обмена информацией между клиентом и сервером, форматы кадров запроса и ответа, определяет коды команд системы и коды ошибок, которые могут возникнуть в ходе сеанса связи.

Микроконтроллеры подключаются к ПК через последовательные порты COM1-COM4 по стандарту RS-232.

Сервер микроконтроллеров представляет собой программу на языке Java, которая создает до 4-х отдельно работающих потоков, каждый из которых управляет своим микроконтроллером, подключенным к соответствующему COM-порту. В его задачу входит определение допустимости запрошенной функции и указанного адреса, передача запроса микроконтроллеру, а также пересылка клиенту ответа или номера ошибки при возникновении исключительной ситуации. В задачу сервера не входит обеспечение защиты ресурсов микроконтроллеров от разных клиентов распределенной информационно-измерительной системы. Эта функция возложена на коммуникационный сервер системы, поскольку только через него клиенты получают доступ к серверу микроконтроллеров. Коммуникационный сервер системы различает микроконтроллеры по адресу COM-порта, который включается в поле адреса ресурса кадра запроса.

В состав сервера входят следующие классы:

  • MCS_Server - основной класс сервера - реализует "прослушивание сети", подключение коммуникационного сервера, реализует алгоритм обслуживания клиента, в частности, обеспечивает проверку корректности параметров запроса клиента и выполнение команды управления микроконтроллером;
  • CserverProtocol - в данном интерфейсе определены коды операций, ошибок и другие константы коммуникационных протоколов (общий для системы);
  • QueryToEServer - в данном классе определен объект "кадр запроса" к серверу и методы для работы с этим объектом (общий для системы);
  • ReplyFromEServer - в классе определен объект "кадр ответа" и методы для работы с этим объектом (общий для системы);
  • MCS96Lib - данный класс содержит библиотеку методов для работы с микроконтроллерами, а также ряд дополнительных методов выполняющих вспомогательные функции. Основные методы класса: Reset - сброс микроконтроллера в исходное состояние, Init - инициализация микроконтроллера, Load_Hex - загрузка откомпилированной программы пользователя в микроконтроллер, TestLine - проверка связи с микроконтроллером и его инициализация, Run - выполнение загруженной программы пользователя, ReceiveData - прием данных от микроконтроллера и их последующая обработка. Также в этом классе объявлены три внешних метода, реализованных на языке Си: InitCom - установка параметров COM-порта, InCom - чтение байта из порта ввода/вывода, OutCom - запись байта в порт ввода/вывода.

В случае изменения алгоритма получения данных с устройства, подключенного к определенному микроконтроллеру, необходимо изменить программу в ПЗУ микроконтроллера. Это делается программой-клиентом, управляющей данным микроконтроллером. Программа, написанная на языке Assembler-96 с учетом изменений в эксперименте, компилируется, и полученный HEX-файл прошивки пересылается программой-клиентом на сервер. Если данный микроконтроллер не занят, то сервер загружает прошивку в память микроконтроллера.

При создании сервера микроконтроллера использовался пакет разработчика Java - J2SE Development Kit v.5.0. Применение технологии Java обеспечивает возможность использования разработанного сервера на любых программно-аппаратных платформах, для которых реализована виртуальная Java-машина.

Работа выполнена при поддержке Американского фонда гражданских исследований и развития (CRDF) (проект PZ-013-02) и Министерства образования РФ.

СПИСОК ЛИТЕРАТУРЫ

  1. Гаврилов С.Е., Жиганов Е.Д., Кипрушкин С.А., Курсков С.Ю. Распределенная информационно-измерительная система для удаленного управления экспериментом в области оптической спектроскопии //Научный сервис в сети Интернет: Тр. Всерос. науч. конф. М.: Изд-во Моск. ун-та, 2002. С. 157-159.
  2. Gavrilov S.E., Kiprushkin S.A., Kurskov S.Yu., Khakhaev A.D. Distributed information system with remote access to physical equipment //Proceedings of the International Conference on Computer, Communication and Control Technologies: CCCT ´03 and The 9th International Conference on Information Systems Analysis and Synthesis: ISAS ´03 (July 31, August 1-2, 2003, Orlando, Florida, USA). Orlando, 2003.
  3. Kiprushkin S.A., Korolev N.A., Kurskov S.Yu., Khakhaev A.D. Data security in the distributed information measurement system //Proceedings of the 8th World Multi-Conference on Systemics, Cybernetics and Informatics (SCI 2004) (July 18 - 21, 2004, Orlando, Florida, USA). Orlando, 2004. V. 1. P. 13-16.

Библиографическая ссылка

Кипрушкин С.А., Курсков С.Ю., Мурсалимов О.А. МНОГОПОТОЧНЫЙ СЕРВЕР МИКРОКОНТРОЛЛЕРОВ INTEL MCS-196 // Успехи современного естествознания. – 2005. – № 6. – С. 31-31;
URL: https://natural-sciences.ru/ru/article/view?id=8617 (дата обращения: 16.04.2024).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674