Общеразвивающая программа курса дополнительного образования "Программирование беспилотного летательного аппарата на Python"

26.05.2022

Пояснительная записка

Программа курса дополнительного образования разработана на основе программы «Основы программирования на языке Python на примере программирования беспилотного летательного аппарата», авторы Белоусова А.С., Ершов С.А. - М.: ФНФРО, 2019.

Актуальность: в настоящее время процесс информатизации проявляется во всех сферах человеческой деятельности. Использование современных источников информации, также совершенствование информационных технологий немыслимо без участия квалифицированных и увлечённых специалистов, в связи с этим внедрение курса «Программирование беспилотного летательного аппарата на Python» в учебный процесс актуально.

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

Учебный курс «Программирование беспилотного летательного аппарата на Python» направлен на изучение основ программирования на языке Python и программирование автономных квадрокоптеров.

Учебный курс «Программирование беспилотного летательного аппарата на Python» представляет собой самостоятельный модуль и содержит необходимые темы из курса информатики и физики.

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

Цель программы: освоение Hard-компетенций и Soft-компетенций обучающимися в области программирования через использование кейс-технологии.

Задачи:

Обучающие:

  • повторить базовые понятия, изученные в курсе предмета информатики: алгоритм, переменная, цикл, условия, ветвление, вычислимая функция;
  • сформировать навыки выполнения технологической цепочки разработки программ средствами языка программирования Python;
  • изучить основные конструкции языка программирования Python, позволяющие работать с простыми и составными типами данных (ветвления, циклы, массивы);
  • научить применять навыки программирования на конкретной учебной ситуации (программирование беспилотных летательных аппаратов);
  • привить навыки проектной деятельности.

Развивающие:

  • способствовать расширению словарного запаса;
  • способствовать развитию памяти, внимания, технического мышления, изобретательности;
  • способствовать развитию алгоритмического мышления;
  • способствовать формированию интереса к техническим знаниям;
  • способствовать формированию умения практического применения полученных знаний;
  • сформировать умение формулировать, аргументировать и отстаивать своё мнение;
  • сформировать умение выступать публично с докладами, презентациями, т. п.

Воспитательные:

  • воспитывать аккуратность и дисциплинированность при выполнении работы;
  • способствовать формированию положительной мотивации к трудовой деятельности;
  • способствовать формированию опыта совместного и индивидуального творчества при выполнении командных заданий;
  • воспитывать трудолюбие, уважение к труду;
  • формировать чувство коллективизма и взаимопомощи;
  • воспитывать чувство патриотизма, гражданственности, гордости за достижения отечественной науки и техники.

Планируемые результаты

Предметные результаты: В результате освоения программы обучающиеся должны

знать:

  • основные алгоритмические конструкции;
  • принципы структурного программирования на языке Python;
  • что такое беспилотные летательные аппараты (БПЛА) и их предназначение;
  • устройство БПЛА;

уметь:

  • составлять алгоритмы для решения прикладных задач;
  • реализовывать алгоритмы на компьютере в виде программ, написанных на языке Python;
  • отлаживать и тестировать программы, написанные на языке Python;
  • настраивать БПЛА;
  • представлять свой проект.

владеть:

  • основной терминологией в области алгоритмизации и программирования;
  • основными навыками программирования на языке Python;

Личностные результаты:

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

Метапредметные результаты:

Регулятивные УУД:

  • умение принимать и сохранять учебную задачу;
  • умение планировать последовательность шагов алгоритма для достижения цели;
  • умение ставить цель (создание творческой работы), планировать достижение этой цели;
  • умение осуществлять итоговый и пошаговый контроль по результату;
  • способность адекватно воспринимать оценку наставника и других обучающихся;
  • умение различать способ и результат действия;
  • умение вносить коррективы в действия в случае расхождения результата решения задачи на основе её оценки и учёта характера сделанных ошибок;
  • умение в сотрудничестве ставить новые учебные задачи;
  • способность проявлять познавательную инициативу в учебном сотрудничестве;
  • умение осваивать способы решения проблем творческого характера в жизненных ситуациях;
  • умение оценивать получающийся творческий продукт и соотносить его с изначальным замыслом, выполнять по необходимости коррекции либо продукта, либо замысла.

Познавательные УУД:

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

Коммуникативные УУД:

  • умение аргументировать свою точку зрения на выбор оснований и критериев при выделении признаков, сравнении и классификации объектов;
  • умение выслушивать собеседника и вести диалог;
  • способность признавать возможность существования различных точек зрения и права каждого иметь свою;
  • умение планировать учебное сотрудничество с наставником и другими обучающимися: определять цели, функции участников, способы взаимодействия;
  • умение осуществлять постановку вопросов: инициативное сотрудничество в поиске и сборе информации;
  • умение разрешать конфликты: выявление, идентификация проблемы, поиск и оценка альтернативных способов разрешения конфликта, принятие решения и его реализация;
  • умение с достаточной полнотой и точностью выражать свои мысли в соответствии с задачами и условиями коммуникации;
  • владение монологической и диалогической формами речи.

Система оценки достижения планируемых результатов

Формы подведения итогов реализации программы курса дополнительного образования «Программирование беспилотного летательного аппарата»

Подведение итогов реализуется в рамках следующих мероприятий: тестирование знаний и умений по программированию на языке Python, защита результатов выполнения кейса «Программирование автономных квадрокоптеров».

При тестировании все верные ответы берутся за 100 %, уровень усвоения языка программирования Python выставляется в соответствии с таблицей:

Процент выполнения задания

Уровень усвоения

81% и более

Высокий

66% - 80%

Выше среднего

51% - 65%

Средний

31% - 50%

Ниже среднего

0% - 30%

Низкий

Одной из форм защиты результатов выполнения кейса «Программирование автономных квадрокоптеров» будет являться программный код полета квадрокоптера:

Реализация программного кода

Уровень усвоения

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

Высокий

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

Выше среднего

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

Средний

В результате тестирования программного кода были произведены автоматический взлет и посадка квадрокоптера.

Ниже среднего

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

Низкий

Формы демонстрации результатов обучения

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

Формы диагностики результатов обучения

Беседа, тестирование. опрос

Учебно-тематический план

Название раздела, темы

Количество часов

Формы аттестации

Всего

Теория

Практика

1

Техника безопасности. Введение в программу курса дополнительного образования.

1

1

0

2

Основы языка Python. Примеры на языке Python с разбором конструкций: циклы, условия, ветвления, массивы, типы данных.

3

1

2

Тестирование

Кейс «Программирование автономных квадрокоптеров»

13

5

8

3

Техника безопасности при полетах. Проведение полетов в ручном режиме.

2

1

1

Демонстрация полетов

4

Программирование взлета и посадки БПЛА.

4

2

2

Демонстрация взлета и посадки БПЛА

5

Выполнение команд «разворот», «изменение высоты», «изменение позиции»

6

2

4

Демонстрация

6

Защита и демонстрация проекта.

1

0

1

Демонстрация решений кейса

Итого:

17

7

10

Содержание тем курса

Темы занятий

Содержание занятий

Теория

Практика

1

Техника безопасности. Введение в программу курса дополнительного образования (1 ч).

Введение в программу. Ознакомление обучающихся с программой, приемами и формами работы. Вводный инструктаж по ТБ.

Демонстрация полета БПЛА вручную. Демонстрация запрограммированного полета БПЛА.

2

Основы языка Python. Примеры на языке Python с разбором конструкций: циклы, условия, ветвления, массивы, типы данных (3 ч).

История языка Python, сфера применения языка, различные версии, особенности синтаксиса. Повторение: Объявление и с пользование переменных в Python. Использование условий, ветвлений, циклов. Использование строк, массивов, кортежей, словарей.

Запуск интерпретатора. Написание простейших демонстрационных программ. Мини-программы внутри программы. Выражения в вызовах функций. Имена переменных. Упражнения по написанию программ с использованием переменных, условий и циклов. Генерация случайных чисел. Операции сравнения.

Кейс «Программирование автономных квадрокоптеров» (13 ч.)

3

Техника безопасности при полётах. Проведение полётов в ручном режиме (2 ч.)

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

Полёты на квадрокоптерах в ручном режиме.

4

Программирование взлета и посадки БПЛА (4 ч).

Основы программирования квадрокоптеров на языке Python.

Тестирование написанного кода в режимах взлёта и посадки.

5

Выполнение команд «разворот», «изменение высоты», «изменение позиции» (6 ч).

Теоретические основы выполнения разворота, изменения высоты и позиции на квадрокоптерах.

Тестирование программного кода в режимах разворота, изменения высоты и позиции.

6

Защита и демонстрация проекта.

Демонстрация решений кейса групп обучающихся.

Кейс «Программирование автономных квадрокоптеров» (13 ч.)

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

Данный кейс посвящен созданию полета квадрокоптера в автономном режиме. Обучающие получат первые навыки программирования технической системы на языке Python. Познакомятся с алгоритмами позиционирования устройств на улице и в помещении, а также узнают о принципах работы оптического распознавания объектов.

Календарно-тематическое планирование

Дата

Кол-во часов

Тема занятия

Форма занятия

Форма контроля

Примечание

1

1

Техника безопасности. Введение в программу курса дополнительного образования.

Лекция

Беседа

3

Основы языка Python

2

1

Примеры на языке Python с разбором конструкций: типы данных, операторы ввода и вывода, оператор присваивания, условия, ветвления.

Лекция

Тестирование

3

1

Примеры на языке Python с разбором конструкций: цикл с предусловием, цикл с параметром.

Практика

Упражнения на программирование

4

1

Примеры на языке Python с разбором конструкций: массивы.

Практика

Тестирование, упражнения на программирование

13

Кейс «Программирование автономных квадрокоптеров»

5-6

2

Техника безопасности при полётах. Проведение полётов в ручном режиме.

Лекция, Практика

Беседа

7-8

2

Программирование взлета БПЛА.

Лекция, Практика

Тестирование написанного кода в режимах взлёта.

9-10

2

Программирование посадки БПЛА.

Лекция, Практика

Тестирование написанного кода в режимах взлёта и посадки.

11-12

2

Выполнение команды «разворот».

Лекция, Практика

Тестирование программного кода в режимах разворота.

13-14

2

Выполнение команды «изменение высоты».

Лекция, Практика

Тестирование программного кода в режимах разворота, изменения высоты.

15-16

2

Выполнение команды «изменение позиции».

Практика

Тестирование программного кода в режимах разворота, изменения высоты и позиции.

17

1

Защита и демонстрация проекта.

Практика

Демонстрация решений кейса

* Примечание: По ходу реализации программы учитель может вносить изменения, дополнения с учетом своего профессионального роста и развития.

Материально-технические условия реализации программы

Рабочая программа реализуется на базе Центра образования цифрового и гуманитарного профилей «Точка роста».

Аппаратное и технической обеспечение:

  • Интерактивный комплекс с вычислительным блоком и мобильным креплением;
  • Ноутбуки мобильного класса HP ProBook (15 шт.);
  • Единая сеть (Wi-Fi роутер);
  • МФУ Pantum M6550 series;
  • Презентационное оборудование (проектор с экраном) с возможностью подключения к компьютеру - 1 комплект;
  • Квадрокоптер - 3 шт.: DJI Tello EDU;
  • Квадрокоптер - 1 шт.: DJI Mavic Air.

Программное обеспечение:

  • Компилятор Python 3.5;
  • Веб-браузер;
  • Пакет офисного ПО.

Список литературы и методического материала

  1. Белоусова А.С. Основы программирования на языке Python на примере программирования беспилотного летательного аппарата. Белоусова А.С., Ершов С.А. - М.: ФНФРО, 2019.
  2. Бреннан, К. Креативное программирование / К.Бреннан, К.Болкх, М.Чунг. - Гарвардская Высшая школа образования, 2017.
  3. Бриггс, Джейсон. Python для детей. Самоучитель по программированию / Джейсон Бриггс. - МИФ. Дество, 2018.
  4. Гин, А.А. Приёмы педагогической техники: свобода выбора, открытость, деятельность, обратная связь, идеальность: Пособие для учителей / А.А.Гин. - Гомель: ИПП «Сож», 1999.
  5. 5.. Лутц, М. Программирование на Python. Т. 1 / М.Лутц. - М.: Символ, 2016.
  6. Лутц, М. Программирование на Python. Т. 2 / М.Лутц. - М.: Символ, 2016.

a_id: 693181