Студия "Аквалангисты"

Материал из StemCamp
Перейти к: навигация, поиск

RTENOTITLE​​​​​​​

Руководители лаборатории

Pavel Melnikov.jpeg
​​​​​​​ Мельников Павел Владимирович, м.н.с ИВТ СО РАН, методист СУНЦ НГУ

Научные руководители

Джафарова Ольга Андреевна к.ф.-м.н., зав.лаб. КСБ, НИИМББ

Соколов Анатолий Владимирович, ведущий инженер лаб. КСБ, НИИМББ

Анонс

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

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

Предметные знания и навыки, которые получат участники в ходе работы

Ученики узнают, что такое:

  • биологическая обратная связь,
  • датчик пульса БОС-пульс разработки НИИМББ,
  • язык программирования Python.

Ученики научатся:

  • основным конструкциям языка пограммирования Python,
  • работать с аппаратом БОС-пульс,
  • cоздавать интерактивные приложения в языке Python.

Уровень сложности

Средний

Требования к участникам

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

Знакомство с языком Python приветствуются, но необязательно.

Материалы для подготовки  учащихся

http://ru.wikipedia.org/wiki/Биологическая_обратная_связь

http://habrahabr.ru/post/193888/

https://pythonhosted.org/pyserial/;

Участникам будет полезно почитать про язык Python до школы, а еще лучше - попробовать что-нибудь на нем написать. Для изучения с нуля могут помочь эти сайты:

Материалы для работы

http://ru.wikipedia.org/wiki/Биологическая_обратная_связь

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

  • День 1: изучение основ языка Python.
  • День 2: изучение графической библиотек pygame и pyserial.
  • День 3: работа над проектом.
  • День 4: оформление проекта, выступление на конференции и ярмарке.

Реальный план работы студии

Здесь преподаватели пишут про образовательный процесс, ход работы над проектом и т.п.

День 1.

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

Окна разного цвета - первое упражнение на знакомство с библиотекой pygame
Рабочий процесс

День 2.

Продолжили изучать библиотеку Pygame. Послушали лекцию про коммуникационные протоколы и библиотеку pyserial. Написали тестовое приложение, которое считывает данные с тестовой платы Arduino. Задание было таким: есть плата Arduino, которая при подключении к компьютеру определяется как COM-порт и отправляет в него какую-то информацию (строку текста). Задачей было эту строку получить в Python-программе и отобразить на экране (и сообщить преподавателю).

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

Схема работы программы выглядит следующим образом:

Схема работы программы

Дети разделились на две группы - Дима и Артемий делают одну программу (Дима - художник, Артемий - программист), Максим, Ксюша и Юния делат другую программу (Юния - художник, Максим - программист, Ксюша посередине работы отобрала у Максима ноутбук и тоже стала программистом). Как и можно было ожидать, несмотря на одно и то же техзадание, на выходе у двух команд детей два абсолютно разных проекта с разным функционалом=)

Проект Димы и Артемия в процессе создания
Проект Максима, Ксюши и Юнии

День 3.

Дети дописали проекты и начали делать трейлер для отчета.

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

А проект в целом уже готов еще со вчера.

День 4.

На работу в студии полдня, их потратили на создание трейлера, т.к. им нужно отчитываться во второй половине дня на "Церемонии закрытия кинофестиваля".

Хроника работы студии (глазами детей)

День 1

Сегодня 21-ое августа - первый день пребывания в летней школе инжинерных проектов, день приезда и новых знакомств, оставивший лично у меня исключительно позитивные эмоции (чистая правда). Едва ступив с автобуса на твердую землю наша команда, как и все прочие, стали участниками квеста "Фильм, фильм, фильм", узнав, к вящему удивлению, о некоей кинематографической тематике смены. Мои товарищи по студии "Аквалангисты - это не игра" и педагоги заскучать не давали на протяжении всего дня. Помимо изучения нового языка программирования - Python и работы с принципиально новыми для меня, да и для всех нас, если на чистоту, моментами взаимодействияс компьютером, мы успели побегать за сказочными героями, собрать хлопушку, побренчать на гитаре в комнате и сходить к барабану желаний. В целом, день получился насыщенный, хоть и холодновато было в шатре прогать... А, самое главное забыл - столовская еда лично мне очень даже понравилась!

День 2

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


"Сегодня мы написали множество различных элементов наших игр-программ, и хоть все получалось не сразу, но все-таки каждый из нас написал по своей версии игры "Аквалангисты". надеюсь завтра мы исправим некторые ошибки и у нас получится готовый продукт, которые можно предложить другим людям", -  Максим Нерлих - аквалангист, программист.

День 3

Третий день. Главный день. Аккуратные первые шаги в Питоне остались в прошлом и вся студия с головой ушла в реализацию проекта, успевая по ходу писать сценарий и отснимать сцены для будущего фильма, для чего пришлось даже залезть в Обское море, - но мы были готовы к жертвам. Были Готовы работать сквозь слипаюшиеся от недосыпа веки, как ученики, так и преподаватели. И такой самоотверженный труд просто не мог не дать результата - управление пульсом, аквалангист и кровавая расправа над ним хищной рыбины были воплощены в одной программе, одновременно с танчиками, в качестве бесплатного дополнения. Кодинг, Обское, съемки, сценарий - четыре ключевых слова, обозначающих все наши занятия за сегодня, не считая сна и приема пищи. Нельзя, однако, сказать, что прошли они скучно, или без пользы... А значит, подводя под стремящемся к концу днем итог можно смело сказать - для нас он прошел не зря!

День 4

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

День 5

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