понедельник, 18 сентября 2017 г.

"Умные вещи", новый виток развития технологий


Развитие человеческой цивилизации тесно связано с развитием технологий. В истории было немало моментов, когда с появлением новых устройств, механизмов, способов передачи энергии и информации в корне менялось представление человека о своих возможностях. Но особенно значимые и кардинальные изменения начинали происходить, когда эти технологии становились массовыми, проникали вначале в повседневную жизнь, а затем в сферу образования.
Примером каждому знакомой вещи, навсегда изменившей нашу жизнь, служит компьютер. Первые арифметические устройства появились сотни и даже тысячи лет назад.
В 1941 году была создана вычислительная машина Z3, обладающая всеми свойствами современного компьютера. Но настоящий бум вызвало лишь появление в 1975 году персонального компьютера «Altair 8800», а сразу вслед за этим интерпретирующего языка «Altair Basic». Произошел настоящий взрыв в развитии компьютерных технологий, приведший к революции в самых разных областях, включая образование, и причин этому несколько:
  • доступность, относительная дешевизна аппаратной части (Altair продавался по вызывающе низкой для своего времени цене);
  • легкость в освоении языка программирования (не обязательно быть узкоспециализированным профессионалом-компьютерщиком, для того, чтобы создавать простые прикладные программы в Basic);
  • универсальность (компьютер это инструмент, который можно приспособить для решения задач в различных предметных областях).
Персональный компьютер "Altair 8800"


В результате любители очень быстро создали достаточное количество прикладных программ для решения собственных профессиональных задач, у компьютера появилось множество новых применений. Стало очевидно, что компьютерная грамотность — важная часть образования. А еще через некоторое время возникло понимание того, что не следует ограничиваться лишь подготовкой к использованию прикладных программ. Обучение детей программированию позволяет не только развивать логическое мышление, но и выводит образовательный процесс на качественно новый уровень благодаря тому, что теперь компьютер может выступать в роли инструмента моделирования физической реальности. Ребенок изучает законы физического мира, воссоздавая их в общении с компьютером. Об этой революции в образовании написал в 1980 году Сеймур Пейперт, математик, программист, психолог и педагог, автор языка Лого и один из основателей теории искусственного интеллекта.

Книга Сеймура Пейперта была издана на русском языке в 1989 году.


В 2005 году случился новый бум. Отладочная плата на базе микроконтроллера, получившая название Arduino, произвела настоящий фурор в мире энтузиастов-самодельщиков. Началось повальное увлечение созданием устройств с использованием Arduino. Что же уникального в этой плате, в чем причина успеха? И какой смысл это явление имеет в контексте образовательных задач?
Прежде всего следует сказать, что микроконтроллеры (и устройства на их основе) от компьютеров отличает несколько важных признаков:
  • чрезвычайная компактность;
  • низкая стоимость;
  • чрезвычайно низкое энергопотребление;
  • быстрая загрузка;
  • возможность управлять работой внешних устройств (в том числе с контролем мощности), а также считывать показания цифровых и аналоговых датчиков (за счет встроенного аналогово-цифрового преобразователя).

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

Микроконтроллер Arduino Uno


До появления Arduino программирование микроконтроллеров, создание микроконтроллерных устройств считалось «элитной» задачей, которая была по силам лишь высокоуровневым сцециалистам. Необходимо было учитывать каждый байт памяти, каждый такт процессора. Разработчики Arduino решили изменить эту ситуацию, благо, что развитие микроэлектроники этому способствовало. Они задались следующими целями:
  • открытость всех стандартов и универсальность платформы;
  • быстрая сборка прототипов устройств (по возможности без пайки);
  • отсутствие необходимости использовать спецоборудование (программаторы);
  • удобная среда программирования, доступная для освоения неспециалистами;
  • достаточная вычислительная мощность платформы;
  • чрезвычайно низкая цена (по словам создателей, «цена устройства должна быть эквивалентна стоимости обеда в пиццерии»).

Усилия команды разработчиков Arduino принесли свои плоды. Все больше и больше людей по всему миру стало увлекаться программированием микроконтроллеров. «Философия Arduino состоит в том, что если вы захотите научиться электронике, вы сможете изучать ее уже с первого дня, вместо того, чтобы сначала учиться алгебре», — сказал один из членов команды, Дэвид Куартилльз.
В настоящее время понятие «платформа Arduino» расширилось, оно стало включать в себя разнообразные средства разработки и отладочные платы, все то, что позволяет придерживаться общей философии: простое создание программируемых устройств, простое создание управляющих программ. Возможности Arduino-совместимых микроконтроллеров растут, по сути теперь в руках и у взрослых, и у детей вычислительные мощности первых персональных компьютеров в устройстве, помещающемся на ладони или в спичечном коробке, и с энергопотреблением, позволяющем неделями работать от одной батарейки. Теперь сделать «умной» и даже подключить к интернет можно любую вещь, от настольной лампы до любимого свитера и подставки для карандашей. А сфера применения микроконтроллеров ограничивается лишь человеческой фантазией.
Микроконтроллер Arduino LilyPad, встраиваемый в одежду

Как использовать микроконтроллеры в образовании? Ответ очень прост: в первую очередь в проектной деятельности. Кому как не детям придумывать новые «умные вещи», генерировать новые идеи о том, как применять микроконтроллеры? Формирование способности осуществлять проектную деятельность, создавать общественно востребованный продукт — требование Федеральной Государственной Образовательной Программы. Стремление сделать что-то эксклюзивное и неповторимое подстегивает детей к изучению не только программирования, но и других школьных предметов: физики, геометрии, истории и т. д. Важной является и доступность элементной базы для создания «умных вещей». Недалеко время, когда можно будет начать относиться к микроконтроллерам, датчикам и прочим компонентам как к расходному материалу, такому же, как акварельные краски, карандаши и тетрадки. Но уже сейчас понимание того, что микроконтроллеры — вещь более чем доступная, стимулирует учащихся к придумыванию новых устройств для собственных нужд.
Что мешает началу широкого использования микроконтроллеров в педагогической практике? В первую очередь то, что среда разработки Arduino IDE все еще недостаточно «дружественна» как для детей, так и для большинства взрослых. Перед тем, как начать программировать, требуется выучить синтаксис языка, вызубрить, как пишутся команды, запомнить, где и как ставить разделители. Даже взрослым бывает непросто найти опечатки в тексте программы, да и клавиатурный навык у учеников начальной и средней школы частенько оставляет желать лучшего, особенно при использовании английского языка. В результате обучение программированию может превратиться в мучительный процесс, навсегда отбивающий охоту им заниматься.
Тем не менее существует способ решения перечисленных проблем — использование визуальных средств разработки, традиционно считающихся ориентированными на детей и позволяющих существенно снизить возрастной «порог вхождения». Опыт практической работы показывает, что развитие этих средств не стоит на месте, и теперь это достаточно серьезные инструменты, подходящие и для детей, и для взрослых и позволяющие решать сложные задачи. Фактически произошла новая революция: с развитием графических средств программирование микроконтроллеров стало доступным даже детям!
Следует сказать, что для эффективного использования той или иной среды визуального программирования в образовательном процессе она должна обладать некоторыми качествами.
  1. Универсальность. Необходимо, чтобы была возможность работы с разнообразными микроконтроллерами, в первую очередь самыми распространенными, с устройствами разной конфигурации.
  2. Открытость и бесплатность. Открытость программного кода является гарантией того, что бесплатное программное обеспечение не перейдет неожиданно в разряд проприетарного.
  3. Поддержка как интерактивного режима работы (немедленное исполнение команды, отправленной с компьютера), так и автономного (с загрузкой программы в энергонезависимую память микроконтроллера). Отсутствие интерактивного режима работы является принципиальным недостатком многих программных сред, включая Arduino IDE с плагином Ardublock, поскольку приводит к необоснованно высоким затратам времени при частой перекомпилляции программ и резко снижает эффективность учебного процесса.
  4. Возможность легкого переключения между интерактивным и автономным режимом работы без необходимости использовать для этого дополнительные программные инструменты.
  5. Кроссплатформенность, поддержка различных операционных систем.

В настоящий момент лишь три программных продукта удовлетворяют или почти удовлетворяют вышеописанным требованиям.
  1. mBlock for PC
    “mBlock for PC” (“Scratch for Robots”) www.mblock.cc
    Основанная на Scratch2.0 и наиболее совершенная в настоящий момент среда программирования, позволяющая работать как со специализированными робототехническими контроллерами компании MakeBlock, так и с распространенными Arduino микроконтроллерами и совместимыми с ними.


  2. Espruino Web IDE
    “Espruino Web IDE” www.espruino.com
    Среда, позволяющая осуществлять визуальное и текстовое программирование Espruino-совместимых микроконтроллеров (микроконтроллеров серии STM32, в которые прошит интерпретатор языка JavaScript).


  3. Snap for Arduino
    “Snap4Arduino” www.snap4arduino.org
    Перспективный программный продукт, в котором существует возможность генерировать скетчи (текстовые листинги программ) для Arduino IDE.


В рамках «Лаборатории проектов школы №169» наиболее активно используется программная среда mBlock, позволяющая с удобством работать с распространенным и дешевым микроконтроллером Arduino Uno. Опыт занятий с учениками 4-7 классов показывает, что mBlock является замечательным инструментом проектной деятельности. На основе двухлетнего использования mBlock Ю.А. Винницким и А.Т. Григорьевым была написана книга «Scratch и Arduino для юных программистов и конструкторов», которую можно рекомендовать для погружения в мир программирования микроконтроллеров и детям, и взрослым.

Книга "Scratch и Arduino для юных программистов и конструкторов"


Рекомендуемая литература:
  1. Пейперт, Сеймур. Переворот в сознании: Дети, компьютеры и плодотворные идеи. Пер. с англ./Под ред. А.В. Беляевой, В.В. Леонаса. Москва, Педагогика, 1989 г.
  2. Голиков, Д.В. Scratch для юных программистов. — СПб.: БХВ-Петербург, 2017. — 192 с.: ил.
  3. Винницкий, Ю.А. Scratch и Arduino для юных программистов и конструкторов / Ю. А. Винницкий, А. Т. Григорьев. — СПб.: БХВ-Петербург, 2018. — 176 с.: ил.


1 комментарий:

  1. Надо только уточнить, что книга "Scratch и Arduino для юных программистов и конструкторов" выйдет в свет этой осенью, но точные сроки еще неизвестны.

    ОтветитьУдалить