Intel Edison. Как учить детей программировать

в 8:07, , рубрики: Edison, galileo, Intel Edison, intel galileo, Блог компании Intel, дети, Программирование, робототехника, метки: ,

Во время Весенней научно-образовательной школы МГУ «ЛАНАТ» мы провели курс программирования для младших классов. Ребята научились программировать на языке Python и собирать интересные гаджеты на платах Intel Galileo и Intel Edison. О том, как это происходило, с какими проблемами мы столкнулись, и какие проекты получились у ребят, читайте под катом.

Intel Edison. Как учить детей программировать - 1
Работа в самом разгаре. На столе ждет машинка с дальномером.

0.053 платы на человека

У нас была всего одна плата Intel Edison, одна плата Intel Galileo, радиодетали, 8 компьютеров и 19 детей (некоторые с ноутбуками). Проще говоря, людей было много, а железа – мало. Нужно было наладить проверку написанных программ в больших масштабах.

Сначала рассматривали два очевидных варианта:

  1. Обходить всех учеников с платой, поочередно загружать и запускать программу.
  2. Скидывать все программы на флешку и проверять вместе со всеми, заодно обсуждая ошибки и качество кода.

Главной проблемой было то, что оба варианта просто занимали слишком много времени. Спасло нас то, что на Edison стоит полноценный Linux и имеется модуль Wi-Fi: решили перекидывать файлы по SSH. Немного помучившись с настройкой роутера, нам удалось объединить все компьютеры и плату в одну сеть, запустить на плате sshd и подключиться к ней. Пробуем помигать светодиодом… всё работает!

Теперь нужно было как-то обеспечить детям доступ к плате по SSH. Здесь нас выручил старый добрый Notepad++, который, к нашему удивлению, обзавёлся поддержкой редактирования файлов через SSH. Конфигурацию и дистрибутив скопировали на ноутбуки с помощью обычной USB-флешки. Получилось, что подключиться к плате можно буквально в одну кнопку. В целях безопасности для учеников создали отдельного пользователя с минимальным набором прав и отдельные директории для хранения программ — по одной на класс.

Запуск программ на самой плате остался привилегией преподавателя, но работа уже пошла намного быстрее.

Первые шаги

Для обучения мы выбрали язык Python – достаточно простой, чтобы его можно было быстро объяснить, но достаточно функциональный, чтобы делать на нём действительно сложные проекты. Для взаимодействия с «железом» мы написали несколько своих библиотек с минимальным API.

На первом, вводном занятии, ребята изучили основы синтаксиса Python, познакомились с возможностями Galileo и Edison, узнали про разнообразные дополнительные модули. В конце занятия ребята смогли сделать главное дело в жизни каждого электронщика – помигать светодиодом.

На следующих занятиях дети научились работать с дальномером и кнопками, написали несколько программ и даже одну игру.

Intel Edison. Как учить детей программировать - 2

Под спойлерами – несколько программ, написанными ребятами в ходе занятий:

«Светофор»

    import blink
    import time
    r=blink.Pin(6)
    y=blink.Pin (5)
    g=blink.Pin(4)
    y.mode("out")
    g.mode("out")
    r.mode("out")
    while 1:
        r.write(1)
        time.sleep(2)
        r.write(0)
        y.write(1)
        time.sleep(2)
        y.write(0)
        g.write(1)
        time.sleep(2)
        g.write(0)

Чем ближе подносим руку к дальнометру, тем быстрее мигают светодиоды
    import blink
    import time
    import ranging
    l=blink.Pin(0)
    d=blink.Pin(1)
    l.mode("out")
    d.mode("out")
    ranging.set_echo(4)
    ranging.set_trig(2)
    while 1:
        l.write(1)
        d.write(1)
        time.sleep(ranging.distance()/30)
        l.write(0)
        d.write(0)
        time.sleep(ranging.distance()/30)

Закрытие смены

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

Intel Edison. Как учить детей программировать - 3
Паша Бухтенко с работой “Светофор”

Intel Edison. Как учить детей программировать - 4
Юра Замятин и Саша Сенюков с игрой “Ковбои”

Intel Edison. Как учить детей программировать - 5
Андрей Ермаков с роботом-чертёжником

Научное будущее

Мы открыли набор на летнюю научно-образовательную школу «Ланат», которая пройдёт 16 июля — 5 августа. На летней школе будет целых два направления по программированию – наш курс с платами от Intel и курс прикладного программирования. За две недели ребята разработают свои проекты, лучшие из которых будут рекомендованы на конференцию «Ученые Будущего». Чтобы получить шанс поехать в школу, нужно принять участие в конкурсе.

Спасибо за внимание!

Автор: art1415926535

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js