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

Необходимо е да се абонирате за FLLCasts.com, за да достъпите това видео
- #1549
- 27 Feb 2020
Основни математически оператори в Python
Математическите оператори в уравненията, които можем да пишем в Python, се пишат със следните знаци:
- " + " събиране ;
- " - " изваждане;
- " * " умножение;
- " / " деление.
Има и други математически оператори, които можем да използваме, но тези са главните.
Как се използват изрази като стойност на променлива
Нека разгледаме пример, в който скоростта на моторите е зададена като уравнението 250 + 250:
Motor(Port.B).run_time(250 + 250, 3000, Stop.COAST, False) Motor(Port.C).run_time(250 + 250, 3000, Stop.COAST)
В този пример, моторите се движат със скорост 500. Тези уравнения могат да бъдат записани в променлива "motor_speed" и тази променлива да замени входните параметри за скорост:
# Create your objects here. ev3 = EV3Brick() motor_speed = 250 + 250 # Write your program here. Motor(Port.B).run_time(motor_speed, 3000, Stop.COAST, False) Motor(Port.C).run_time(motor_speed, 3000, Stop.COAST)
Как изразите да зависят от променлива
По този начин можем да си създадем променливи, които да зависят от други променливи. Ето един пример, в който скоростта "motor_speed" е равна на новата променлива за разстояние "distance" разделена на новата променлива за време "move_time":
# Create your objects here. ev3 = EV3Brick() move_time = 3000 distance = 100 motor_speed = distance / move_time # Write your program here. Motor(Port.B).run_time(motor_speed, move_time, Stop.COAST, False) Motor(Port.C).run_time(motor_speed, move_time, Stop.COAST)
Нека разгледаме пример, в който роботът трябва да завива в дъга. Със максималната скорост на моторите ще се експериментира и ще бъдат променяни редовно, но знаем, че скоростта на по-бавния мотор трябва винаги да е наполовина от скоростта на бързия мотор:
# Create your objects here. ev3 = EV3Brick() motor_speed = 1000 # Write your program here. Motor(Port.B).run_time(motor_speed, 3000, Stop.COAST, False) Motor(Port.C).run_time(motor_speed / 2, 3000, Stop.COAST)
Забележете, че е използвана само една променлива и във входния параметър на командата "run_time" за мотора на порт С, скоростта е разделена на 2. По този начин може да намалим броя променливи в програмата си и да създадем взаимовръзки между променливите, когато това е нужно.
Курсове и занятия включващи този Урок
Този Урок е използван в следните курсове и занятия.

Python за EV3 LEGO Mindstorms - ниво 1
- 74
- 28:18
- 114

Занятие 4 - Странен робот
Въведение
Днес ще се сблъскаме със значителен проблем, с който се борят наши инженери още откакто човек е стъпил на Луната, а именно изпращането на роботи до Луната. Когато добавим нещо върху ракета, която трябва да достигне Луната, можете да си представите, колко много неща трябва да се пресметнат. Започвайки от позицията му в ракетата, теглото му, центърът му на тежест, инерцията му и много други. Затова, когато учени желаят да изпратят робот на луната, трябва да направят много компромиси с конструкцията му. След изпращането на Луноход 2 до Луната, учени започнаха работа върху робот, който да бъде изпратен със следващия Луноход. За тази цел робота трябва да се побере в свободното място останало в помещението за Лунохода. Това място не е със стандартна форма и затова робота е направен да изглежда странно. Планът е, той да бъде прикачен за Лунохода и когато автомобила бъде изведен от ракетата, робота ще се откачи и ще направи маневра, за да се измъкне преди космонавтите да са го подкарали.
- 7
- 5
- 11
- 3d_rotation 1