Программирование и управление промышленными роботами. Программирование роботов

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

LEGO Education WeDo

Начнём, пожалуй, с самого известного датского бренда LEGO. Компания производит два типа конструкторов с возможностью программировать для образовательных целей для разных возрастов. Для детей возраста от 7 летLEGOвыпускает сериюLEGO Education WeDo. Здесь вы можете купить стартовый набор «ПервоРобот» и ресурсный набор, если деталей вам не хватило. Также дополнительно можно приобрести датчики движения и наклона, мультиплексоры, моторы и лампочки. Отдельно можно приобрести комплект учебных проектов на компакт диске.

Программное обеспечение LEGO Education WeDo для программирования роботов этой линейки с комплектом заданий приобретается отдельно. Программирование здесь визуальное. Вы просто соединяете друг с другом нужные блоки-действия и таким образом составляете программу.


Конечно, все изделия, созданные с помощью этого конструктора, сложно назвать роботами, скорее простыми механизмами, но, поверьте, детям в возрасте 7–8 лет сложнее и не нужно. Обратите внимание: чтобы собранный механизм функционировал, он должен быть подключён к компьютеру через USB-кабель.

LEGO Education WeDo 2.0

Это вторая версия конструктора LEGO Education WeDo, которая была впервые представлена на выставке CES-2016. Конструктор адаптирован для детей в возрасте от 7 лет. Данная версия конструктора (в отличие от первой) позволяет собирать автономных роботов. Готовый робот работает на двух батарейках AAA, а взаимодействие с ПК происходит по Bluetooth.


Из него можно собрать следующие модели: «Майло (научный вездеход)», «Тягач», «Гоночная машина», «Землетрясение», «Лягушка», «Цветок», «Шлюз», «Вертолёт» и «Мусоровоз».

В комплект набора входят: СмартХаб, средний мотор, датчик движения, датчик наклона и 280 разнообразных деталей. Если вам не хватает каких-либо электронных компонентов, вы можете докупить их отдельно. Дополнительно можно приобрести аккумулятор, который обеспечит более продолжительное время работы. Ещё учтите, что адаптер для зарядки аккумулятора продаётся отдельно (адаптер используется такой же, как и для конструкторов LEGO MINDSTORMS Education EV3 и NXT, см. ниже).

Также вы можете приобрести комплект учебных материалов, с помощью которого можно реализовать 17 проектов по физике, биологии, географии, исследованию космоса и инженерному проектированию, работа над которыми в сумме займёт более 40 академических часов. Микрокомпьютера здесь как такового нет. Вместо него здесь есть СмартХаб, который играет роль связующего звена между ПК/планшетом и электроникой робота. Т. е. все написанные вами программы будут работать на ПК или планшете. У СмартХаба здесь два порта для подключения датчиков и моторов, один индикатор и всего одна кнопка – кнопка питания. Электроника и ПО первой и второй версий конструктора несовместимы.

Из плюсов можно также отметить, что к одному ПК или планшету можно подключить до трёх СмартХабов одновременно. Это позволит воспользоваться сразу шестью портами, т. е. вы сможете собрать довольно сложное устройство, у которого может быть шесть моторов или шесть датчиков.

В стартовый набор уже включено бесплатное базовое ПО, в состав которого входят стартовые проекты. Русский язык поддерживается. ПО работает на Windows (7, 8.1 и RT), MacOS, iPad, Android-планшетах и взаимодействует с микрокомпьютером через Bluetooth 4.0. Программирование визуальное, аналогичное первой версии конструктора. Скачать ПО можно . Кроме того, есть возможность программировать с помощью Scratch 2. А для особо желающих есть SDK с открытым исходным кодом, позволяющий взаимодействовать со СмартХабом через Bluetooth.

LEGO Mindstorms Education EV3

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

В стартовый набор входят: 541 деталь LEGO Technic и два лотка для их хранения, микрокомпьютер EV3 с поддержкой Wi-Fi и Bluetooth, аккумулятор, три сервомотора (2 больших и один средний), ультразвуковой датчик, датчик цвета, гироскопический датчик и два датчика касания. В набор не входят программное обеспечение LEGO Mindstorms EV3 и зарядка для аккумулятора.

Отдельно хочу заметить, что EV3 – это уже третья версия конструктора. Предыдущие версии назывались NXT (вторая) и RCX (первая).

Внутри микрокомпьютера EV3 прячется процессор ARM 9 с операционной системой Linux. Здесь есть 4 входных порта и 4 выходных. В вашем распоряжении 16 Мб флеш-памяти и 64 Мб RAM. Для расширения памяти есть слот для карт Mini SDHC объёмом до 32 Гб. На блоке имеется шестикнопочный интерфейс с подсветкой тремя цветами и чёрно-белый дисплей разрешением 178x128. Здесь же находится динамик. Для взаимодействия с роботом микрокомпьютер поддерживает Wi-Fi (встроенного Wi-Fi нет, рекомендуется использовать адаптер NETGEAR Wi-Fi dongle WNA1100 Wireless-N150) и Bluetooth (Bluetooth встроенный). Питание осуществляется от шести пальчиковых батареек AA или от литиевого аккумулятора ёмкостью 2050 мАч. От аккумулятора робот проработает дольше, чем от батареек. Заряжается аккумулятор 3–4 часа.

При желании вы можете купить дополнительный ресурсный набор, в комплект которого входят 853 дополнительные детали LEGO Technic . С таким набором вы сможете собрать робота-слона, танкобота, фабрику игрушек и многое другое.

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

Кроме перечисленных здесь комплектов, вы можете найти в продаже домашнюю версию набора LEGO Mindstorms EV3 . Из него можно собрать 5 базовых роботов и 12 бонусных моделей. В отличие от стартового образовательного набора LEGO Mindstorms Education EV3, данный набор содержит немного другой комплект деталей и датчиков. Здесь есть пульт управления, а вместо ультразвукового датчика – инфракрасный (который, кроме изменения расстояний, принимает сигнал от пульта) и отсутствует гироскоп.

Будьте внимательны: в наборе отсутствует аккумулятор, и вам придётся использовать 6 пальчиковых батареек (AA) или покупать аккумулятор отдельно, а он недешёвый. Кстати, для пульта тоже понадобятся 2 мизинчиковые батарейки (AAA).


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

Каждый микрокомпьютер EV3 имеет четыре входных порта для датчиков и четыре выходных порта для сервомоторов, лампочек и пр. Если вам этого не хватает, вы можете соединить вместе («в гирлянду») до 4 микрокомпьютеров с помощью дополнительных USB-кабелей. В этом случае управление ложится на плечи главного микрокомпьютера, и вы получаете до 16 входных портов и до 16 выходных.

Роботы этой серии программируются с помощью программного обеспечения LEGO Mindstorms EV3 . Для домашнего набора ПО скачивается бесплатно . Для образовательных наборов ПО стало бесплатным с 1 января 2016 года. Программирование здесь визуальное блочное, основанное на графическом языке программирования LabVIEW, который позволяет создавать как простые, так и сверхсложные программы. Можно создавать свои блоки с помощью инструмента MyBlocks. Максимальный размер программы – 16 блоков, не считая блока начала программы и цикла. Работает ПО на Microsoft Windows или Apple Macintosh. Русский язык поддерживается.

Образовательная версия ПО LEGO Mindstorms EV3 , кроме программирования, позволяет собирать статистические данные с датчиков и записывать их в память микрокомпьютера или в реальном времени передавать их через USB-кабель, Wi-Fi или Bluetooth. Собранные данные можно анализировать, строить по ним графики. В помощь ученикам и преподавателям Здесь есть мультимедийные уроки.

Если вас интересует альтернативная среда программирования, то, кроме LEGO Mindstorms EV3, вы можете программировать с помощью сред разработки LabVIEW (требуется дополнительный модуль LabVIEW LEGO MINDSTORMS) и RobotC (язык программирования C, RobotC версии 4x поддерживает серии EV3 и NXT). Обе среды программирования платные. В RobotC вы даже сможете тестировать робота с вашей программой в виртуальном мире (см. рис. ниже). Виртуальные миры можно скачать .


Совсем продвинутые изобретатели могут приобрести датчики сторонних компаний, таких как HiTechnic и Vernier . Например, вы можете дополнительно приобрести инфракрасный датчик для обнаружения людей и животных, компас, барометр, датчик силы, датчик обнаружения объектов на небольшом расстоянии, датчик угла (измеряет углы и скорость поворота) и другие. Компания HiTechnic предлагает датчики, непосредственно адаптированные для EV3 и NXT, и к каждому датчику можно скачать программные блоки для ПО LEGO Mindstorms EV3. Компания Vernier предлагает приобрести адаптер , позволяющий использовать их датчики в конструкторе, и дополнительно даёт скачать программный блок для ПО LEGO Mindstorms EV3.

TETRIX


MATRIX


Robotis OLLO

Корейская компания Robotis, основанная в 1999 году, предлагает конструктор OLLO для самостоятельной сборки роботов. Он продаётся в виде наборов, рассчитанных на разный возраст. Из набора Figure (7+) можно создавать фигурки животных, но здесь нет ни моторов, ни датчиков, ни контроллеров. Из наборов Action (8+ ) и Starter (8+) уже можно создавать подвижные непрограммируемые модели. Здесь есть моторчик, но нет ни датчиков, ни контроллеров. А вот наборы Explorer (10+), Inventor (10+) и Bug (10+) уже позволят конструировать и программировать роботов. Для набора Explorer есть расширяющий набор Inventor Expansion Set , который превращает набор Explorer в Inventor.

Из набора Explorer вы сможете сделать 12 моделей, а из набора Inventor – 24 модели по инструкции, но ничто не помешает вам сконструировать свои собственные модели роботов. Максимальный набор Inventor содержит контроллер, два двигателя, два сервомотора, два ИК-датчика, ИК-приёмопередатчик, тактильные датчики, светодиодный модуль. В контроллере есть четыре порта для подключения приводов, два многофункциональных порта для подключения датчиков, приводов и порт для дистанционного управления и загрузки программ.
Из набора Bug вы сможете собрать 4 робота-жука, которыми можно управлять с помощью контроллера, они смогут ходить по линии (карточки для создания маршрута в комплекте) и обнаруживать объекты. Здесь в комплекте нет адаптера USB Downloader LN-101 для подключения к компьютеру, а он нужен, если вы собираетесь программировать.


Программируются роботы Robotis OLLO , как и все другие роботы компании, с помощью фирменного программного обеспечения RoboPlus . Для программирования используется C-подобный язык. В состав ПО входят RoboPlus Task, RoboPlus Manager (настройка оборудования), RoboPlus Motion (программирование сложных движений робота), RoboPlus Terminal (терминал) и Dynamixel Wizard (настройка и калибровка сервоприводов).


После написания вашей программы её нужно загрузить в контроллер, соединив его с компьютером, и после включения робота ваша программа начнёт выполняться. Скачать программу можно , прочитать инструкцию . Продвинутые программисты могут написать свою собственную прошивку для роботов Robotis OLLO на Embedded C.


Для роботов компании Robotis можно также писать программы прямо на смартфоне или планшете под управлением Android 2.3 и выше с помощью приложения R+ m.Task .

Robotis Bioloid

С этой серией той же корейской компании Robotis с помощью наборов Premium Kit вы сможете собрать человекоподобных роботов. Также в серии есть и другие наборы : STEM Standard (10+), STEM Expansion (10+), Beginner .

Из набора STEM Standard можно сделать 16 различных роботов по схемам, а с набором STEM Expansion можно сделать ещё 9 моделей. В наборе идёт также 48 заданий. Этот набор частично состоит из комплектующих серии Robotis OLLO , а частично – из комплектующих Robotis Bioloid . Т. е. с этим набором вы можете использовать уже имеющиеся у вас наборы обеих серий. Это единственный набор, совместимый с сериями OLLO и Bioloid . В наборе микроконтроллер CM-530, матрица ИК-датчиков (позволяют бежать роботу по линии), 3 ИК-датчика (обнаружение препятствий) и пульт управления RC-100A.

Набор Beginner позволит вам создать роботов 14 различных конструкций. В наборе – микроконтроллер CM-5, 4 сервомотора DYNAMIXEL AX-12A и сенсорный модуль AX-S1.


С набором Premium Kit вы сможете собрать человекоподобного робота в одной из трёх модификаций или 26 простых роботов. Человекоподобный робот из этого набора обладает системой стабилизации тела благодаря двухосному гироскопу, что позволяет ему ловко удерживаться на ногах при ходьбе.

В наборе контроллер CM-530 (32-битный ARM Cortex, 6 кнопок, микрофон, датчик температуры, датчик напряжения, 6 входных/выходных OLLO-совместимых портов, 5 коннекторов для сервомоторов AX/MX Series DYNAMIXEL ), 18 сервомоторов, двухосный гироскоп, 2 ИК-датчика, пульт управления RC-100A .


Программирование роботов серии Robotis Bioloid осуществляется так же в среде ПО RoboPlus .

Hovis Lite

Из этого конструктора, кроме человекоподобного робота, можно собрать ещё порядка 26 различных моделей роботов и механизмов. Hovis Lite – это детище корейской компании DST Robot (до марта 2015 года компания называлась Dongbu Robot). Пластмассовые элементы конструктора могут быть одного из следующих цветов: зелёного, красного, жёлтого или синего. Есть приятный бонус – детали можно распечатать на 3D-принтере. Страничка конструктора находится , а вся документация и 3D-модели .


В наборе микроконтроллер (ATmega128 MCU , в микроконтроллер встроены датчики звука и света), датчик расстояния, IR-пульт дистанционного управления и IR-приёмник для него. Гироскоп/акселерометр и Bluetooth-модель нужно покупать отдельно.

Для программирования есть следующее ПО: DR-SIM (фирменная бесплатная программа для редактирования, тестирования и записи движений), DR-Visual Logic (фирменная бесплатная графическая среда разработки с возможностью просмотра готового кода в виде C-подобного языка), Microsoft Robotics Developer Studio , DR-C , Microsoft Visual Studio и AVR Studio .

VEX EDR

Конструкторы серии VEX EDR , или просто VEX , производит компания VEX Robotics . Предназначены они для возраста от 10 лет. Серия подходит как для школ, институтов, так и для продвинутых роботостроителей. В этой серии вы найдёте как наборы, так и отдельно продающиеся запчасти, объекты и поля для соревнований. Программируемые наборы (с микроконтроллером в комплекте) делятся на стартовые (Programming Control Starter Kit и Dual Control Starter Kit ) и наборы для соревнований (Classroom and Competition Mechatronics Kit , Classroom and Competition Programming Kit и Classroom and Competition Super Kit ). Наборы можно посмотреть на сайте производителя . Из каждого набора вы сможете собрать робота на колёсах с клешнёй (см. рис. ниже). Остальные модели вы можете придумывать самостоятельно, полагаясь на свою фантазию.


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

Из механики нужно обратить внимание на возможность приобретения шестерёнчатых коробок передач (в том числе и червячную), гусениц, Omni-колёс, колёса Илона.

Программируются роботы этой серии с помощью RobotC , easyC (программирование на языке C с помощью перетаскивания блоков), Flowol (программирование с помощью блок-схем) или Modkit (визуальное программирование с помощью блоков). Все среды разработки платные.


VEX IQ

Эта серия тоже производится компанией VEX Robotics и она тоже позволяет создавать программируемых роботов, но рассчитана на возраст от 8 лет. Всего в серии 3 основных набора (Starter Kit with Controller , Starter Kit with Sensors , Super Kit ), расширяющие наборы, объекты и поля для соревнований, а также комплектующие по отдельности. Все позиции хорошо описаны на сайте производителя . В наборы Starter Kit with Sensors и Super Kit входят датчик цвета, гироскоп и датчик расстояния. Управление с пульта возможно в наборах Starter Kit with Controller и Super Kit . Во все наборы входят датчики касания. Хочется отметить, что в соревновательных наборах вы получите, кроме дополнительных деталей, Omni-колёса и гусеницы. Микроконтроллер VEX IQ оборудован 12 универсальными портами для подключения датчиков и моторов.


Программируются роботы серии VEX IQ с помощью Modkit (визуальное программирование с помощью блоков), а также Flowol и RobotC .


Также существует виртуальная среда проектирования конструкции вашего робота VEX Assembler . С помощью этого ПО вы сможете виртуально изготовить и опробовать вашу конструкцию ещё на этапе проектирования. В программу уже загружено более 110 деталей конструктора VEX IQ , объекты для соревнований и даже целиком робот Clawbot IQ (робот с клешнёй). Программа доступна для свободного скачивания (заполните форму сперава и получите ссылку для скачивания по электронной почте).


VEX PRO

Под этой линейкой продуктов компания VEX Robotics предлагает только комплектующие. Здесь нет наборов. Всё продаётся поштучно или комплектами. Все комплектующие можно посмотреть .

Технолаб

Под этой торговой маркой скрываются всё те же наборы от компаний Robotis и VEX Robotics , о которых было написано выше. Наборы (модули) локализованы и собраны для желающих заниматься робототехникой в зависимости от возраста и степени подготовленности. Всего модулей семь. Это модули предварительного, начального, базового, базового соревновательного, профессионального, исследовательского иэ кспертного уровней. Подробности о комплектации по всем модулям представлены на сайте ООО «Экзамен-Технолаб» . Программирование роботов доступно во всех модулях, кроме модуля предварительного уровня.


Arduino

Торговая марка Arduino – это инструменты для создания не только роботов, но и множества различных гаджетов. Для роботостроителей здесь есть микроконтроллеры, всевозможные датчики, двигатели, сервомоторы, платы расширений, LCD-дисплеи, светодиоды. Но под этой торговой маркой не производятся элементы корпусов или каркасов для сборки роботов. Здесь также нет элементов для монтажа. Единственное исключение – Arduino Robot .

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

Программировать микроконтроллеры Arduino можно с помощью бесплатной среды разработки Arduino IDE с открытым исходным кодом (см. первую картинку снизу). Написана Arduino IDE на Java и работает на компьютерах под управлением Windows, Mac OS X и Linux. В Arduino IDE используется язык программирования Processing (язык, основанный на Java). Кроме того, некоторые микроконтроллеры Arduino можно запрограммировать с помощью RobotC, Flowol, Minibloq (графический язык программирования, бесплатно, см. вторую картинку снизу), Ardublock (графический язык программирования, встраивается в Arduino IDE, есть перевод инструкции на русский язык, бесплатно), Physical Etoys (бесплатный графический язык программирования для Windows и Linux с открытыми исходниками, русификации нет) и Modkit .

Также для программирования некоторых контроллеров Arduino можно воспользоваться плагином Visual Micro (платный), который встраивается в Microsoft Visual Studio 2008–2013 или в Atmel Studio 6.1–6.2.

Структор

Магазин «Амперка» предлагает собственное решение для сборки Arduino-совместимых роботов – это панели, рейки и крепления для плат, датчиков и моторов под названием Структор . Детали изготавливаются фрезеровкой из листов белого вспененного ПВХ толщиной 5 мм. За счёт использования такого материала у вас есть возможность красить детали красками. Прочность элементов достаточная для того, чтобы создавать конструкции небольшого размера. В то же время материал податлив, и вы можете легко просверливать в деталях отверстия, вкручивать шурупы или менять геометрию деталей канцелярским ножом.


Все элементы легко соединяются друг с другом, а если для динамических конструкций вам не хватает прочности соединений, «Амперка» предлагает склеивать элементы друг с другом. Кроме того, для ещё большей прочности вы можете использовать детали «совметал. конструктора», ведь отверстия в панелях Структора расположены с тем же шагом 10 мм. К сожалению, в мягкости материала, из которого созданы детали конструктора, кроется и небольшой минус – они недолговечны. Со временем материал в месте креплений деформируется, и детали держатся неплотно.

Стоит отдельно отметить, что чертежи для изготовления деталей находятся в открытом доступе, и вы можете самостоятельно изготавливать элементы конструктора.

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

Multiplo

Multiplo – это Arduino-совместимый конструктор, созданный аргентинской компанией RobotGroup . Конструктор полностью открытый, т. е. доступны как исходники ПО, так и чертежи конструктивных элементов (детали можно распечатать на 3D-принтере или нарезать на лазерном станке с ЧПУ). Основные детали пластиковые, уголки и некоторые другие элементы – алюминиевые, винты, гайки, шайбы и оси – металлические. Эта же компания разработала программу для графического программирования Minibloq , о которой уже было написано выше (один из директоров компании, Хулиан да Силва, является автором этой программы). Официальная страница конструктора , а все инструкции, чертежи и ПО можно скачать .

Конструктор представлен наборами Starter Kit , Building Kit и Monster Kit . В наборе Starter Kit контроллер DuinoBot , батарейный отсек (для трёх батареек AA), два инфракрасных сенсора, два двигателя, пульт управления и приёмник сигнала от него, провода и механические детали для постройки простой тележки. В наборе есть отвёртка и ключи, так что дополнительный инструмент вам не понадобится. В наборе Building Kit дополнительно появляются ультразвуковой датчик, 2 сервомотора, 2 датчика света, 2 светодиодные лампочки, а также дополнительные детальки, в том числе и для сборки клешни.

Набор Monster Kit самый большой. В этом наборе целых два микроконтроллера (можно делать сразу двух роботов из одного набора), а также 4 обычных мотора, 6 сермоторов, батарейные отсеки, один ультразвуковой датчик, 4 инфракрасных датчика, два комплекта дистанционного управления (пульт и датчик для приёма сигнала от него), много механических деталей, в том числе и для сборки двух клешней.

Ещё в официальном магазине есть набор Mechanical Kit , содержащий только механические детали, без электронной части. Также можно приобрести по отдельности микроконтроллер DuinoBot с батарейным отсеком, различные датчики и механические детали. И можно бесплатно скачать файлы для печати полей для соревнований. МагазинMultiploнаходится .

Поскольку конструктор Arduino-совместимый, то программировать можно с помощью аналогичных средств разработки: Arduino IDE , Minibloq , Ardublock , Physical Etoys и Modkit .

Makeblock

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


Новичкам здесь понравятся модули с унифицированными разъёмами с цветными метками для удобного и понятного подключения электронных компонентов. Т. е. для правильного подключения нужно просто убедиться в совпадении цвета меток.

Количество как самодостаточных, так и ресурсных наборов в магазине на официальном сайте огромное. Отдельно здесь можно купить датчики, платы, конструктивные элементы и пр. Из тематических наборов хочется выделить наборы для сборки 3D-принтера (набор Makeblock Constructor I 3D Printer Kit ), плоттера (XY-Plotter Robot Kit v2.0 ), робота, играющего на ксилофоне (набор Music Robot Kit ), конструктор для сборки робота-художника различных модификаций, рисующего фломастерами или выжигающего лазером (набор mDrawBot with Bluetooth and Laser Kit – Blue ) и робот-тележка mBot с большим набором датчиков, шасси которого совместимы с деталями LEGO и Makeblock (Bluetooth, Bluetooth и Wi-Fi).

С помощью набора mDrawBot можно собрать одного из 4 роботов-художников:

mScara – это роботизированная рука, рисующая ручкой или фломастером, а с дополнительным набором Laser Kit ручку можно заменить на лазер, который будет выжигать рисунок, например, на фанере.

mSpider – паук-художник, который висит на двух верёвочках и рисует на вертикальных поверхностях.

mEggBot – робот, рисующий на яйцах или шариках для пинг-понга.

mCar – трёхколёсный робот-машинка, рисующий на листе бумаги, по которому он ездит.

Но и это ещё не всё. Специально для набора mDrawBot компания Makeblock разработала программу с помощью которой вы сможете импортировать векторный рисунок формата SVG, конвертировать BMP в SVG и масштабировать рисунок. При нанесении рисунка с помощью лазера поддерживаются разные оттенки.

Наборы-конструкторы общего назначения следующие: Starter Robot Kit (Bleutooth и IR-версии) и Ultimate Robot Kit . Есть аналогичные наборы без электроники.

Для дистанционного управления роботом есть бесплатное приложение для Android и iOS – Makeblock . Некоторые наборы комплектуются пультами дистанционного управления, например, IR-версия набора Starter Robot Kit.

Программируются роботы Makeblock с помощью программы собственной разработки mBlock , основанной на редакторе Scratch 2.0 , с помощью Arduino IDE или ArduBlock . Чтобы работать в Arduino IDE или ArduBlock , необходимо дополнительно установить библиотеку Makeblock . Примеры, инструкции, драйверы и ПО можно найти .

HUNA-MRT

Под корейским брендом HUNA-MRT скрываются наборы для конструирования механизмов и роботов. Наборы FUN&BOT (MyRobotTime) и KICKY (MRT2) – это наборы для начинающих (на возраст 6–8 лет) из пластмассовых деталей, и здесь нет программирования. А вот в наборах серий CLASS (MRT3) (на возраст 7–11 лет) и TOP (на возраст 9–11 лет) уже есть программируемая плата и есть возможность программировать роботов с помощью простой графической среды программирования. Отличие двух последних серий в том, что в серии CLASS (MRT3) детали пластмассовые, а в серии TOP – металлические. Во всём остальном это полностью совместимые наборы. Детали из одной серии можно использовать вместе с деталями других серий этого бренда. Есть также более продвинутый набор HUNITRONIC (для возраста 12–18 лет), который укомплектован аналогом микроконтроллера Arduino UNO и платой Extension IO Shield для подключения датчиков. Все наборы комплектуются графической средой программирования. Получить больше информации о конструкторах можно на сайте ООО «Брейн Девелопмент» . Официальная страничка серии MRT3 .

RoboRobo

Корейская компания RoboRobo предлагает 5 образовательных наборов для сборки программируемых роботов. Они так прямо и нумеруются: Robo Kit №1, Robo Kit №2, Robo Kit №3, Robo Kit №4, Robo Kit №5 . Различаются они количеством деталей, количеством возможных модификаций роботов, которые вы сможете из них собрать по инструкциям, и сложностью. Чем больше цифра, тем больше деталей и тем сложнее. Обязательно обратите внимание, что набор 2 содержит в себе набор 1, набор номер 3 – содержит набор 2 и так далее. Поэтому, если у вас уже есть набор Robo Kit №1 , то вы можете расширить его с помощью набора Robo kit №1-2 до набора Robo Kit №2 и тем самым сэкономить. Всего расширяющих наборов 4: Robo kit №1-2, Robo kit №2-3, Robo kit №3-4 и Robo kit №4-5 . Официальная страничка конструктора .

В максимальном наборе вы найдёте ИК-сенсор, ИК-пульт управления, датчик звука, датчики касания.

Программируются роботы этой компании с помощью графического интерфейса в программе Rogic Program .

Ещё компания RoboRobo предлагает наборы для очень маленьких детей (5–7 лет): Robo Kids № 1 и Robo Kids № 2 . Второй набор – дополнительный к первому. Из первого набора можно собрать 16 роботов, а из второго – ещё 16. В этих наборах производитель предлагает интересный подход к управлению роботами. В распоряжении маленьких программистов есть набор карточек, которые проводятся через сканер, который в свою очередь даёт команды роботу.

Fischertechnik

Конструкторы fischertechnik выпускает немецкая фирма. Детали конструктора пластмассовые. Разные наборы конструктора рассчитаны на разный возраст. Наборы серии JUNIOR(5+) не имеют ни моторов, ни батареек, это просто конструкторы для малышей. С наборами серии BASIC (7+) и ADVANCED (7+) , PROFI (8+) вы можете собирать различные машины и механизмы, они уже могут комплектоваться моторами, солнечными батареями, блоками питания и др. А вот сборка роботов и их программирование начинается в наборах серии ROBOTICS(8+) .

В серии ROBOTICS шесть наборов: ROBOTICS LT Beginner Set (ROBOTICS LT Стартовый набор) (стартовый набор для создания 8 автоматических устройств), ROBOTICS TXT Discovery Set (ROBOTICS TXT Набор первооткрывателя) (для создания 11 механизмов и автономных роботов), ROBO TX Automation Robots (ROBO TX Автоматические роботы) (для создания реалистичных промышленных роботов), ROBO TX ElectroPneumatic (ROBO TX ЭлектроПневматика) (для сборки 4 пневматических конструкций), ROBO TX Explorer (ROBO TX Исследователь) (для создания робота на гусеничном ходу в шести модификациях) и ROBO TX Training Lab (ROBO TX Учебная лаборатория) (для конструирования автоматических устройств и мобильных роботов). Отдельно к наборам можно приобрести аккумуляторный набор, набор для дистанционного управления, набор свет и звук (для создания светозвуковых эффектов), наборы с дополнительными моторами, ресурсный набор и ящики для хранения. При совмещении наборов друг с другом вы сможете значительно расширить возможности в создании роботов.

Часть наборов серии ROBOTICS комплектуются контроллером ROBO TX (кроме стартового набора, который комплектуется контроллером ROBO LT ), часть – контроллером ROBOTICS TXT . Из датчиков в наборах попадаются следующие: фотодатчик, датчик температуры, датчик цвета, ультразвуковой датчик расстояния, ИК-датчик следования по линии.

Характеристики контроллера ROBO TX следующие: 32-битный процессор ARM9 , монохромный дисплей разрешением 128х64, объём памяти 8 MB RAM, 2 MB Flash. Размер контроллера – 90х90х15 мм, вес – 90 г. Здесь 4 выхода для подключения моторов, 8 универсальных входов, 2 разъёма расширений I2C, RS485 для объединения с другими контроллерами, 4 входа и USB для подключения к компьютеру. Также здесь присутствует встроенный Bluetooth. Можно приобрести дополнительный микроконтроллер ROBO TX .

Отдельно можно приобрести более продвинутый контроллер ROBOTICS TXT . Вот его характеристики: ОС Linux, два процессора ARM Cortex A8 (32bit/600MHz) +Cortex M3 , память 128 Мб DDR3 RAM, 64 Мб Flash, слот для карт Micro SD, цветной сенсорный дисплей 2,4" разрешением 320 x 240, 8 универсальных входов, 4 высокоскоростных цифровых входа, 4 выхода на моторы, комбинированный модуль Bluetooth/Wi-Fi, ИК-приёмник (для приёма сигнала от пульта), USB 2.0 для подключения к ПК, USB Host (USB A для подключения USB-камеры fischertechnik или USB-свистков), 10-контактный разъём для входа или выхода по I2C интерфейсу, встроенный динамик, встроенные часы с собственной батарейкой. Размер контроллера – 90x90x25 мм. Контроллеры могут быть спарены. Все подробности о микроконтроллере .

Во все наборы входит ПО для программирования ROBO Pro (в стартовом наборе вы найдёте облегченную версию этого ПО). Свежую версию ПО и русификацию всегда можно скачать на сайте производителя .

Контроллер ROBOTICS TXT программируется с помощью ROBO Pro , C-Compiler , PC-Library , . Сейчас эта робототехническая платформа представлена только одним набором ROBOTICS PRO 1.0 , из которого вы сможете собрать 6 моделей. Набор рассчитан на учеников школы (7+) и студентов.

В наборе микрокомпьютер, программное обеспечение (для частного и образовательного использования), провода, 3 мотора, 3 светодиода, 2 инфракрасных датчика, 1 датчик касания и разнообразные детали.

А вот спецификация микрокомпьютера ERP:

  • 32-битный микроконтроллер ARM CORTEX-M2;
  • 256 КБ FLASH, 64 КБ RAM;
  • USB-порт 12 Mbit/s;
  • 3 порта для моторов и 4 – для датчиков (светодиоды можно подключать к любым портам);
  • встроенный зуммер;
  • питание от 6 батареек AA;
  • встроенный Wi-Fi модуль.

Программировать собранные модели можно непосредственно на самом блоке или с помощью программного обеспечения ENGINO ERP . Дистанционно управлять роботами возможно с помощью приложения Engino ERP Remote Control , которое доступно в Google Play и Apple store . Все подробности о конструкторе можно найти .

ТРИК

Кибернетический конструктор ТРИК – это российский конструктор, металлические детали которого совместимы с «совметал конструктором» (та же перфорация M4 c шагом 10 мм).

Конструктор ТРИК предлагает насколько решений: стартовый набор, образовательный, школьный, соревновательный, учебная пара. Разница между наборами – в количестве датчиков и деталей, но в каждом наборе есть контроллер ТРИК , видеокамера и микрофон. Все наборы (кроме стартового) комплектуются пластиковой коробкой с отделениями для хранения деталей. В максимальном наборе имеются следующие датчики: 2 датчика освещённости, 2 датчика расстояния, 2 датчика касания. Кроме того здесь есть Омни-колёса, светодиодные ленты, аккумуляторы, зарядное устройство.

Технические характеристики контроллера ТРИК:

  • операционная система: Linux;
  • центральный процессор: OMAP-L138 C6-Integra™ DSP+ARM® SoC, 375 МГц, Texas Instruments;
  • ядро центрального процессора: ARM926EJ-S™ RISC MPU;
  • оперативная память: 256 Мбайт, 6 Мбайт FLASH;
  • периферийный процессор: MSP430F5510, 24 МГц, Texas Instruments;
  • интерфейсы пользователя: USB 2.0, WiFi b/g/n, BlueTooth, 2xUART, 2xI2C, Micro-SD, Mic in (stereo), Line out (mono);
  • интерфейсы двигателей постоянного тока: 4 порта двигателей 6-12V DC, с индивидуальной аппаратной защитой от перегрузки по току (до 2А на двигатель);
  • интерфейсы периферийных устройств: 19 сигнальных портов общего назначения (6 одноканальных и 13 двухканальных) с питанием 3.3-5V, из них 6 могут работать в режиме аналогового входа;
  • интерфейсы видеосенсоров: 2 входа BT.656 VGA 640*480, поддержка стереорежима;
  • встроенный цветной сенсорный LCD монитор 2,4” TFT разрешением 320x240 пикселей;
  • встроенный динамик номинальной мощностью 1 W, пиковой 3 W;
  • 2-цветный, программно-управляемый светодиодный индикатор;
  • слоты расширения: два 26-контактных «щелевых» разъёма модулей расширения;
  • дополнительное оборудование (входит в состав контроллера): 3-осевой акселерометр, 3-осевой гироскоп, аудиокодек, усилитель, конвертеры и схемы управления питанием, схемы защиты входов от перегрузок по напряжению и току;
  • электропитание 6-12V DC, внешний сетевой адаптер либо LiPo аккумулятор RC 3P (11,1V) / 2P (7,4V).

Программирование возможно на С, С++/Qt,J avaScript, С#/F# (.NET), Python и Java. Есть также собственная среда разработки – TRIK Studio , которая работает на Windows и Linux. Для дистанционного управления разработано приложение TRIK gamepad для Android. Подключение к контроллеру происходит через Wi-Fi. Подробности о конструкторе на официальном сайте .

MOSS

Конструктор MOSS , созданный американской компаниейModular Robotics , – самый необычный конструктор из всех здесь перечисленных. Здесь нет ни проводов, ни привычных способов соединения деталей. Весь конструктор состоит из модулей кубической формы с гранями разных цветов и различных соединительных элементов, таких как скобы и уголки. Все они крепятся друг к другу с помощью шариков-магнитов, которые позволяют создавать жёсткие или шарнирные соединения.

Разные цвета граней модулей сделаны не только для красоты, они ещё обозначают характеристики. Зелёные грани проводят электричество. У модуля аккумулятора все грани зелёные и основная цель этого модуля – поставлять энергию всем остальным модулям. Например, чтобы запитать модуль с мотором, вы должны соединить одну из его зелёных граней с зелёной гранью аккумулятора. Красные и коричневые грани проводят данные: красный – выход данных, коричневый – вход данных. Например, если вы хотите, чтобы датчик расстояния управлял скоростью вращения мотора, вам нужно соединить красную грань модуля датчика расстояния с коричневой гранью модуля мотора. Голубые грани – передающие, через них передаётся энергия и/или данные. Например, если вам нужно запитать какой либо модуль, который находится на расстоянии от батареи, вы можете использовать голубые грани гибкого модуля или несколько простых модулей.

Robo Wunderkind

А вот ещё один кубический конструктор, совместимый с конструктором LEGO. Конструктор Robo Wunderkind так же, как и конструктор MOSS, состоит из модулей в форме куба, за исключением микроконтроллера, который состоит как бы из сдвоенных кубиков (на фото микроконтроллер оранжевого цвета). Модули соединяются друг с другом без проводов с помощью специальных соединительных элементов.

Сейчас на сервисе Kickstarter можно предзаказать следующие варианты наборов: стартовый (STARTER KIT ), расширенный (ADVANCED KIT ) и профессиональный (PROFESSIONAL KIT ) . Первые поставки начнутся в июле 2016 года. Наборы рассчитаны на детей от 5 лет и взрослых. В стартовом наборе есть системный модуль (микроконтроллер), модуль с датчиком расстояния (красного цвета), модуль Bluetooth (голубого цвета), аккумуляторный модуль (зелёного цвета), модуль-сервомотор (жёлтого цвета), пустой модуль, 2 модуля-мотора (синего цвета), 2 колеса, 7 соединительных элементов, 2 адаптера LEGO (для присоединения стандартных деталей LEGO, например, человечков, как показано на картинке) и одно пассивное колёсико. В расширенном наборе добавляются ещё 2 пустых модуля, модуль с LED-дисплеем, модуль с датчиком света, модуль с метеодатчиком, ещё 6 соединительных элементов и ещё 2 адаптера LEGO. В профессиональном наборе , по сравнению с расширенным, добавляется ещё 1 аккумуляторный модуль, ещё один модуль-сервомотор, ещё 3 пустых модуля, модуль с инфракрасным датчиком, модуль с лазерной указкой, модуль с экраном на основе электронных чернил, модуль с камерой, модуль с акселерометром, ещё 9 соединительных элементов, ещё 4 адаптера LEGO, и ещё одно пассивное колёсико.

А вот характеристики конструктора: процессор Allwinner A13 SoC, оперативная память RAM 256 Мб DDR3, Storage eMMC Flash Memory 4 GB, WiFi 802.11 b/g/n, Bluetooth 2.1/3.0/4.0. В системный модуль встроены микрофон и динамик.

Программировать готового робота можно с помощью специального приложения, доступного для iOS и Android. В планах разработчиков есть создание приложения для Windows, правда только к сентябрю 2016 года. Программирование здесь графическое. Кроме того, поддерживается Scratch. Также создатели конструктора предоставляют API для разработки, как они пишут, на любом языке программирования.

(по материалам сайта http://www.proghouse.ru/article-box/26-robots)

Ответственный за информацию: методист ГМЦ ДОгМ Солуянов Евгений Александрович.

Программирование роботов обычно является заключительным этапом, связанным с созданием роботов.

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

Чтобы научить вас программировать роботов, потребуется не один урок. Поэтому этот урок поможет вам лучше понять, как начать и что нужно изучить именно вам.

Какой язык выбрать?

Какой язык программирования выбрать для вашего робота? Существует много языков программирования, которые можно использовать для программирования микроконтроллеров. Наиболее распространенными языками программирования роботов являются:

  • Ассемблер
  • Basic
  • C / C ++
  • Python
  • Программное обеспечение Arduino

Ассемблер

Это язык низкого уровня максимально приближенный к машинному коду. Программирование роботов очень сильно зависит от архитектуры процессора и достаточно трудоемко в использовании. Ассемблер нужно использовать только тогда, когда вам необходим абсолютный контроль над вашим кодом на уровне инструкций;


Basic

Один из первых широко используемых языков программирования. Он по-прежнему используется некоторыми микроконтроллерами (Basic Micro , BasicX , Parallax) для программирования учебных роботов;

C / C ++

Один из самых популярных языков. Язык Си обеспечивает высокоуровневую функциональность, сохраняя при этом хороший контроль низкого уровня;

Java

Он более современный, чем Си. Он обеспечивает множество функций безопасности в ущерб контролю низкого уровня. Некоторые производители делают микроконтроллеры специально для использования с Java.

C #

Запатентованный язык Microsoft используется для разработки приложений в Visual Studio;

Программирование для контроллеров Arduino

Используется вариант C ++. Программирование роботов на нём включает некоторые упрощения для того, чтобы сделать программирование не таким сложным;


Python

Один из самых популярных языков сценариев. Он очень прост в освоении и поэтому может использоваться для быстрой и эффективной передачи программ.

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


  • Микроконтроллеры Arduino используют программное обеспечение Arduino и перепрограммируются в процессе обработки.
  • Базовые микроконтроллеры Stamp используют PBasic.
  • Микроконтроллеры Basic Atom используют Basic Micro.
  • Javelin Stamp из Parallax запрограммирован на Java.

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

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

Программирование роботов — начало.

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


Это одна из простейших программ, которые могут быть сделаны на компьютере.

Она предназначена для печати строки текста (например, «Hello World») на мониторе компьютера или на ЖК-экране контроллера.

В случае с микроконтроллером другой очень простой программой, которую вы можете сделать — это переключение вывода IO. Присоединение светодиода к выходному контакту. Затем установление контакта I / O в положение ON и OFF приведет к миганию светодиода. При помощи контактов I / O можно запрограммировать много сложных функций. Например, включение многосегментных светодиодов для отображения текста и цифр, управления электромагнитными реле, сервоприводами и т.д.

Шаг 1.

Убедитесь, что у вас есть все компоненты, необходимые для программирования микроконтроллера. Не все микроконтроллеры поставляются со всем необходимым для их программирования. Большинство микроконтроллеров необходимо подключить к компьютеру через USB-штекер.


Если ваш микроконтроллер не оснащен разъемом USB, возможно вам понадобится отдельный USB-адаптер для последовательного интерфейса. Этот адаптер нужно правильно подключить. Многие микроконтроллеры программируются либо через порт RS-232, либо через USB. Часто они включают в себя разъем USB на плате. Разъем USB используется не только для двусторонней связи, но и для питания платы микроконтроллера.

Шаг 2.

Подключите микроконтроллер к компьютеру и проверьте, к какому COM-порту он подключен.


Не все микроконтроллеры смогут быть обнаружены компьютером. Поэтому вы должны прочитать в руководстве «Начало работы. И тогда вы будете точно знать, что нужно сделать, чтобы компьютер распознал его и смог с ним общаться. Вам может быть придется загрузить «драйверы» (специфичные для каждой операционной системы), чтобы ваш компьютер мог понять, как общаться с микроконтроллером и / или USB-конвертером последовательного преобразователя.

Шаг 3.

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

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

  • Изучите руководства по продуктам и руководство пользователя.
  • Посетите форум производителя.
  • Проверьте публикации в Интернете для продукта и кода.
  • Прочтите руководство, чтобы понять, как написать код.

Создавайте управляемые куски функционального кода.

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

Документируйте все в коде, используя комментарии.

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

Сохраняйте разные версии кода.

Не всегда перезаписывайте один и тот же файл. Если вы обнаружите, что ваши 200+ строк кода не будут компилироваться, не стоит останавливаться только на этой версии кода. Вместо этого вы можете вернуться к ранее сохраненной (и функциональной) версии и добавить или изменить ее по мере необходимости. Код не занимает много места на жестком диске. Поэтому вы можете спокойно сохранять несколько копий.

При отладке робота поднимите его.

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

Если код делает что-то, что кажется неработоспособным.

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

Практический пример.

Для нашего проекта был выбран набор Lego Mindstorms EV3. Для него есть специальная графическая среда программирования EV3 Programmer. Её можно бесплатно скачать с официального сайта Лего и сразу приступать к программированию робота.


Программирование происходит при помощи пиктограмм и является доступным для понимания.

Установка программного обеспечения для Lego EV3.

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

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

Введение

Итак. Что же такое робот? В большинстве случаев это автоматическое устройство, которое реагирует на какие-либо действия окружающей среды. Роботы могут управляться человеком или выполнять заранее запрограммированные действия. Обычно на роботе располагают разнообразные датчики (расстояния, угла поворота, ускорения), видеокамеры, манипуляторы. Электронная часть робота состоит из микроконтроллера (МК) - микросхема, в которую заключён процессор, тактовый генератор, различная периферия, оперативная и постоянная память. В мире существует огромное количество разнообразных микроконтроллеров для разных областей применения и на их основе можно собирать мощных роботов. Для любительских построек широкое применение нашли микроконтроллеры AVR. Они, на сегодняшний день, самые доступные и в интернете можно найти много примеров на основе этих МК. Чтобы работать с микроконтроллерами тебе нужно уметь программировать на ассемблере или на Cи и иметь начальные знания в цифровой и аналоговой электронике. В нашем проекте мы будем использовать Cи. Программирование для МК мало чем отличается от программирования на компьютере, синтаксис языка такой же, большинство функций практически ничем не отличаются, а новые довольно легко освоить и ими удобно пользоваться.

Что нам нужно

Для начала наш робот будет уметь просто объезжать препятствия, то есть повторять нормальное поведение большинства животных в природе. Всё что нам потребуется для постройки такого робота можно будет найти в радиотехнических магазинах. Решим, как наш робот будет передвигаться. Самым удачным я считаю гусеницы, которые применяются в танках, это наиболее удобное решение, потому что гусеницы имеют большую проходимость, чем колёса машины и ими удобнее управлять (для поворота достаточно вращать гусеницы в разные стороны). Поэтому тебе понадобится любой игрушечный танк, у которого гусеницы вращаются независимо друг от друга, такой можно купить в любом магазине игрушек по разумной цене. От этого танка тебе понадобится только платформа с гусеницами и моторы с редукторами, остальное ты можешь смело открутить и выкинуть. Так же нам потребуется микроконтроллер, мой выбор пал на ATmega16 - у него достаточно портов для подключения датчиков и периферии и вообще он довольно удобный. Ещё тебе потребуется закупить немного радиодеталей, паяльник, мультиметр.

Делаем плату с МК

В нашем случае микроконтроллер будет выполнять функции мозга, но начнём мы не с него, а с питания мозга робота. Правильное питание - залог здоровья, поэтому мы начнём с того, как правильно кормить нашего робота, потому что на этом обычно ошибаются начинающие роботостроители. А для того, чтобы наш робот работал нормально нужно использовать стабилизатор напряжения. Я предпочитаю микросхему L7805 - она предназначена, чтобы на выходе выдавать стабильное напряжение 5В, которое и нужно нашему микроконтроллеру. Но из-за того, что падение напряжения на этой микросхеме составляет порядка 2,5В к нему нужно подавать минимум 7,5В. Вместе с этим стабилизатором используются электролитические конденсаторы, чтобы сгладить пульсации напряжения и в цепь обязательно включают диод, для защиты от переполюсовки.

Теперь мы можем заняться нашим микроконтроллером. Корпус у МК — DIP (так удобнее паять) и имеет сорок выводов. На борту имеется АЦП, ШИМ, USART и много другого, что мы пока использовать не будем. Рассмотрим несколько важных узлов. Вывод RESET (9-ая нога МК) подтянут резистором R1 к «плюсу» источника питания - это нужно делать обязательно! Иначе твой МК может непреднамеренно сбрасываться или, проще говоря - глючить. Так же желательной мерой, но не обязательной является подключение RESET’а через керамический конденсатор C1 к «земле». На схеме ты так же можешь увидеть электролит на 1000 мкФ, он спасает от провалов напряжения при работе двигателей, что тоже благоприятно скажется на работе микроконтроллера. Кварцевый резонатор X1 и конденсаторы C2, C3 нужно располагать как можно ближе к выводам XTAL1 и XTAL2.

О том, как прошивать МК, я рассказывать не буду, так как об этом можно прочитать в интернете. Писать программу мы будем на Cи, в качестве среды программирования я выбрал CodeVisionAVR. Это довольно удобная среда и полезна новичкам, потому что имеет встроенный мастер создания кода.

Управление двигателями

Не менее важным компонентом в нашем роботе является драйвер двигателей, который облегчает нам задачу в управлении им. Никогда и ни в коем случае нельзя подключать двигатели напрямую к МК! Вообще мощными нагрузками нельзя управлять с микроконтроллера напрямую, иначе он сгорит. Пользуйтесь ключевыми транзисторами. Для нашего случая есть специальная микросхема - L293D. В подобных несложных проектах всегда старайтесь использовать именно эту микросхему с индексом «D», так как она имеет встроенные диоды для защиты от перегрузок. Этой микросхемой очень легко управлять и её просто достать в радиотехнических магазинах. Она выпускается в двух корпусах DIP и SOIC. Мы будем использовать в корпусе DIP из-за удобства монтажа на плате. L293D имеет раздельное питание двигателей и логики. Поэтому саму микросхему мы будем питать от стабилизатора (вход VSS), а двигатели напрямую от аккумуляторов (вход VS). L293D выдерживает нагрузку 600 мА на каждый канал, а этих каналов у неё два, то есть к одной микросхеме можно подключить два двигателя. Но, чтобы перестраховаться, мы объединим каналы, и тогда потребуется по одной микре на каждый двигатель. Отсюда следует, что L293D сможет выдержать 1.2 А. Чтобы этого добиться нужно объединить ноги микры, как показано на схеме. Микросхема работает следующим образом: когда на IN1 и IN2 подаётся логический «0», а на IN3 и IN4 логическая единица, то двигатель вращается в одну сторону, а если инвертировать сигналы - подать логический ноль, тогда двигатель начнёт вращаться в другую сторону. Выводы EN1 и EN2 отвечают за включение каждого канала. Их мы соединяем и подключаем к «плюсу» питания от стабилизатора. Так как микросхема греется во время работы, а установка радиаторов проблематична на этот тип корпуса, то отвод тепла обеспечивается ногами GND — их лучше распаивать на широкой контактной площадке. Вот и всё, что на первое время тебе нужно знать о драйверах двигателей.

Датчики препятствий

Чтобы наш робот мог ориентироваться и не врезался во всё, мы установим на него два инфракрасных датчика. Самый простейший датчик состоит из ик-диода, который излучает в инфракрасном спектре и фототранзистор, который будет принимать сигнал с ик-диода. Принцип такой: когда перед датчиком нет преграды, то ик-лучи не попадают на фототранзистор и он не открывается. Если перед датчиком препятствие, тогда лучи от него отражаются и попадают на транзистор - он открывается и начинает течь ток. Недостаток таких датчиков в том, что они могут по-разному реагировать на различные поверхности и не защищены от помех — от посторонних сигналов других устройств датчик, случайно, может сработать. От помех может защитить модулирование сигнала, но пока мы этим заморачиватся не будем. Для начала, и этого хватит.


Прошивка робота

Чтобы оживить робота, для него нужно написать прошивку, то есть программу, которая бы снимала показания с датчиков и управляла двигателями. Моя программа наиболее проста, она не содержит сложных конструкций и всем будет понятна. Следующие две строки подключают заголовочные файлы для нашего микроконтроллера и команды для формирования задержек:

#include
#include

Следующие строки условные, потому что значения PORTC зависят от того, как ты подключил драйвер двигателей к своему микроконтроллеру:

PORTC.0 = 1; PORTC.1 = 0; PORTC.2 = 1; PORTC.3 = 0; Значение 0xFF означает, что на выходе будет лог. «1», а 0x00 - лог. «0». Следующей конструкцией мы проверяем, есть ли перед роботом препятствие и с какой оно стороны: if (!(PINB & (1<

Если на фототранзистор попадает свет от ик-диода, то на ноге микроконтроллера устанавливается лог. «0» и робот начинает движение назад, чтобы отъехать от препятствия, потом разворачивается, чтобы снова не столкнуться с преградой и затем опять едет вперёд. Так как у нас два датчика, то мы проверяем наличие преграды два раза - справа и слева и потому можем узнать с какой стороны препятствие. Команда «delay_ms(1000)» указывает на то, что пройдёт одна секунда, прежде чем начнёт выполняться следующая команда.

Заключение

Я рассмотрел большинство аспектов, которые помогут тебе собрать твоего первого робота. Но на этом робототехника не заканчивается. Если ты соберёшь этого робота, то у тебя появится куча возможностей для его расширения. Можно усовершенствовать алгоритм робота, как например, что делать, если препятствие не с какой-то стороны, а прямо перед роботом. Так же не помешает установить энкодер - простое устройство, которое поможет точно располагать и знать расположение твоего робота в пространстве. Для наглядности возможна установка цветного или монохромного дисплея, который может показывать полезную информацию - уровень заряда аккумулятора, расстояние до препятствия, различную отладочную информацию. Не помешает и усовершенствование датчиков - установка TSOP (это ик-приёмники, которые воспринимают сигнал только определённой частоты) вместо обычных фототранзисторов. Помимо инфракрасных датчиков существуют ультразвуковые, стоят подороже, и тоже не лишены недостатков, но в последнее время набирают популярность у роботостроителей. Для того, чтобы робот мог реагировать на звук, было бы неплохо установить микрофоны с усилителем. Но по-настоящему интересным, я считаю, установка камеры и программирование на её основе машинного зрения. Есть набор специальных библиотек OpenCV, с помощью которых можно запрограммировать распознавание лиц, движения по цветным маякам и много всего интересного. Всё зависит только от твоей фантазии и умений.

Список компонентов:

    ATmega16 в корпусе DIP-40>

    L7805 в корпусе TO-220

    L293D в корпусе DIP-16 х2 шт.

    резисторы мощностью 0,25 Вт номиналами: 10 кОм х1 шт., 220 Ом х4 шт.

    конденсаторы керамические: 0.1 мкФ, 1 мкФ, 22 пФ

    конденсаторы электролитические: 1000 мкФ х 16 В, 220 мкФ х 16В х2 шт.

    диод 1N4001 или 1N4004

    кварцевый резонатор на 16 МГц

    ИК-диоды: подойдут любые в количестве двух штук.

    фототранзисторы, тоже любые, но реагирующие только на длину волны ик-лучей

Код прошивки:

/***************************************************** Прошивка для робота Тип МК: ATmega16 Тактовая частота: 16,000000 MHz Если у тебя частота кварца другая, то это нужно указать в настройках среды: Project -> Configure -> Закладка "C Compiler" *****************************************************/ #include #include void main(void) { //Настраиваем порты на вход //Через эти порты мы получаем сигналы от датчиков DDRB=0x00; //Включаем подтягивающие резисторы PORTB=0xFF; //Настраиваем порты на выход //Через эти порты мы управляем двигателями DDRC=0xFF; //Главный цикл программы. Здесь мы считываем значения с датчиков //и управляем двигателями while (1) { //Едем вперёд PORTC.0 = 1; PORTC.1 = 0; PORTC.2 = 1; PORTC.3 = 0; if (!(PINB & (1<О моём роботе

В данный момент мой робот практически завершён.


На нём установлена беспроводная камера, датчик расстояния (и камера и этот датчик установлены на поворотной башне), датчик препятствия, энкодер, приёмник сигналов с пульта и интерфейс RS-232 для соединения с компьютером. Работает в двух режимах: автономном и ручном (принимает сигналы управления с пульта ДУ), камера также может включаться/выключаться дистанционно или самим роботом для экономии заряда батарей. Пишу прошивку для охраны квартиры (передача изображения на компьютер, обнаружение движений, объезд помещения).

Многие робототехнические контроллеры реализованы с использованием языков программирования специального назначения. Например, многие программы для обобщающей архитектуры были реализованы на языке поведения , который был определен Бруксом. Этот язык представляет собой язык управления в реальном времени на основе правил, результатом компиляции которого становятся контроллеры AFSM . Отдельные правила этого языка, заданные с помощью синтаксиса, подобного Lisp , компилируются в автоматы AFSM, а группы автоматов AFSM объединяются с помощью совокупности механизмов передачи локальных и глобальных сообщений.

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

Одним из таких языков является универсальный робототехнический язык , или сокращенно GRL (Generic Robot Language ). GRL- это функциональный язык программирования для создания больших модульных систем управления. Как и в языке поведения, в GRL в качестве основных конструктивных блоков используются конечные автоматы. Но в качестве настройки над этими автоматами язык GRL предлагает гораздо более широкий перечень конструкций для определения коммуникационного потока и синхронизации ограничений между различными модулями, чем язык поведения. Программы на языке GRL компилируются в эффективные программы на таких языках команд, как С .

Еще одним важным языком программирования (и связанной с ним архитектурой) для параллельного робототехнического программного обеспечения является система планирования реактивных действий, или сокращенно RAPS (Reactive Action Plan System) . Система RAPS позволяет программистам задавать цели, планы, связанные с этими целями (или частично определять политику), а также задавать условия, при которых эти планы по всей вероятности будут выполнены успешно.

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

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

Программы на языке Golog формулируются в терминах ситуационного исчисления с учетом дополнительной возможности применения операторов недетерминированных действий. Кроме спецификации программы управления с возможностями недетерминированных действий, программист должен также предоставить полную модель робота и его среды.

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

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

Язык «JSk CES (сокращение от C++ for embedded systems - C++ для встроенных систем) - это языковое расширение C++, в котором объединяются вероятностные средства и средства обучения. В число типов данных CES входят распределения вероятностей, что позволяет программисту проводить расчеты с использованием неопределенной информации, не затрачивая тех усилий, которые обычно связаны с реализацией вероятностных методов.

Еще более важно то, что язык CES обеспечивает настройку робототехнического программного обеспечения с помощью обучения на основании примеров, во многом аналогично тому, что осуществляется в алгоритмах обучения. Язык CES позволяет программистам оставлять в коде «промежутки», которые заполняются обучающими функциями; обычно такими промежутками являются дифференцируемые параметрические представления, такие как нейронные сети. В дальнейшем на отдельных этапах обучения, для которых учитель должен задать требуемое выходное поведение, происходит индуктивное обучение с помощью этих функций. Практика показала, что язык CES может успешно применяться в проблемных областях, характерных для частично наблюдаемой и непрерывной среды.

Язык ALisp представляет собой расширение языка Lisp . Язык ALisp позволяет программистам задавать недетерминированные точки выбора, аналогичные точкам выбора в языке Golog. Но в языке ALisp для принятия решений применяется не программа доказательства теорем, а средства определения правильного действия с помощью индуктивного обучения, в которых используется обучение с подкреплением. Поэтому язык ALisp может рассматриваться как удобный способ внедрения знаний о проблемной области в процедуру обучения с подкреплением, особенно знаний об иерархической структуре «процедур» желаемого поведения. До сих пор язык ALispприменялся для решения задач робототехники только в имитационных исследованиях, но может стать основой многообещающей методологии создания роботов, способных к обучению в результате взаимодействия со своей средой.

Программирование промышленных роботов в SprutCAM

Николай Конов,
директор компании KROKK, d.o.o., Словения, г.Любляна (www.krokk.si)

Индустриальные роботы в современной промышленности

Мировой рынок роботов

Применение индустриальных роботов во всем мире каждый год увеличивается. К 2018 году более 1,3 млн роботов будут введены в эксплуатацию по всему миру. Средний показатель плотности применения роботов в производстве, по данным 2014 года, равен 66 единицам на 10 тыс. работников. В 21 стране этот показатель выше среднего (рис. 1).

В них входит большинство индустриально развитых страх Европы, США, Канада и Азиатский регион (Южная Корея, Япония, Тайвань). Словения занимает в этом списке не последнее место и с показателем 100 роботов на 10 тыс. человек занимает лидирующие позиции по автоматизации производства. Наибольшее применение роботы находят в автомобильной промышленности, где наблюдается более высокая плотность роботизации производства (рис. 2).

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

Самой распространенной областью применения роботов является выполнение повторяющихся операций на производственных линиях, таких как сварка, перемещение деталей, покраска, сборка и др. Как правило, роботы на таких линиях действуют циклически по программе и выполняют одни и те же операции, заменяя рутинный человеческий труд. Это позволяет максимально автоматизировать производственный процесс, уменьшить фактор человеческой ошибки и максимально увеличить производительность. Но для современных роботов выполнение простых операций по перемещению — не предел их возможностей.

Робот, благодаря наличию шести степеней свободы, может также делать сложные многоосевые перемещения вдоль необходимой траектории, выполняя, таким образом, любую обработку, которая до этого была возможна только на специализированных станках. Это становится реальным прежде всего вследствие многолетней эволюции индустриальных роботов и контроллеров. Индустриальные роботы стали более точными и жесткими — возможно позиционирование робота с точностью до нескольких сотых долей миллиметра. Совершеннее стали и контроллеры роботов — они позволяют управлять несколькими роботами одновременно, а также интерполировать перемещения робота с дополнительными линейными и поворотными осями. Всё это создало предпосылки для использования роботов в тех отраслях, где до сих пор было возможно применение только специализированных станков с ЧПУ.

Возможности индустриальных роботов в обработке материалов

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

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

Доступная пятиосевая обработка

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

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

Художественная обработка материалов — не только камня, но и дерева, гипса, пластика и др. — одна из наиболее подходящих областей для применения роботов. Здесь не требуется высокая точность, при этом, как правило, заготовки бывают довольно внушительных размеров и всегда имеют поверхность сложной формы. Применение робота позволяет выполнять обработку любой сложности и полностью в многоосевом режиме.

Большая зона обработки

Очень часто изделие, которое необходимо обработать, требует от оборудования больших зон перемещения. Примерами могут служить корпуса лодок, шасси прицепов, прототипирование крупногабаритных изделий, подготовка форм для литья и др. Для обработки таких изделий необходимы специализированные станки с большими зонами перемещения, стоимость которых соизмерима с их размерами.

Однако робот может быть размещен на подвижной платформе, длина перемещения которой может быть практически любой. Современные контроллеры промышленных роботов позволяют выполнять интерполяцию движений робота и дополнительно до трех линейных осей перемещения самого робота. Это дает возможность применения промышленного робота практически в неограниченном пространстве. Пример — роботизированная ячейка обработки корпуса лодки (рис. 4).

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

Многоцелевое использование робота

Промышленный робот может в одном и том же технологическом процессе использоваться как для захвата заготовки, так и для перемещения ее через инструмент. Так называемая схема «заготовка к инструменту» позволяет реализовать целую технологическую цепочку обработки изделия, а также перемещения изделия в необходимое место для дальнейших операций всего на одном роботе (рис. 5).

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

Дополнительные степени свободы

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

Для сварки бака со всех сторон используется дополнительная поворотная ось, которая управляется синхронно с осями робота и позволяет выполнить операцию сразу со всех сторон.

Таким образом, современные промышленные роботы могут использоваться для многих операций обработки там, где раньше это невозможно было представить: фрезерование (метал, камень, дерево, резина, пластик и др.), шлифовка, полировка, обрезка, снятие заусенцев, резание (плазменное, водяное, лазерное). Такие решения находят применение во многих отраслях промышленности и доступны даже для малого бизнеса, что позволяет ему развиваться и при небольших инвестициях.

SprutCAM для программирования роботов

Стандартные возможности создания программ

Все вышеперечисленные примеры требуют программирования сложных перемещений инструмента и, как следствие, осей робота. При классическом программировании роботов задание перемещений происходит последовательно — от точки к точке. Такой подход очень трудно применить для сложных траекторий, связанных еще и с ориентацией инструмента. Подобное программирование также потребует много времени, в течение которого робот фактически будет занят и не будет задействован в производственном процессе. Многие производители предоставляют возможность создания программ для робота в G-коде или в близком формате, когда программист учитывает лишь координаты центральной точки инструмента и создает программу в обычном декартовом пространстве, а положение фактических осей робота пересчитывается контроллером. В этом случае можно провести аналогию со станками с ЧПУ, которые имеют схожие возможности.

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

Применение CAM-системы для программирования

Логичным выходом из данной ситуации, следуя аналогии с классическими станками, в которых для создания программ обработки сложных форм применяют CAM-системы, является применение CAM для программирования робота. Действительно, создание траектории перемещения инструмента ничем не отличается от создания ее для станка. Разница лишь в том, что, впоследствии движения инструмента должны быть пересчитаны в движения осей робота и дополнительных осей. Этой возможностью обладает далеко не каждая CAM-система.

Кроме того, CAM-система должна понимать кинематику робота и учитывать все его возможности для позиционирования инструмента, избегать сингулярности и коллизий.

Компания «СПРУТ-Технология» уже более 20 лет занимается разработкой программного обеспечения SprutCAM. Одной из опций данного продукта является возможность создания программ для промышленных роботов на основе загружаемой 3D-модели изделия.

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

Функции SprutCAM

Стратегии обработки

Будучи многофункциональной CAM-системой, SprutCAM содержит большое количество стратегий для любых видов обработки: фрезерования (черновые, чистовые, многоосевые операции); резания; сварки (рис. 7).

Кроме того, SprutCAM обладает уникальными стратегиями аддитивной обработки и обработки инструментом типа «нож». Все эти стратегии возможно использовать при программировании робота.

Поддержка

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

Преимущества использования SprutCAM для программирования роботов

  • Offline-программирование роботов увеличивает полезную загрузку;
  • гораздо более быстрое создание программ, чем от точки к точке;
  • легкое программирование роботов с дополнительными осями;
  • автоматическая оптимизация и поиск безаварийных перемещений;
  • реалистичная симуляция и проверка программ;
  • готовые постпроцессоры для генерации программы на языке контроллера;
  • создание программ такое же простое, как при программировании станков с ЧПУ.