top of page

Робот-уборщик

Цель проекта: Создать робота-уборщика с пиноботом и датчиком расстояния с использованием карты управления Pinoo.

Продолжительность:  2 урока

Возрастная группа:  7 лет и старше

Пино Набор:  Набор PinooBot и полный комплект.

Достижения:

  • Научитесь программировать плату управления Pinoo

  • Учит кодировать датчик расстояния.

  • Пинобот встречает робота.

  • Развивает алгоритмические навыки.

  • Развиваются навыки кодирования.

 

Материалы, которые будут использоваться:  Программа Mblock 3, плата управления PinooBot Robot / Pinoo, датчик расстояния, соединительный кабель.  

Материалы, необходимые для дизайна:  Губка для посуды, синель, мешок для мусора, магнит, силиконовый пистолет, ножницы.

 

   

Строительство проекта:

            

  

   

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

 

 

 

 

 

 

 

 

 

 

 

На дно губки приклеиваем три магнита.  

 

Вы можете украсить робота по своему желанию в соответствии с его ролью.    

             

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

Разбрасываем созданный нами мусор на территории, где будем эксплуатировать нашего робота.

 

 

Давайте установим наши связи. Подключение датчика расстояния к фиолетово-зеленому входу №6  (Если соединения с двигателем не выполнены, давайте подключимся к входам белого цвета, которые предназначены для подключения двигателей на плате управления Pinoo.)

  

 

Мы завершили наши подключения, теперь давайте перейдем к части кодирования. Для этого мы будем использовать приложение mblock-3.  Давайте подключим нашу плату управления Pinoo к компьютеру с помощью соединительного кабеля и войдем в приложение Mblock3. Затем давайте введем нашу контрольную карту Pinoo в компьютер. Для этого мы сначала нажимаем на опцию последовательного порта на вкладке «Подключение». Затем выбираем COM6.(Число может отличаться в зависимости от компьютера и порта.)  

После подключения к последовательному порту давайте выберем карту, которую будем использовать, на вкладке карт. Мы работаем с моделью Arduino Nano.

 

Чтобы добавить расширение Pinoo на наш компьютер, мы нажимаем кнопку «Управление расширениями» на вкладке расширений. В открывшемся окне пишем в поисковике «Pinoo» и в результате достаточно сказать скачать. Установил на наш компьютер.

 

Снова заходим во вкладку расширений и нажимаем на Pinoo. Мы будем писать наши коды с расширением Pinoo.  

 

В части кодирования; Мы получаем код, когда нажимаем на зеленый флаг в меню «События», чтобы запустить приложение.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Мы получим помощь от манекена, чтобы узнать значение, считанное датчиком расстояния. Для этого мы получаем команду поздороваться с вкладки просмотра. Вместо приветствия мы получаем блок кода, связанный с датчиком расстояния на вкладке роботов. Мы меняем пин-вход на Pinoo6, к которому и подключаемся.

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

Нажимаем на зеленый флажок и наблюдаем за изменением значений, приближая руку к датчику. Обратите внимание на значение, считываемое датчиком, когда мы приближаем руку к роботу. Здесь мы возьмем в качестве ориентира, что он читает значение около 10.

 

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

Здесь мы воспользуемся блоком if на вкладке управления и малыми и большими операторами сравнения на вкладке операций.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Давайте завершим коды, которые PinooBot будет действовать в соответствии с условием, которое необходимо выполнить.

Для показаний датчика больше 10 мы получаем блок кода PinooBot Direction:Forward Speed:0 на вкладке Robots. Обновляем направления как вперед, вправо, назад, влево соответственно и Скорость как 255 во всех них.

Поскольку мы хотим, чтобы этот процесс проверялся непрерывно, мы помещаем все блоки в блок повторения.

Мы хотим, чтобы он делал каждое движение в течение определенного времени. Для этого мы берем 1-секундный блок кода ожидания со вкладки управления под каждым ходом и обновляем число 1 на 2.

 

 

 

 

 

 

 

 

 

 

 

 

 

Для показаний датчика меньше 10 мы получаем блок кода PinooBot Direction:Forward Speed:0 на вкладке Robots. Мы обновляем их направление как прямо назад и скорость как 255 во всех них. Для того, чтобы он сделал правый поворот за 2 секунды, берем команду ждать 1 секунду с вкладки управления и обновляем цифру 1 на 2.  

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

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

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

 

Щелкните правой кнопкой мыши по коду и выберите «Загрузить в arduino» (мы работаем с arduino как с платой).

 

Ждем, когда коды загрузятся на карту. После завершения установки закрываем окно.

 

 

Если проблем нет, отсоединяем наш кабель питания от компьютера. Мы питаем нашу плату управления Pinoo с помощью 9-вольтовой батареи и крышки батарейного отсека. Мы также переводим кнопку включения-выключения, которая находится рядом с входом батареи, в положение «включено».

 

IDE-КОДЫ ARDUINO:

// назначаем выводы двигателя

инт мотора1 = 5;

инт мотора2 = 6;

инт моторb1 = 10;

инт моторб2 = 11;

// назначаем контакты датчика расстояния

интервал эхоПин = 12;

инт тригПин = 13; большое расстояние, конечно;

// назначаем две переменные для измерения расстояния

недействительная установка ()

{

  // контакты двигателя являются выходными контактами 

pinMode (к двигателю 1, ВЫХОД); 

pinMode(двигатель2, ВЫХОД); 

pinMode(motorb1, ВЫХОД); 

pinMode(motorb2, ВЫХОД); 

pinMode(echoPin, INPUT);

// эхо - это входной контакт 

pinMode(trigPin, ВЫХОД);

// триггер — выходной пин

}

пустой цикл ()

{

  // активирован датчик расстояния 

digitalWrite(trigPin, LOW); 

задержка в микросекундах (5); 

digitalWrite(trigPin, ВЫСОКИЙ); 

задержкаМикросекунды(10); 

digitalWrite(trigPin, LOW); 

конечно = pulseIn(echoPin, HIGH);

  расстояние = время/29,1/2;

// измерил расстояние

  если (расстояние > 10)

{

// если расстояние больше 10  

Дальше(); // идет вперед  

задержка (2000 г.);  

правильно(); // идет вправо  

задержка (2000 г.);  

левый(); // движется влево  

задержка (2000 г.);  

назад(); // Идет назад  

задержка (2000 г.); 

}

иначе если (расстояние < 10)

{

// если расстояние меньше 10  

правильно(); // идет вправо  

задержка (2000 г.);   Дальше(); // идет вперед 

}

}

недействительным вперед ()

{

}

аннулировать назад ()

{

}

недействительный прогиб ()

{

}

пустота слева ()

{

}

1.png
1111_large.jfif
10.jpeg
11.jpeg
12.jpeg
13.jpeg
2222_large.jfif
16.jpeg
17.jpeg
seri_port_480x480.jpg
KART_480x480.jpg
pinoo_uzanti_480x480.jpg
pinooo_480x480 (2).jpg
23.PNG
24.JPG
25.JPG
26.JPG
27.JPG
28.JPG
30.JPG
29.JPG
31.JPG
32.JPG
33.jpeg
bottom of page