hal-core

More
4 years 10 months ago #228512 by AlessandroT
Replied by AlessandroT on topic hal-core
Thanks Grotius for the reply.

Yes I started with linuxcnc and 3D printing long time ago and I'm very thankful for the existence of this community that is really crazy and amazing!:)
Our company name is "rev3rd".. If you google it you can find us. I think your motivation is completely in line with our philosophy.
If we could have a videocall i will explain you more and maybe if we could make progress, share the progress for everybody here.
The pourpose is the hybrid manufacturing:
Printing and milling! :)

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

More
4 years 10 months ago #228514 by Grotius
Replied by Grotius on topic hal-core
Hi,

I have contacted your website and sent info to it. You may call me by wattsapp in about 30 minutes.



 

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

More
4 years 10 months ago - 4 years 10 months ago #228517 by AlessandroT
Replied by AlessandroT on topic hal-core
thanks, but the email is not received...
 
Last edit: 4 years 10 months ago by AlessandroT.

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

More
4 years 10 months ago #229163 by Grotius
Replied by Grotius on topic hal-core
Hi,

A tiny hal-core update.

Working on the trajectory planner for day's now.

I had problem's with the ruckig s-curve motion planner when using end-velocity's. That's solved now.
In general coding the trajectory planner with a s-curve is a difficult job. Things like adative-feed, velocity-overide, controlled stop, velocity transition etc have to be coded. Then on top we have a path optimizer to calculate the perfect velocity's from the gcode file, this replaces a look ahead function.

Hopely i can show a new video within a few day's to show the progress.
Bye bye !
 

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

More
4 years 10 months ago #229167 by Dave3891
Replied by Dave3891 on topic hal-core
Hi Grotius,

Looks like you are making great progress on this project, I am really impressed with how fast your are going.

I am looking at the code (V1.20) and I had some questions about how everything is interacting with each other.

Is it correct that the flow from motor to control would go like this:
Stepper Motor -> HalStepgen -> HalKinematic -> HalTrajectory -> GUI

If I wanted to make a really simple GUI to jog a 6 axis robot in a XYZ plane with no 3D visual feedback and only DRO, would I just send commands to the HalTrajectory component?

Also I am not really familiar with the euler parameters, but I see you are using it a lot with axis and jogging. Would you be able to explain what that is?

Sorry for all the questions, I just want to get a full grasp of the system before I start trying it out.
 

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

More
4 years 10 months ago #229182 by Grotius
Replied by Grotius on topic hal-core
Hi,

To jog a robot without a gui and just using the kinematics, you could look at this project.
It will work by using halcmd to jog. Using a graphical interface would be easyer for debugging.
The workflow you suggested is correct. Looking at the ./runtest file's will give you the tested workflow.

The euler angles is the 3d rotation of the toolposition or last joint position of the machine or robot kinematic chain.
It is the same as jaw,pitch,roll but then defined as euler xyz.
Euler xyz is for me easyer to use then jaw,pitch,roll because in the graphics you can directly see by the colored axis origin on wich axis the
tool will rotate. Then related to lcnc, there are no euler xyz gode names. For the euler xyz we use the gcode a,b,c letters.

So a 3d gcode in hal-core will look like : G1 X0 Y0 Z0 A0 B0 C0 U100 F1400 S100 M300 P45 M301 P11
  • g1 (lineair movment)
  • xyz (toolcenterrpoint tcp).
  • abc (euler xyz toolposittion in degrees).
  • u (can be a gripper or exernal axis position).
  • f (feedrate).
  • s (spindlespeed).
  • m (macro).
  • p (marco value of type double, for example set output 300 to value 45).
The hal trajectory component can read gcode and perform a motion. It is connected to the hal-kinematic component. It's a basic example
how to perform motion. .

If you look at my current work, /opt/hal-core/src/hal/components/matrix, this is a all in one component. Currently in development stage.
It has benefits like using dynamic memory in c. Correct memory release for opencascade when closing drawings.
Fail safe double[4][4] rotation-translation matrixes connection between kinematics and graphics for each joint.
It has improved algo's, but still working on it every day. The graphics are just amazing. I hope the result of the trajectory planner will be
amazing to.

If you have any questions or problems, just ask.













 

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

Time to create page: 0.213 seconds
Powered by Kunena Forum