Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
СЦЕНАРИЙ УРОКА
ФУНКЦИИ. SWITCH-CASE Цель урока: использовать умения в области двоичного кодирования и функцию switch-case для организации дистанционного управления.
Результаты:
- Познакомиться с понятием двоичного кодирования. - Умение эффективно использовать вложенные ветвления if else и функцию switch-
case. - Умение организовать работу с пультом дистанционного управления. - Формулирование выводов по результатам эксперимента.
Формируемые компетенции:
предметные: - умение собрать конструкцию согласно инструкции; - умение подключить микроконтроллер VEX IQ к компьютеру; - умение использовать функцию switch-case; - умение подключить пульт дистанционного управления; - умение применять двоичное кодирование; - умение запустить программу;
общепредметные: - умение формулировать выводы по результатам эксперимента; - умение ориентироваться на заданные критерии; - умение выбрать из нескольких решений более эффективное;
ключевые: - поиск и использование обратной связи; - использование ресурсов; - способность принимать решения; - способность к совместной работе ради достижения цели.
Необходимые материалы: - конструктор VEX IQ на каждую команду; - компьютер на каждую команду; - рабочий лист, напечатанный для каждого ученика; - компьютер и проектор для демонстрирования справочного видео.
�1
Ход урока:
Обсуждение темы урока:
1. На предыдущем уроке была рассмотрена работа с двоичным кодированием и реализации большого количества вложенных ветвлений через функцию switch-case. Данный урок будет посвящен позволит углубить умения в данной области, а также создавать целые комплексы движений для каждой отдельной кнопки на пульте дистанционного управления.
2. Предложите учащимся вспомнить основы двоичного кодирования и потренировать свои силы в определении количества вопросов, необходимых, чтобы закодировать информацию.
3. Выполните задание №1.1 Рабочего листа. 4. Обсудите то, как сейчас тележка управляется пультом? Какие есть плюсы и
минусы? Тележка умеет двигаться вперед и поворачивать налево и направо, но не умеет двигаться назад и поворачивать налево и направо, сдавая назад.
5. Возможно ли запрограммировать и эти движения тоже? Да, но для этого понадобится большее количество вопросов, а значит и кнопок.
6. Данное занятие будет посвящено программированию комплексных движений (например, поворот налево с помощью одной кнопки) с помощью функции switch-case.
7. Запишите цель занятия в пункт №1 Рабочего листа. 8. Возвратитесь к обсуждению будущей программы. 9. Как определить, сколько кнопок и каких нам понадобится? Для этого можно
создать специальную таблицу кодов для каждого движения. 10. Предложите посчитать, сколько движений необходимо закодировать и
запишите ответ в задание №1.2. Всего движений будет 9. 11. Сколько вопросов/кнопок понадобится, чтобы закодировать движения?
Обратитесь к формуле Хартли и посчитайте ближайшую степень двойки. Она будет равна 4.
12. Число 4 означает, что для программирования всех видов движения понадобится 4 кнопки. Наиболее удобные по расположению кнопки - BtnRDown, BtnLDown, BtnRUp, BtnLUp. Они располагаются прямо под указательными пальцами.
13. Создайте таблицу кодов посчитав в двоичной системе от 0 до 15, где 0 будет число 0000, а 15 - 1111. Запишите ответы в задание №1.3.
14. С помощью данной таблички будет организована работа программы пульта дистанционного управления.
�2
Подробно механизм подсчета вопросов описан в теоретических сведениях
Таблица с правильными ответами расположена в теоретических сведениях
15. Второй важный пункт - условие выбора в switch-case. Как пульт даст знать
программе, какую кнопку сейчас нажимают, а какую - нет? 16. Для этого понадобится формула:
17. Разберем подробнее значение каждого числа. 8, 4, 2 и 1 - строки, когда в столбе соответствующей кнопки первый раз появляется единица. Например, для кнопки BtnLUp единица появляется сразу, в первой строке, а для кнопки BtnRUp в первой строке стоит 0, а во второй появляется единица.
18. Каждое из этих значений умножается на значение, полученное от пульта о состоянии кнопки с помощью функции getJoystickValue(имя_кнопки).
19. Предположим, на пульте нажаты кнопки BtnRUp и BtnLUp. Посчитав по формуле, получим S = 8 * 0 + 4 * 0 + 2 * 1 + 1 * 1 = 2 + 1 = 3.
20. Программа перейдет в строку case 3; и выполнит действия, записанные
после этих слов до команды break; .
21. Предложите учащимся приступить к реализации программы.
Этап конструирования и программирования:
22. Предложите каждой команде собрать тележку по инструкции или самостоятельно.
23. Далее необходимо запрограммировать работу тележки от пульта дистанционного управления. Подключите робота к компьютеру и сделайте инициализацию датчиков и моторов с помощью утилиты VEXos Utility.
24. Каждой команде необходимо сделать проверку готовности своего робота к тестированию, отметив все пункты в задании №2.1 Рабочего листа.
25. Напишите функцию move() .
26. Создайте код для функции switch-case().
�3
Обязательно сохраняйте программы с предыдущих занятий, копируйте и делайте правки в коде. Понимание кода будет на таком же уровне, что и при написании с нуля, но время работы сократится
27. При необходимости распечатайте и раздайте учащимся пример кода.
Этап проведения эксперимента:
7. Протестируйте тележку на предмет точного соответствия программы и условий задачи, то есть выбранные ранее кнопки пульта работают в соответствие с задумкой и тележка может осуществлять 9 вариантов движения в соответствие с таблицей кодов.
8. Запишите результаты в задание №2.2 Рабочего листа.
Этап рефлексии:
9. Обсудите с учащимися как они понимают, для чего нужно двоичное кодирование? Как составляется таблица кодов и зачем она необходима?
10. Предложите учащимся записать, чему они научились сегодня в задание №3.1, ориентируясь на основной вопрос урока.
Этап приведения кабинета в порядок:
15. Предложите ребятам разобрать тележки следующим образом: разберите на своем рабочем месте все детали и разложите их по видам. Каждый вид положите отдельно в коробку с конструктором.
�4
Обязательно в ходе урока задайте каждому ученику несколько вопросов о назначении команд, о цели его программы, чтобы
убедиться в достаточном уровне понимания материала