Микроконтроллеры фирмы ATMEL - ATMegaXX схемы, программы, исходники |
ROBOSER или "робосер" родился совершенно случайно, но оказался до гениальности простым в изготовлении. Само название получилось из трех слов - РОБО (робот), С (Сидоров Андрей) - фамилии человека спаявшего схему и Р (Родичев Андрей) - фамилии скромного автора этих строк. Сложив все вместе вызвало крайнее веселье, что и послужило названием аппарата. На данной стадии "робосер" только исполняет команды, поступающие с пульта дистанционного управления от телевизора "SONY", а именно: кнопка "1" - левый мотор вперед, кнопка "4" - левый мотор назад, кнопка "2" - оба мотора вперед, кнопка "8" - оба мотора назад, кнопка "3" - правый мотор вперед, кнопка "6" - правый мотор назад, кнопки "5", "0" и "9" - стоп с проигрыванием мелодии, кнопка "7" и "VOL+" - высокая скорость, кнопка "_/_ _" и "VOL-" - низкая скорогсть. Почему пульт от "SONY" - ? Просто этот пульт очень просто поддается дешифровке команд. Кстати очень забавно получается если в комнате имеется работающий телевизор "SONY". ИТАК! Для повторения устройства потребуются два микроконтролера: ATMega8 и AT90S2313. Почему два? Очень просто: ATMega8 будет работать непосредственно как "мозг" аппарата, а AT90S2313 - тудет выполнять функцию "глаз" или "ушей". Самое главное - оба микроконтроллера общаются между собой по модифицированному протоколу RS232 (или USART). Тоесть, иными словами, - если завтра потребуется усложнить или дополнить систему - мы сможем легко это проделать используя внутренние порты микроконтроллера, просто добавляя или заменяя отдельные узлы аппарата. Принципиальная схема "РОБОСЕРа" представлена на рисунке: Схема соединений AT90S2313 была позаимствована со следующей схемы: IR detector подойдет от любого импортного телевизора. Сначала разбираемся где "+" где "-", а 3-я нога будет сигнальной. Я включал IR detector напрямую, без резисторов и прочей навески, единственно на моей схеме между "+" и сигналом установлены светодиод и резистор на 2,2 КОм, по моему эти детали привносят наглядности в схему. Programm Connect - разъем для программирования (заливки прошивок) в микроконтроллеры. Внимательно изготовьте разъем (на главной странице шнур для программатора есть) порядок подключения шнура - контроллера: GND - GND, MISO - MISO, MOSI - MOSI, SCK - SCK, RESET - RESET, т.е. один в один. Спикер подойдет от компьютера. Он крупный по габаритам, зато громко орет. RS232 (или USART), на схеме SV4 и SV3, во время программирования лучше разъединить. Иногда контроллеры не прошиваются со шнурком. Порядок подключения по RS232 (или USART) : RxD - TxD, TxD - RxD, GND - GND. Для AT90S2313 внешний кварц необходим. с 12 МГц он работать конечно будет, если только будет поданно стабилизированные 5В, а вот на 4МГц напряжение источника питания, при устойчивой работе устройства, может плавать от 4 до 6 В. Для ATMega8 внешний кварц необязателен, вполне справляется и внутренний генератор (вообщето внутренний может работать до 8МГц), надо правильно выставить конфигурационные биты. Разъем "Driver OUT" подготовлен под использование микросхемы-драйвера для шагового униполярного мотора. В моем случае это микросхема от TOSHIBA - TD62003P, рассчитанная на 5В нагрузку. Эта микросхема на редкость тупая, поскольку работает в ключевом режиме. Принципиально подойду микросхемы от того-же производителя - TD62001, TD62002, TD62003, от незнаю кого STA471A и т.д., все они являются простыми ключами - подача питания на вход производит пропускание тока между землей и выходом. Питание на AT90S2313 подается - +5В на 20 ногу , общий "-" на 10 ногу (внимательно посмотрите даташит на контроллер). Питание ATMega8 в планаре: +5В на 4, 6 и 18 ногу, общий "-" на 3, 5 и 21 ногу; в PDIP (это как старые микросхемы) +5В на 7 и 20 ногу, общий "-" на 8 и 22 ногу. Подключение униполярного шагового двигателя: Для 5 вольтовой схемы прекрасно подойдет шаговый двигатель с сопротивлением обмоток 22 - 28 Ом (сопротивление указывается в наклейке на корпусе двигателя). Соберите батарейный блок на 4 последовательно установленные пальчиковые батарейки (или аккумуляторы) как показано на рисунке. На шаговом двигателе есть колодка выводов, которая напоминает следующий рисунок: Подключаем +5В к центральному выводу, а минусовым последовательно касаемся четырех остальных выводов на двигателе. Нужно добиться такого положения при котором последовательное касание выводов приведет в перемещению ротора двигателя (шпинделя) только в ОДНОМ направлении. Обычно последовательность совпадает с нарисованным выше, но кто его знает... Микроконтроллеры и мотор, через микросхему-драйвер подключаем следующим образом. К остальным свободным входам и выходам микросхемы можно подключить, частично, второй мотор. Ну, если похожее, или подобное, устройство вами собрано то перейдем к программированию микроконтроллеров. |