Итак, я пытаюсь вычислить некоторые однородные матрицы преобразования, используя набор инструментов Робототехники Питера Корка, однако, когда я пытаюсь использовать команду "trchain":
syms a1 q1 q2
trchain('Rz(q1)Tz(a1)Ry(q2)',[q1 q2])
Я получаю следующий вывод:
Error using rotz
Expected GAMMA to be one of these types:
double
Instead its type was sym.
Error in sigdatatypes.validateAngle (line 22)
validateattributes(x,{'double'},{'finite','nonnan','nonempty','real'},...
Error in rotz (line 30)
sigdatatypes.validateAngle(gamma,'rotz','GAMMA',{'scalar'});
Error in trotz (line 36)
T = [rotz(t, varargin{:}) [0 0 0]'; 0 0 0 1];
Error in trchain (line 93)
T = T * trotz(arg);
Я посмотрел онлайн и наткнулся на несколько вещей (например, убедитесь, что Phase Array Toolbox установлен), но ничего не работает.
Та же проблема возникает, если я пытаюсь использовать сам «rotz», а не в команде «trchain». Кроме того, функция "rotz" прекрасно работает для числовых аргументов.
Любая помощь будет приветствоваться - спасибо!
РЕДАКТИРОВАТЬ - Новая ошибка!
После повторной попытки кода (хотя на днях он работал нормально), я теперь получаю другое сообщение:
Error using ROUNDN
Expected X to be one of these types:
single, double
Instead its type was sym.
Error in roundn (line 31)
validateattributes(x, {'single', 'double'}, {}, 'ROUNDN', 'X')
Error in rotz (line 18)
R = roundn(R, -15);
Error in trotz (line 36)
T = [rotz(t, varargin{:}) [0 0 0]'; 0 0 0 1];
Error in trchain (line 93)
T = T * trotz(arg);
Error in kinematics1 (line 3)
trchain('Rz(q1)Tz(a1)Ry(q2)',[q1 q2])
Код точно такой же, как указано выше. Используемая версия Matlab - R2018a, а версия Robotics Toolbox - 10.3. Кроме того, Phased Array Toolbox не установлен.
Надеюсь, ты сможешь помочь снова ... спасибо