Аттестационная работа. Создание автономного колёсного робота для свободного движения по ограниченной поверхности (стол, парта)

Содержание

Слайд 2

Краткая характеристика жанра работы В качестве итоговой работы предлагается методическая разработка

Краткая характеристика жанра работы

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

выполнению проектной работы «Создание автономного колёсного
робота для свободного движения по ограниченной поверхности (стол,
парта)».
Данная работа выполняется в рамках программы дополнительного
образования «Робототехника», после изучения раздела
«Электротехника с Arduino» и реализации проектной работы «Создание
робота для движения по линии».
Слайд 3

Краткая характеристика образовательного учреждения Государственное бюджетное общеобразовательное учреждение средняя общеобразовательная школа

Краткая характеристика образовательного учреждения

Государственное бюджетное общеобразовательное учреждение
средняя общеобразовательная школа №595

Приморского района
Санкт-Петербурга.
http://www.school595.ru/

Одним из структурных подразделений школы является
"Отделение дополнительного образования детей (ОДОД) "ИСТОК",
имеющее следующие направленности:

Физкультурно-спортивная

Художественная

Социально-педагогическая

Техническая

Слайд 4

Цель работы Развитие навыков УУД. Привитие инженерно-конструкторского мышления. Умение использовать полученные

Цель работы

Развитие навыков УУД.
Привитие инженерно-конструкторского мышления.
Умение использовать полученные знания и опыт.
Приобретение

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

Цель работы для учащихся

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

Слайд 5

Графическое определение алгоритма движение при подъезде к краю стола. Определение расположения

Графическое определение алгоритма движение при подъезде к
краю стола.
Определение расположения мотор-редукторов

на основании колёсной
тележки.
Выбор датчиков для определения края стола, их оптимальное
расположение на тележке.
Сборка робота.
Создание программного кода для робота в Arduino IDE.
Доработка программного коа и конструкции в ходе практических
запусков робота.
Представление проекта с обоснованием выбора конструкции робота.

Задачи работы

Слайд 6

Проблема: избежать падение робота со стола. Проектирование: 2.1 разработка алгоритмов действия

Проблема: избежать падение робота со стола.
Проектирование:
2.1 разработка алгоритмов действия робота

при подъезде к краю стола;
2.2 разработка конструкции робота.
3. Поиск информации: подбор датчиков для определения края стола.
Продукт:
4.1 сборка робота;
4.2 написание программного кода для робота.
Презентация:
5.1 практическое представление робота;
5.2 устное обоснование выбора конструкции робота.

Задачи работы для учащихся

Слайд 7

Основное содержание Определение алгоритмов движения робота при подъезде к краю стола:

Основное содержание

Определение алгоритмов движения робота при подъезде к краю стола:

2

3

4

STOP

Стоп
Отъезд

назад
Разворот
Движение вперёд

Корректировка алгоритмов движения робота:

Стоп
Отъезд назад
Разворот – вправо/влево на 110÷160° для осуществления
произвольной траектории движения робота
4. Движение вперёд

Слайд 8

2 3 STOP Стоп Отъезд назад должен быть минимальным Разворот на

2

3

STOP

Стоп
Отъезд назад должен быть
минимальным
Разворот на месте меньше 180°
и больше 90°
4. Движение

вперёд

Корректировка алгоритмов движения робота:

Определение расположения мотор-редукторов на основании колёсной
тележки:

Двигатели

Третья опора

При такой компоновке моторов
робот может разворачиваться
на месте.

Слайд 9

Выбор датчиков для определения края стола Инфракрасный датчик обнаружения препятствий. Инфракрасный

Выбор датчиков для определения края стола

Инфракрасный датчик обнаружения препятствий.

Инфракрасный датчик отражения.

Инфракрасный

датчик линии.

Фиксирует стол как препятствие, отсутствие стола – нет препятствия.

Фиксирует стол как определённый цвет, отсутствие стола – нет цвета.

Фиксирует стол как отражающую поверхность, отсутствие стола – нет отражающей поверхности.

Слайд 10

Оптимальное расположение датчиков на тележке. При таком расположении датчиков робот может

Оптимальное расположение датчиков на тележке.

При таком расположении датчиков робот может обнаружить

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

Создание программного кода для робота в Arduino IDE

Для управления двигателями используется драйвер на микросхеме L293D

#define Left_Line_Pin 6
#define Right_Line_Pin 11
#define Left_Dir_Pin 3
#define Left_Go_Pin 7
#define Left_Speed_Pin 5
#define Right_Go_Pin 12
#define Right_Dir_Pin 8
#define Right_Speed_Pin 10
int runSpeed = 200;

Прописываем контакты контроллера Arduino, подключённые к микросхеме L293D для управления двумя моторами. Устанавливаем скорость вращения моторами 200 (мах 255).

Слайд 11

void go() //движение вперёд { analogWrite(Left_Speed_Pin, runSpeed); analogWrite(Right_Speed_Pin, runSpeed); digitalWrite(Left_Dir_Pin, LOW);

void go() //движение вперёд
{
analogWrite(Left_Speed_Pin, runSpeed); analogWrite(Right_Speed_Pin, runSpeed);
digitalWrite(Left_Dir_Pin, LOW); digitalWrite(Right_Dir_Pin, LOW);

digitalWrite(Left_Go_Pin, HIGH);
digitalWrite(Right_Go_Pin, HIGH);
}

Создаём блоки для передвижений робота

void goRevers() //движение назад
{
stop();
analogWrite(Left_Speed_Pin, runSpeed);
analogWrite(Right_Speed_Pin, runSpeed);
digitalWrite(Left_Dir_Pin, HIGH);
digitalWrite(Right_Dir_Pin, HIGH);
digitalWrite(Left_Go_Pin, LOW);
digitalWrite(Right_Go_Pin, LOW);
delay(350);
}

void turnRight() //разворот вправо
{
stop();
analogWrite(Left_Speed_Pin, runSpeed);
analogWrite(Right_Speed_Pin, runSpeed);
digitalWrite(Left_Dir_Pin, LOW);
digitalWrite(Right_Dir_Pin, HIGH);
digitalWrite(Left_Go_Pin, LOW);
digitalWrite(Right_Go_Pin, HIGH);
delay(700);
}

void turnLeft() //разворот влево
{
stop();
analogWrite(Left_Speed_Pin, runSpeed);
analogWrite(Right_Speed_Pin, runSpeed);
digitalWrite(Left_Dir_Pin, HIGH);
digitalWrite(Right_Dir_Pin, LOW);
digitalWrite(Left_Go_Pin, HIGH);
digitalWrite(Right_Go_Pin, LOW);
delay(700);
}

Слайд 12

Создаём основную программу void setup() { pinMode(Left_Dir_Pin, OUTPUT); pinMode(Left_Go_Pin, OUTPUT); pinMode(Left_Speed_Pin,

Создаём основную программу

void setup()
{
pinMode(Left_Dir_Pin, OUTPUT);
pinMode(Left_Go_Pin, OUTPUT);
pinMode(Left_Speed_Pin, OUTPUT);
pinMode(Right_Go_Pin, OUTPUT);
pinMode(Right_Dir_Pin, OUTPUT);
pinMode(Right_Speed_Pin, OUTPUT);
pinMode(Left_Line_Pin, INPUT);
pinMode(Right_Line_Pin,

INPUT);
}

void loop()
{
boolean whiteLeft = digitalRead(Left_Line_Pin);
boolean whiteRight = digitalRead(Right_Line_Pin);
delay(40);
if (whiteLeft && whiteRight) {
go();
}
else if (!whiteLeft && !whiteRight) {
goRevers();
turnLeft();
}
else if (whiteLeft && !whiteRight) {
goRevers();
turnLeft();
}
else {
goRevers();
turnRight();
}
}

Данный программный код написан одним из учащихся. В качестве датчиков в роботе использовались цифровые датчики линии. Видео по ссылке: https://vk.com/video25248409_456239019

Слайд 13

Методы диагностики образовательного результата Соответствие результата поставленным целям и задачам. Осведомлённость

Методы диагностики образовательного результата

Соответствие результата поставленным целям и задачам.
Осведомлённость в проблематике

данной области.
Оптимальность программного кода.
Оригинальность решения.