Site Language

Translate

Russian Albanian Arabic Armenian Azerbaijani Belarusian Bulgarian Catalan Croatian Czech Danish Dutch English Estonian Filipino Finnish French Galician Georgian German Greek Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian Persian Polish Portuguese Romanian Serbian Slovak Slovenian Spanish Swedish Turkish Ukrainian Yiddish

CashBack Реальный возврат при покупках в интернете

CashBack Все честно и без обмана

Arduino Robot

Arduino Robot Arduino Robot
Arduino Robot Arduino Robot
Arduino Robot Arduino Robot
Arduino Robot   Качественные услуги и адекватная поддержка - HOSTiQ.com.ua

  

Общие сведения

Arduino Robot - первая официальная версия Ардуино, в конструкции которого предусмотрены колеса. Робот состоит из двух плат, каждая из которых содержит свой микропроцессор. Плата приводов (Motor Board) контролирует работу двигателей, в то время, как управляющая плата (Control Board) считывает показания датчиков и принимает решения о дальнейших операциях. Каждая из двух плат представляет собой полноценное устройство Ардуино, программируемое с помощью среды разработки Arduino IDE.

Обе платы построены на базе микроконтроллера ATmega32U4 (datasheet), выводы которого связаны с различными приводами и датчиками на плате.

Процесс прошивки Arduino Robot полностью аналогичен Arduino Leonardo. Оба микропроцессора ATmega32U4 имеют встроенный USB-контроллер, что исключает необходимость в дополнительном процессоре. Благодаря этому, при подсоединении к компьютеру Robot может определяться как виртуальный (CDC) последовательный COM-порт.

По традиции, любой элемент платформы Ардуино - будь то аппаратные, программные средства либо документация - имеет открытый исходный код и полностью бесплатен. Благодаря этому у вас есть возможность не только детально изучить устройство Arduino Robot, но и создавать своих роботов на основе его проекта. Ардуино Robot - результат совместных усилий людей из разных стран, желающих сделать процесс познания науки доступным и захватывающим. Теперь Ардуино на колесах, поехали!

Характеристики управляющей платы (Control Board)

Микроконтроллер

ATmega32u4

Рабочее напряжение

Напряжение питания

5В через шлейф

Цифровые входы/выходы

5

Каналы ШИМ

6

Аналоговые входы

4 (на цифровых выводах)

Аналоговые входы (мультиплексируемые)

8

Максимальный ток одного вывода

40 мА

Flash-память

32 КБ (ATmega32u4) из которых 4 КБ используются загрузчиком

SRAM

2.5 КБ (ATmega32u4)

EEPROM (внутрення)

1 КБ (ATmega32u4)

EEPROM (внешняя)

512 Кбит (I2C)

Тактовая частота

16 МГц

Клавиатура

5 кнопок

Регулятор

Потенциометр, соединенный с аналоговым входом

Полноцветный LCD-экран

через интерфейс SPI

SD-кардридер

для карт, отформатированных в FAT16

Динамик

8 Ом

Цифровой компас

показывает отклонение от географического севера в градусах

I2C распаечные площадки

3

Области для прототипирования

4

Характеристики платы приводов (Motor Board)

Микроконтроллер

ATmega32u4

Рабочее напряжение

Напряжение питания

9В для зарядного устройства

AA батарейный отсек

4 щелочных или NiMh-аккумуляторов

Цифровые входы/выходы

4

Каналы ШИМ

1

Аналоговые входы

4 (на цифровых выводах)

Максимальный ток одного вывода

40 мА

DC-DC преобразователь

генерирует 5В для питания всего робота

Flash-память

32 КБ (ATmega32u4) из которых 4 КБ используются загрузчиком

SRAM

2.5 КБ (ATmega32u4)

EEPROM

1 КБ (ATmega32u4)

Тактовая частота

16 МГц

Подстроечный резистор

для калибровки движения

ИК датчики для отслеживания линии

5

I2C распаечные площадки

1

Области для прототипирования

2

 

Схема и исходный проект

Файлы EAGLE для управляющей платы и платы приводов: arduino-robot-reference-design.zip

Питание

Arduino Robot может быть запитан от USB либо от 4 AA-аккумуляторов - тип источника выбирается автоматически.

Батарейный отсек рассчитан на 4 NiMh-аккумулятора формата AA.

Примечание: для питания робота используйте только перезаряжаемые аккумуляторы.

С целью безопасности, в системе предусмотрено автоматическое отключение двигателей во время питания робота от USB.

Помимо этого, в Arduino Robot встроено зарядное устройство для аккумуляторов. Питание зарядного устройства осуществляется от внешнего источника питания (сетевого AC/DC адаптера) с выходным напряжением 9В. Для включения зарядного устройства необходимо вставить штекер адаптера (диаметр - 2.1 мм, центральный контакт - положительный) в соответствующий разъем питания на плате Motor Board. Зарядное устройство не будет работать во время питания робота от USB.

От источников питания, расположенных на плате приводов (Motor Board), также запитывается и управляющая плата (Control Board) Arduino Robot.

Память

Объем памяти программ микроконтроллера ATmega32U4 составляет 32 КБ (из них 4 КБ отведены под загрузчик). Помимо этого, он имеет 2.5 КБ оперативной памяти SRAM и 1 КБ EEPROM (для взаимодействия с которой служит библиотека EEPROM.

На управляющей плате расположена дополнительная EEPROM-память объемом 512 Кбит, доступ к которой осуществляется по протоколу I2C.

В качестве дополнительного запоминающего устройства выступает внешний SD-кардридер (совмещен с GTFT-экраном), контролируемый микропроцессором управляющей платы.

Входы и выходы

Робот поставляется с несколькими впаянными разъемами. Вместе с тем, на плате Ардуино предусмотрено несколько областей, позволяющих при необходимости допаять в схему свои детали.

Все разъемы на плате промаркированы и с помощью библиотеки Robot ассоциированы с портами микроконтроллера, что обеспечивает программисту возможность работы со стандартными функциями Ардуино. Максимальный ток, который может отдавать или потреблять один вывод, составляет 40 мА при напряжении 5В.

Помимо основных, некоторые выводы Arduino Robot могут выполнять дополинтельные функции:

  • Выводы TK0 - TK7 на управляющей плате: данные выводы соединены с общим аналоговым входом микроконтроллера через мультиплексор. Могут использоваться в качестве аналоговых входов для различных датчиков, таких, как дальномеры, аналоговые ультразвуковые датчики, механические переключатели для обнаружения столкновений и др.
  • Выводы TKD0 - TKD5 на управляющей плате: это цифровые выводы, соединенные непосредственно с процессором. Для работы с данными выводами можно применять функции Robot.digitalRead() и Robot.digitalWrite(). С использованием функции Robot.analogRead() выводы TKD0 - TKD3 могут работать в качестве аналоговых входов.

Примечание: в первых версиях Arduino Robot выводы TKD* обзначены на плате как TDK*. Правильным названием является TKD* - именно оно используется при написании программ.

  • Выводы TK1 - TK4 на плате приводов: на этапе программирования эти выводы следует называть B_TK1 - B_TK4 соответственно. Данные выводы могут работать как в качестве цифровых, так и в качестве аналоговых входов, и взаимодействуют с функциями Robot.digitalRead(), Robot.digitalWrite() и Robot.analogRead().
  • Последовательная связь: обе платы взаимодействуют друг с другом по последовательному интерфейсу, контроллер которого встроен непосредственно в микропроцессор. Для соединения двух плат используется 10-выводной разъем, по которому передаются последовательные данные, питание и другая вспомогательная информация (например, текущий уровень заряда аккумуляторов).
  • SPI на управляющей плате: интерфейс SPI используется для управления GTFT и взаимодействия с SD-картой памяти. Поэтому, для перепрошивки процессора с помощью внешнего программатора, необходимо вначале отсоединить экран.
  • Светодиоды на управляющей плате: на управляющей плате расположено 3 светодиода. Один из них (PWR) показывает наличие питания, остальные два - процесс передачи данных через USB-порт (LED1/RX и TX). Помимо этого, состояние светодиода LED1 может изменяться программно.
  • На обеих платах предусмотрены разъемы I2C: 3 - на управляющей плате и 1 - на плате приводов.

Расположение выводов управляющей платы (Control Board)

ARDUINO LEONARDO

ARDUINO ROBOT CONTROL

ATMEGA 32U4

ФУНКЦИЯ

РЕГИСТР

D0

RX

PD2

RX

RXD1/INT2

D1

TX

PD3

TX

TXD1/INT3

D2

SDA

PD1

SDA

SDA/INT1

D3#

SCL

PD0

PWM8/SCL

OC0B/SCL/INT0

D4

MUX_IN A6

PD4

ADC8

D5#

BUZZ

PC6

???

OC3A/#OC4A

D6#

MUXA/TKD4 A7

PD7

FastPWM

#OC4D/ADC10

D7

RST_LCD

PE6

INT6/AIN0

D8

CARD_CS A8

PB4

ADC11/PCINT4

D9#

LCD_CS A9

PB5

PWM16

OC1A/#OC4B/ADC12/PCINT5

D10#

DC_LCD A10

PB6

PWM16

OC1B/0c4B/ADC13/PCINT6

D11#

MUXB

PB7

PWM8/16

0C0A/OC1C/#RTS/PCINT7

D12

MUXC/TKD5 A11

PD6

T1/#OC4D/ADC9

D13#

MUXD

PC7

PWM10

CLK0/OC4A

A0

KEY D18

PF7

ADC7

A1

TKD0 D19

PF6

ADC6

A2

TKD1 D20

PF5

ADC5

A3

TKD2 D21

PF4

ADC4

A4

TKD3 D22

PF1

ADC1

A5

POT D23

PF0

ADC0

MISO

MISO D14

PB3

MISO,PCINT3

SCK

SCK D15

PB1

SCK,PCINT1

MOSI

MOSI D16

PB2

MOSI,PCINT2

RX_LED D17

PB0

RXLED,SS/PCINT0

TXLED

TX_LED

PD5

HWB

PE2

HWB

Расположение выводов платы приводов (Motor Board)

ARDUINO LEONARDO

ARDUINO ROBOT CONTROL

ATMEGA 32U4

ФУНКЦИЯ

РЕГИСТР

D0

RX

PD2

RX

RXD1/INT2

D1

TX

PD3

TX

TXD1/INT3

D2

SDA

PD1

SDA

SDA/INT1

D3#

SCL

PD0

PWM8/SCL

OC0B/SCL/INT0

D4

TK3 A6

PD4

ADC8

D5#

INA2

PC6

???

OC3A/#OC4A

D6#

INA1 A7

PD7

FastPWM

#OC4D/ADC10

D7

MUXA

PE6

INT6/AIN0

D8

MUXB A8

PB4

ADC11/PCINT4

D9#

INB2 A9

PB5

PWM16

OC1A/#OC4B/ADC12/PCINT5

D10#

INB1 A10

PB6

PWM16

OC1B/0c4B/ADC13/PCINT6

D11#

MUXC

PB7

PWM8/16

0C0A/OC1C/#RTS/PCINT7

D12

TK4 A11

PD6

T1/#OC4D/ADC9

D13#

MUXI

PC7

PWM10

CLK0/OC4A

A0

TK1 D18

PF7

ADC7

A1

TK2 D19

PF6

ADC6

A2

MUX_IN D20

PF5

ADC5

A3

TRIM D21

PF4

ADC4

A4

SENSE_A D22

PF1

ADC1

A5

SENSE_B D23

PF0

ADC0

MISO

MISO D14

PB3

MISO,PCINT3

SCK

SCK D15

PB1

SCK,PCINT1

MOSI

MOSI D16

PB2

MOSI,PCINT2

RX_LED D17

PB0

RXLED,SS/PCINT0

TXLED

TX_LED

PD5

HWB

PE2

HWB

Связь

Arduino Robot предоставляет ряд возможностей для связи с компьютером, еще одним Ардуино или другими микроконтроллерами. В ATmega32U4 имеется приемопередатчик UART (уровень напряжения TTL 5В), позволяющий осуществлять связь по последовательному интерфейсу через цифровые выводы 10-контактного межплатного разъема. Микроконтроллер 32U4 поддерживает последовательную (CDC) связь через USB и при подключении к компьютеру может определяться как виртуальный COM-порт. При этом микросхема использует стандартные USB-COM драйвера и может работать в режиме USB 2.0 Full Speed. На платформе Windows необходим только соответствующий .inf-файл. В пакет программного обеспечения Ардуино входит специальная программа, позволяющая считывать и отправлять на Ардуино простые текстовые данные. При передаче данных компьютеру через USB на плате будут мигать светодиоды RX (LED1) и TX. (При последовательной передаче данных между платами данные светодиоды не задействуются).

Поскольку у каждой платы есть свой USB-идентификатор, то в среде разработки Arduino они будут отображаться под разными портами. Поэтому, перед прошивкой убедитесь, что вы выбрали именно ту плату, которую вам необходимо прошить.

В микроконтроллере ATmega32U4 также реализована поддержка последовательных интерфейсов I2C (TWI) и SPI. В программное обеспечение Ардуино входит библиотека Wire, позволяющая упростить работу с шиной I2C; для получения более подробной информации см. документацию. Для работы с интерфейсом SPI используйте библиотеку SPI.

Программирование

Arduino Robot программируется с помощью программного обеспечения Ардуино (скачать). Для этого из меню Tools > Board необходимо выбрать "Arduino Robot Control Board" или "Arduino Robot Motor Board".

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

Тем не менее, микроконтроллер можно прошить и через разъем для внутрисхемного программирования ICSP (In-Circuit Serial Programming), не обращая внимания на загрузчик; более подробно об этом см. соответствующие инструкции.

Автоматический (программный) сброс и запуск загрузчика

Чтобы каждый раз перед загрузкой программы не требовалось нажимать кнопку сброса, Robot спроектирован таким образом, который позволяет осуществлять его сброс программно с подключенного компьютера. Сброс срабатывает после закрытия виртуального COM-порта, который предварительно был открыт на скорости 1200 бод. При срабатывании этого условия, процессор сбросится, разорвав USB соединение с компьютером (при этом виртуальный COM-порт исчезнет). После перезагрузки процессора, запускается загрузчик, оставаясь активным на протяжение приблизительно 8 секунд. Помимо этого, инициировать загрузчик можно, нажав кнопку сброса на плате Arduino Robot. Обратите внимание, что при первом включении устройства вместо запуска загрузчика, контроллер сразу перейдет к выполнению пользовательской программы (если таковая есть).

Из-за особенностей механизма сброса Arduino Robot, рекомендуется предоставлять программному обеспечению Ардуино возможность осуществить сброс перед загрузкой программы, особенно, если вы привыкли нажимать кнопку сброса при прошивке других плат. Если же программное обеспечение не сможет сбросить устройство, вы всегда сможете запустить загрузчик, дважды нажав кнопку сброса вручную. Однократное нажатие кнопки приведет к перезапуску загруженной программы, двукратное - к запуску загрузчика.

Защита USB от перегрузок

В обеих платах Arduino Robot есть восстанавливаемые предохранители, защищающие USB-порты компьютера от коротких замыканий и перегрузок. Большинство компьютеров имеют собственную защиту USB от перегрузок, тем не менее, такие предохранители позволяют дополнительно повысить степень защиты. Если от USB-порта потребляется ток более 500 мА, предохранитель автоматически разорвет соединение до устранения причин короткого замыкания или перегрузки.

Физические характеристики

Диаметр Arduino Robot составляет 19 см, высота - до 10 см (с учетом колес, GTFT-экрана и различных разъемов).

Основные версии плат Arduino представлены следующими моделями:

Due — плата на базе 32-битного ARM микропроцессора Cortex-M3 ARM SAM3U4E;

Leonardo — плата на микроконтроллере ATmega32U4;

Uno — самая популярная версия базовой платформы Arduino;

Duemilanove — плата на микроконтроллере ATmega168 или ATmega328;

Diecimila — версия базовой платформы Arduino USB;

Nano — компактная платформа, используемая как макет. Nano подключается к компьютеру при помощи кабеля USB Mini-B;

Mega ADK — версия платы Mega 2560 с поддержкой интерфейса USB-host для связи с телефонами на Android и другими устройствами с интерфейсом USB;

Mega2560 — плата на базе микроконтроллера ATmega2560 с использованием чипа ATMega8U2 для последовательного соединения по USB-порту;

Mega — версия серии Mega на базе микроконтроллера ATmega1280;

Arduino BT — платформа с модулем Bluetooth для беспроводной связи и программирования;

LilyPad — платформа, разработанная для переноски, может зашиваться в ткань;

Fio — платформа разработана для беспроводных применений. Fio содержит разъем для радио XBee, разъем для батареи LiPo и встроенную схему подзарядки;

Mini — самая маленькая платформа Arduino;

Pro — платформа, разработанная для опытных пользователей, может являться частью большего проекта;

Pro Mini — как и платформа Pro, разработана для опытных пользователей, которым требуется низкая цена, меньшие размеры и дополнительная функциональность.

 Плата расширения L293D, ИК-датчик VS1838B, TFT LCD, Модем M590E GSM GPRS, "монитор TFT LCD, датчик движения HC-SR501, ИК-пульт дистанционного управления, Радиомодуль NRF24L01, SD Card Module, Звуковой модуль, 5-axis stepper motor driver, Шаговый двигатель, Модем M590E GSM GPRS, 5-axis stepper motor driver,  Часы реального времени DS 3231/DS 1307, терморегулятор W1209 DC, Релейный модуль, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E,  датчик движения HC-SR501, Передатчик и приемник в диапазоне RF 433 Mhz, Блок питания, L293D, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, Датчики контроля температуры, Радиомодуль NRF24L01, OKI 120A2, Rotary Encoder, SD Card Module, Беспроводной пульт дистанционного управления, Микросхема контроллера коллекторного электродвигателя, Модуль Bluetooth HC-06,, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Mini 360 на схеме LM2596, MP3-TF-16P, L293D, Модуль LCD монитора, Инфракрасные датчики расстояния, Часы реального времени,  USB Host Shield, HC-SR501, Cветочувствительный датчик сопротивления, блок питания Mini 360 на схеме LM2596, ЖК-дисплей TFT дисплей, Контроллер L298N, HC-SR501, Модуль MP3 Player WTV020, GSM GPRS, Сервоприводы, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Модуль Wi-Fi ESP8266-12E, Инфракрасные датчики расстояния, Card Module, Ультразвуковые дальномеры HC-SR04, Блок питания,  Карта памяти SD, Mini 360, Ethernet shield, L293D, блок питания Mini 360 на схеме LM2596, Радиомодуль, датчик температуры DS18B20, ИК-пульт дистанционного управления, USB конвертер UART, ИК-пульт,  Антена для модуля WiFi, Ethernet shield,  Модуль блока питания XL6009, Микросхема контроллера коллекторного электродвигателя, Модуль качества воздуха MQ-135, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, SD Card Module, Радиомодуль NRF24L01, двигатель OKI,  5-axis stepper motor driver, L293D, TB6560, Драйвер шагового двигателя TB6600, Шаговый двигатель,  Модуль камеры, Блок питания, L293D, блок питания Mini 360 на схеме LM2596, 5axis mach3 interface, Карта памяти SD, Ethernet shield, Контроллер L298N, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E, Модуль LCD монитора LCD1602, Шаговый двигатель OKI 120A2, Шаговый двигатель, Шаговый двигатель.

 

All Vintage Vinyl Records VinylSU.xyz

1.png2.png3.png4.png5.png