Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem with code generation in RobCoGen #166

Closed
awa152 opened this issue Sep 25, 2020 · 1 comment
Closed

Problem with code generation in RobCoGen #166

awa152 opened this issue Sep 25, 2020 · 1 comment

Comments

@awa152
Copy link

awa152 commented Sep 25, 2020

I know that this isn't an issue with the control toolbox itself, but with the generation step in RobCoGen, but I don't really know where to file an issue elsewhere.

I am trying to generate the files on Ubuntu 18.04 with openjdk-8-jre installed with the compatible RobCoGen version 0.4ad.0.
When trying to generate the C++ code everything works except the generation of the coordinate Transforms and the geometric jacobian. I tried the example.kindsl provided in the folder and a few other robots descriptions. I also reinstalled java and tried it inside a Docker Container to be sure that there is no conflict between different java versions on my laptop. In the Docker Container I tried openjdk-8-jre and openjdk-11-jre.

I get the following errors

When trying to get the C++ coordinate Transform:

Exception in thread "main" java.lang.NullPointerException
at iit.dsl.maxdsl.utils.MaximaConversionUtils.cleanMatrixRowOutput(Unknown Source)
at iit.dsl.maxdsl.utils.MaximaConversionUtils.getMatrix(Unknown Source)
at iit.dsl.coord.generator.maxima.converter.MaximaConverter.parseTransform(Unknown Source)
at iit.dsl.coord.generator.cpp.TransformsClasses.localClassesDefinitions(Unknown Source)
at iit.dsl.coord.generator.cpp.EigenFiles.implementationsFileContent(Unknown Source)
at iit.dsl.generator.cpp.kinematics.Transforms.generate(Unknown Source)
at iit.dsl.generator.cpp.Generator.generateTransforms(Unknown Source)
at iit.robcogen.KinDSLWrapper.generate(Unknown Source)
at iit.robcogen.Generator.main(Unknown Source)

When trying to get the geometric jacobian:

Exception in thread "main" java.lang.NullPointerException
at iit.dsl.maxdsl.utils.MaximaConversionUtils.cleanMatrixRowOutput(Unknown Source)
at iit.dsl.maxdsl.utils.MaximaConversionUtils.getMatrix(Unknown Source)
at iit.dsl.generator.maxima.Converter.getJacobianText(Unknown Source)
at iit.dsl.generator.cpp.kinematics.Jacobians.localClassesDefinitions(Unknown Source)
at iit.dsl.generator.cpp.kinematics.Jacobians.sourceFile(Unknown Source)
at iit.dsl.generator.cpp.Generator.generateJacobiansFiles(Unknown Source)
at iit.robcogen.KinDSLWrapper.generate(Unknown Source)
at iit.robcogen.Generator.main(Unknown Source)

Maybe someone else already had the same issue and could point me into the right direction. I tried to generate the code with the newer version 0.5.1 and it worked, but I don't know about the compatibility between the newer version 0.5.1 and the control toolbox.

kind regards

@awa152
Copy link
Author

awa152 commented Sep 25, 2020

After writing with Marco Frigerio he showed me that this error is due to an old bug that was fixed in the newer version of RobCoGen, but not in 0.4ad.0.
Simply removing a "/" sign from the framework.properties configuration resolved this issue, like:
generator.maxima.libs.path = ../etc/maxima-libs (do NOT use "/" at the end).

I am just writing this in case somebody else runs into the same problem when trying to use the control toolbox with RobCoGen 0.4ad.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant