2. Занятие 2 - Приливи и отливи

Въведение


Днес ще се запознаем с един интересен ефект предизвикан от Луната: приливните вълни. Може би знаете, че масивните тела имат притегателна сила - гравитация. Гравитацията на луната привлича водата в океаните и затова морското равнище по бреговете на океаните временно се повишава или намалява. Повишеното ниво наричаме прилив, а намаленото - отлив.

Колко мислите, че може да разликата между прилив и отлив в света?

content picture

Разстоянието между морското равнище на прилив и отлив може да достигне до 16 метра в залива Фънди в Канада, а най-ниските разлики са в Средиземно, Балтийско и Черно море, където стават само няколко сантиметра. Ние ще използваме 50 см като средна стойност, която да е удобна за задачата.

Запознаване с LEGO комплектите

За частите на нашите роботи

Ето така изглежда един наш робот, от най-лесните:

EasyBot

Преди да започнете да строите ще разгледаме частите, от които е изграден.

Двигатели (мотори)

Серво-двигатели 

Те са краката или мускулите на роботите.

Контролер

Контролерът на робота

LEGO наричат тази част hub (хъб) или контролер, затова ще чуете да я наричаме "хъба" или "контролера". Тя представлява микро-компютър, в който могат да се зареждат програми от обикновен компютър. Докато изпълнява програмите си, контролерът чете от сензорите си и управлява двигателите си.

Lego-technic части

Няколко основни части от комплекта

На картинката виждате няколко части. Можете ли да познаете, коя на кое име отговаря:

  • Гума (tire);
  • Джанта (rim);
  • Двоен черен щифт (double black pin);
  • Троен син щифт (triple blue pin);
  • Сива Втулка (gray bush);
  • Зъбно колело (gear, cog wheel);
  • Греда (beam);
  • Ос (axle);
  • Щифт с ос (axle pin).

Имена на най-използваните части в LEGO Mindstorms комплекта

Днес ще ви запознаем с имената и употребата на частите в един стандартен робот.

Важно: Различаваме и разделяме частите по форма не по цвят.

Нека се уверим, че използваме еднакви думи за частите в комплекта.

Имена за щифтовете

  • Черен щифт, двоен щифт;
  • Син щифт, троен щифт;
  • Син щифт с ос (за преходи между щифт и ос);
  • Червен щифт, щифт с глава (щифт с кръстат отвор).

Имена за гредите

  • греда петица, греда пет'найска;
  • Голямо и малко "Г" (Г-образни греди);
  • Двойно пречупена греда.

Части за движение

  • Джанти (има тънки и дебели джанти);
  • Ролки;
  • Гума и джанта заедно образуват Колело.

Части за пространствено въртене

  • Греда с щифтове;
  • Ъглова греда с щифтове.

Важно: Различаваме и разделяме частите по форма не по цвят.

Да научим имената на частите по забавен начин

Нека да направим игра:

Преподавателят ви ще ви казва име на част и вие ще вадите една от комплекта и ще му я показвате. Когато всички са показали правилната част, ще преминавате към следващата.Ако покажете грешна част, преподавателят ще ви каже името на частта, която държите.

Нека да започнем. Покажете ми:

  • двоен щифт;
  • троен щифт;
  • щифт с глава;
  • четна ос шестица (с дължина шест лего единици);
  • нечетна ос петица;
  • щифт с ос;
  • зъбно колело;
  • втулка (цяла);
  • половинка втулка;
  • греда седмица;
  • греда голямо "Г";
  • греда малко "Г";
  • пречупена греда (има три вида);
  • греда "Т";
  • рамка светлосива;
  • гума;
  • джанта;
  • колело (Гума и джанта заедно дават колело);
  • греда със щифтове "Н";
  • ъглова греда със щифтове.

Конструиране и Теория


Роботът днес се движи подобно на този от първо занятие, но изглежда много различно. Целта на днешния робот е да имитира движението на вълните. Какво е то?

Алунаджо - LEGO SPIKE Prime луноход

Алунаджо (Allunagio), от италиански, означава да пристигнеш или да пипнеш Луната. Този лесен робот е направен да се строи в кратко занятие. Той се състои само от два задвижващи мотора и един управляващ контролер.

Сега, след като построихте робота, затворете кутията, за да не ви пречи.

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

Програмиране и Теория


Днес ще програмираме робот, който да показва, колко се е покачила водата, като симулира три нарастващи вълни. Ще научим как да даваме поредица от команди на робота, които да се изпълняват.

Задачата за днешното занятие

Днес ще програмирате робота да симулира вълните на морето. Робота ще се движи напред и назад, като постепенно намалява разстоянието, което изминава, все едно засича идващият прилив. Следващите 4 задачи се надграждат и ще ви помогнат да създадете програма с тази цел. Уверете се, че сте завършили всяка задача, преди да преминете към следващата.

Изпълняване на повече от една команда в LEGO SPIKE Prime Word Blocks

Повечето програми, които пишем, изискват няколко команди, които да изпълни робота, за да изпълни задачата си. Ето как да направим това със SPIKE Prime Word Blocks софтуера!

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

content picture

Когато добавим блокчета по този начин, те се изпълняват едно след друго отгоре надолу. Това означава, че програмата на картинката би движила робота напред за 50 см и след това назад 50 см. След това можем да поставим още блокчета, колкото имаме нужда, за да може робота да изпълни правилно задачата.

Добри практики при създаването на дълги програми на принципа проба-грешка

След като вече изпробвахте и се справихте с предизвикателство, включващо поредица от инструкции, искаме да ви представим някои добри практики.

Тествайте блокчетата едно по едно

Лоша практика е да се поставят няколко блокчета и след това да се тества. Проблемът е, че когато се появи грешка, няма да можете да разпознаете в кое блокче е причината.

Разберете задачата

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

Тествайте всяка стъпка на програмата с робота

Това е най-важното, което искаме да ви кажем! Следвайте този алгоритъм:

  • Поставете един или два блока в програмата си и ги настройте;
  • Свалете програмата от компютъра на робота;
  • Поставете робота на пода, на стартовата позиция;
  • Изберете програмата от менюто на бриковете и я стартирайте;
  • Наблюдавайте резултатите и преценете дали роботът се държи, както очаквате:
    • Ако поведението на робота е "правилно", както вие искате, продължете нататък
      • Добавете нови блокчета в програмата, разширете я;
    • Ако се появи грешка, то тя е в новите блокчета, които току що сте добавили.
      • Поправете грешката и наблюдавайте отново.

Използвайте опцията за сваляне на софтуера

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

Изтриване, връщане и местене на блокчета в LEGO SPIKE Prime Word Blocks софтуера

Имали ли сте блокче, което искате да изтриете? Или някое, което искате да възстановите след изтриване? Сега ще разберете как!

За да изтрием блокче имаме два варианта:

  1. С бутона Del.
  2. С преместване на блокчето в палитрата отстрани.

За да изтрием блокче с бутона Del или Delete (от английски изтрий), трябва да кликнем върху него и да натиснем бутона на клавиатурата. Този бутон ще работи винаги върху последното блокче, върху което сте кликнали.

За да изтрием блокче с преместване, трябва да го хванем и да го преместим обратно отстрани в палитрата, без значение къде. Внимавайте! При дърпане на блокче, което има още блокчета под себе си, ние дърпаме и всички блокчета под него и има риск да изтрием голяма част от програмата ни.

Друг начин да изтрием само едно блокче, което е по средата на няколко, е да го преместим, заедно с блокчетата под него, след това да хванем блокчетата под него и да ги върнем към оригиналната програма. Сега сме изолирали блокчето, което искаме да изтрием и можем да го преместим отстрани в палитрата. Този трик можем да го използваме и ако искаме да само преместим блокче, вместо да го трием и изглежда така:

Понякога се случва да изтрием голяма част от програмата си без да искаме или да я разместим и да не помним как е била първоначално. Инструментът, който поправя такива ситуации е Ctrl+Z, също наричан "Undo" (Ънду) или "върни". При нуждата от връщане на нещо назад, кликаме бутонът Ctrl(Контрол) и след това Z. Това връща едно действие, което сме направили, назад. Ако го натиснем отново, връща второ действие и можем да продължим така вероятно повече от колкото би ни трябвало някога.

Спиране на програма при грешка в пускането със SPIKE Prime контролер

Понякога правим грешка в пускането на робота и трябва да го спрем, преди да му свърши програмата. Ето как да направим това със SPIKE Prime контролер.

Чести грешки, които могат да доведат до нужда да спираме робота са:

  1. Пускане на робота в грешна посока. Роботите могат да се движат във всяка посока, затова преценете в коя трябва да се движи вашият и го пускайте така, че да може да го направи без проблем. Обикновено тази посока е надалеч от вас.
  2. Пускане на грешна програма или проблем при пускането на програмата. Понякога пускаме грешна програма или програма с грешка и тогава робота тръгва на някъде и не знаем какво се случва. Може някой да го бутне и от там да дойде грешката.

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

content picture

Как се задават портовете на моторите в LEGO SPIKE Prime Word Blocks софтуер

По подразбиране моторите на LEGO SPIKE Prime контролера се свързват на портове А и B. А ако искаме да ги свържем на други портове? Ето как да променим портовете в софтуера.

Блокчето, което използваме за да променим портовете на движещите мотори в софтуера се намира на предпоследно място в Movement палитрата. Нарича се set movement motors to или задай движещите мотори на.

content picture

Блокчето има една настройка и тя е за задаване на портовете на двата движещи мотора.

content picture

След като зададем верните портове, роботът ни ще използва новите портове като движещи мотори. Това означава, че всички блокчета от Movement палитрата ще движат тези два мотора. Това блокче може и да се използва за обръщане на портовете, което може да е полезно, ако програмирате робота да се движи напред, а той се движи назад.

Допълнителни задачи

Тези задачи не са задължителни и могат да се решават само от учениците, които са се справили с всички основни задачи и са получили потвърждение от преподавателя си.

След като се запознахте с приливните вълни, нека да се запознаем с още два вида вълни: Цунами, която е еднократна огромна вълна в океана и Мексиканската вълна, която е синхронизация между много хора на стадион или спортно събитие.

За да направим цунами с роботите, ще поставим всички роботи един до друг и ще ги пуснем едновременно, за да прилича на една огромна вълна.

Мексиканската вълна е малко по-сложна задача. При нея трябва да подредим роботите един зад друг. След това, да ги пуснем един след друг, за да може, когато първия стигне до втория, втория да тръгне.

Изпълнете Цунами с роботите, както е описано в секция "Допълнителни задачи" над тази задача.

  • Пуснете всички роботи от залата едновременно;

  • Внимавайте да има достатъчно разстояние между роботите. Ако някой робот тръгне на криво ще има шанс да се блъсне в близките роботи.

  • Снимайте роботите и тяхната версия на Цунами

  • Изпълнете мексиканската вълна както е описана в секция "Допълнителни задачи" над тази задача.

  • Пуснете всички роботи от залата едновременно;

  • Внимавайте да има достатъчно разстояние между роботите. Ако някой робот тръгне на криво ще има шанс да се блъсне в близките роботи.

  • Снимайте роботите и тяхната версия на Мексиканска вълна.

  • Задачи по приключване на урока.

    1. Направете снимки и клипове на роботите
    2. Разглобете и подредете робота
    3. Подредете работното си място
      • Важно е да подредите електрониката на роботите върху капака на кутията.
      • Навийте кабела за програмиране, така че да е събран.
      • Навийте кабела на мишката около мишката.
      • Навийте кабела на зарядното на лаптопа така, както преподавателят ви ще ви покаже.
      • Когато изключите компютъра, оставете го до кутията по роботика.
    4. Изключете всички програми на компютъра
    5. Излезте от FLLCasts
    6. Изключете компютъра
    7. Приберете столовете си под масата