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

GRL import on Sunrise Workbench #175

Closed
kamilcetin opened this issue Nov 21, 2018 · 17 comments
Closed

GRL import on Sunrise Workbench #175

kamilcetin opened this issue Nov 21, 2018 · 17 comments

Comments

@kamilcetin
Copy link

I have some problem on importing grl project on Sunrise Workbench.
I followed the instructions of Kuka LBR iiwa Java Setup at https://ahundt.github.io/grl/howto/iiwaKukaRobotSetup.html

I got stuck with the step of Setup Java Driver Software. I copy the folders in ${GRL_DIR}/src/java/grl/ from Ubuntu 16.04, then try to import the grl project with the Sunrise Workbench. However, when I select the grl folder from File > Import > General > Existing Projects into Sunrise Workspace GUI, the project does not seem on the list and it is not possible to Finish as shown below.
screenshot_grl_import

On the other side, when I import the grl project from File > Import > General > File System, it is loaded on the Sunrise Project. In this case, it is not possible to install the SunriseProject with imported files of grl onto the Kuka Controller due to the errors on the grl, grl.driver, grl.flatbuffer, grl.flatBufferTesting as shown below.
screenshot_grl_error

Do you have an idea for the reason of the problem? Is the way of importing grl on the SunsireProject true? Should I install more packages on the project to prevent the errors at ...java files?
Thanks in advance.

@ahundt
Copy link
Owner

ahundt commented Nov 21, 2018 via email

@kamilcetin
Copy link
Author

I created a new project (named as OSLproject). After the import of the grl, Flat_Buffer_Testing file was appeared on the Package Explorer. I copied grl, grl.driver, grl.flatbuffer, grl.flatBufferTesting to the new project. Then, I installed it, but when I do sync, it gives deployment failure as shown below.
error3
However, as you see the java codes there are some miss class (such as
import org.zeromq.ZMQ;
import com.google.flatbuffers.FlatBufferBuilder;
import com.google.flatbuffers.Table;)
Do you think that I should also create those java class files to fix the problem?

@ahundt
Copy link
Owner

ahundt commented Nov 23, 2018

flatbuffers and zmq are actual java libraries you need to install here is the flatbuffers one, for example:

https://github.com/davidmoten/flatbuffers

@kamilcetin
Copy link
Author

I found those java libraries and directly copied into the src directory of the project in the interface. Then I could install and do the sync. Then I changed the Ethernet port to FRI/Koni and saw GRL_driver application from the smart pad. When I chose it and run, the interface says that FRI Joint Overlay Complete! I think I completed the FRI and GRL installations on both side (remote ubuntu and KRC worksation).
Now, where can I find example cpp codes and how to run them from ROS?

@ahundt
Copy link
Owner

ahundt commented Dec 3, 2018

"FRI Joint Overlay Complete!" is printed when everything is initialized, that means it is working and waiting for a CPP connection to be initialized. That's great news! I know the wording is unclear I just never got around to fixing it, sorry about that.

Once you compile the CPP code by following the GRL instructions the ROS cpp code is in https://github.com/ahundt/grl/tree/master/src/ros there is also an example shell script that I believe will move the robot to the straight up position or a fixed tilted position.

If you run it be sure to consider safety, leave lots of space and be at a safe distance, it may be sudden and fast.

@ahundt
Copy link
Owner

ahundt commented Dec 3, 2018

You may also have to enable the ros component so it compiles, this is done via ccmake in your cmake directory, where you change the compile options, or via the -DWITH_ROS=ON flag.

This script does the install with ROS on ubuntu 14.04 and ubuntu 16.04:
https://github.com/ahundt/robotics_setup/blob/master/grl_kuka.sh#L57

@kamilcetin
Copy link
Author

Hi Andrew,

I installed all dependent libraries and made grl install as you mentioned in the script before. As you see the screen picture of the SmartPad of KUKA (which is in my another issue at #176), before "FRI Joint Overlay Complete!", it says "UDP Connecting to: tcp://172.31.1.100:3010" which is actually belongs to Laptop_Java/Ros_Master. However, my real-time ubuntu port is 192.170.10.100 as Laptop_KONI_FRI written in Process Data.

I would like to ask that do we need to have two separate ethernet ports at our laptop which are connected to both ports (Kuka_Java and Kuka_fri) of the Kuka PC?

Thanks,
Kamil

@kamilcetin
Copy link
Author

It works now!
When I connect both ethernet ports of the Kuka to my computer with two separate ethernet ports, I could run the grl.driver and move the robot through FRI.

@ahundt
Copy link
Owner

ahundt commented Dec 13, 2018

cool! I'm super happy to hear that! 👍 @cpaxton

@ahundt
Copy link
Owner

ahundt commented Dec 13, 2018

@efipsom it looks like @kamilcetin was able to get things running, were you still having trouble?

@kamilcetin
Copy link
Author

About the GRL installation, I have no trouble.

Now, I am dealing with the inverse kinematics solutions of Kuka lbr iiwa. Do you know which src codes in grl repository I can use or where I have to look at?

@ahundt
Copy link
Owner

ahundt commented Dec 14, 2018

IK can be a bit painful to set up because it depends on each particular robot's attachments etc.

I use tasks for IK & control https://github.com/jrl-umi3218/Tasks.

I created a model of my robot in V-REP, and created a plugin in InverseKinematicsVrepPlugin.hpp which loads the specific joints in my model. In this plugin the geometry is copied from V-REP into Tasks, and then I use the tasks solver to do the planning.

@kamilcetin
Copy link
Author

In order to make easy for me, first, I think I should start to use its Jacobian matrix from the forward kinematic equations. How can I create the kinematic model of Kuka lbr iiwa 14 in V-REP?

@ahundt
Copy link
Owner

ahundt commented Dec 17, 2018 via email

@kamilcetin
Copy link
Author

Which one is the example what you mentioned; v_repExtPluginSkeleton.cpp or KukaLBRiiwaVrepPluginTest.cpp ?

@ahundt
Copy link
Owner

ahundt commented Dec 19, 2018

the .ttt files in https://github.com/ahundt/grl/tree/master/data can be opened with http://coppeliarobotics.com/index.html. There might be a newer version in https://github.com/ahundt/robone/tree/master/data, or I might have to update it.

Usually I have one model that tracks where the arm is now, and another model which tracks where the arm will go. I put them both at the same base position in the same simulation. FYI these kinematics features are ones we've run on multiple robots but I'm not sure anyone outside our lab has integrated them via GRL yet. All of the components are tested on multiple robots but configuration may have a steep learning curve.

@ahundt
Copy link
Owner

ahundt commented Dec 27, 2019

Closing this issue because it has not been updated in a while. Feel free to reopen

@ahundt ahundt closed this as completed Dec 27, 2019
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

2 participants