Умный робот своими руками. Альтернативный контроллер для роботов

13.04.2019
Зачем нужна отладочная плата?
При изучении программировани микроконтроллеров очень важно не оставлять все в теории, а сразу же реализовывать идеи на практике. Можно делать это по разному, например, гонять в симуляторах или собирать на макетке. Но у этих двух методов есть существенные недостатки.
  1. Работа в симуляторе часто отличается от работе в железе.
  2. При сборке на макетной плате можно совершить ошибку и сжечь контроллер или подключить что-либо не так. А потом долго искать ошибку, пытаясь понять почему не работает код, хотя проблема то вовсе не в коде.
  3. В любом случае потребуется собирать или покупать программатор/интерфейс связи с компьютером
Отличным полигоном для устранения этих проблем является отладочная плата . Это плата где уже все правильно подключено и разведено. Функционирование железа можно проверить на эталонной демопрограмме, а встроенные системы отладки и прошивки позволяют заливать новую прошивку в кристалл одним движением. Остается только экспериментировать, не отвлекаясь на посторонние факторы.
Также отладочная плата служит удобным средством для быстрого прототипирования и обкатки узлов, проверке идей и методов. Собрать на демоплате, проверить, что идея работает, подкорректировать как нужно, а после уже отлаженный код использовать в реальном проекте. Я таким образом и разрабатываю свои устройства. Экономит массу времени.

Почему именно Pinboard?
Существует очень много разных отладочных плат. Каждый производитель контроллеров, а также множество сторонних разработчиков делают отладочные платы. В чем же ключевое их отличие от моей платы? Что я ставил во главу угла при проектировании плат серии Pinboard

  1. Полная свобода конфигурации контроллера. Выводы контроллера жестко не определены и никуда не подключены по умолчанию. Мы можем проводными перемычками подключать их как угодно и куда угодно. А на самые логичные и очевидные направления подключения можно делать джамперами.
  2. Встроенные средства отладки. В большинстве отладочных плат нет даже программатора. Его надо покупать отдельно. А я же старался реализовать не только прошивку контроллера платы, но и внутрисхемную отладку. Так что моя плата, в перспективе, может служить в качестве программатора-отладчика для ваших самостоятельных устройств.
  3. Начиная с версии II плата становится модульной . Теперь на одну базу можно будет подключать модули под разные контроллеры, изучая сразу несколько семейств контроллеров. А также разные модули расширения, реализующие таки сложные интерфейсы как, например, Ethernet. Модули также разрабатывают самостоятельно пользователи платы и выкладывают на форуме.
  4. Максимальная универсальность элементов платы. Каждую микросхемку, каждую кнопочку, каждый узел я старался подключать так, чтобы его можно было использовать независимо, сам по себе, для своих нужд, а не только для какой то конкретной роли.
  5. Наличие средств ввода и индикации -- кнопки, светодиоды, энкодер, LCD символьные индикаторы, а также обязательный интерфейс для связи с компьютером. Все это уже есть на борту! Одной только платы, без покупки чего либо еще , достаточно для освоения множества возможностей контроллера
  6. Наличие на плате простейших аналоговых цепей. Фильтры, ЦАП, на борту имеются одиночные транзисторы и переменные резисторы, которые могут понадобится при создании простейшего узла. А также небольшая макетная панель для сборки узлов из рассыпухи.
  7. Возможность гибкого управления питанием . Заданием разных напряжений, а также источников питания.
  8. Поддержка платы производителем. Все примеры работы с микроконтроллерами на сайте пишутся с использованием плат серии Pinboard. Под плату существует специализированая ветка форума, где я стараюсь ответить на любой вопрос. Вывести из тупика и найти решение. А также довольно большее сообщество пользователей, способных также дать грамотный совет.
  9. Гарантийное и постгарантийное обслуживание . Даже если вы сами умудритетсь, что то спалить, то я постараюсь максимально помочь вам в ремонте, либо проведу ремонт своими силами по себестоимости (доставка в оба конца + стоимость детали).
Для большего числа подробностей по каждому узлу рекомендую ознакомиться с конкретным набором из ниже предложеных: 21 ноября 2013 в 18:53

Альтернативный контроллер для роботов

  • Блог компании Грамбо

Мы разработали первую версию универсальной платы, которая может служить, как простым блоком питания с изменяемым напряжением и током, так и продвинутым контроллером для разного рода устройств, начиная со светодиодных лампочек, шаговых моторов, и термодатчиков до полноценных полностью автономных роботов! Рабочее название - Grambo Pi (Grambo - это английский Громозека, а Pi - это от Raspberry Pi).


Grambo Pi - программируемая плата управления на базе микроконтроллера ARM Cortex M3. Она может служить для разнообразных задач, связанных с управлением устройствами и автоматическим получением показаний датчиков. Плата может служить источником напряжения, работать как зарядное устройство для аккумуляторов разных типов, может управлять электродвигателями с максимальным длительным током до 600мА и кратковременным - до 1200мА, имеет схему управления осветительным светодиодом. При проектировании платы была заложена возможность служить источником питания для одноплатного компьютера Raspberry Pi. Плата имеет набор датчиков: термометр, акселерометр и компас, что позволяет использовать плату как систему ориентации для движущихся устройств. С внешними устройствами плата может общаться, используя набор стандартных интерфейсов обмена данными: USB, последовательный порт, I2C (мастер и слейв). Функциональность платы может расширяться за счёт подключения плат расширения!

В плату встроена виртуальная машина, исполняющая байт код, получаемый после компиляции программ, написанных на языке Pawn. Байт код записывается во FLASH память и начинает исполняться каждый раз при подаче питания на плату. Поведение платы и обмен данными с внешними устройствами определяется той программой, которая в неё загружена.

Предусмотрено три основных способа использования платы:

  1. как автономного устройства, работающего самостоятельно;
  2. как устройства, управляемого от компьютера через шину USB;
  3. в связке с одноплатным компьютером Raspberry Pi.

В последнем случае плата не только может управляться компьютером Raspberry Pi, но и служить для него умным источником питания. Например, плата может быть настроена (программой на Pawn, загруженном во внутреннюю FLASH память) как ATX подобный источник питания, включающий и выключающий компьютер по нажатию кнопки или как источник питания, включающийся по расписанию.

На плате установлены программно настраиваемые преобразователи напряжения. Для каждого преобразователя есть возможность задания желаемого выходного напряжения и ограничения максимального входного тока. Для повышающего преобразователя также есть возможность задания минимального входного напряжения. Последнее позволяет использовать плату для получения энергии от солнечных батарей в точке с максимальной мощностью на I-V характеристике батареи.

Возможность подключения перезаряжаемого аккумулятора и солнечной батареи даёт возможность получать решения, не зависящие от стационарных источников энергии. В этом случае плата и подключенные устройства могут работать в любом месте, где есть солнечный свет. Требовательный к энергии компьютер может включаться время от времени, когда в аккумуляторе достаточно энергии для его питания.

Плата предусматривает три способа подачи питания:

  1. через вход понижающего преобразователя;
  2. через вход повышающего преобразователя;
  3. через разъём USB.
В последнем случае ток, получаемый платой, предварительно аппаратно ограничивается величиной в 400мА, после чего поступает на вход настраиваемого повышающего преобразователя напряжения.

Полный список периферийных устройств на плате:

  • 3-х координатный акселерометр;
  • 3-х координатный компас;
  • цифровой и аналоговый термометры;
  • контроллер 2-х двигателей постоянного тока (или одного биполярного шагового или 4 независимых индуктивных нагрузок) со встроенными защитными диодами;
  • step down преобразователь на 3.3V для питания периферии;
  • настраиваемый понижающий преобразователь с диапазоном выходного напряжения от 0В до 16В, ограничение входного тока от 0А до 3А;
  • настраиваемый повышающий преобразователь с диапазоном выходного напряжения до 16В, входной ток может быть ограничен от 0А до 3А.
  • аппаратный ограничитель тока через USB до 400мА;
  • последовательный порт UART;
  • I2C master;
  • I2C slave;
  • схема питания осветительного светодиода;
  • разъём совмещения с Raspberry Pi;
  • разъём подключения плат расширения;
Все периферийные устройства могут использоваться из внутренней Pawn программы.

Использование Raspberry Pi вместе с Grambo Pi позволяет разрабатывать решения практически любой сложности. Начиная с систем включения и выключения по заранее заданному расписанию с целью экономии потребления энергии и кончая системами, которые требуют полной компьютерной мощности для выполнения таких задач, как обработка видео в реальном времени и поддержка веб приложений!


Функциональность платы Grambo Pi может быть увеличена с помощью специально разработанных плат расширения, которые также просто стыкуются друг c другом. Можно подключать несколько плат одновременно.




Платы расширения могут быть разными. Представленная на рисунке имеет следующие устройства:

  • 8 разъёмов ШИМ, совместимых с разъёмами аналоговых сервомашинок;
  • контроллер 4-х двигателей постоянного тока, либо 2-х биполярных шаговых двигателей;
  • 8 аналоговых входов АЦП с диапазоном от 0В до 3.3В;
  • 8 цифровых входов (например, для детектирования нажатий на кнопку);
Для простоты отладки в каждой плате предусмотрено несколько программно управляемых индикаторных светодиодов, которые могут быть использованы для визуальной отладки или для оповещения о состоянии.

Существует несколько вариантов программного взаимодействия с платой Grambo Pi:

  • Библиотека C++;
  • Модуль Python для взаимодействия через порт USB;
  • Модуль Python для взаимодействия через порт I2C (в случае подключение к Raspberry Pi);
Со стороны платы коммуникация с компьютером и управление периферийными устройствами осуществляется виртуальной Pawn машиной.
Вопросы к хабражителям
Ценители робототехники, интересен ли был бы вам такой модуль? Купили бы вы экземпляр для тестирования? Или собрали бы лучше свое устройство на платформе Arduino? Не так давно я начал интересоваться микроконтроллерами. Сперва сделал простой программатор для AVR от LPT порта. Потом начал собирать всякие устройства с их применением. Все бы хорошо, но не покидал вопрос «а как это работает?». Имея немного свободного времени, скачал с интернета пару книг по программированию микроконтроллеров AVR. Сел и начал изучать. Сперва ничего не мог понять. Мозг кипел, и хотел вырваться наружу. Через несколько недель вроде стал понимать суть вопроса. Начал с ассемблера. Попрактиковался в AVR Studio мигать светодиодами. Позже перешел на C . На нем писать легче. Но все же надо начинать с ассемблера - так легче понять, как работает микроконтроллер и что это вообще такое. Тестировал свои прошивки в Proteus . Было интересно, но не то... Хотелось попробовать в железе. Не хочу сказать, что я крутой программист – просто начинающий кодер.

Схемы, как таковой, нет. Все подключения стандартные из даташита. Кто захочет писать программы - тот разберется. Да и резисторы могут отличаться от указанных на плате в довольно широких пределах. Все выходы тоже подписаны. Так что схему отдельно не составлял, но архив с печатной платой имеется .


В сети начал подыскивать готовый вариант отладочной платы. Подходящую для себя не нашел. Были или слишком маленькие, или большие. Натыкать на плату дохрена чего, а после некогда не подключать. Развел свой вариант отладочной платы под Atmega8 . Поставил пару кнопок, светодиодов и бузер. Предусмотрел разем для подключения внешнего кварца.


Еще приделал два дисплея. Один символьный ЖК дисплей, а другой семисегментный индикатор. Подвел к ним питание.


Так же на отдельной плате установил дисплей от мобильного телефона Nokia-1202 .


Библиотеки для работы с этим дисплеем нашел в интернете. Все ножки контролера, дисплеев, кнопок и светодиодов выведены на соединительные штырьки. Соединение проводиться проводами с напаяними на них контактами.

Устройство является универсальной системой для отладки микроконтроллеров AVR. Плата не привязана к конкретному микроконтроллеру, а имеет универсальный разъем, к которому можно подключить модуль с любым микроконтроллером. На данный момент разработаны модули для микроконтроллеров:
- ATmega8
- ATmega16
- ATmega162
- ATtiny2313
- ATtiny13

Но ничего не мешает разработать модули и под другие микроконтроллеры. Устройство включает в себя программатор USBASP и может быть полностью запитано от USB или внешнего источника питания. Устройство включает в себя все необходимое для отладки: ЖК и светодиодные дисплеи, часы реального времени и EEPROM память, интерфейсы RS232 и RS485, разъем для подключения клавиатуры, кнопки, светодиоды и многое другое. Части устройства соединяются между собой при помощи специальных проводов, перемычек и переключателей. Некоторые части постоянно соединены с портами выбранного микроконтроллера (например, LCD), что убирает проблему спутанных проводов.

Описание констукции

Так как проект является сложным, схема разделена на несколько частей.

Наиболее важная часть всего устройства, которая управляет процессорным модулем и остальной частью устройства. К этой части подключаются светодиодные дисплеи, таймер и I2C интерфейс, UART и инфракрасный приемник. На микроконтроллере U6 (ATmega8) собран программатор USBASP. Для корректной работы необходим кварц X1 (12 МГц) и конденсаторы C9 (22pF) и С10 (22pF). Резистор R27 (10k) подтягивает вывод сброса микроконтроллера к плюсу. Резисторы R31 (470R) и R32 (470R) ограничивают ток светодиодов D3 и D4. Резистор R58 (470R) играет ту же роль для светодиода D1. KANDA - это разъем ISP. Конденсаторы C12 (100nF) и С11 (4,7 мкФ) - фильтрующие. Для правильной работы шины USB необходимы резисторы R29 (68R) и R30 (68R), стабилитроны D1 и D2 (3,6 V). Резистор R28 (2,2 кОм) необходим для того, чтобы устройство определялось компьютером как работающее на малой скорости. Отладочная плата подключается к компьютеру через разъем ZUSB1 (USB-B).

U3 и U4 (DS18B20) - это датчики температуры работающие по шине 1-wire. Для правильной работы шины необходим резистор R24 (4,7 кОм). 1WR_OUT разъем позволяет подключать дополнительные датчики, а разъем 1WR обеспечивает связь с модулем микроконтроллера. PS2 разъем (Mini DIN6) есть не что иное, как разъем для подключения клавиатуры персонального компьютера. Резисторы R59 (4,7 кОм) и R60 (4,7 кОм) подтягивают шину данных и вывод "Clock" к плюсу. Разъем KBD обеспечивает связь с модулем микроконтроллера. Клавиатура питается от внешнего источника питания +5 В.

На плате имеется дополнительный генератор частоты 16 мГц. Также имеется дополнительный кварцевый резонатор X3 и два конденсатора C16 (22pF) и С17 (22pF) для любых целей.

ZUSB2 в связке с элементами C18 (100nF), C19 (4,7 мкФ), R48 (68R), R49 (68R) и стабилитронами D8 (3,6 V) и D9 (3.6 V) предназначены для отладки произвольных устройств, с подключением к порту USB. Резистор R47 (2,2 К) может быть отключен с помощью перемычки ZW7, благодаря этому возможно использовать USB порт для получения питания без уведомления о устройстве USB.

W1 LCD (20x4) является главным элементом для отображения данных. Резистор R3 (47R) ограничивает ток подсветки, которая активируется транзистором Т1 (BC556) и резисторами R1 (3,3 кОм) и R2 (3,3 кОм) перемычкой ZW1. Потенциометр P1 (10 кОм) позволяет установить контрастность дисплея. Перемычка PW4 включает дисплей. Переключатель SD1 (SW6) служит для отключения линий управления дисплеем, подключенным к главному процессору (можно не ставить).

Транзисторы T2 - T5 (BC556) и резисторы R4-R11 (3,3 кОм) контролируют аноды 4-х разрядного LED дисплея W2. Резисторы R12 - R20 (330 Ом) ограничивают ток через сегменты дисплея. Переключатели SD2 (SW4) и SD3 (SW8) служит для отключения линий управления дисплеем, подключенным к главному процессору (можно не ставить). Разъем W2L используется для подключения центральных точек к процессору.

U9 (TL431) с резисторами R45 (330 Ом) и R46 (10 кОм) и потенциометром P2 (1 кОм) является источником опорного напряжения около 2,56 В. Выход через разъем VREF. Пьезо пищалка с генератором BUZ1 (5В) управляется при помощи транзистора T12 (BC556) и резисторов R40 (3,3 кОм) и R41 (3,3 кОм). Управление зуммером осуществляется через разъем BUZ. Также на плате установлен фототранзистор T7 (L-93P3BT). Резистор R33 (10 кОм) ограничивает ток, протекающий через него. Выход фототранзистора через разъем FOT.

Для преобразования уровней COM порта используется популярная микросхема MAX232 (U1). Для правильной работы требуются конденсаторы С1 - С4 (1 мкФ). Первый выход UART непосредственно подключен к процессорному модулю через переключатель SD4 (SW2). Второй выход UART выведен на разъем и может использоваться для любых целей. С MAX232 через разъем V- снимается отрицательное напряжение (выход инвертора). Это может использоваться для смещения в различных схемах. MAX232 отключается от источника питания с помощью перемычки Pw1.

Перемычка PW2 включает микросхемы, работающие на шине I2C. Резисторы R25 (3,3 кОм) и R26 (3,3 кОм) необходимы для правильной работы шины I2C. Шина I2C подключены к процессорному модулю через переключатель SD5 (SW2). Микросхема U5(AT24C256) - EEPROM память. Диоды D6 (1N4148) и D7 (1N4148) с батареей BAT1(3 В) - источник бесперебойного питания для RTC, микросхемы U7(PCF8583). Перемычкой Zw4 вы можете отключить батарею, а перемычкой ZW3 можно установить адрес U7 160 или 162. Конденсатор C14 (100 нФ) - фильтрующий, и должен располагаться как можно ближе к микросхеме U7. Конденсатор С13 (33 пФ) и кварц X2 (32,768 кГц) обеспечивают точный ход часов. Прерывание от микросхемы U7 выведено на разъем PCF_INT.

На плате установлены два светодиодных дисплея - уровня W3 и W4. Резисторные сборки RP1 (4x470R), RP2 (8x470R) и RP3 (8x470R) ограничивают ток через сегменты дисплеев. Дисплеи соединены с процессорным модулем через разъемы LED1 и LED2. Также на плате установлены RGB светодиоды D13 и D14, с токоограничительными резисторами R63 (180R), R64 (100R), R65 (180R), R66 (180R), R67 (100R) и R68 (180R). Перемычки Zw11 и Zw12 необходимы для включения катодов светодиодов к земле или к транзисторам.

Разъемы V1 - V3, V4 - V9 являются источником питания +5 В. Разъемы G1 - G3, G4-G8 - земля.

Микросхема U8 (ULN2803) предназначена для управления низковольтными нагрузками. Управляющий сигнал подается на разъемы Z3 и Z4. Выход на разъемы ULN1 - ULN4. В связи с высоким потреблением энергии микросхема U8 получает питание от внешнего источника. Разъемы Z1 и Z2 соеденины с разъемами с винтовыми фиксаторами ZU1 - ZU4. Симисторы TR1 (BT138-600E) и TR2 (BT138-600E) с оптопарами OPT1 (MOC3041) и OPT2 (MOC3041) и резисторами R34 (180R), R35 (180R), R37 (180R) и R38 (180R) позволяют управлять нагрузкой 220 В. Резисторы R36 (330R) и R39 (330R), ограничивают ток, протекающий через оптопары. Выход через разъемы с винтовым фиксатором TRO_1 и TRO_2. Управляющий сигнал подается на разьем TR1 Варисторы WR1 (JVR-7N431) и WR2 (JVR-7N431) защищают выход. Панельки PD28 (DIL28) и PD40 (DIL40) предназначены для установки любых микросхем, их выводы разведены на разъемы PDG1 - PDG4.

Выводы энкодера I1 разведены на разъем IMP, перемычка ZW2 используется для подключения земли или +5 В к энкодеру. Конденсаторы C20 (100nF) и C21 (100nF) необходимы для подавления помех. На плате есть также оптропара OPT3 (CNY17) для любых целей. R43 (330R) ограничивает ток светодиода оптропары. R44 (10k) и R42 (100k) подтягивают выводы к питанию. Перемычками ZW5 и ZW6 можно подключать светодиод оптопары к +5 В или на землю. Выход через разъем CNYO.

Кнопки S1 - S8 подключены к разъему SW. Кнопки S9 - S24 образуют матрицу. Столбцы клавиатуры подключаются через разъем SWC, а линейки через разъем SWR.

Разъем ZAC (Molex 2x2) необходим для подачи внешнего питания +5 В с более высоким током. Реле PU1 (HFC-005-12W) необходимо для переключения питания от USB или от внешнего источника питания при условии, что установлена перемычка ZW8. Светодиод D11 и резистор R61 (470R) установлены для сигнализации работы реле. Диод D12 (1N4007) защищает от скачков на катушке реле напряжения при выключении питания. Выключатель питания позволяет отключить питание от USB (запитываться будет только программатор), светодиод D15 с резистором R69 (470R) указывают на этот факт.

Микросхема U2 (TSOP1736) представляет собой ИК-приемник работающий на частоте 36 кГц. Для правильной работы необходимы элементы C8 (100 мкФ) и R23 (220R). Также на плате установлен инфракрасный светодиод D5 (SFH485). Резистор R22 (10R) ограничивает ток. Конденсаторы C6 (100 нФ) и С7 (100 мкФ) - фильтрующие. Транзистор T6 (BC516) управляет инфракрасным светодиодом. База транзистора соединена с процессором через переключатель SD6 (SW2). Резистор R21 (10 кОм) ограничивает ток базы транзистора T6, и R21 * (10 кОм) подтягивает базу транзистора к +5 В. Это предотвращает произвольное включение ИК-светодиода, когда он не используется. Перемычка PW3 включает питание для приемника и ИК-передатчика.

Транзисторы T8 - T11 (BC556) с резисторами R50 - R57 (3,3 кОм) могут использоваться для управления низковольтными нагрузками. Управляющий сигнал подается на разъем Z5. Выход через разъемы с винтовыми фиксаторами ТО1 и ТО2

ATMega 8

ATMega 162

ATTiny 13

ATtiny2313

Изготовление

Устройство изготавливается на основе печатной платы (В конце статьи). Плата не сложна в сборке, но устанавливать придется много элементов. В случае ошибки в установке это будет трудно найти и исправить. Установка начинается с пайки всех перемычек (16 штук). Некоторые перемычки находятся под микросхемами. Далее устанавливают все резисторы, конденсаторы и другие мелкие детали. В последнюю очередь устанавливают микросхемы.

Плата изготавливается из текстолита 1,5 мм и крепится к подставке из металла (см. фото проекта). На всех микросхемах рекомендуется использовать панельку. Вместо датчиков DS18B20 припаяна панелька DIL6. Благодаря этому можно заменять датчики и считывать серийные номера для различных целей. Подробности изготовления платы можно увидеть в разделе "Фотографий проекта".

Перед включением платы нужно проверить плату на предмет коротких замыканий с помощью мультиметра, особенно проверить короткие замыкания между GND и +5В, так как плата подключается к порту USB.

Список деталей

21x Разъем с винтовым фиксатором двойной
1x Разъем с винтовым фиксатором тройной
Разъемы PLS
1x 2x2 MOLEX разъем
2x Панелька цанговая DIL6
1x Панелька цанговая DIL28
1x Панелька цанговая DIL40
1x Панелька цанговая DIL16
1x Разъем ISB(10PIN)
2x Разъем USB - B
1x Разъем PS2
1x Разъем DB9F
1x Разъем DB9M
1x Батарейка 3V (CR2032) + Держатель
1x 2-х позиционный переключатель
25x Кнопка без фиксации
1x Энкодер
1x Реле HFKW-005-1ZW
4x DIP-переключатель SW2
1x DIP-переключатель SW4
1x DIP-переключатель SW6
1x DIP-переключатель SW8

2x Резистор 2.2 кОм
23x Резистор 3,3 кОм
3x Резистор 4,7 кОм
1x Резистор 10 Ом
6x Резистор 10 кОм
1x Резистор 47 Ом
4x Резистор 68 Ом
2x Резистор 100 Ом
1x Резистор 100 кОм
8x Резистор 180 Ом
1x Резистор 220 Ом
13x Резистор 330 Ом
4x Резистор 470 Ом
1x Резисторная сборка 4x470 Ом
2x Резисторная сборка 8x470 Ом
2x Варистор JVR-7N431
1x Потенциометр 1 кОм
1x Потенциометр 10 кОм

1x Конденсатор 10 нФ
4x Конденсатор 22 пФ
1x Конденсатор 33пФ
7x Конденсатор 100 нФ
4x Конденсатор электролит 1 мкФ
2x Конденсатор электролит 4,7 мкФ
2x Конденсатор э лектролит 100 мкФ

1x 12 МГц кварц
1x Часовой кварц 32768Hz
1x 16 МГц кварцевый генератор
1x Диод 1N4007
2x Диод 1N4148
4x 3V6 стабилитрон
4x Светодиод
2x Светодиод RGB (общий катод)
1x ИК-светодиод
2x Светодиодный столбик DIL20
1x ИК-приемник TSOP1736
1x Транзистор BC516
10x Транзистор BC556
1x Фототранзистора L-932P3BT
1x Микроконтроллер ATMEGA8 + панелька
1x AT24C256
1x ULN2803
1x TL431
1x MAX232
1x MAX485
1x PCF8583

2x BT138-600E
2x MOC3041
1x Оптрон CNY17
1x Пищалка 5V с генератором
1x 7-сегментный дисплей (четырехразрядный)
1x LCD 20x4

Модуль ATtiny13:
Разъемы PLS
1x Конденсатор 100nF
1x Микроконтроллер ATTINY13 + панелька

Модуль ATtiny2313 :

Разъемы PLS
2x Конденсатор 22 пФ
1x Конденсатор 100 нФ
1x 16 МГц кварц
1x Микроконтроллер ATTINY2313 + панелька

Модуль ATMega8:
Разъемы PLS
2x Конденсатор 22 пФ
1x Конденсатор 100 нФ
1x 16 МГц кварц
Микроконтроллер ATMEGA8 + Панелька

Модуль ATMega16:
Разъемы PLS
2x Конденсатор 22 пФ
1x Конденсатор 100 нФ
1x 16 МГц кварц
Микроконтроллер ATMEGA16 + Панелька

Модуль ATMega162:
Разъемы PLS
2x Конденсатор 22 пФ
1x Конденсатор 100 нФ
1x 16 МГц кварц
Микроконтроллер ATMEGA162 + Панелька

Фотографии проекта

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
Модуль индикации
U9 ИС источника опорного напряжения

TL431

1 В блокнот
T1-T5, T12 Биполярный транзистор

BC556

6 В блокнот
T7 Фототранзистор L-93P3BT 1 В блокнот
P1 Переменный резистор 10 кОм 1 В блокнот
P2 Переменный резистор 1 кОм 1 В блокнот
R1, R2, R4-R11, R40, R41 Резистор

3.3 кОм

12 В блокнот
R3 Резистор

47 Ом

1 В блокнот
R12-R20, R45 Резистор

330 Ом

10 В блокнот
R33, R46 Резистор

10 кОм

2 В блокнот
W1 LCD-дисплей LCD 20x4 1 В блокнот
W2 LED-дисплей 1 7 сегментный 4-х разрядный индикатор с общим анодом В блокнот
BUZ1 Пьезоизлучатель 1 Пьезоизлучатель со встроенным генератором, 5в В блокнот
SD1 Переключатель DIP переключатель, 6 pin 1 В блокнот
SD2 Переключатель DIP переключатель, 4 pin 1 В блокнот
SD3 Переключатель DIP переключатель, 8 pin 1 В блокнот
U1 ИС RS-232 интерфейса

MAX232

1 В блокнот
U5 EEPROM память AT24C256 1 В блокнот
U7 Часы реального времени (RTC)

PCF8583

1 В блокнот
U10 ИС RS-422/RS-485 интерфейсов

MAX485

1 В блокнот
D6, D7 Выпрямительный диод

1N4148

2 В блокнот
C1-C4 1 мкФ 4 В блокнот
C13 Конденсатор 33 пФ 1 В блокнот
C14 Конденсатор 100 нФ 1 В блокнот
R25, R26 Резистор

3.3 кОм

1 В блокнот
X2 Кварцевый резонатор 32768 Гц 1 В блокнот
SD4, SD5, SD7 Переключатель DIP переключатель. 2 pin 3 В блокнот
BAT1 Батарея Батарея литиевая. 3В 1 В блокнот
COM1 Разъём DB9M 1 В блокнот
COM2 Разъём DB9F 1 В блокнот
Светодиодная индикация
D13, D14 Светодиод RGB светодиод 2 В блокнот
W3, W4 Светодиодная полоса 2 10 сегментов, красного свечения В блокнот
RP1 Резисторная сборка 4 х 470 Ом 1 В блокнот
RP2, RP3 Резисторная сборка 8 х 470 Ом 2 В блокнот
R63, R65, R66, R68 Резистор

180 Ом

4 В блокнот
R64, R67 Резистор

100 Ом

2 В блокнот
U8 Составной транзистор

ULN2803

1 В блокнот
TR1, TR2 Симистор

BT138-600E

2 В блокнот
OPT1, OPT2 Оптопара

MOC3041M

2 В блокнот
R34, R35, R37, R38 Резистор

180 Ом

4 В блокнот
R36, R39 Резистор

330 Ом

2 В блокнот
WR1, WR2 Варистор JVR-7N431 2 В блокнот
U2 Ик - приёмник TSOP1736 1 В блокнот
T6 Биполярный транзистор

BC516

1 В блокнот
T8-T11 Биполярный транзистор

BC556

4 В блокнот
OPT3 Оптопара

CNY171M

1 В блокнот
D5 Светодиод SFH485 1 В блокнот
D11, D15 Светодиод 2 В блокнот
D12 Выпрямительный диод

1N4007

1 В блокнот
C5 Конденсатор 10 нФ 1 В блокнот
C6, C20, C21 Конденсатор 100 нФ 3 В блокнот
C7, C8 Электролитический конденсатор 100 мкФ 2 В блокнот
R22 Резистор

10 Ом

1 В блокнот
R23 Резистор

220 Ом

1 В блокнот
R42 Резистор

100 кОм

1 В блокнот
R43 Резистор

330 Ом

1 В блокнот
R44, R21, R21* Резистор

10 кОм

3 В блокнот
R50-R57 Резистор

3.3 кОм

8 В блокнот
R61, R69 Резистор

470 Ом

2 В блокнот
I1 Энкодер 1 В блокнот
PU1 Реле HFC-005-12W 1 В блокнот
SD6 Переключатель DIP переключатель, 2pin 1 В блокнот
S1-S8, S9-S24 Кнопка Тактовая кнопка 24 В блокнот
Процессорные модули
ATMega 8
U1 МК AVR 8-бит

ATmega8-16PU

1 В блокнот
C1 Конденсатор 100 нФ 1 В блокнот
C2, C3 Конденсатор 22 пФ 2 В блокнот
X1 Кварцевый резонатор 16 МГц 1 В блокнот
ATMega 162
U1 МК AVR 8-бит

ATmega162

1 В блокнот
C1 Конденсатор 100 нФ 1 В блокнот
C2, C3 Конденсатор 22 пФ 2 В блокнот
X1 Кварцевый резонатор 16 МГц 1 В блокнот
ATTiny 13
U1 МК AVR 8-бит

ATtiny13

1 В блокнот
C1 Конденсатор 100 нФ 1

Ниже предоставлено пошаговое руководство, с помощью которого вы сможете создать собственного полностью автономного (НЕ радиоуправляемого, НЕ строго запрограммированного, а реагирующего на окружение) робота всего за пару часов! Это действительно просто и не требуют практически никаких знаний в электронике и микропроцессорной технике.

Звучит невероятно? Однако, это возможно! Добро пожаловать в мир МИКРОКОНТРОЛЛЕРОВ!

Второй робот - улучшенная версия первого.

Список покупок. Итак, нам понадобятся:

  • PICAXE-28X1 (или более поздняя версия) Это - «главный мозг робота».

  • Набор для начинающего PICAXE-28X1. Включает в себя отладочную плату, а также все, что может понадобиться для программирования микроконтроллеров. Приобрести надо USB версию программатора, на фотографии изображен похожий, но НЕ соответствующий нашему проекту набор!

  • PICAXE Servo Upgrade Pack. Использовать серводвигатель PICAXE не обязательно, вы можете воспользоваться любым доступным вам серводвигателем, и резистором сопротивлением в 330 Ом вместо желтой микросхемы (см. фото).Значения 3-х проводов: 2 - питание серводвигателя, оставшийся третий - сигнал.

  • Sharp GP2D120 IR Sensor - 11.5" / Аналоговый (!) Внимание! Не покупайте цифровую версию!

Вообще, предпочтительней использовать ультразвуковой сенсор, однако подключить его сложнее (надо менять исходный код программы), да и стоит он дороже.

  • Два моторчика с колесами Чем больше передаточное число - тем сильнее, а значит медленнее, будет ваш робот. Меньшее передаточное число увеличивает скорость, однако уменьшает силу. Я бы рекомендовал что-нибудь между 120:1 и 210:1 для нашего проекта.

  • Немного проводов
  • Изоляционная лента
  • Оборудование для пайки
  • «Кусачки»
  • Отвертка
  • Отсек для элементов питания.

Неплохо было бы к этому списку добавить следующие элементы:

  • Несколько светодиодов, что бы усовершенствовать робота;
  • Крошечный динамик, что бы создать интересные звуковые эффекты.

Теперь, когда вы заказали все необходимые компоненты можно приступать непосредственно к созданию робота. Устанавливаем колеса на моторчики и монтируем «резину».

Используем двухстороннюю клейкую ленту что бы устанавливать оборудование. За основу берем отсек для крепления батареек. Над ним «надстраиваем» другие элементы робота. Не забудьте вставить батарейки, что бы правильно сбалансировать робота.

ВНИМАНИЕ! Достаем батарейки, что бы не «сжечь» какой-нибудь дорогой элемент ненароком.

Устанавливаем микросхемы на отладочную плату (см. фотографии). В случае, если вместо рекомендуемого серводвигателя, вы использовали собственный - вместо желтой микросхемы устанавливаем резистор сопротивлением 330 Ом (опять-таки см. фотографию).

Пояснения: черная микросхема (20 выводов) - это наш микроконтроллер, микросхема черная поменьше - драйвер двигателей L293D.

Возможно, на обратной стороне отладочной платы окажутся какие-то красные, странные пластмассовые «заглушки» для отверстий - со спокойной совестью снимайте их.

Теперь подключаем двигатели (моторчики) к отверстиям 4 "A & B" (пока, порядок не важен). Как их подключить - дело вкуса. Вы можете либо припаять их, либо сделать соединения.

Припаяем провода к моторчикам. Провода А - к первому, провода В - к второму.

Для подключения серводвигателя припаиваем дополнительный вывод (см. фотографии). Подключаем.

Теперь монтируем «голову» ИК сенсор Sharp. Подключаем по следующему принципу: Красный подключается V1, в руководстве -любое обозначенное как "V". Черный к G, где угодно на плате. Белый к Analogue input 1. Три остальных вывода не забываем подключить к V.

Подключаем батарейки к отладочной плате. Внимание! Плюс («+») батарейки должен быть обязательно подключен к V на отладочной плате (не наоборот!). И еще, не пытаетесь «питать» устройство от источника напряжением более 6В, забудьте о «Кронах»!

Устанавливаем ПО Picaxe Programming Editor на вашем ПК. Подключаем ПК к роботу (до сих пор «безголовому», т.е. сенсор еще не должен быть подключен!). Запускаем редактор и пишем (или копируем) следующую строку: servo 0, 150 Нажимаем F5. Ждем. Если что-то пошло не так - попробуйте проверить, правильно ли все подключено. servo 0, 200

Сервомотор должен немного покрутиться и остановится. Что бы вернуться пишем: servo 0, 150 Теперь можно устанавливать ИК сенсор. Финишная прямая.

  • Скинте адресок где все можно все купить в москве спасибо
  • Самое главное тут набор PICAXE-28X1 (хотя может быть все это можно подобрать по отдельности или заменами). Как видим из предыдущей ссылки, поиск по русскоязычным ресурсам мало что дает. Хотя есть фирмы, которые специализируются на доставке из за бугра товаров от 1 штуки на заказ. По роботам есть еще Lego NXT Mindstorms но это будет подороже и (или зато?) паять там не нужно. Цены могут быть здесь http://www..html?q=Mindstorms Подешевле робот-вездеход. Цены на него здесь http://www..html?q=Robopica
  • 28-ми ногий микроконтроллер - PIC16F886, вторая микруха - L293D,жёлтая микруха, насколько я понял - сборка резисторов, не моглибы вы выложить схему их соединений, не отладочную плату PICAXE, а реальную принцыпиальную схему,без лишних разъёмов и дорожек P.S. если это не в ваших силах(нарисовать схему) нарисуйте(сфотографируйте) хоть отладочную плату(с двух сторон), чтоб видно было куда какая дорожка идёт
  • Пожалуйста напишите как усовершенствовать робота с самого первого видео до робота на втором видео
  • Доброго времени суток! Вот прочитал тему: http://www..html?di=45699 Хочу собрать такое. Меня интересует цена на данные детали: 1. Набор для начинающего PICAXE-28X1. 2. Драйвер двигателей (ИС) L293D 3. PICAXE Servo Upgrade Pack 4. Sharp GP2D120 IR Sensor - 11.5 Далее там советуют светодиоды и динамики. Светодиоды, вроде бы, понятно. Но куда лепить динамики? Заранее спасибо.
  • Читайте статью-для создания звуковых эффектов,распиновка на" гребенке"...
  • Цены L293D Цены GP2D120
  • ребята помогите с приводом робота как зделать чтоб он ездил если есть схемку подкинте только без микроконтралеров если не там написал извините?
  • и если на серводвигателях схемы есть то объясните как сделать