Параметры CAS

Параметры Perimeter

Задают конфигурацию периметра, от которого отсчитываются зоны, и центр для угловых секторов.

Если какая-то пара из этих параметров не заполнена, соответствующие координаты автоматически вычисляются из координат считывателей: периметр вплотную ограничивает считыватели, центр для секторов устанавливается в центре периметра.

Для проверки результата можно смотреть вкладку CAS - Контроль расчетов

Параметры Zones

Задают форму зон - Красной и Желтой

Параметры Динамических зон

Параметры DynRed

Задает увеличение Красной зоны в зависимости от скорости и направления транспортного средства. Скорость и направление определяются опросом CAN-шины транспортного средства (см. Настройки CAN)

Зона увеличивается при росте скорости от 0 до некоторого Vmax, при дальнейшем росте скорости остается неизменной. Весь интервал от 0 до Vmax разбит на сегменты (один или больше). На каждом сегменте зона увеличивается по-разному, но всегда от размера на предыдущем сегменте (первая – от базового размера, заданного в Zones). Для каждого сегмента здесь в настройках задается его верхняя граница по скорости и один из двух вариантов зависимости от скорости.

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

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

При получении скорости V вычисляются значения (prev относится к предыдущему сегменту):

                                dV = ( V - V_kmhprev )        Vstep = ( V_kmh - V_kmhprev )

После чего вычисляются размеры зоны одним из двух вариантов:

  1. Если параметры toDir_m или toSide_m больше 0, то сегмент линейный: размеры зоны пропорционально увеличиваются на toDir_m и toSide_m при увеличении скорости до V_kmh :
                          Ddir = Ddirprev + toDir_m * dV / Vstep       Dside = Dsideprev + toSide_m * dV / Vstep
  2. Иначе сегмент квадратичный, и размеры зоны растут в соответствии с :
                          Ddir = Ddirprev + V1 * dV + V2 * dV2       Dside = Dsideprev + V1 * dV

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

Размер Ddir это размер зоны в направлении движения – вперед или назад. Или, если направление неизвестно, то в обе стороны – вперед и назад.

Размер Dside это размер зоны поперек движения – влево и вправо.

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

Если скорость с CAN-шины пропадает, то размер зон выбирается максимальный.

Параметры DynYellow

Желтая зона автоматически увеличивается вместе с Красной. Масштаб увеличения задается здесь через максимальный отступ Желтой зоны при полном увеличении Красной зоны на сегменте :

Параметры DynSteer

В соответствии с Настройки CAN | Параметры Steer вычисляется значение параметра Steer. Настройки должны быть такие, чтобы было при повороте налево Steer<0, при повороте направо Steer>0, при движении прямо Steer=0.

Зона увеличивается до toSide_m пропорционально SteerMax. в ту сторону, куда указывает Steer:

                Dsteer = D0 + toSide_m * Steer / SteerMax        :   Dsteer<0 - влево, Dsteer>0 - вправо

Если данные о повороте с CAN-шины пропадают, то размер зон выбирается максимальный в обе стороны.