Как да завъртим моторите на точен ъгъл Pro Preview

Когато използваме командата run_angle() няколко пъти в програма, е трудно да следим, колко се е завъртял моторът, за да можем да му зададем необходимия градус на завъртане, за да достигне следващата си цел. Затова съществува и командата run_target().

Необходимо е да се абонирате за FLLCasts.com, за да достъпите това видео

Абонирай се

  • #1557
  • 11 Mar 2020

Тази команда има 4 входни параметъра:

  1. Скоростта, с която да се движи моторът;
  2. Ъгъла, който трябва да достигне моторът;
  3. Каква спирачка да използва;
  4. Дали програмата да изчака командата да приключи действието си или не.

С тази команда, няма нужда дори да задавате положителна или отрицателна скорост. Тя сама ще избере посоката, на която трябва да завърти моторът, за да достигне зададения ъгъл. Ето един пример, как може да бъде програмиран робота да задвижи един мотор на 90 градуса със скорост 360:

Motor(Port.B).run_target(360, 90, Stop.COAST)

Ето същия пример със скорост -360:

Motor(Port.B).run_target(-360, 90, Stop.COAST)

Тези две програми правят едно и също нещо! Ако това е първият ред в програмата ви и моторът е в начална позиция, то той ще се завърти на 90 градуса в положителната си посока, независимо дали скоростта е 360 или -360. Това е така, защото роботът е програмиран да разбира, че ъгълът няма да се увеличи, ако моторът се движи в отрицателна посока.

Ако мотора е бил завъртян 200 градуса, преди да бъде извикана една от тези команди, то моторът ще се завърти обратно 110 градуса, за да достигне целта си от 90 градуса. Тази команда измерва ъгъла, на който е завъртян моторът от позицията му, когато е била стартирана програмата.

Курсове и занятия включващи този Урок

Този Урок е използван в следните курсове и занятия.

Image for Python за EV3 LEGO Mindstorms - ниво 1
  • 74
  • 28:18
  • 114
Image for Lesson 6 - Управление на безпилотен автомобил
  • 3
  • 7
  • 5
  • 3d_rotation 1