kopilkaurokov.ru - сайт для учителей

Создайте Ваш сайт учителя Курсы ПК и ППК Видеоуроки Олимпиады Вебинары для учителей

Проект "Робот Лего рисует геометрические фигуры"

Нажмите, чтобы узнать подробности

Работа посвящена исследованию задач о прокладывании пути гусеничного робота, оснащенного  пером (маркером), оставляющим след во время движения робота.

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

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

Работа проводилась с использованием роботехнического набора Lego Mindstorms NXT 2.0 и среды программирования RobotC.

Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Наладить дисциплину на своих уроках.
Получить возможность работать творчески.

Просмотр содержимого документа
«Проект "Робот Лего рисует геометрические фигуры" »

Робот LEGO рисует геометрические фигуры  Машурина Юлия Германовна  Гусева Арина Александровна  Руководитель:  Сапожникова Наталья Владимировна

Робот LEGO рисует геометрические фигуры

Машурина Юлия Германовна

Гусева Арина Александровна

Руководитель:

Сапожникова Наталья Владимировна

Авторы: Машурина Юлия Германовна    Гусева Арина Александровна  Mashurina Yuliya G.    Guseva Arina A. Руководитель: Сапожникова Наталья Владимировна, учитель информатики, м. т. 8-911-041-9381, natal_sup@mail.ru Россия, г. Великий Новгород, МАОУ «Гимназия «Эврика», улица Большая Санкт-Петербургская, дом 94, (8-816) 62-84-46 ; temp3@Yandex.ru

Авторы: Машурина Юлия Германовна

Гусева Арина Александровна

Mashurina Yuliya G.

Guseva Arina A.

Руководитель: Сапожникова Наталья Владимировна, учитель информатики, м. т. 8-911-041-9381, [email protected]

Россия, г. Великий Новгород, МАОУ «Гимназия «Эврика»,

улица Большая Санкт-Петербургская, дом 94,

(8-816) 62-84-46 ; [email protected]

На базе нашей гимназии работает Городская компьютерная школа «Кэш», в которой можно заниматься программированием и робототехникой. Мы занимаемся робототехникой первый год. В декабре мы ездили в Санкт-Петербург на Зимние состязания роботов, участвовали в соревнованиях в номинации «Кегельринг» , но к сожалению не стали призерами, хотя были близки  . Но мы не отчаиваемся, сейчас готовимся к «Лабиринту». В Санкт-Петербурге мы увидели выставку роботов и загорелись идеей сделать что-нибудь этакое!!! И решили – наш робот будет рисовать!
  • На базе нашей гимназии работает Городская компьютерная школа «Кэш», в которой можно заниматься программированием и робототехникой.
  • Мы занимаемся робототехникой первый год. В декабре мы ездили в Санкт-Петербург на Зимние состязания роботов, участвовали в соревнованиях в номинации «Кегельринг» , но к сожалению не стали призерами, хотя были близки  . Но мы не отчаиваемся, сейчас готовимся к «Лабиринту».
  • В Санкт-Петербурге мы увидели выставку роботов и загорелись идеей сделать что-нибудь этакое!!! И решили – наш робот будет рисовать!
Работа посвящена исследованию задач о прокладывании пути гусеничного робота, оснащенного пером (маркером), оставляющим след во время движения робота.
  • Работа посвящена исследованию задач о прокладывании пути гусеничного робота, оснащенного пером (маркером), оставляющим след во время движения робота.

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

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

Работа проводилась с использованием роботехнического набора Lego Mindstorms NXT 2.0 и средой программирования RobotC.

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

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

а) осуществлен выбор центра тяжести робота;

б) первоначально собранный колесный робот был заменен на гусеничный для осуществления более точных поворотов;

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

Задача 2 . Написать программу для рисования роботом прямой линии. task main() { motor[motorB] = 100; motor[motorC] = 100; wait1Msec(1000); motor[motorB] = 0; motor[motorC] = 0; } При выполнении этой программы робот движется вперед в течении 1000 миллисекунд и рисует прямую линию.

Задача 2 . Написать программу для рисования роботом прямой линии.

task main()

{

motor[motorB] = 100;

motor[motorC] = 100;

wait1Msec(1000);

motor[motorB] = 0;

motor[motorC] = 0;

}

При выполнении этой программы робот движется вперед в течении 1000 миллисекунд и рисует прямую линию.

Задача 3 . Написать программу для рисования роботом квадрата. task main() { for(int i=0;i motor[motorB] = 50;  motor[motorC] = 50;  wait1Msec(1000);  motor[motorC] = -50;  wait1Msec(500);  motor[motorB] = 0;  } } При выполнении этой программы робот рисует квадрат, однако точность движения маркера во время поворота нуждается в доработке.

Задача 3 . Написать программу для рисования роботом квадрата.

task main()

{

for(int i=0;i

motor[motorB] = 50;

motor[motorC] = 50;

wait1Msec(1000);

motor[motorC] = -50;

wait1Msec(500);

motor[motorB] = 0;

}

}

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

Задача 4 . Написать программу для рисования роботом треугольника. task main() { for(int i=0;i motor[motorB] = 50;  motor[motorC] = 50;  wait1Msec(1000);  motor[motorC] = -50;  wait1Msec(300);  motor[motorB] = 0;  } } При выполнении этой программы робот рисует треугольник.

Задача 4 . Написать программу для рисования роботом треугольника.

task main()

{

for(int i=0;i

motor[motorB] = 50;

motor[motorC] = 50;

wait1Msec(1000);

motor[motorC] = -50;

wait1Msec(300);

motor[motorB] = 0;

}

}

При выполнении этой программы робот рисует треугольник.

Задача 5 . Написать программу для рисования роботом окружности. task main() { motor[motorB] = 100; motor[motorC] = 40; wait1Msec(4000); motor[motorC] = 0; motor[motorB] = 0; } При выполнении этой программы робот рисует окружность радиусом примерно 45 сантиметров. Проведен эксперимент по изменению радиуса окружности с помощью изменения скорости моторов.

Задача 5 . Написать программу для рисования роботом окружности.

task main()

{

motor[motorB] = 100;

motor[motorC] = 40;

wait1Msec(4000);

motor[motorC] = 0;

motor[motorB] = 0;

}

При выполнении этой программы робот рисует окружность радиусом примерно 45 сантиметров. Проведен эксперимент по изменению радиуса окружности с помощью изменения скорости моторов.

Задача 6 . Написать программу для рисования роботом эллипса. task main() { for(int i=0;i motor[motorB] = 100;  motor[motorC] = 30;  wait1Msec(1900);  motor[motorB] = 100;  motor[motorC] = 60;  wait1Msec(5000);  } motor[motorC] = 0; motor[motorB] = 0; } При выполнении этой программы робот рисует эллипс. Проведен эксперимент по изменению радиуса кривизны эллипса с помощью изменения скорости моторов.

Задача 6 . Написать программу для рисования роботом эллипса.

task main()

{

for(int i=0;i

motor[motorB] = 100;

motor[motorC] = 30;

wait1Msec(1900);

motor[motorB] = 100;

motor[motorC] = 60;

wait1Msec(5000);

}

motor[motorC] = 0;

motor[motorB] = 0;

}

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

Задача 7 . Написать программу для рисования роботом спирали. task main() {  motor[motorB] = 100;  motor[motorC] = 50;  wait1Msec(5000);  motor[motorB] = 100;  motor[motorC] = 30;  wait1Msec(3500);  motor[motorB] = 100;  motor[motorC] = 20;  wait1Msec(2000);  motor[motorB] = 100;  motor[motorC] = 10;  wait1Msec(1000); motor[motorC] = 0; motor[motorB] = 0; } При выполнении этой программы робот рисует спираль.

Задача 7 . Написать программу для рисования роботом спирали.

task main()

{

motor[motorB] = 100;

motor[motorC] = 50;

wait1Msec(5000);

motor[motorB] = 100;

motor[motorC] = 30;

wait1Msec(3500);

motor[motorB] = 100;

motor[motorC] = 20;

wait1Msec(2000);

motor[motorB] = 100;

motor[motorC] = 10;

wait1Msec(1000);

motor[motorC] = 0;

motor[motorB] = 0;

}

При выполнении этой программы робот рисует спираль.

Задача 8 . Написать программу для перемещения робота из точки (0,0) в точку с произвольными координатами (x, y). task main() {  int x0=0;  int y0=0;  int x=30;  int y=50; // (x,y)=(30,50)  int d; int alpha;  d=sqrt ((x-x0)*(x-x0)+(y-y0)*(y-y0));  alpha=atan((y-y0)/(x-x0));  nMotorEncoder[motorB]=0;  motor[motorB] = 100;  motor[motorC] = -100;  while(nMotorEncoder[motorB] motor[motorB] = 0; motor[motorC] = 0;\\ стоп моторы  motor[motorB] = 100; motor[motorC] = 100;\\ движение в   заданном направлении на заданную величину d  wait1Msec(d*1000); } Опытным путем мы установили, что при повороте робота на 90 градусов энкодер поворачивается на 230 градусов вокруг своей оси. Следовательно повороту на 1 градус соответствует 230/90 оборотов энкодера.

Задача 8 . Написать программу для перемещения робота из точки (0,0) в точку с произвольными координатами (x, y).

task main()

{ int x0=0; int y0=0;

int x=30; int y=50; // (x,y)=(30,50)

int d; int alpha;

d=sqrt ((x-x0)*(x-x0)+(y-y0)*(y-y0));

alpha=atan((y-y0)/(x-x0));

nMotorEncoder[motorB]=0;

motor[motorB] = 100;

motor[motorC] = -100;

while(nMotorEncoder[motorB]

motor[motorB] = 0; motor[motorC] = 0;\\ стоп моторы

motor[motorB] = 100; motor[motorC] = 100;\\ движение в заданном направлении на заданную величину d

wait1Msec(d*1000);

}

Опытным путем мы установили, что при повороте робота на 90 градусов энкодер поворачивается на 230 градусов вокруг своей оси. Следовательно повороту на 1 градус соответствует 230/90 оборотов энкодера.

Задача 9 . Написать программу для перемещения робота из точки с произвольными координатами (x, y, alpha) в точку с произвольными координатами (x1, y1, alpha1), где alpha – угол поворота робота до начала движения.  Эта задача пока не решена, мы работаем над ее решением. Как только это произойдет наш робот сможет автоматически строить заранее заданные в программе графики математических функций и геометрические фигуры.

Задача 9 . Написать программу для перемещения робота из точки с произвольными координатами (x, y, alpha) в точку с произвольными координатами (x1, y1, alpha1), где alpha – угол поворота робота до начала движения.

Эта задача пока не решена, мы работаем над ее решением. Как только это произойдет наш робот сможет автоматически строить заранее заданные в программе графики математических функций и геометрические фигуры.

Литература 1. Филиппов С.А. Робототехника для детей и родителей. – М.:

Литература

1. Филиппов С.А. Робототехника для детей и родителей. – М.: "Наука" , 2011, 263 с.

2. Индустрия развлечений: ПервоРобот. Книга для учителя и сборник проектов. - LEGO Education.

3. Сайт http ://www.lego.com/education /

4. Сайт  http://www.legoengineering.com /

5. Сайт  http://legomindstorms.ru /

6. Cайт http:// nxtprograms.com

7. Сайт http :// www.robotc.net

8. Сайт http ://nnxt.blogspot.com


Получите в подарок сайт учителя

Предмет: Информатика

Категория: Презентации

Целевая аудитория: Прочее

Скачать
Проект "Робот Лего рисует геометрические фигуры"

Автор: Сапожникова Наталья Владимировна

Дата: 05.03.2015

Номер свидетельства: 182564


Получите в подарок сайт учителя

Видеоуроки для учителей

Курсы для учителей

ПОЛУЧИТЕ СВИДЕТЕЛЬСТВО МГНОВЕННО

Добавить свою работу

* Свидетельство о публикации выдается БЕСПЛАТНО, СРАЗУ же после добавления Вами Вашей работы на сайт

Удобный поиск материалов для учителей

Ваш личный кабинет
Проверка свидетельства