КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Функции движения
Lcd_robo51.h: LCD интерфейс библиотеки Sound_robo51.h: звуковая библиотека Delay_robo51.h: библиотека времени задержки Dc_motor.h: библиотека приводного двигателя Библиотеки Программирование Robo-51
Управления движением состоит из 4 основных файлов библиотеки: dc_motor.h, delay_robo51.h, и sound_robo51.h и lcd_robo51.h
motor_fd - запуск одного или двух двигателей в прямом направлении с 255 скоростным уровнем. motor_bk - запуск одного или двух двигателей в обратном направлении с 255 скоростным уровнем. motor_stop - торможение одного или двух двигателей (1, 2 и 3 -парам. значение).
delay_100us - время задержки в 100 мкс единицы (0 до 65535). Значение времени приблизительное. delay_ms - время задержки в 1 миллисекунду блока (0 до 65535). Значение времени приблизительное.
sound - создает звуковой сигнал. beep - создает звуковой сигнал на частоте 500 Гц длиной 0,1 секунда.
lcd_command - отправляет командный байт в ЖК-модуль. lcd_text - отправляет текстовый байт в ЖК-модуль. lcd_init – инициализирует LCD модуль для 4-битного режима интерфейса. lcd_putstr - отправляет сообщение на ЖК-модуль. inttolcd - преобразует числа в числовой текст и отправляет на модуль ЖК-дисплея. Есть 5 движений робота: вперед, назад, влево, вправо и тормоз. Вы можете изменить и улучшить dc_motor.h библиотеки и добавить больше функций.
run_fd – перемещение вперед (см. рис. 4.9):
Рисунок 4.9 – Перемещение вперед Эта функция будет вести оба двигателя в прямом направлении. Параметр этой функции time_spin. Это длительность движения вперед в единицу миллисекунды. С код этой функции приведен ниже:
#define pow 200 void run_fd(int time_spin) { motor_fd(2,pow); // Motor channel 2 forward motor_fd(1,pow); // Motor channel 1 forward delay_ms(time_spin);// Delay time for robot driving forward } run_bk– перемещение назад (см. рис. 4.10):
Рисунок 4.10 – Перемещение назад
Эта функция будет вести оба двигателя в обратном направлении. Параметр этой функции time_spin. Это длительность обратного движения в единицу миллисекунды. C код этой функции приведен ниже:
#define pow 200 void run_bk(int time_spin) { motor_bk(2,pow); // Motor channel 2 backward motor_bk(1,pow); // Motor channel 1 backward delay_ms(time_spin);// Delay time for robot driving backward }
turn_left: движение налево (см. рис. 4.11):
Рисунок 4.11 – Перемещение влево
Эта функция будет вести оба двигателя в разном направлении. М-2 двигатель - вперед и M-1 двигатель - в обратном направлении. Параметр этой функции time_spin. Это длительность движения влево в единицу миллисекунды. C код этой функции приведен ниже:
#define pow 200 void turn_left(int time_spin) { motor_fd(2,pow); // Motor channel 2 forward motor_bk(1,pow); // Motor channel 1 backward delay_ms(time_spin);// Delay time for robot spining turn left }
turn_ right: движение направо (см. рис. 4.12):
Рисунок 4.12 – Перемещение направо
Эта функция будет вести оба двигателя в разном направлении. М-2 двигатель – в обратном направлении и M-1 двигатель - в направлении прямо. Параметр этой функции time_spin. Это длительность движения вправо в единицу миллисекунды. C код этой функции приведен ниже:
#define pow 200 void turn_right(int time_spin) { motor_bk(2,pow); // Motor channel 2 backward motor_fd(1,pow); // Motor channel 1 forward delay_ms(time_spin); // Delay time for robot spining turn right }
Дата добавления: 2017-02-01; Просмотров: 52; Нарушение авторских прав?; Мы поможем в написании вашей работы! |