Разработка прикладной программы для тестирования работоспособности радиомодемов

Назначение и структура подразделения "Управление коммуникаций и средств связи". Описание аппаратных средств и характеристика программного обеспечения. Функции программы по прошивке радиостанций. Разработка приложения для работы радиопортов DataBox RP-Z.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 29.06.2012
Размер файла 1,7 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

1. Анализ предметной области

1.1 Описание предприятия «ОАО Уральская Сталь»

- В 1940 году на базе уникального месторождения началось возведение нового металлургического комбината полного цикла - Орско-Халиловского.

- 5 марта 1955 года Орско-Халиловский металлургический комбинат произвёл первую тонну чугуна

- 15 декабря 1981 года принята в эксплуатацию первая электропечь ЭСПЦ., а 18 декабря выдана первая электросталь ОХМК.

- 31 ноября 1992 года на базе государственного предприятия ОХМК создано акционерное общество открытого типа «НОСТА».

- 1 декабря 2003 года ОАО «НОСТА» преобразовано в технически более современную, мобильную и успешную компанию «Уральская Сталь».

- 20 октября 2005 года прекратило свое существование Общество с ограниченной ответственностью «Уральская Сталь» путем преобразования его в Открытое Акционерное Общество «Уральская сталь».

- В июле 2006 года решением годового общего собрания акционеров ОАО «Уральская Сталь» полномочия единоличного исполнительного органа переданы ООО «Управляющая компания «Металлоинвест».

ОАО «Уральская сталь» - металлургическое предприятие с полным циклом, имеет в своем составе производства: коксохимическое производство, агломерационное производство, доменное производство, сталеплавильное производство, прокатное производство. Занимает лидирующие позиции в сфере оптовых поставок металлопроката в регионе. Является интегрированным российским производителем стали. Лидирующий в России производитель штрипса, трубных заготовок и мостостали. Производственные мощности предприятия рассчитаны на выпуск более 4 млн. тонн стали в год.
Потребителями продукции металлургического комбината «Уральская сталь» являются предприятия России, Германии, Великобритании, Италии, Испании, Бельгии, Норвегии, Дании, Турции, Ирана, Китая, Кореи, Вьетнама, Тайвани и Тайланда.

Комбинат реализует продукцию ОАО «Мечел» (Челябинский металлургический комбинат), ММК (Магнитогорский металлургический комбинат), Ашинского металлургического завода, ЗСМК (Западно-Сибирского металлургического комбината), НТМК (Нижне-Тагильского металлургического комбината) и других металлургических комбинатов России.

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

В рамках программы развития и модернизации МЕТАЛЛОИНВЕСТ провел на Уральской Стали полную реконструкцию электросталеплавильного цеха и толстолистового стана «2800» в листопрокатном цехе №1. В настоящее время на комбинате идет поэтапная реконструкция и замена изношенного оборудования. Возводится новая коксовая батарея №6 проектной мощностью 690 тыс. тонн в год. Технология сухого тушения и улавливания коксовой пыли сделает ее более экологичной. В ЭСПЦ монтируется установка вакуумирования мощностью 1,2 млн. тонн в год. Ее ввод позволит повысить качество стали и, соответственно, укрепить позиции Группы на существующих рынках нишевых видов металлопродукции, а также выйти на новые.

1.2 Назначение и структура подразделения «Управление коммуникаций и средств связи»

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

В состав УКСС входят:

Отдел сетевого администрирования:

- Специалист по проектированию;

- Бюро АСУ «Персонал»;

- Бюро АСУ «Закупки»;

- Бюро АСУ «Бухучет»;

- Бюро АСУ «Финансы»;

- Бюро АСУ «Поставки»;

- Бюро АСУ «Цеховые системы»;

- Бюро АСУ «Транспорт»;

- Бюро АСУ «Ремонты»

Цех технологической диспетчеризации:

- Бюро администрирования систем;

- Бюро поддержки пользователей.

Отдел обработки информации:

- Бюро сопровождения АСУ «Расценка»;

- Бюро обработки экономической информации;

- Бюро ведения нормативно-справочной информации (НСИ).

- Бюро обработки бухгалтерской информации;

- Бюро сопровождения задач АСУ;

- Бюро сопровождения программ.

Отдел сопровождения и администрирования интегрированной системы управления:

- Бюро администрирования;

- Бюро сопровождения логистических модулей;

- Бюро сопровождения учетных модулей;

- Оперативно-диспетчерское бюро.

Отдел стратегических проектов:

- Бюро электронного документооборота;

- Проектный офис.

Отдел технического обслуживания электронной техники:

- Бюро обслуживания оборудования;

- Бюро обслуживания локально-вычислительных сетей.

Отдел автоматизации оперативного управления производством.

Работа по обслуживанию радиоэлектронных средств связи заключается в обеспечении бесперебойной работы средств радиосвязи, и устранение неполадок, в случае неустойчивой связи, уметь выявлять и устранять причины возникновения неисправности. Выполнении заявок, которые поступают от пользователей РЭСС как в письменном виде (заявка на: ремонт, устранение неисправности или перепрограммировании радиостанции или радиомодемов на определенную радиочастоту в соответствии радиосети), так и в виде телефонного звонка.

1.3 Описание аппаратных средств и характеристика программного обеспечения

На рабочих местах сотрудников ЦТД установлены персональные компьютеры со следующими характеристиками:

Процессор Intel Celeron 2000 MHz;

Оперативная память 256 Mb DDR;

Жесткий диск 40 Gb;

Встроенные в материнскую плату видео, сетевая и звуковая карты.

Монитор 17» Samsung.

В подучастке промышленной радиосвязи, установлены персональные компьютеры со следующими характеристиками:

Процессор Intel Celeron 2600 MHz;

Оперативная память 512 Mb DDR2;

Жесткий диск 160 Gb;

Встроенные в материнскую плату видео, сетевая и звуковая карты.

Мультимедийный ЖК Монитор 19» ACER.

Из средств оргтехники: лазерные принтеры Hewlett Packard Laser Jet 2100 и Hewlett Packard Laser Jet 2420; сканер Hewlett Packard Scan Jet 2400.

В структурном подразделении используются следующие виды оргтехники: сканеры, принтеры, копировальные аппараты, многофункциональные устройства (МФУ), факсимильные аппараты.

Принтеры матричные фирм Epson: модели FX 1170, 2170, 2180; OKI модель MicroLine 3410.

Струйные принтеры Epson Stylus Color 200.

Лазерные принтеры фирмы Hewlett Packard: модели Laser Jet 4 Plus, LJ 6P, LJ 1100A, LJ 2100, LJ 2300, LJ 2420, LJ 5000.

Лазерные принтеры фирмы XEROX Phaser 3210

Копировальные аппараты XEROX, UTAX.

Сканеры Hewlett Packard Scan Jet 3770, 2400.

МФУ Hewlett Packard 3380.

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

В качестве программного обеспечения (ПО) для рабочих станций используются операционные системы фирмы Microsoft, такие как Windows 95/98/2000/XP/Vista.

Для серверов - Microsoft 2003 Server, Unix, Linux.

Программное обеспечение, устанавливаемое на каждую рабочую станцию, состоит из:

- Операционной системы Microsoft Windows;

- Пакета офисных программ Microsoft Office;

- Антивируса Kaspersky Anti-Virus;

- Архиватора 7-Zip;

- Программы для просмотра графических изображений Irfan View;

- Программы для просмотра файлов pdf - Adobe Reader;

- Программ для просмотра чертежей AutoCad Viewer и КОМПАС Viewer;

- Утилит CCleaner и AusLogics Disk Defrag;

- Информационно-справочных систем Гарант и Консультант Плюс.

Все устанавливаемое ПО является лицензионным.

1.4 Функции программы по прошивке радиостанций

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

- Считывать всю информацию о станции

- Зашивать частоты (в соответствии с диапазоном);

- Вводить субтон для кодирования радиоканала (CTSS)

- Разделять радиоканалы на банки

- Выводить различный текст (по усмотрению) на дисплей радиостанций

- Переводить станцию в различный режим связи (симплексный, пятитональный, транкинговый)

- Устанавливать определенную мощность выходной цепи (в соответствии закону о связи)

- Устанавливать уровень чувствительности приемника

- Задавать звуковые тоны различных сигналов

- Программировать на кнопках управления различные функции.

1.5 Общие сведения крановой весоизмерительной системы (КВС)

В цехах ОАО «Уральской сталь'' для упрощения ведения контроля загрузки и разгрузки металлов внедрена крановая весовая система.

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

По причине подвижности тележки крана установленное на ней оборудование КВС обменивается информацией с оборудованием КВС, по радиоканалу с помощью установленных на них радиопортов. В связи с подвижностью самого мостового крана и с мобильностью пульта DataBox, эти компоненты системы ведут обмен информацией со стационарным оборудованием КВС также по радиоканалу. Приемными устройствами, установленными стационарно являются радиопорты, взаимодействующие со службой сбора данных. Радиопорты включены в заводскую сеть Ethernet и взаимодействуют с компьютерным оборудованием по протоколу TCP/IP.

Рисунок 1.1. Схема функционирования КВС

Обмен информацией через радиопорты реализует служба сбора данных. Она же при необходимости взаимодействует с сервером базы данных для записи или чтения информации.

Оборудование КВС, установленное на тележке крана, мосту крана, и пульт DataBox являются комплектом для одного крана. КВС включает в себя 6 таких комплектов и 6 стационарных радиопортов для связи с ними, что обеспечивает одновременную работу шести мостовых кранов. В составе КВС может присутствовать несколько автоматизированных рабочих мест бригадира (далее - АРМ бригадира). АРМ бригадира - это компьютер с установленным на нем специализированным программным обеспечением.

Задания на отгрузку продукции создаются бригадиром с использованием АРМа бригадира. На основе формировочных карточек, созданных в заводской базе данных, и списка транспортных средств (далее - ТС) бригадир, дополняя их информацией о номерах кранов, создает текущие задания на отгрузку (текущие отгрузки на смену).

Также функции по созданию списка ТС и текущих отгрузок возложены на пульт DataBox.

Автоматизированное рабочее место крановщика (деле - АРМ крановщика), представляет собой панельный компьютер с установленным программным обеспечением. АРМ крановщика предназначено для отображения текущего веса, места расположения крана в цехе, карты-схемы текущих отгрузок, выдачи заданий для крановщика, регистрации крановых операций.

1.6 Настройка программы АРМ-бригадира

Значения параметров АРМа бригадира, в том числе в зашифрованном виде пароль для подключения к базе данных и пароль администратора для настройки АРМа бригадира хранятся в файле Config.xml в каталоге, в котором установлено программное обеспечение АРМа, обычно C:\Program Files\InterVes\ARM_Brig_LPC Там же находится файл со списком хранимых в базе данных процедур OraProc.xml. При запуске программы АРМа бригадира открывается форма подключения.

Рисунок 1.2. Форма подключения переносного пульта бригадира

Форма настройки программы АРМа бригадира открывается выбором ссылки «Настройка программы» (см. Рисунок 4). Если файл Config.xml программой не найден, программа предложит создать новый файл (рис. 3).

Рисунок 1.3. Диалог создания файла настроек

После выбора кнопки «Да» будет создан новый файл настройки Config.xml и OraProc.xml со значениями по умолчанию и станет доступной форма настройки подключения АРМа бригадира. После создания новых файлов настроек значения параметров заполнены по умолчанию, и не обеспечивают нормальной работы АРМа бригадира.

Если файл Config.xml найден, форма настройки АРМа бригадира открывается сразу после выбора ссылки «Настроить подключение».

Окно содержит две вкладки: вкладка «Приложение» настраивает файл Config.xml, вкладка «Хранимые процедуры» позволяет редактировать файл OraProc.xml.

Рисунок 1.4. Форма настройки подключения

Первоначальное имя администратора системы «Admin», первоначальный пароль администратора системы «1234».

Внимание: Первоначальный пароль администратора системы должен быть изменен при вводе КВС в эксплуатацию и не должен быть известен неопределенному кругу лиц, особенно пользователям АРМа бригадира.

После ввода пароля администратора системы параметры настройки становятся доступными для редактирования.

Нажатие кнопки «Сохранить» на форме настройки подключения сохраняет изменения параметров в файле и закрывает эту форму, нажатие кнопки «Отмена» закрывает эту форму без сохранения изменений параметров. Кнопка «Сброс» приводит к созданию новых файлов настроек со значениями по умолчанию.

Немаловажную роль для обслуживания системы и сопровождения базы данных играет окно «События в базе данных» (рис. 5), которое вызывается из меню «Сервис» -> «События».

Рисунок 1.5. Окно «События в базе данных»

Это окно отображает зарегистрированные события в базе данных за период. Если поставить галочку «По всем датам», то будут отображены все события выбранного типа. События делятся по типам. Нужный тип события выбирается из выпадающего списка «Тип события». Для отображения всех типов за период в этом списке выберите пункт «все».

Документацию по типам событий смотрите в руководстве «База данных (руководство программиста)».

При нажатии на кнопку или на клавишу «Delete» на клавиатуре при выделенной строке таблицы происходит вызов диалога на удаление блока событий (рис. 6), который содержит все те же «контролы» на форме, что и основное окно. Для удаления блока событий необходимо выбрать тип и период событий и нажать на кнопку «Удалить».

Рисунок 1.6. Диалог на удаление блока событий

1.7 Настройка программы АРМ крановщика

1.7.1 Файл параметров программы

Все настройки АРМ крановщика, за исключением смены пароля наладчика, выполняются путем редактирования файла conf.xml, расположенного в рабочей директории программы.

Файл conf.xml имеет следующую структуру:

<ParamSet>

<Category CategoryName= «Аппаратура»>

<Param ParamName= «ScaleCoordYComPort» Value= «COM2» />

</Category>

</ParamSet>

Значения параметров настройки содержатся в значениях атрибутов «Value» тегов «Param». Атрибут «ParamName» содержит наименование параметра.

Параметры группируются в категории (тег «Category»).

1.7.2 Идентификаторы RFID - меток

При движении моста и тележки крана производится периодическая корректировка координат при считывании RFID - меток опорных точек, установленных на путях моста и тележки. Корректировка координат производится в АРМ крановщика на основе данных файла tags.xml, расположенного в рабочей директории программы и содержащего идентификаторы и координаты RFID - меток опорных точек.

Файл tags.xml имеет следующую структуру.

<Tags>

<Tag ID1= «E0040000EED6FD01» ID2= «E0040000A4D7FD01» X0= «15560»/>

</Tags>

Данные каждой опорной точки содержатся в атрибутах тегов «Tag». Имеются следующие атрибуты:

1. ID1 - уникальный идентификатор первой метки опорной точки

2. ID2 - уникальный идентификатор второй метки опорной точки

3. X0 - координата данной опорной точки в сантиметрах

Уникальные идентификаторы прописываются в память метки при ее производстве и не изменяются в течение всего срока эксплуатации метки. При смене метки содержимое файла tags.xml должно быть скорректировано.

1.7.3 Форма транспортной зоны

При выполнении отгрузки в вагоны производится автоматическое определение попадания координат тележки крана в транспортную зону. Поскольку граница транспортной зоны может иметь непрямолинейную форму, возможно использование искривленной формы границы. Форма границы задается в файле RaylwayZone.xml. Для использования исаользования искривленной транспортной зоны значение параметра UseCurvedZone должно быть установлено в True. В противном случае используется прямолинейная граница. При этом ширина транспортной зоны задается значением параметра RailWidth.

Файл RaylwayZone.xml имеет следующий формат:

<Points>

<Point Column= «100» Y= «5.5» X= «0»/>

<Point Column= «101» Y= «5.5» X= «6»/>

</Points>

Файл содержит набор точек, лежащих на границе транспортной зоны и задающих ее форму. Атрибут Column является необязательным и выполняет функцию комментария. Атрибут X содержит координату X точки в метрах. Атрибут Y содержит ширину транспортной зоны в данном месте в метрах. Ширина транспортной зоны в каждой точке должна определяться экспериментально.

1.7.4 Диагностические сообщения

В процессе работы программы «АРМ крановщика» на сервер сбора данных передаются диагностические сообщения, описывающие различные события, возникающие в системе.

Каждое сообщение содержит:

- Номер крана

- Код сообщения

- Наименование сообщения

- Данные сообщения

Просмотр диагностических сообщений возможен, например, с помощью программы «АРМ бригадира отгрузки» или с помощью других средств доступа к используемой СУБД.

2. Разработка приложения для работы радиопортов DataBox RP-Z производства ООО «ИнтерВес»

программа радиостанция радиомодем тестирование

2.1 Применение радиопортов

2.1.1 Общие сведения

Протокол передачи данных крановой весоизмерительной системы ЛПЦ-1 ОАО «Уральская сталь» (далее - протокол) предназначен для организации взаимодействия по радиоканалу между компонентами автоматизированной системы с использованием в качестве устройств передачи данных радиомодемы DFM-10N фирмы Digades.

Взаимодействие осуществляется по клиент-серверному сценарию с дополнительной возможностью передачи команд с сервера клиентам.

2.1.2 Настройки последовательного порта

При подключении радиомодема к последовательному порту компьютера или микроконтроллера должны использоваться следующие настройки последовательного порта:

· скорость 9600 бит/с

· 8 бит данных

· 1 стартовый бит

· 1 стоповый бит

· Без проверки четности

Учитывая аппаратные особенности используемых устройств сигналы интерфейса RS-232 (RTS, CTS и др.) не используются. При этом используются временные интервалы безопасности, в течение которых обмен данными приостанавливается для гарантированного прихода радиомодема в готовое состояние.

2.1.3 Модель взаимодействия

Радиомодем DFM-10N имеет 28 различных частотных каналов, однако, опыт эксплуатации показал, что при близком расположении антенн двух устройств наблюдается взаимное влияние при использовании двух произвольных радиоканалов и резкое ухудшение качества связи. Поэтому для максимального снижения количества используемых устройств наряду с частотным используется временное разделение процессов обмена данными для разных устройств.

При организации обмена данными используется клиент-серверная модель взаимодействия. В каждом частотном канале радиомодема может работать один сервер и некоторое количество клиентов (на практике 1-5 клиента).

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

В качестве клиента выступает программное обеспечение АРМ крановщика, использующее для передачи данных радиопорт, установленный на мосту крана. Переносной терминал DataBox КС-06 также является клиентом. Каждый клиент имеет уникальный сетевой номер в пределах одного радиоканала. Сетевой номер - целое число от 0 до 99.

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

2.1.4 Временная диаграмма взаимодействия

При отсутствии запросов со стороны клиентов сервер последовательно выдает разрешение на обмен для всех клиентов с временным интервалом между соседними разрешениями 150 мс, как показано на рисунке 2.1.

Рисунок 2.1 - Временная диаграмма при отсутствии запросов со стороны клиентов

Временная диаграмма для обмена данными одного клиента с сервером при передаче текущих данных и отсутствии запроса клиента показана на рисунке 2.2. Временная диаграмма при наличии запроса клиента показана на рисунке 2.3.

Рисунок 2.2 - Временная диаграмма при передаче текущих данных с клиента

Рисунок 2.3 - Временная диаграмма при наличии запроса клиента

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

После получения сообщения об активности опрашиваемого клиента сервер продлевает выделенный ему временной интервал до 1 секунды, что позволяет клиенту в течение этого времени выполнить запрос к серверу и получить ответ. Только после этого выдается разрешение на обмен данными для следующего клиента.

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

2.1.5 Уровни сетевого взаимодействия

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

1. Уровень пакетов

2. Уровень сообщений

3. Уровень документов

4. Прикладной уровень

Уровень пакетов отвечает за отправку и прием отдельных пакетов данных длиной до 64 байт (ограничение радиомодема DFM-10N).

Уровень сообщений отвечает за отправку и прием длинных сообщений с автоматическим разбиением на отдельные пакеты при отправке и восстановлении исходного сообщения из отдельных пакетов при приеме. Правильность приема сообщения контролируется с использованием контрольной суммы.

Уровень документов отвечает за передачу и прием крупных единиц информации - документов. Каждый документ состоит из шапки и произвольного количества строк (до 1000).

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

Уровень пакетов

Радиомодем DFM-10N допускает передачу и прием пакетов длиной до 64 байт. При этом пакет должен заканчиваться байтом 0x03 для того, чтобы сообщить модему о том, что пакет должен быть выдан в эфир.

При передаче пакеты не должны выдаваться в радиомодем чаще, чем через 150 мс (временной интервал между началом передачи каждого пакета). Данное время было определено экспериментально как альтернатива использования сигнала CTS интерфейса RS-232.

Формат пакета приведен в таблице 1.

Таблица 2.1. Формат пакета

Номер байта

Содержимое

0

Произвольный байт данных

1

Произвольный байт данных

N

0x03

В таблице 1 число N<=63. Тело пакета не может содержать в середине байт конца пакета 0x03.

Уровень сообщений

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

При передаче сообщений различаются три типа пакетов:

· первый

· средний

· последний

При малой длине сообщения пакеты могут объединяться.

Форматы первого, среднего и последнего пакетов приведены в таблицах 2-4 в предположении, что сообщение достаточно длинное, чтобы сформировать первый и средний пакеты длиной 64 байта. Это наиболее общий случай.

Таблица 2.2. Формат первого пакета

Номер байта

Содержимое

0

0x07 - символ начала сообщения

1

Произвольный байт данных

63

0x03

Таблица 2.3. Формат среднего пакета

Номер байта

Содержимое

0

Произвольный байт данных

1

Произвольный байт данных

63

0x03

Таблица 2.4. Формат последнего пакета

Номер байта

Содержимое

0

Произвольный байт данных

1

Произвольный байт данных

N-3

Старший символ контрольной суммы

N-3

Старший символ контрольной суммы

N-2

Младший символ контрольной суммы

N-1

0x0B - символ конца сообщения

N

0x03

В таблице 4 число N<=63. Сообщение может содержать несколько средних пакетов. При различной длине сообщения последний пакет может объединяться со средним и с первым. Алгоритм формирования пакетов сообщений работает следующим образом:

· Данные сообщения дополняются стартовым, стоповым символами и контрольной суммой

· Полученное сообщение разбивается на фрагменты, не превышающие по длине 63 байт

· В конец полученных фрагментов добавляется байт конца пакета 0x03

Алгоритм приема сообщения работает следующим образом:

· При получении стартового символа ведется прием пакетов до момента получения стопового символа. При этом из пакетов исключаются байты конца пакета 0x03

· Выполняется проверка контрольной суммы

Тело исходного сообщения не может содержать следующие символы:

· 0x07 - символ начала сообщения

· 0x0B - символ конца сообщения

· 0x03 - символ конца пакета

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

2.1.6 Контрольная сумма

При передаче сообщений используется однобайтная контрольная сумма, которая вычисляется следующим образом:

· Суммируются все байты сообщения, включая символ начала сообщения, но без символов конца пакетов

· Полученное значение вычитается из 0xFF

· К вычисленному значению прибавляется 1

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

Пример.

Исходное сообщение состоит из байт 0x01, 0x02, 0x03, 0x04, 0x05.

После добавления стартового символа получаются данные: 0x07, 0x01, 0x02, 0x03, 0x04, 0x05.

Однобайтная сумма: 0x07+0x01+0x02+0x03+0x04+0x05=0x16.

Значение контрольной суммы: 0xFF-0x16+1=0xEA.

Соответственно, в сообщение добавляются два символа контрольной сумы: `E' и `A'.

2.1.7 Уровень документов

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

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

Последовательность действий при запросе документа следующая:

1. Клиент запрашивает шапку документа;

2. Сервер передает шапку документа и количество строк в документе;

3. Если в документе есть строки, клиент запрашивает первую строку документа;

4. Сервер последовательно передает несколько строк документа, начиная с запрошенной;

5. Если получены не все строки, клиент запрашивает строку документа, следующую за последней успешно принятой;

6. Повторяются пункты 4 и 5.

Каждый запрос со стороны клиента выполняется после получения разрешения со стороны сервера и передачи сообщения об активности клиента. При этом для передачи используется выдаваемый сервером интервал времени длительностью 1 с. Таким образом, передача документа произвольной длины может занимать более одного сеанса обмена между данным клиентом и сервером. Форматы исходных сообщений (не преобразованных в пакеты) приведены в следующих пунктах.

2.1.8 Сообщение разрешения обмена

Сообщение разрешения обмена выдается сервером и уведомляет клиента о том, что ему разрешен обмен данными с сервером. Формат сообщения приведен в таблице 5.

Таблица 2.5. Формат сообщения разрешения обмена

Номер байта

Содержимое

0

`#' - начало сообщения

1

0x41+Num

2

Байт данных 0

N+3

Байт данных N

Число N<=5. Соответственно, с сервера на клиент вместе с сообщением разрешения могут быть переданы до 6 байт произвольных данных, которые используются в соответствии со спецификой задачи. В ответ на сообщение разрешения обмена клиент должен немедленно отправить сообщение об активности или сообщение текущих данных, если он не находится в состоянии запроса.

2.1.9 Сообщение текущих данных

Формат сообщения приведен в таблице 6. Сообщение передает только текущие данные и не требует у сервера продления временного интервала для выполнения запроса.

Таблица 2.6. Формат сообщения текущих данных

Номер байта

Содержимое

0

`$' - начало сообщения

1

0x41+Num

2

`B' - признак сообщения текущих данных

3

Байт текущих данных 0

N+4

Байт текущих данных N

Num - номер устройства посылающего сообщение (0..99).

Число N<=5. Соответственно, с клиента на сервер могут быть переданы до 6 байт произвольных текущих данных, которые используются в соответствии со спецификой задачи.

2.1.10 Сообщение об активности клиента

Формат сообщения приведен в таблице 7. Сообщение передает текущие данные и требует у сервера продления временного интервала для выполнения запроса.

Таблица 2.7. Формат сообщения об активности клиента

Номер байта

Содержимое

0

`$' - начало сообщения

1

0x41+Num

2

0xFF - признак сообщения активности клиента

3

Байт текущих данных 0

N+4

Байт текущих данных N

Num - номер устройства посылающего сообщение (0..99).

Число N<=5. Соответственно, с клиента на сервер могут быть переданы до 6 байт произвольных текущих данных, которые используются в соответствии со спецификой задачи.

2.1.11 Сообщение запроса шапки документа

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

Таблица 2.8. Формат сообщения запроса шапки документа

Номер байта

Содержимое

0

`$' - начало сообщения

1

0x41+Num

2

`D' - признак запроса шапки

3

Идентификатор запроса (0x0C..0xFF)

4

0x41+Code

5

Байт параметра запроса 0

N+5

Байт параметра запроса N

Num - номер устройства посылающего сообщение (0..99).

Code - код типа запрашиваемого документа (0..190). Распределение кодов документа выполняется при разработке решения прикладной задачи.

Число N<=100. Соответственно, с клиента на сервер могут быть переданы до 100 байт произвольных текущих данных, которые используются для формирования нужного документа на сервере.

Идентификатор запроса должен циклически меняться в интервале 0x0C..0xFF. Его изменение на 1 должно происходить при запросе каждого нового документа.

2.1.12 Сообщение шапки документа

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

Таблица 2.9. Формат сообщения шапки документа

Номер байта

Содержимое

0

`$' - начало сообщения

1

0x41+Num

2

`d' - признак передачи шапки

3

Идентификатор запроса (0x0C..0xFF)

4

0x41+Code

5

Зарезервированный байт 0

6

Зарезервированный байт 1

7

Зарезервированный байт 2

8

Зарезервированный байт 3

9

Зарезервированный байт 4

10

Зарезервированный байт 5

11

Количество строк, символ 0

12

Количество строк, символ 1

13

Количество строк, символ 2

14

Количество строк, символ 3

15

Байт шапки 0

N+15

Байт шапки N

Num - номер устройства, для которого посылается сообщение (0..99).

Code - код типа запрашиваемого документа (0..190). Распределение кодов документа выполняется при разработке решения прикладной задачи.

Идентификатор запроса должен быть равен идентификатору запроса, полученному от клиента.

Число N<=100. Соответственно, данные шапки могут содержать до 100 байт.

Байты 11..15 содержат ASCII-представление количества строк в документе с ведущими нулями.

2.1.13 Сообщение запроса строки документа

Формат сообщения приведен в таблице 10. Сообщение посылается клиентом после отправки сообщения об активности в случае, если в данный момент ему требуется строка документа.

Таблица 2.10. Формат сообщения запроса строки документа

Номер байта

Содержимое

0

`$' - начало сообщения

1

0x41+Num

2

`P' - признак передачи шапки

3

Идентификатор запроса (0x0C..0xFF)

4

0x41+Code

5

Номер строки, символ 0

6

Номер строки, символ 1

7

Номер строки, символ 2

8

Номер строки, символ 3

9

Номер строки, символ 4

10

Номер строки, символ 5

Num - номер устройства посылающего сообщение (0..99).

Code - код типа запрашиваемого документа (0..190). Распределение кодов документа выполняется при разработке решения прикладной задачи.

Идентификатор запроса должен быть равен идентификатору запроса, использованному при запросе шапки данного документа.

Байты 5..10 содержат символьное представление номера требуемой строки документа (0..1000).

2.1.14 Сообщение строки документа

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

Таблица 2.11. Формат сообщения запроса строки документа

Номер байта

Содержимое

0

`$' - начало сообщения

1

0x41+Num

2

`p' - признак передачи шапки

3

Идентификатор запроса (0x0C..0xFF)

4

Номер строки, символ 0

5

Номер строки, символ 1

6

Номер строки, символ 2

7

Номер строки, символ 3

8

Данные строки, байт 0

N+8

Данные строки, байт N

Num - номер устройства посылающего сообщение (0..99).

Идентификатор запроса должен быть равен идентификатору запроса, использованному при запросе шапки данного документа.

Байты 4..7 содержат символьное представление номера требуемой строки документа (0..1000).

Число N<=100. Соответственно, данные строки могут содержать до 100 байт.

2.1.15 Алгоритм упаковки данных

Передаваемые сообщения не могут содержать служебные символы (0x03, 0x07, 0x0B). Для этого может использоваться описанный ниже алгоритм исключения служебных символов из тела сообщения.

1. Все исходное сообщение разбивается на фрагменты длиной 6 байт. При этом возможно наличие последнего фрагмента длиной менее 6 байт.

2. Младшие биты каждого байта сообщения нулем.

3. В конец каждого фрагмента добавляется упаковочный байт, состоящий из исходных младших битов байтов этого фрагмента. Структура добавляемого байта показана в таблице 12.

Таблица 2.12. Структура дополнительного байта упаковки

Номер бита

Содержимое

0

0

1

0

2

Младший бит байта 0 фрагмента

3

Младший бит байта 1 фрагмента

4

Младший бит байта 2 фрагмента

5

Младший бит байта 3 фрагмента

6

Младший бит байта 4 фрагмента

7

Младший бит байта 5 фрагмента

Если фрагмент короче 6 байт, то лишние биты в упаковочном байте заменяются нулем.

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

0x03=00000011

0x07=00000111

0x0B=00001011

2.2 COM-порт

2.2.1 Общие сведения

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

Особенностью данного порта по сравнению с другими «последовательными» технологиями является факт отсутствия каких-либо временных требований между 2 байтами. Временные требования есть только между битами одного байта (включая старт, стоп и четность), величина, обратная временной паузе между битами одного байта, называется baud rate - скорость передачи. Также в этой технологии отсутствует понятие «пакет».

Другие «последовательные» технологии, такие, как X.25, USB или Ethernet, имеют понятие «пакет», и накладывают жесткие временные требования между всеми битами одного пакета.

2.2.2 Назначение COM-порта.

Наиболее часто для последовательного порта персональных компьютеров используется стандарт RS-232C. Ранее последовательный порт использовался для подключения терминала, позже для модема или мыши. Сейчас он используется для соединения с источниками бесперебойного питания, для связи с аппаратными средствами разработки встраиваемых вычислительных систем, спутниковыми ресиверами, кассовыми аппаратами, а также с приборами систем безопасности объектов.

С помощью COM-порта можно соединить два компьютера, используя так называемый «нуль-модемный кабель», рисунок 2.4.

Рисунок 2.4 - Нуль-модемный кабель

Использовался со времен MS-DOS для перекачки файлов с одного компьютера на другой, в UNIX для терминального доступа к другой машине, а в Windows (даже современной) - для отладчика уровня ядра.

Достоинством технологии является крайняя простота оборудования. Недостатком является низкая скорость, крупные размеры разъемов, а также зачастую высокие требования к времени отклика ОС и драйвера и высокое количество прерываний (одно на половину аппаратной очереди, т.е. 8 байт).

2.2.3 Аппаратура

Разъем имеет контакты:

· DTR (Data Terminal Ready - готовность к приёму данных) - выход на компьютере, вход на модеме. Означает готовность компьютера к работе с модемом. Сброс этой линии вызывает почти полную перезагрузку модема в первоначальное состояние, в т.ч. бросание трубки (некоторые управляющие регистры выживают после такого сброса). В UNIX это происходит в случае, если все приложения закрыли файлы на драйвере сериального порта. Мышь использует этот провод для получения питания.

· DSR (Data Set Ready - готовность к передаче данных) - вход на компьютере, выход на модеме. Означает готовность модема. Если эта линия находится в нуле-то в ряде ОС становится невозможно открыть порт как файл.

· RxD (Receive Data - приём данных) - вход на компьютере, выход на модеме. Поток данных, входящий в компьютер.

· TxD (Transmit Data - передача данных) - выход на компьютере, вход на модеме. Поток данных, исходящих из компьютера.

· CTS (Clear to Send - готовность передачи) - вход на компьютере, выход на модеме. Компьютер обязан приостановить передачу данных, пока этот провод не будет выставлен в единицу. Используется в аппаратном протоколе управления потоком для предотвращения переполнения в модеме.

· RTS (Request to Send - запрос на передачу) - выход на компьютере, вход на модеме. Модем обязан приостановить передачу данных, пока этот провод не будет выставлен в единицу. Используется в аппаратном протоколе управления потоком для предотвращения переполнения в оборудовании и драйвере.

· DCD (Carrier Detect - наличие несущей) - вход на компьютере, выход на модеме. Взводится модемом в единицу после установления соединения с модемом с той стороны, сбрасывается в ноль при разрыве связи. Аппаратура компьютера может издавать прерывание при наступлении такого события.

· RI (Ring Indicator - сигнал вызова) - вход на компьютере, выход на модеме. Взводится модемом в единицу после обнаружения вызывного сигнала телефонного звонка. Аппаратура компьютера может издавать прерывание при наступлении такого события.

· SG (Signal Ground - сигнальная земля) - общий сигнальный провод порта, не является общей землёй, как правило, изолирован от корпуса ЭВМ или модема.

В нуль-модемном кабеле используются две перекрещенные пары: TXD/RXD и RTS/CTS.

Стандартная (со времен оригинальной IBM PC) аппаратура порта называется UART 16550 (в настоящее время включена в SuperIO микросхему на материнской плате вместе с рядом иных устройств). Со времен IBM PC в ней появилась аппаратная очередь байт, которая сильно снижает количество издаваемых устройством прерываний.

2.3 Среда разработки Borland Delphi 7

Delphi - это достаточно новый продукт Borland International для быстрого создания приложений. Высокопроизводительный инструмент визуального построения приложений, работающих с базами данных в архитектуре клиент-сервер, а также для локальных машин и файл-серверной архитектуры. Этот инструментарий включает в себя настоящий компилятор кода и предоставляет

средства визуального программирования, несколько похожие на те, что можно обнаружить в Microsoft Visual Basic или в других инструментах визуального проектирования. Лежащий в основе Delphi язык - Object Pascal, который является расширением объектно-ориентированного языка Pascal (Turbo/Borland Pascal, начиная с версии 5.5). В Delphi также входят генераторы отчетов, библиотеки визуальных компонентов, и прочее хозяйство, необходимое для того, чтобы чувствовать себя совершенно уверенным при профессиональной разработке информационных систем или просто программ для Windows-среды. Поскольку в архитектуре клиент-сервер де-факто сложилось такое положение, что клиентские станции работают, как правило, в Windows-среде, а SQL-сервер - в операционной системе UNIX, Delphi Client-Server может служить удобным инструментом для скоростной разработки приложений архитектуре.

Преимущества Delphi по сравнению с аналогичными программными продуктами:

· Быстрота разработки приложения.

· Высокая производительность разработанного приложения.

· Низкие требования разработанного приложения к ресурсам компьютера.

· Наращиваемость за счет встраивания новых компонент и инструментов в среду Delphi.

· Удачная проработка иерархии объектов.

· Возможность разработки новых компонент и инструментов собственными средствами Delphi (существующие компоненты и инструменты доступны в исходниках).

Приложения, созданные в среде Delphi, отличаются повышенной надежностью. Встроенные механизмы RTTI и обработки исключений вместе со строго типизированным языком Object Pascal изначально закладывают в программы устойчивость к всевозможным сбоям, которые могут произойти в операционной системе, на SQL-сервере или непосредственно в вашей программе. Даже ничего не делая самому, всегда можно как минимум узнать, что произошла ошибка и где, а зачастую и получить исчерпывающую дополнительную информацию.

Всё это повлияло на выбор использовать продукт Borland Delphi в качестве среды разработки.

Размещено на Allbest.ru


Подобные документы

  • Постановка задачи и математическое описание ее решения. Назначение программного обеспечения. Описание принятых идентификаторов. Выбор языка программирования и написание программы на входном языке. Методика отладки программы и проведение ее тестирования.

    курсовая работа [96,1 K], добавлен 25.06.2013

  • Проектирование базы данных, информационной подсистемы PLC-Tester, модуля тестирования и web-приложения. Разработка логической структуры программного продукта и общие требования к техническому обеспечению. Запуск программы и описание тестовых прогонов.

    дипломная работа [3,2 M], добавлен 30.06.2011

  • Разработка технологии обработки информации, а также структуры и формы представления данных. Подбор алгоритма и программы решения задачи. Определение конфигурации технических средств. Специфика процесса тестирования и оценки надежности программы.

    курсовая работа [959,1 K], добавлен 12.12.2011

  • Назначение и архитектура экспертных систем, их применение в сфере образования. Экспертные системы тестирования, принципы их функционирования. Инструментальные средства создания приложения и разработка программы тестирования. Описание программы, листинг.

    дипломная работа [706,4 K], добавлен 07.05.2012

  • Анализ проектирования интерфейса программы. Выбор и назначение визуальных компонентов. Изучение экранных форм приложения. Модули, процедуры, функции проекта и их назначение. Листинг программного кода. Результаты работы автоматизированного продукта.

    курсовая работа [1,9 M], добавлен 11.12.2017

  • Разработка эскизного и технического проектов программы, ее назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка рабочего проекта, спецификация программы.

    курсовая работа [700,6 K], добавлен 26.01.2010

  • Выбор программных и аппаратных средств для создания базы данных. Описание структуры программы. Описание разработки приложения. Подключение к базе данных, выполняемое с помощью компонента ADOConnectio. Создание средств защиты информации в программе.

    курсовая работа [2,1 M], добавлен 16.02.2015

  • Анализ технических средств и современных технологий разработки программного обеспечения. Разработка программы для упрощения поиска студентов. Создание учетных записей администратора и обычного пользователя. Изучение правил построения программного кода.

    курсовая работа [1,9 M], добавлен 30.09.2016

  • Проектирование программы, реализующей синтаксический анализ простой программы на языке С: этапы создания, алгоритм ее функционирования, структура, технология обработки информации. Описание программных модулей, интерфейс; выбор инструментальных средств.

    курсовая работа [1,6 M], добавлен 12.12.2011

  • Разработка эскизного и технического проектов программы, ее назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка рабочего проекта, спецификация программы.

    курсовая работа [159,8 K], добавлен 26.01.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.