Игрушки на вырост. Программируем lego-роботов
DESCRIPTION
Доклад, представленный на Application Developer Days - 3 в Москве.TRANSCRIPT
![Page 1: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/1.jpg)
Игрушки на вырост Программируем Lego-роботов
Александр Колотов
nnxt.blogspot.com
![Page 2: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/2.jpg)
Шпаргалки разрешены
goo.gl/S63TO
![Page 3: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/3.jpg)
Хобби или Инструмент?
Если вы можете придумать робота, вы можете его построить
![Page 4: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/4.jpg)
Lego Mindstorms NXT
• Основной проц. ARM (256 KB FLASH, 64 KB RAM, 48 MHz)
• Со-процессор AVR (4 KB FLASH, 512 Byte RAM, 8 MHz)
BlueTooth, USB, 3 порта для мотора, 4 порта для сенсоров, ч/б экран, динамик, 4 кнопки, 6 батареек
goo.gl/SwLjp
Технические спецификации
![Page 5: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/5.jpg)
I like to move it
• 170 rpm • Встроенный энкодер
Как подключить больше трех
моторов?
![Page 6: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/6.jpg)
Идем по приборам
Касания, удары
Помехи, расстояния
Шум, громкие звуки
Цвета
Яркость, окрашенность
![Page 7: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/7.jpg)
Работа со светом
Черный цвет отражает света много меньше чем белый.
Разное количество света отражается от поверхностей разных цветов
![Page 8: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/8.jpg)
Каллибровка
Тихое помещение vs Фоновый шум Освещенное поле vs поле в тени
0% 100% 0%
0 1023
![Page 9: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/9.jpg)
Еще сенсоры
Dexter Industries
![Page 10: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/10.jpg)
Большой брат следит за тобой
Команды на моторы
Данные с сенсоров и енкодеров
MS Robotics Developer Studio LEGO::NXT NXT-Python RWTH - Mindstorms NXT Toolbox for MATLAB
NI LabView Robolab Scratch
![Page 11: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/11.jpg)
Автономный робот
Скомпилированный исполняемый файл
NXT-G leJOS NXJ Enchanting Not Exactly C (NXC)
NI LabView Robolab RobotC NXT Byte Code (NBC)
![Page 12: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/12.jpg)
Мобильная реальность
Программа-посредник
MINDroid – OpenSource проект от LEGO Chatterbox – как инициировать общение со стороны NXT блока Конструкторы: MIT App Inventor, CATROID
RPC
Результаты вызова RPC
![Page 13: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/13.jpg)
NXT-G
+ графическая среда + обучение - стабильность в работе
goo.gl/Lvcx2
![Page 14: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/14.jpg)
Enchanting
+ графическая среда + обучение - проект в разработке - перепрошивка FW
enchanting.robotclub.ab.ca
![Page 15: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/15.jpg)
Not eXactly C (NXC)
BricxCC + инструменты goo.gl/wp40X
nxcEditor + nxcSimulator goo.gl/IFMKM
+ Open Source, все платформы + облегченная нотация C - выпуск новых версий
![Page 16: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/16.jpg)
Ставим BricxCC
1. Установка Fantom драйвера
2. Установка последнего релиза
3. Распаковка последней тестовой сборки поверх установленной
goo.gl/Cs5RY
goo.gl/ZHskb
![Page 17: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/17.jpg)
RobotC
RobotC IDE + Virtual Worlds
goo.gl/ks6SD
+ оптимизированое FW + эмулятор NXT робота - только на OS Windows
![Page 18: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/18.jpg)
Куда податься?
Всероссийские
Классические соревнования роботов
Региональные отборочные этапы
Мировые
![Page 19: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/19.jpg)
Цель: выбить 8 банок за пределы ринга Макс. время работы робота: 2 минуты
Побеждает робот, вытолкнувший все кегли за минимальное время
Кегельринг@addconf
![Page 20: Игрушки на вырост. Программируем Lego-роботов](https://reader030.vdocuments.pub/reader030/viewer/2022020101/5496fd61b479595b4d8b50f3/html5/thumbnails/20.jpg)
Помогите!!!
• MINDboards: goo.gl/Sp7Lb
• phantoms.su: goo.gl/NEMTZ
• DoubleBrick.ru: goo.gl/M9hjM
• RobotC: goo.gl/dvNmY
• LabView: goo.gl/CxRm9