Почему именно Pinboard?
Существует очень много разных отладочных плат. Каждый производитель контроллеров, а также множество сторонних разработчиков делают отладочные платы. В чем же ключевое их отличие от моей платы? Что я ставил во главу угла при проектировании плат серии Pinboard
Мы разработали первую версию универсальной платы, которая может служить, как простым блоком питания с изменяемым напряжением и током, так и продвинутым контроллером для разного рода устройств, начиная со светодиодных лампочек, шаговых моторов, и термодатчиков до полноценных полностью автономных роботов! Рабочее название - Grambo Pi (Grambo - это английский Громозека, а Pi - это от Raspberry Pi).
Grambo Pi - программируемая плата управления на базе микроконтроллера ARM Cortex M3. Она может служить для разнообразных задач, связанных с управлением устройствами и автоматическим получением показаний датчиков. Плата может служить источником напряжения, работать как зарядное устройство для аккумуляторов разных типов, может управлять электродвигателями с максимальным длительным током до 600мА и кратковременным - до 1200мА, имеет схему управления осветительным светодиодом. При проектировании платы была заложена возможность служить источником питания для одноплатного компьютера Raspberry Pi. Плата имеет набор датчиков: термометр, акселерометр и компас, что позволяет использовать плату как систему ориентации для движущихся устройств. С внешними устройствами плата может общаться, используя набор стандартных интерфейсов обмена данными: USB, последовательный порт, I2C (мастер и слейв). Функциональность платы может расширяться за счёт подключения плат расширения!
В плату встроена виртуальная машина, исполняющая байт код, получаемый после компиляции программ, написанных на языке Pawn. Байт код записывается во FLASH память и начинает исполняться каждый раз при подаче питания на плату. Поведение платы и обмен данными с внешними устройствами определяется той программой, которая в неё загружена.
Предусмотрено три основных способа использования платы:
В последнем случае плата не только может управляться компьютером Raspberry Pi, но и служить для него умным источником питания. Например, плата может быть настроена (программой на Pawn, загруженном во внутреннюю FLASH память) как ATX подобный источник питания, включающий и выключающий компьютер по нажатию кнопки или как источник питания, включающийся по расписанию.
На плате установлены программно настраиваемые преобразователи напряжения. Для каждого преобразователя есть возможность задания желаемого выходного напряжения и ограничения максимального входного тока. Для повышающего преобразователя также есть возможность задания минимального входного напряжения. Последнее позволяет использовать плату для получения энергии от солнечных батарей в точке с максимальной мощностью на I-V характеристике батареи.
Возможность подключения перезаряжаемого аккумулятора и солнечной батареи даёт возможность получать решения, не зависящие от стационарных источников энергии. В этом случае плата и подключенные устройства могут работать в любом месте, где есть солнечный свет. Требовательный к энергии компьютер может включаться время от времени, когда в аккумуляторе достаточно энергии для его питания.
Плата предусматривает три способа подачи питания:
Полный список периферийных устройств на плате:
Использование Raspberry Pi вместе с Grambo Pi позволяет разрабатывать решения практически любой сложности. Начиная с систем включения и выключения по заранее заданному расписанию с целью экономии потребления энергии и кончая системами, которые требуют полной компьютерной мощности для выполнения таких задач, как обработка видео в реальном времени и поддержка веб приложений!
Функциональность платы Grambo Pi может быть увеличена с помощью специально разработанных плат расширения, которые также просто стыкуются друг c другом. Можно подключать несколько плат одновременно.
Платы расширения могут быть разными. Представленная на рисунке имеет следующие устройства:
Существует несколько вариантов программного взаимодействия с платой Grambo Pi:
Схемы, как таковой, нет. Все подключения стандартные из даташита. Кто захочет писать программы - тот разберется. Да и резисторы могут отличаться от указанных на плате в довольно широких пределах. Все выходы тоже подписаны. Так что схему отдельно не составлял, но архив с печатной платой имеется .
В сети начал подыскивать готовый вариант отладочной платы. Подходящую для себя не нашел. Были или слишком маленькие, или большие. Натыкать на плату дохрена чего, а после некогда не подключать. Развел свой вариант отладочной платы под 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 |
Ниже предоставлено пошаговое руководство, с помощью которого вы сможете создать собственного полностью автономного (НЕ радиоуправляемого, НЕ строго запрограммированного, а реагирующего на окружение) робота всего за пару часов! Это действительно просто и не требуют практически никаких знаний в электронике и микропроцессорной технике.
Звучит невероятно? Однако, это возможно! Добро пожаловать в мир МИКРОКОНТРОЛЛЕРОВ!
Второй робот - улучшенная версия первого.
Список покупок. Итак, нам понадобятся:
Вообще, предпочтительней использовать ультразвуковой сенсор, однако подключить его сложнее (надо менять исходный код программы), да и стоит он дороже.
Неплохо было бы к этому списку добавить следующие элементы:
Теперь, когда вы заказали все необходимые компоненты можно приступать непосредственно к созданию робота. Устанавливаем колеса на моторчики и монтируем «резину».
Используем двухстороннюю клейкую ленту что бы устанавливать оборудование. За основу берем отсек для крепления батареек. Над ним «надстраиваем» другие элементы робота. Не забудьте вставить батарейки, что бы правильно сбалансировать робота.
ВНИМАНИЕ! Достаем батарейки, что бы не «сжечь» какой-нибудь дорогой элемент ненароком.
Устанавливаем микросхемы на отладочную плату (см. фотографии). В случае, если вместо рекомендуемого серводвигателя, вы использовали собственный - вместо желтой микросхемы устанавливаем резистор сопротивлением 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 Теперь можно устанавливать ИК сенсор. Финишная прямая.