hal-core

More
27 Oct 2021 19:14 #224533 by Dave3891
Replied by Dave3891 on topic hal-core
Hi Grotius,

Here is a 3d model of the robot arm with the welding head, the robot model isn't exact but the joints are in the correct location.
Please let me know if this will work for the simulation

 

File Attachment:

File Name: RobotWelder.zip
File Size:161 KB
Attachments:

Please Log in or Create an account to join the conversation.

More
27 Oct 2021 22:59 #224536 by Dave3891
Replied by Dave3891 on topic hal-core
Hi,
I was able to compile and run this project that you posted:
github.com/grotius-cnc/Skynet_Robot_Cont.../releases/tag/1.0.21

Just had to modify the paths a bit and take out the ethercat parts from the hal file.

Tomorrow I will try loading my model files and robot settings and see what happens.
Looking good so far

Please Log in or Create an account to join the conversation.

More
28 Oct 2021 09:05 #224555 by Grotius
Replied by Grotius on topic hal-core
Hi,

Nice drawing !
 

For other users. To load and preview step files like this, you can use the program Mayo.
It can be found over here : github.com/grotius-cnc/mayo/releases/tag/v1.0.0

This is indeed a nice starting point for testing, good found!
github.com/grotius-cnc/skynet_robot_cont.../releases/tag/1.0.21
It does the stepper output quite nice from what i remember, but not optimal.
But nevertheless a good example to get familar with code techniques.

If you look at hal-core the code technique is different.
It uses a hal-component (kernel module) that make's usage of c++
helper libs like kdl, opencascade etc.

Because the kernel module is master of the app, the program is performed from kernel land wich is much faster then when performing your app from a userland app.












 
Attachments:

Please Log in or Create an account to join the conversation.

More
28 Oct 2021 09:11 #224556 by Grotius
Replied by Grotius on topic hal-core
Hal-core update.

Hal-core has now a installer wich can install the following updated packages for you :

- opencascade with image support.
- kdl kinematics
- qt
- hal-core

Today i will look to create a stepgen component with the ruckig s-curve integrated instead of the lineair acc/dcc curve.
After that i can finish the motion planner.
So far so good, and have fun !


 
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

More
28 Oct 2021 10:04 - 28 Oct 2021 10:06 #224558 by Grotius
Replied by Grotius on topic hal-core
Hi Dave,

I added your Mesa hardware drivers into the source of hal-core. They compile nice to a .so.
- hostmot2
- hm2_eth

Hi Tommy,

I was curious, if i want to travel to Kosovo from Europe by car, Are there many covid restrictions in your country at the moment?

 
Last edit: 28 Oct 2021 10:06 by Grotius.

Please Log in or Create an account to join the conversation.

More
28 Oct 2021 11:00 #224560 by tommylight
Replied by tommylight on topic hal-core

Hi Tommy,

I was curious, if i want to travel to Kosovo from Europe by car, Are there many covid restrictions in your country at the moment?


 

Yeah the restaurants close at 11PM, that is the only restriction i am aware off.
The following user(s) said Thank You: Grotius

Please Log in or Create an account to join the conversation.

More
29 Oct 2021 17:23 #224664 by Dave3891
Replied by Dave3891 on topic hal-core
Hi Grotius,

I was able to get the origin points on my model and the kinematics values sorted out for my robot. I also changed the waypoints in the program to make a basic square, but I noticed an issue.
It looks like one of the joints isn't rotating to keep the face parallel with the coordinates.
Here are some images of the problem.
Also is using the kinematics in the qt project the current best way to go? Or should I be using the hal kinematics module? What about sending positions? Keep using the MotionVec.push_back? Or is there another way?

Thanks for all your help with the project.

 
 
 
 


 
Attachments:

Please Log in or Create an account to join the conversation.

More
29 Oct 2021 21:29 #224679 by Grotius
Replied by Grotius on topic hal-core
Hi Dave,

It looks like one of the kinematic values isn't correct. Tiny problem.
Check this kdl values with the robot document and compare it to your fanuc arcmate datasheet.

Also is using the kinematics in the qt project the current best way to go?
To learn how it works, it's a good starting point. The example is compact and transparant to see how things are done.

Hal_kinematics is integrated to Hal_opencascade. Hal_opencascade
would be your next starting point. You can off cource try Hal_opencascade any time you want.
But understanding the code is more difficult then your current example.

Keep using the MotionVec.push_back? Or is there another way?
The motionvec is just a databucket used by the example. In real life the robot will follow a motion planner or something like
that.
The example of Hal_opencascade used Lcnc as the motion planner.
I see from the ./runtest it is based on the /opt/linuxcnc install.
 
To install this version, get it here. The dependencies for lcnc are written down here : dependencies

Your second picture has the correct robot start position. Try go get the Forward Kinematic "FK" xyz start position coordinates.
This is one of the first initialized parameters by KDL and you can check them with your drawing.

It looks like one of the joints isn't rotating to keep the face parallel with the coordinates.
In "IK" mode, inverse kinematic mode, the face should be kept parallel indeed. In "FK" mode, that's not the case.

Oke, try to get the robot working. And if you spent more then 4 hours, pass me the robot datasheet if you have one.




 

Please Log in or Create an account to join the conversation.

More
29 Oct 2021 21:38 - 29 Oct 2021 21:47 #224680 by Grotius
Replied by Grotius on topic hal-core
Edit.

The Hal_opencascade project is entirely compiled with lcnc halcompile procedure and is documented that way.
So on first sight, this looks very difficult to get going. I did not have integrated Hal_opencascade into Hal-core yet.

Project compiling in Hal-core is way much easyer then with Lcnc halcompile. Sorry for that.

One thing about Hal_opencascade. The opencascade c++ code has a class called : draw_primitives. Here you can find
the Quaternion function. This is a function that can rotate your heat exchanger drawing in 3d, if you need to.
Don't use the rotate and translate function's for that. Quaternion's are working great for that purpose.




 
Last edit: 29 Oct 2021 21:47 by Grotius.

Please Log in or Create an account to join the conversation.

More
01 Nov 2021 20:58 #224915 by Grotius
Replied by Grotius on topic hal-core
Hi, for info:

I did some work on hal-core.

- There is are now 2 robot example's included. link
- Added a 16 axis s-curve Ruckig Dofs component including a build in stepgeneration. link
- Added to the installer : cam, qt, opencascade, kdl, halview. link

If you use the installer, it should work. The install takes about 5 minutes.

To finish : hal_trajectory.
I have a question about this, and will ask it in a general forum topic.

Please Log in or Create an account to join the conversation.

Time to create page: 0.322 seconds
Powered by Kunena Forum