Разработка нижнего контура управления змееподобного робота

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



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

Таблица 3.4

СтандартEIA RS-232-C, CCITT V.24Скорость передачи115 Кбит/с (максимум)Расстояние передачи15 м (максимум)Характер сигналанесимметричный по напряжениюСхема соединенияполный дуплекс

Основными преимуществами использования RS-232C являются возможность передачи на большие (по сравнению с параллельным интерфейсом) расстояния и более простая схема разводки кабеля. Данные в RS-232C передаются в последовательном коде побайтно. Каждый байт обрамляется стартовым и стоповыми битами в добавок к ним может присутствовать и бит чётности, но как правило он не используется.

Современный компьютер имеет 25-контактный (DB25P) или 9-контактный (DB9P) разъем (более распространённый и в дальнейшем будет рассматриваться и подразумеваться только он) для подключения RS-232C. Распайка контактов для (DB9P).

Таблица 3.5. Порядок обмена по интерфейсу RS-232C

НаименованиеНаправлениеОписаниеКонтакт (DB9P)DCDINCarrie Detect (Определение несущей)1RXDINReceive Data (Принимаемые данные)2TXDOUTTransmit Data (Передаваемые данные)3DTROUTData Terminal Ready (Готовность терминала)4GND-System Ground (Корпус системы)5DSRINData Set Ready (Готовность данных)6RTSOUTRequest to Send (Запрос на отправку)7CTSINClear to Send (Готовность приема)8RIINRing Indicator (Индикатор)9

Назначение сигналов следующее:- защитное заземление (экран).- данные, передаваемые компьютером в последовательном коде - данные, принимаемые компьютером в последовательном коде - сигнал запроса передачи. Активен во все время передачи.- сигнал сброса (очистки) для передачи. Активен во все время передачи. Говорит о готовности приемника.- готовность данных. Используется для задания режима модема.- сигнальное заземление, нулевой провод.- обнаружение несущей данных (детектирование принимаемого сигнала).- готовность выходных данных.- индикатор вызова. Используется при соединение с модемом и приеме им сигнала вызова по телефонной сети. В нашем случае вообще не используется.

Для связи наиболее часто используются трех- или четырехпроводная связь (для двунаправленной передачи).

Использование двухпроводной линии связи возможно только в случае передачи из компьютера во внешнее устройство, при этом используются используются сигналы SG и TxD. Все 10 сигналов интерфейса задействуются только при соединении компьютера с модемом что в данном случае не актуально.

Данные соопровождаются стартовым битом, битом четности и одним или двумя стоповыми битами их количество не принципиально. Получив стартовый бит, приемник выбирает из линии биты данных через определннные интервалы времени. Очень важно, чтобы тактовые частоты приемника и передатчика были одинаковыми, допустимое расхождение - не должно превышать 10%.

Скорость передачи по RS-232C в соответствии со стандартом может выбираться из ряда: 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600 и 115200 бит/с. Очевидно что данная вольность в выборе скорости позволяет подобрать наиболее оптимальные условия для передачи данных.

Замечу, что данные передаются в инверсном коде т.е. логической единице соответствует низкий уровень, а логическому нулю - высокий уровень сигнала.

Обмен данными по последовательному интерфейсу осуществляется с помощью обращений по специально выделенным для этого портам COM1 (адреса 3F8hтАж3FFh, прерывание IRQ4), COM2 (адреса 2F8hтАж2FFh, прерывание IRQ3), COM3 (адреса 3F8hтАж3EFh, прерывание IRQ10), COM4 (адреса 2E8hтАж2EFh, прерывание IRQ11). Аналогичное описание присутствует и в документации к любому микроконтроллеру использующему данный интерфейс связи.

Однако возникает вопрос о достаточности скорости работы данного интерфейса при использовании протокола RS-232С с максимальной скоростью передачи составляющей 115200 бит/с. Разрешить подобный вопрос позволяет простая формула. Для расчёта по которой требуется знать скорость интерфейса, некоторые его особенности и количество байт требуемое для управления приводом (некоторым приводам требуется всего один байт, а некоторым 2 или даже 3 для управления, но этот параметр определяется особенностью самого привода)

Формула (для выяснения количества обновлений задания для привода за 1 секунду:

(3.1)

где i - количество обновления команд за 1 секунду, V - скорость канала,- количество приводов, S - количество байт требуемое для управления 1 приводом, k - служебные байты, предназначенные для активации контроллера, порядковый № привода, контрольная сумма, а 10 это количество бит передаваемых за одну посылку по протоколу RS-232С т.е. 8 бит даннных плюс один стартовый и один стоповый бит. Бит чётности не используется. Тогда для змеевидного робота Змеелок получается:

(3.2)

Что означает: за 1 секунду приводы могут максимально получить ~182 команды что более чем достаточно для реализации управления т.к. по расчётам минимально необходимое количество обновлений в секунду составляет 20 - 40 обновлений.

В связи со всем вышеизложенным на начальном этапе разработки змеевидного робота целесообразно направить усилия на создание многозвенного робота с проводным интерфейсом RS-232С с последующим переходом на интерфейс CAN или беспроводной ZigBee как более скоростные и современные.

3.5 Выбор микроконтроллера для управления змеевидным роботом

Следующий выбор который необх