Posted on Wed 26 February 2025
tags: Теория управления бпм
Добрый день!
Мы будем обсуждать теорию управления на практических примерах. Здесь, на сайте, для вас будут размещены задания, список вопросов к экзамену, список литерауры по предмету, список вопросов к экзамену/зачету и другая необходимая информация.
Курс рассчитан на 1 семестр, в конце курса предусмотрен экзамен.
Для допуска к экзамену/зачету необходимо выполнить и защитить все лабораторные работы и получить не менее 51 балла в течение семестра.
Итоговая оценка выставляется в соответствии с требованиями балльно-рейтинговой системы (см. критерии так же оценки на экзамене). Для допуска к экзамену необходимо выполнить и защитить все лабораторные работы.
При выполнении работ можно использовать следующие ресурсы (список будет пополняться):
За основу можно брать следующий код (для Lego-робота):
from pybricks.hubs import TechnicHub
from pybricks.pupdevices import DCMotor, ColorDistanceSensor
from pybricks.parameters import Button, Color, Direction, Port, Side, Stop
from pybricks.robotics import DriveBase
from pybricks.tools import wait, StopWatch
hub = TechnicHub()
left_motor = DCMotor(Port.A, positive_direction=Direction.COUNTERCLOCKWISE)
right_motor = DCMotor(Port.B, positive_direction=Direction.CLOCKWISE)
light_sensor = ColorDistanceSensor(Port.C)
left_motor.dc(30)
right_motor.dc(30)
wait(3000)
left_motor(0)
right_motor(0)
Либо, для робота второго типа, вот такой:
"""
датчик цвета и освещенности поверхности.
для получения освещенности поверхности используйте свойство illumination, например, так
>>> cs.illumination
"""
cs = ColorSensor()
"""
Управлением моторами. Параметр принимает значения от -4095 до 4095
(положительные значения - движение робота вперед, отрицательные - движение назад)
рекомендуется использовать значения в пределах от -1500 до 1500
"""
motors.run_left(1500) # запускаем левый мотор
motors.run_right(1500) # запускаем правый мотор
for i in range(20):
print(i)
print(cs.illumination) # выводим в консоль значение освещенности
sleep(0.1) # ожидаем 0.1 секунды (в качестве параметра допускаются вещественные значения)
motors.run_left(0) # останавливаем левый мотор
motors.run_right(0) # останавливаем правый мотор
Курс состоит из теоретического материала и заданий:
Оценка устойчивости системы управления
Примерный список вопросов к экзамену (состав и количество вопросов могут быть откорректированы):