Конструирование
робота для соревнований по кегельрингу в сельской школе.
на базе
микроконтроллера Atmega8.
1.
Введение.
Актуальность и значимость. Изучение робототехники на базе доступных
микроконтроллеров в сельской школе с учетом финансовых возможностей
малокомплектных школ. В настоящее время проблема формирования
технических знаний, умений и навыков у подростков приобретает особую значимость
и актуальность в связи с изменением ценностных ориентаций, когда гордость за
свои знания и руки (я это могу сделать сам!) сменило мышление «купи- продай», а
то и добудь нечестным или даже преступным способом.
Снизилось при отсутствии финансирования и количество кружков технического
направления из-за их дорогостоящей материальной базы.
Сократилось число обучающихся в ПТУ, т.к. упал престиж рабочих профессий.
Новизна. Позабытое старое. Нет необходимости изыскивать большие
финансовые затраты, все материалы доступно из старого бытового хлама, (кроме
двигателей с редукторами), и главное конструируя этого робота, учащиеся попутно
изучают и алгоритмы, в частности алгоритмы ветвления.
Сама конструкция робота позволяет
дальнейшее усовершенствование, в частности на плате выведены свободные разряды
портов, которые в случае необходимости можно запрограммировать для других
целей.
Цель
проекта.
Разработка и изготовление роботов с нуля с применением доступных материалов,
электронных компонентов с минимальной затратой финансовых средств в сельской
школе.
Задачи проекта:
2.
Анализ
простейших роботов
3.
Выбрать
подходящую конструкцию робота
4.
Изучить
вспомогательные компьютерные программы для рисования схем и изготовления
печатного монтажа.
5.
Изучить
программу codevision для
программирования микроконтроллеров AVR.
6.
Научиться
работать с программой Proteus 7 Professional – системой
схемотехнического моделирования.
7.
Прошивать
микроконтроллеры файлом прошивки.
8.
Собрать
робот для соревнований по кегельрингу на базе микроконтроллера Atmega8.
Стратегия
достижения поставленных целей. Реализация поставленных задач будет
происходить в 3 этапа: подготовительный, технологический, итоговый.
Подготовительный: анализ
простейших роботов, выбор компьютерных программ, выбор подходящей конструкции
робота с учетом деталей, накопление деталей и механизмов.
9.
Технологический:
составление и редактирование принципиальной схемы с учетом имеющихся деталей,
изготовление печатной платы, монтаж деталей на плату. Составление алгоритма
действия робота, программы на языке СИ, компилирование программы и тестирование
программы с помощью Proteus 7 Professional – системой схемотехнического
моделирования.
Итоговый. Сборка
робота в целом, прошивка микроконтроллера, настройка и тестирование робота.
При
изготовлении робота были приняты во внимание следующие факторы: доступность
материалов и деталей для изготовления робота (в финансовом плане), простота
конструкции робота, возможности робота по усовершенствованию действий,
повторяемость изготовления робота.
Данные
робота.
С учетом вышеизложенного был собран робот для соревнований по кегельрингу.
Программа составлена на языке программирования Си применительно для данного микроконтроллера.
Питание робота 6 Вольт, редукторы двигателей 1:48, электронная часть собрана
на микроконтроллере Atmega8 и драйвере
двигателей (устройство для управлениями двигателями) L293D.
Дизайн
проекта с учетом поставленной задачи (минимизации затрат) оставляет желать
лучшего.
ОСНОВНОЕ СДЕРЖАНИЕ.
Цель игры достаточно проста: за максимально
короткое время полностью автономный робот должен выбить из круга расположенные
в нем кегли. В качестве кеглей используются самые обычные жестяные банки из-под
напитков. Банок всего 8, и они равномерно располагаются на ринге: в каждой
четверти ринга должно находиться не более двух банок. Банки ставятся на
расстоянии 12-15 сантиметров от широкой черной ограничительной линии. Ширина
черной линии - 5 см. Диаметр ринга - 1 м., цвет - белый. Традиционным
материалом для изготовления ринга служит обычный ватман.
Ограничений не слишком много: допускается
использование любых конструкций, которые не превышают размер 20 см. по ширине и
длине. Высота и вес робота не ограничиваются. Робот не должен иметь каких-либо
приспособлений для выталкивания банок и выбивать их с ринга исключительно своим
корпусом. Во время соревнования размеры робота должны оставаться неизменными.
Кроме того, запрещено использование каких-либо клейких приспособлений на
корпусе робота для сбора кеглей.
1.Подготовительный этап.
С учетом возможностей школы, а также
новизной проекта была выбрана схема робота бегущего по линии как наиболее
простого и доступного в изготовлении. Были выбраны следующие программы:
1. Для составления программы на
языке СИ и ее компилирования выбрана программа Codevision, которая
позволяет создать проект по составлению программы на языке Си, проверить ее
на ошибки и получить файл прошивки для микроконтроллера.
2.
Для
схемотехнического моделирования используется программа Proteus 7
Professional .
3.
Для
прошивки микроконтроллера используется программа Khazama AVR Programmer
4.
Программа
для составления печатных плат Sprint-Layout.
5.
Программа
для рисования электрических схем Splan
2.Технологический
А)Схема робота
Робот изготовлен с применением
микроконтроллера Atmega8,
драйвера двигателей L293. Он
имеет 5 датчиков освещенности, составленных из пары светодиод – фототранзистор
(из них задействованы только три датчика путем подбора из 5). Светодиоды и
фототранзисторы применены из неисправных извещателей пожарной охраны. Проводимость
фототранзистора зависит от интенсивности падающего на него отраженного от
поверхности светового потока. Интенсивность светового потока зависит от
отражающей способности поверхности: белый отражает больше, черный меньше. Два
крайних датчика управляют двумя двигателями, когда они находятся над белым
участком , соответствующие двигатели включены и робот движется вперед. Когда
один из крайних датчиков наезжает на линию (черную), соответствующий двигатель
останавливается и происходит поворот робота.
Микроконтроллер Atmega8
допускает режим многократного внутрисхемного программирования, т.е. его можно
загрузить программой не вынимая из схемы робота.
Б) Пишем программу для робота на языке
программирования СИ с помощью программы Codevision
Условно
алгоритм действия робота состоит в повторении одного бесконечного цикла,
которая повторяется все время с момента включения напряжения питания.
В цикле проверяются состояния датчиков, и
в зависимости от комбинации состояний датчиков включается тот или иной
двигатель.
Алгоритм действия робота:
1.В начале робот устанавливается в центре
ринга. При этом оба датчика освещены и включаются оба двигателя вперед. (Робот
движется по радиусу к черной линии).
2. При достижении черной линии,
ограничивающей круг любым из двух датчиков, останавливается двигатель
управляемый этим датчиком, а второй двигатель продолжает работать до момента
достижения второго датчика границы круга. Таким образом происходит выравнивание
робота по отношению к кругу.
3. Когда оба датчика находятся на линии
круга, включаются оба двигателя назад на 0,8 сек. (время подбирается с учетом
достижения робота центра круга) и робот возвращается в центр круга.
4. Совершается поворот на 45 градусов
(время поворота подбирается) с помощью двух противоположно вращающихся
двигателей.
5.Начинается движение вперед и все
повторяется сначала.
Проверяем правильность написания
программы, ошибок не должно быть ( No errors)
Получаем файл прошивки и сохраняем
его.
Для схемотехнического моделирования используется
программа Proteus 7 Professional. Вначале на монтажном столе
собираем схематически нашу схему робота, основой которого является
микроконтроллер Atmega8,
двигатели заменяем светодиодами, для наглядности датчики заменим
кнопками-выключателями. Загружаем в память микроконтроллера нашу
программу-прошивку и запускаем. Нажатием соответствующих кнопок имитируем
срабатывание датчиком…убеждаемся в правильности работы робота.
Далее необходимо прошивку загрузить в
микроконтроллер, для этого используем программу программатор Khazama AVR Programmer
Выбираем тип микроконтроллера, очищаем
флеш-память и загружаем в память микроконтроллера нашу программу (полученную
нами прошивку).
В) Печатный монтаж составлен с помощью
программы Sprint-Layout 5.0Rus
Макет печатного монтажа распечатывается на
фотобумаге, затем с помощью утюга переносится на фольгированный
стеклотекстолит и травится в растворе хлорного железа.
После просушки происходит лужение платы в
кипящей воде со сплавом Розе, температура плавления которого составляет 93
градуса. ( Технология ЛУТ - лазерно-утюжная технология). Сверлим, устанавливаем
детали, запаиваем. Плата готова.
Точно также готовим печатную плату
для установки датчиков.
Затем собираем все платы робота на шасси с
двигателями, устанавливаем кассету для аккумуляторов.
Общий
вид робота
Робот
изготовлен с применением следующих составных частей:
1.
Покупные:
1.Шасси
автомобиля с установленными двигателями с редукторами
2.Кассета
для 4-х пальчиковых батареек.
3.
Микроконтроллер Atmega8
4.Драйвер
двигателей L293
2. Изготовленные в школе:
1.
Плата с датчиками освещенности.
2.
Монтажная
плата робота
Робот передвигается с помощью двух электродвигателей
постоянного тока на 6 Вольт. Двигатель с редуктором 1:48 собраны в одном
корпусе в единое целое. Робот снабжен 5-ю датчиками, определяющими его
положение относительно линии.
3.Итоговая.
Собираем работ. Для этого берем за основу шасси игрушечного автомобиля с
установленными двигателями с редукторами 1:48. Собираем датчики в линейку,
выполним электрическое соединение всех составляющих робота. Строим площадку для
робота, рисуем черную линию шириной 50 мм и испытываем робот в действии.
Заключение.
С
учетом поставленной задачи израсходовано всего финансовых и материальных
средств на робота:
1.
Шасси
автомобиля с установленными двигателями – 1 шт. (610 руб.)
2.
Хлорное
железо – 100 гр.- 50 руб.
3.
Транзисторы,
резисторы, микросхемы, конденсаторы в пределах 100 руб. (на два робота)
4.
Микроконтроллер
Atmega8
-120 руб.
5.
Драйвер
двигателей L293D – 80 руб.
Итого: 970
рублей, что для нас вполне приемлемая сумма.
Выводы:
Тестирование данных роботов показала приемлемую работу робота. В зависимости
от отражающей способности рабочего стола иногда возникает необходимость
механического регулирования расстояния от датчиков до рабочей площадки. Данная
конструкция робота может быть использована и для гонок по линии, для чего
необходимо изменить прошивку микроконтроллера.
Литература:
1.http://robomir.ucoz.ru/
Каталог статьей - роботы,
программирование, AVR
микроконтроллеры
2.
http://myrobot.ru
Роботы, робототехника, микроконтроллеры
3. http://radiomaster.com.ua/shema/page/2/
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.