Микропроцессорные устройства РТС и их программное обеспечение (1088972), страница 4
Текст из файла (страница 4)
Исполняемый модуль программы записывается в файлбез расширения. При выполнении приведённой выше в качестве примера командной строки будет полученисполняемый модуль, который будет записан в файл с именем main.Большинство программаторов, предназначенных для записи информации в память программмикроконтроллеров, не может работать с объектным форматом исполняемого модуля программы, поэтомудля загрузки машинного кода в процессор необходимо преобразовать объектный формат исполняемогомодуля в общепринятый для программаторов гексадецимальный формат. При преобразовании форматов всяотладочная информация теряется.
Машинный код процессора в гексадецимальном формате называетсязагрузочным модулем.Загрузочный модуль программы можно получить при помощи программы-преобразователя программыoh.exe, передав ей в качестве параметра имя файла исполняемого модуля программы, например:oh.exe mainВ результате выполнения этой командной строки будет получен загрузочный модуль программы, которыйбудет записан в файл с именем main.obj.Отладка программ.После того, как программные модули были успешно оттранслированы, размещены по конкретным адресами связаны между собой, для отладки программы можно воспользоваться любым из методов, показанных нарисунке 1:внутрисхемным эмуляторомвстроенным программным отладчикомвнешним программным отладчикомотлаживаемым устройством с записанным в память программ двоичным кодом программыВнутрисхемный эмулятор с отображением переменных языка программирования на дисплее компьютераоказывает значительную помощь при отладке программ непосредственно на разрабатываемой аппаратуре.Этот метод отладки предоставляет наиболее удобную среду, когда можно непосредственно в отлаживаемомустройстве останавливать программу, контролировать выполнение программы непосредственно поисходному тексту программы, состояние внешних портов и внутренних переменных, как входящих в составмикросхемы, так и объявленных при написании исходного текста программы.При отладке программы с использованием внутрисхемного эмулятора необходимо включать в объектныемодули символьную информацию.
Для этого используются директивы компилятора. В компиляторе языкапрограммирования PLM-51 возможны следующие действия:включение информации о типе переменных для проверки типов при связывании модулей. Эта жеинформация используется внутрисхемным эмулятором. Исключение информации о переменныхпользователя может использоваться для создания прототипов или для уменьшения размераобъектного модуля;включение или исключение таблиц символьной информации;конфигурация вызовов подпрограмм для обеспечения связывания с модулями, написанными наязыке программирования ASM-51;определение желаемого содержания и формата выходного листинга программы. Распечаткапромежуточных кодов на языке ассемблер после компилирования программ, написанных на языкепрограммирования PLM-51.
Включение или исключение листингов отдельных блоков исходноготекста.3. Многопроцессорные системы управления (МПСУ): основные структурныесхемы, централизованные и децентрализованные МПСУ. Иерархические МПСУ.Принципы организации обмена межпроцессорной информацией в МПСУ.Идея применения в управлении роботами не однопроцессорных, а многопроцессорных систем возниклапо следующим причинам: 1. робот – сложное устройство, следовательно, сложно написать программууправления. Для написания программы нужно будет много высококвалифицированных программистов илиразделение задач на тактический, приводной, стратегический, информационный уровни. Для каждогоуровня может быть децентрализация управления: отдельно выделены задачи взаимодействия уровней и др.Выполнение различных задач предполагает разные требования к МП.
Сложно найти одну такую машину.Поэтому применяют иерархические системы, это вызвано иерархией задач. 1. Вычислительная машина илимного ВМ. Не забудьте про реальное время – выбор интерфейса. Штыков А.В.Необходимость создания интеллектуальных мобильных роботов (ИМР), способных автономнофункционировать в условиях, опасных для жизни человека, назрела во многих областях науки и техники,например, при проведении космических и подводных исследований, при работе в зоне радиоактивного илихимического загрязнения, при создании безэкипажных боевых машин и т.
д.Однако до сих пор интеллектуальные роботы не выходят из стен лабораторий. Это связано с большимитрудностями как алгоритмического, так и аппаратурного характера, возникающими при создании системуправления подобных роботов.Постановка задачиС точки зрения алгоритмического обеспечения, на систему управления ИМР возлагается сложный комплексзадач, структура которого показана на рис.
1. В него входят такие задачи, как:_ обработка комплексной сенсорной информации (телевизионной, дальнометрической, тепловизионной и т.д.) и формирование на ее основе модели видимой зоны среды движения;_ накопление и корректировка базы знаний робота о среде на основе моделей, формируемых с помощьюсенсорных устройств;_ планирование оптимального движения робота к цели на основе накопленной в базе знаний информации осреде и принятие решения о текущем движении робота с учетом его динамических свойств;_ формирование управляющих воздействий на исполнительные устройства робота для отработкивыбранного движения;_ обработка навигационной информации и определение координат текущего положения робота в среде, атакже текущих значений его курса, крена и дифферента;_ определение целевого положения робота и обеспечение безопасности его движения в ближней зонепрепятствий.С точки зрения аппаратурной реализации, система управления ИМР должна отвечать двум основнымтребованиям: с одной стороны, она должна обладать быстродействием, достаточным для решениявозлагаемого на нее комплекса задач движения ИМР в реальном времени, а с другой стороны, должнаотвечать типичным требованиям к бортовым системам, то есть быть компактной, надежной и потреблятьмало энергии.Возможность решения всего комплекса задач, возлагаемых на систему управления ИМР на базеоднопроцессорного вычислительного устройства, очень проблематична.Проведенное моделирование показало, что для удовлетворения требований реального времениэквивалентная производительность такого устройства должна, по крайней мере, в 50_100 раз превышатьпроизводительность процессора Pentium 100, причем эти цифры существенно возрастают при увеличениискорости движения ИМР.
С другой стороны,жесткие требования к бортовому оборудованию, такие как малые габариты ивысокая надежность, ограничивают возможности использования сверхбыстродействующихсуперкомпьютеров для создания систем управления ИМР.Таким образом, к системе управления ИМР предъявляются следующие противоречивые требования: с однойстороны, она должна обладать высоким быстродействием, обеспечивающим возможность решения задачобработки информации и принятия решения в реальном времени, с другой стороны, она должна отвечатьжестким требованиям, предъявляемым к бортовым устройствам.
Решение данной проблемы лежит, по–видимому, на пути построения системы управления ИМР в виде многопроцессорной распределеннойсистемы, в которой каждый из процессорных узлов решает определенную часть комплекса задач,возлагаемых на систему.Практическая реализацияВ результате многолетних теоретических и практических исследований былразработан и создан целый ряд образцов многопроцессорных распределенных систем управления ИМРразличного назначенияНа рис.
3 показана обобщенная структурная схема многопроцессорной распределенной системы управленияИМР. В ее состав входят четыре основные подсистемы, а именно:_ подсистема восприятия информации,_ подсистема планирования движения,_ навигационная подсистема и_ исполнительная подсистема.Каждая из этих подсистем представляет собой самостоятельное вычислительное устройство, координацияработы которых осуществляется с помощьюцентрального процессора.Рассмотрим более подробно один из реализованных вариантов многопроцессорной системы управленияИМР. В качестве базовых были использованы вычислительные блоки, выпускаемые фирмой Advantech.Этот выбор объясняется компактностью и высокой надежностью аппаратных узлов, производимых даннойфирмой, что позволилообеспечить компактность и надежность системы управления ИМР в целом.В качестве центрального процессора в системе используется процессорныймодуль на базе процессора 486DX2_66.
На него возлагаются функции координации работы отдельныхподсистем, а также функции накопления и корректировки базы знаний робота о среде. Функции обработкисенсорной информации (дальнометрической и телевизионной) возлагаются в системе на два процессорныхмодуля, каждый из которых включает в себя плату сопряжения с соответствующим источникоминформации (телевизионной камерой или сканирующим лазерным дальномером) и плату обработки на базесигнального процессора TMS320. Особенность системы заключается в том, что задача планированиядвижения ИМР к цели решается в ней с помощью однородной нейроподобной структуры (ОНС),построенной на базе оригинальных СБИС фрагмента ОНС.
Необходимость использования ОНС спараллельным принципом обработки информации вызвана тем обстоятельством, что процессорыпоследовательного типа не справляются с решением задачи планирования движения в реальном времени.Так, напри_мер, время решения данной задачи на процессоре типа 486DX2_66 составляетдо 5 с, в то время как время ее решения при скорости движения ИМР в 15 км/чдолжно составлять не более 0,24 с.Плата ОНС содержит 4096 элементарных нейропроцессоров, объединенныхв одно решающее поле и реализованных с помощью 32 СБИС фрагмента ОНС.
С помощью ОНСпараллельно анализируются всевозможные варианты движения ИМР к цели и выбирается оптимальный,исходя из имеющейся в текущий момент времени в базе знаний информации о среде движения. Всеустройства, входящие в состав системы, связаны с центральным процессором по шине ISA, для чегоиспользуется пассивная объединительная плата фирмы Advantech, рассчитанная на 12 посадочных мест.Питание системы осуществляется с помощью блока питания PS_150/DC24, преобразующего бор_товое напряжение 24 В в напряжения, необходимые для работы отдельных обрабатывающих узлов.