Роботы они заполонили все… Платформы • Lego. • Intel Galileo. • Android IOIO / IOIO OTG. • Arduino. • Raspberry Pi. LEGO Самая простая из представленных платформ, позволяет создавать из базовых блоков как простейших, так и более сложных роботов. LEGO Программирование осуществляется с помощью графического языка в среде LabVIEW, языка RobotC (расширение языка С) и языка Java. LEGO Достоинства: Проста для изучения (можно изучать в школе). Не нужно ничего паять. Недостатки: Цена. На официальном сайте основной модуль стоит от $170 до $180. Датчики еще обойдутся от $25 до $50. Если покупать в России – еще плюс 20% как минимум. Ссылка на стоимость. Нет возможности для прямого доступа к программируемым пинам, чтобы создавать и подключать свои устройства. Android IOIO OTG Плата, расширяющая функционал android-смартфона для нужд робототехники. Можно подключать как к смартфону, так и к ПК. Android IOIO OTG Достоинства: Можно использовать вычислительные мощности современных смартфонов. Стандартные GPIO пины с поддержкой протоколов UART, SPI, I2C. Привычный для android-программистов способ программирования. Недостатки: Изначально нельзя использовать без соединения с компьютером или android-смартфоном (хотя можно перепрошить для этих целей его микроконтроллер, но тогда теряются некоторые преимущества). Не очень большое сообщество пользователей. Arduino Одна из самых распространённых на данный момент платформ для разноуровневых групп пользователей. Есть несколько разновидностей базовых плат, отличающихся количеством разъемов, тактовой частотой и разрядностью процессора, размером оперативной памяти, параметрами питания. Arduino Программируется как с помощью графического языка (Scratch), так и с помощью немного измененного языка С. Arduino Достоинства: Относительно недорогая в использовании платформа (оригинальные базовые платы стоят от $12). Можно использовать как на начальном уровне (в школе), так и на более профессиональном (в вузе). Есть собственная IDE. Стандартные GPIO пины с поддержкой протоколов UART, SPI, I2C. Существует много китайских клонов большинства плат данной платформы, которые в несколько раз дешевле оригиналов с сохранением приемлемого качества (от 3$). Очень много совместимых с данной платформой датчиков и плат для нужд робототехники. Можно создавать свои собственные платы для расширения данной платформы. Недостатки: Малая процессорная мощность (максимум 84 MГц). Мало памяти (максимум 256 КБ). Нельзя «из коробки» использовать стандартную компьютерную периферию (клавиатура, мышь, «флешки», веб-камеры, внешние жесткие диски), хотя многое можно подключить с помощью плат расширения, которые приобретаются отдельно. Arduino-проекты Arduino-проекты Arduino-проекты Arduino-проекты Arduino-проекты Intel Galileo Одна из самых молодых на данный момент платформ, но, как видно из названия, продвигается одним из IT-гигантов в области современных процессоров, так что можно ожидать увеличения популярности. Совместима с платами Arduino и может работать с Arduino IDE. Intel Galileo Достоинства: Архитектура x86. Достаточно мощный процессор – 400 МГц. 256 Мб оперативной памяти. Можно установить ОС Linux для работы на самой плате. Стандартные GPIO пины с поддержкой протоколов UART, SPI, I2C. Есть порты USB-клиент и USB-хост. Есть разъем Ethernet. Разъём для карт Micro-SD. Разъём Mini-PCI Express. Последовательный порт RS-232. Недостатки: Цена – от $70. Пока что малое сообщество энтузиастов. Raspberry Pi Это одноплатный компьютер размером с банковскую карту, изначально разработанный как бюджетная система для обучения информатике. Впоследствии получил намного более широкое применение и популярность, чем ожидали его авторы. Модели Модели Технические характеристики модели В • размеры – 8,6 см × 5,4 см × 1,7 см (примерно как кредитная карточка); • центральный процессор – Broadcom BCM2835 SOC 700MHz ARM11; • графический процессор – Dual Core VideoCore IV; • оперативная память – 512 мб (совместно с видеопамятью, можно самостоятельно выбирать соотношение); • жесткий диск – отсутствует, вместо него используются sd-карты; • периферия – 2 порта USB, по 1 порту Ethernet, HDMI, RCA, 3.5мм аудиовыход, специальные порты для подключения экрана и камеры; • питание – через порт microUSB – подходит практически любой блок питания от современного смартфона. Порты GPIO Операционные системы для Raspberry Pi • Linux: • Raspbian • Arch Linux ARM • Moebius • Raspbmc • XBian • Android • RISC OS Raspberry Pi как обычный компьютер Монитор Интернет Клавиатура Мышь Raspberry Pi и робототехника • программирование на языках высокого уровня (С, Java, Python, PHP, C#, Ruby, Perl, Scratch, Lazarus / Free Pascal, BASIC) – 2 подхода: • делаем все на Raspberry Pi; • совмещаем обычный компьютер и Raspberry Pi; • использование готовых узлов (например, от Arduino); • создание собственных электронных компонент: • паяние собственных плат; • с использованием беспаечных макетных плат; • поддержка промышленных интерфейсов SPI, I2C, UART через порты GPIO. Проекты на основе Raspberry Pi: • портативный компьютер; Проекты на основе Raspberry Pi: • автономное плавательное средство; Проекты на основе Raspberry Pi: • игровой автомат; Проекты на основе Raspberry Pi: • умный дом; Проекты на основе Raspberry Pi: • робот-бармен; Проекты на основе Raspberry Pi: • кластер; Проекты на основе Raspberry Pi: • веб-хостинг; Проекты на основе Raspberry Pi: • портативный компьютер; Проекты на основе Raspberry Pi: • интернет-радио; Проекты на основе Raspberry Pi: • подвесной плоттер; Проекты на основе Raspberry Pi: • метеостанция; Проанализировав представленные платформы, можно сделать следующие выводы: Для преподавания в школе подходят платформы LEGO и Arduino в виду своей распространённости и простоты. Для преподавания в вузе в принципе подходят все платформы, но можно выделить различные категории платформ в зависимости от уровня студентов: LEGO и Arduino – для будущих учителей информатики; Arduino, Raspberry Pi, Intel Galileo, Android IOIO / IOIO OTG – для будущих инженеров различных направлений обучения. Платформу Android IOIO / IOIO OTG можно использовать во время преподавания программирования для ОС Android. В связи с вышеописанными выводами нужно уточнить важность школьной робототехники в перспективе дальнейшего технического образования, а именно: • привлечение школьников к точным наукам; • развитие алгоритмических навыков; • развитие технического творчества; • раскрытие изобретательского потенциала учащегося; • развитие навыков программирования. Спасибо за внимание!