ДШ «Познай Intel Galileo Gen2» - Система удаленного программирования «RemoteCode» pteacher / 02.05.2015 Нашей ученической компьютерной лаборатории ALTAIR предоставился уникальный шанс испробовать возможности brandnew платы от Intel. И вот настал день, когда плата была доставлена и распакована. Предварительно мы досконально изучили ее заочно, по материалам дистанционной школы "Познай Intel Galileo Gen2" и в принципе, получив заветную плату, нам оставалось включить, загрузить необходимое программное обеспечение и начать разработку.Проект мы выбрали новый для нас, и аналогов, реализованных на подобных платах, я не знаю. Суть проекта в создании клиент-серверной системы, которая позволит задавать алгоритм для радиоуправляемой машинки в виде простых команд (ВПЕРЕД, НАЗАД, ВПРАВО, ВЛЕВО). Забегая вперед скажу, что нам удалось реализовать первую часть проекта.В общих чертах схема работы системы такова:Пользователь заходит на сайт, который крутится на плате Gen2.Нажимая на кнопки, выбирает последовательность выполняемых команд.Отправляет запрос в виде последовательности команд на сервер, нажимая кнопку START.На сервере запрос обрабатывается и передает последовательность команд на цифровые выходы платы, используя API библиотеки mraa.Машинка исполняет алгоритм.Что планируется выполнить во второй части проекта: Добавить возможность наблюдения результата с веб-камеры. Авторизацию пользователей и рейтинг. Разработать задания и систему очков за их выполнение. В качестве системы разработки мы использовали Intel XDK IoT Edition, которая подходила в самый раз и содержала в себе все необходимые инструменты для разработки клиент-серверного приложения.Серверная часть была реализована на nodejs с использованием библиотек express, mraa, swig.Клиентская часть была выполнена с использованием фреймворка bootstrap.Эмуляция нажатия кнопок на пульте была реализована через замыкание цепи транзистором, база которого была подключена к цифровым пинам платы.Проблемы, которые возникли в процессе работы над проектом (куда же без них):1) Плата работает под управлением экзотической сборки линукса Yocto. Как оказалось, с ним непросто работать напрямую. make install не захотел запускаться. Мы решили не тратить на это время, так как появился Intel XDK IoT Edtition.2) Оказалось, что замкнуть цепь транзистором не такая уж и тривиальная задача. Забыли и про резисторы, и про необходимость общей земли. Один мой хороший друг посоветовал использовать оптрон вместо транзисторов.3) Хоть Intel XDK и удобная среда, повозиться пришлось с ней изрядно. Непривычно было управлять проектом удаленно и постоянно заливать его целиком на плату при малейшем изменении. npm-сборка тоже происходила удаленно, что тоже оказалось непривычным занятием. Изначально мы пробовали проект wyliodrin: диодом помигать получилось, но связь постоянно терялась и идея управления платой, которая лежит на расстоянии вытянутой руки, через более чем один узел, показалась нам неэффективной. В итоге вот видео-отчет о нашем проекте. Конструктивная критика и пожелания проекту приветствуются.Проект "RemoteCode" Лаборатория ALTAIR, ГБОУ РЭЛИВыполнили: Фаскин Виктор, Сагадеев Вадим ученики 11 классаРуководитель проекта: Исаев Руслан Рамилевич, к.ф.-м.н, учитель информатикиРежиссер, оператор и сценирст: Шаяхметов Дим Валерьевич, учитель информатики intel galile gen2 nodejs проектная деятельность