Появата на Kinect насърчи преподавателите да оценяват възможностите на устройството в областта на образованието. Като инструмент за преподаване Kinect има следните характеристики:
- Гъвкаво помощно средство. Учителите и учениците могат да взаимодействат със съдържание чрез движенията на тялото, жестове и гласови команди, без да се използват клавиатури или мишки.
- Многопотребителски интерфейс. Kinect позволява да бъде използван от няколко потребители, затова учениците могат да извършват самостоятелна дейност, дейност в екип или състезателна дейност (one-to-one взаимодействие).
- Универсален инструмент. Събирайки 3D информация, Kinect може да подпомага различни преподавателски дейности като хореография и спорт; да се използва за 3D дизайн и т.н.
- Ангажира вниманието. В сравнение с използването на IWB, дейностите с Kinect предоставят повече физическо натоварване и създават нов модел на ангажираност, включват повече време за изпълнение на поставената задача и предполагат по-добро използване на различните видове интелигентност.
- Средство за програмиране. Запознаване с принципите на програмирането при съвременните обектно-ориентирани езици [1].
За да проуча потенциалните ползи от разработването на приложения за Kinect – развитие на изчислителни умения, аналитични способности, алгоритмично мислене и др., които са пряко свързани с темата на дисертационния ми труд, разработих учебна програма за контролиране на роботизирани системи чрез управление на Kinect. Използваният програмен език бе F#, тест групата – ученици от 10., 11. и 12. клас, а заложените часове по програмата – 30 уч. часа. Учениците, участващи в извадката, наброяват 36 души, разделени в три групи по 12 души. Участието в групите е формирано на базата на резултатите на учениците от СУ „Сава Доброплодни“, Шумен, от участия в общински, регионални и национални състезания по информационнни технологии и роботика. Изборът на езика бе обусловен от следните критерии:
- F# е статично типизиран функционален език за програмиране (наследник на ML);
- F# има цялостна интеграция с .Net екосистемата;
- Разполага с extension-и за асинхронно програмиране;
- Поддържа се в облака на Microsoft – Azure, към който училището има акаунт;
- Езикът е Оpen source;
- Налична е голяма общностна група (http://fsharp.org), която е отворена към взаимопомощ, още повече когато става въпрос за училищни проекти;
- Поддържа се от крайни устройства-клиенти като Kinect, Leap Motion, W8/WP;
- Разполага с хибридност между функционално и хибридно програмиране [2].
Тези и други характеристики на езика го правят добър за начинаещи програмисти, а оттам и подходящ за тест групата, включена в това изследване.
Крайният резултат от практическите и лекционни занятия бе да се постигне управлението на транспортен Kano робот (базиран на Arduino) с помощта на естествения интерфейс на Kinect. Търсените образователни ползи – развитие на изчислителни умения, аналитични способности, алгоритмично мислене.
NUI-контролери като Kinect и Leap Motion – извеждат информация по кадри и обикновено тя е от порядъка на 30 fps. Това прави възможно улавянето на движенията на човешкото тяло от Kinect в реално време и предаването им в команден ред към Kano транспортния робот без забавяне. Примери от реакции на събития, илюстриращи работата на Kinect и Kano робота, могат да бъдат видени по-долу:




Kano транспортният робот следва инструкциите, разчетени от Kinect, и изпълнява елементарни движения – напред, назад, завиване наляво и надясно, като при завиването се използват два подхода: блокиране на левите или десните мотори, задвижващи колелата му, или задвижване в обратна на движението посока на противоположния мотор. За целите на програмата инструкциите, разчитани от Kinect, са ограничени в разпознаването на човешката кинематика. При смъкнати две ръце роботът е в състояние на покой (към четирите мотора не се подава захранване). При вдигнати две ръце над нивото на кръста се задвижват и четирите мотора и роботът се предвижва напред. При вдигната лява ръка и смъкната дясна роботът завива на място в посока ляво, а при вдигната дясна ръка – респективно завива надясно.

В хода на изследвато се достигна до следните изводи:
- Всички обучаеми сравнително лесно могат да съставят управляващи структури, да генерират действия и да променят данни, от които зависят те.
- F# e по-подходящата среда за целенасочени дейности, свързани с програмирането за ученици на възраст над 13 г.
- F# е подходяща среда за създаване на фрагменти от компютърни програми или завършени програми практически на всички езици за програмиране.
- Използването на Kinect в съчетание с Kano платформа, базирана на Arduino, е алтернативен и иновативен подход при изучаването на текстови и визуални езици за програмиране, правейки самото програмиране забавно и увлекателно.
- Конструирането на роботизирани системи, тяхното програмиране и задвижване спомога развитието на изчислителни умения, аналитични способности и алгоритмично мислене у учениците.
- Препоръчително е обучение от този тип – развиващо горецитираните умения и компетенции, да се развива на базата на спираловидния подход още в ранна възраст, като наблюденията на екипа са, че удачната възраст за това е 8-9 години.
В заключение могат да се изтъкнат възможностите на Kinect като помощен инструмент в обучението:
- Kinect е интерактивен инструмент спомогащ овладяването на базови знания заложени в учебните програми.
- Като инструмент, който може да бъде програмиран Kinect развива успешно изчислителни умения и умения свързани с програмирането.
- Kinect развива креативността и предоставя нови модели в развитието на образователната среда.
Източници:
- Дафчева В., Петрова З., Кинект в класната стая, сп. Образовние и технологии 3/2012, стр. 193
- F# и функционалното програмиране, https://goo.gl/w0mtHx – последно посетен на 20.10.2016 г.
Благодаря на Иван Бачев за Kano комплект, с който се забавлява изключително много в училище и на Вили Дафчева за споделения опит.