Занятие 2 про знакомство с программированием микроконтроллерных плат ChipKIT для управления роботами из
серии занятий по популярной робототехнике СБИ НГТУ и ДОСААФ отдельным постом.
Программирование микроконтроллера для управления роботом from
Anton Moiseev На слайдах:
- Плата ChipKIT WF32 - совместима с платформой Arduino, но с pic32 всё быстрее и лучше
- Мигаем лампочкой
- Крутим моторчиком с драйвером-усилителем L293D
- Крутим сервомоторчиком с библиотекой Servo.h
- Реагируем на звук с датчиком звука
Исходники уроков:
https://github.com/1i7/lessons/tree/master/chipkit-robot-intro/sketches Платы
ChipKIT WF32 (с вайфаем $70):
http://digilentinc.com/Products/Detail.cfm?NavPath=2,892,1193&Prod=CHIPKIT-WF32ChipKIT Uno32 (самая простая $27):
http://digilentinc.com/Products/Detail.cfm?NavPath=2,892,893&Prod=CHIPKIT-UNO32ChipKIT Wi-FIRE (аналог WF32 с процессором PIC32MZ 200МГц $80):
http://digilentinc.com/Products/Detail.cfm?NavPath=2,892,1266&Prod=CHIPKIT-WIFIRE Установка среды разработки MPIDE
Скачать среду разработки MPIDE, адаптированную для работы с платами серии ChipKIT (Linux, Mac, Windows):
http://chipkit.net/started/Для ее работы потребуется установить платформу Java SE:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html Инструкции: для
Linux,
Mac,
Windows Общий смысл:
1) Запустить среду mpide (скачать архив - исполняемый файл внутри).
Перед запуском исполняемого файла из архива, требуется установить Java (в Linux - еще одну библиотеку rxtx).
В Mac также потребуется в настройках системы разрешить запускать приложения из недоверенных источников.
2) Установить драйверы для плат, чтобы они определялись в системе как COM-порт и MPIDE их видела для прошивки.
В Linux все необходимые драйверы уже есть в ядре, но может потребоваться поиграть с настройками доступа к устройству /dev/ttyUSB0 (индекс на конце может быть любой), под видом которого появляется подключенная к системе плата. Инструкции могут отличаться от дистрибутива к дистрибутиву (может потребоваться добавить пользователя в нужную группу; в крайнем случае выполнить "sudo chmod 777 /dev/ttyUSB0" или запустить MPIDE от рута, но так лучше не делать).
В Mac драйвер есть внутри архива и ставится без проблем.
В Windows драйвер тоже есть внутри архива MPIDE, но с его установкой на новую систему у меня обычно начинается какая-то чехарда (некоторые нюансы ниже могут требовать перепроверки):
- В Windows 7 обычно подходит драйвер из архива с mpide - при подключении устройства нужно указать системе путь к каталогу с распакованной MPIDE и она должна найти в ней нужный драйвер (там их два и нужно обязательно выбрать не FTDI, а второй; с FTDI подключенная плата не появляется в виде COM-порта - вот здесь могу наврать, т.к. под рукой нет Windows7, но пару раз кажется было именно так)
- В Windows 8 драйверы из архива с MPIDE системой не распознаются - при подключении платы нужно поймать диалог подключения нового устройства и разрешить ему найти драйверы в интернете (если вы находитесь далеко от нормального интернета, например проводите демо-занятие в Ждановце, это проблема).
- В Windows 8.1 по отзыву одного из студентов, драйвер уже встроен в систему (сам не проверял).
В случае успеха, подключенная к компьютеру плата должна появиться в меню MPIDE Tools/Serial Port.
Дополнительно
Мотор с пластиковым редуктором:
http://www.robotshop.com/en/solarbotics-gm7-gear-motor-7.htmlСерво-машинки (для примера, их разных можно найти и у нас):
http://www.robotshop.com/en/dfrobot-micro-servo-motor.htmlМагазин хобби-сервис в Печерах рядом с 6м корпусом (там есть моторчики, аккумуляторы и много еще полезного, но раза в 3 дороже, чем в интернете):
www.hobby-service.ru/shops.htmlКазанское шоссе 16:
http://maps.yandex.ru/?text=Хобби-Сервис&sll=44.001485999999986%2C56.324141999993074&sspn=0.865173%2C0.256770&z=17&results=20&ll=44.079693%2C56.283690&spn=0.014677%2C0.004261&l=map Магазин ArduNN.ru: платы Arduino, датчики, запчасти для 3д-принтеров и т.п. в Нижнем Новгороде.
chipnn.ru - разные электронные компоненты в Нижнем Новгороде (в основном не для Ардуино), есть
драйвер L293Dfixled.ru - хороший интернет-магазин в Санкт-Петербурге, много всего совместимого с экосистемой Ардуино, в частности
разные датчики.