Conversion to double from struct is not possible.

21 vues (au cours des 30 derniers jours)
Massimo Lucia
Massimo Lucia le 5 Mai 2020
Commenté : Massimo Lucia le 7 Mai 2020
Can you please help me with this error message?
Conversion to double from struct is not possible.
Error in STABLE (line 80)
qs(i,:) = qSol;
Find attached the STABLE.m
This is what i get in the command window:
qSol =
1×7 struct array with fields:
JointName
JointPosition

Réponse acceptée

Ameer Hamza
Ameer Hamza le 5 Mai 2020
Chage following lines
Line 4:
robot = rigidBodyTree('DataFormat', 'row');
Line 85:
show(robot,qs(1,:));
Line 95
show(robot,qs(i,:),'PreservePlot',false);
  5 commentaires
Ameer Hamza
Ameer Hamza le 6 Mai 2020
Do it like this
robot = importrobot('xxxxxxx.urdf');
robot.DataFormat = 'row'; % or 'column'
Massimo Lucia
Massimo Lucia le 7 Mai 2020
got it

Connectez-vous pour commenter.

Plus de réponses (1)

Bjorn Gustavsson
Bjorn Gustavsson le 5 Mai 2020
This is obviously an operation that's not supported. If you look at the contens of one struct, you might find that the Jointname is a string, or a char-array. Those might be of different lengths (Al Dee or Vishvanatan Axelsson-Johnsson) - this makes it difficult to convert into a double array. Try with the fields of the struct separately:
Allpos = [qSol(:).JointPosition];
Allnames = char(qSol(:).Jointname)
HTH

Catégories

En savoir plus sur Publishers and Subscribers dans Help Center et File Exchange

Produits


Version

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by