ROS LinuxCNC Link

More
28 Mar 2021 11:05 #203883 by thefabricator03
Replied by thefabricator03 on topic ROS LinuxCNC Link
Thanks Grotius, I am sure that the more people work on this the better the end result will be.

I use Mesa cards but I am also working on Ethercat hardware. I have the hardware but have not tried to set anything up yet.

I did not know much about ROS, well I know a bit more now that I have spent the weekend taking this course, www.udemy.com/course/ros-for-beginners/ , the guy who teaches the course is one of the founders of the Niryo One collaborative robot company. niryo.com/about-us/

I have been studying for the last half of today the Machinekit ROS Hal connection, github.com/machinekoder/hal_ros_control
From what I can tell it is basically two components, one that controls the robots joints in real time and the other that controls I/O in non real time.

ROS is basically a framework with libraries that make creating a working robot very easy. I was very overwhelmed at first but after taking the course I am feeling much better with getting everything to work.

My main concern at the moment is the GUI and robot programming language. If you watch this video of the Tormach robot,
It shows what I want to replicate. I would like to use Python as a language for creating robot programs. In the video Daniel brings in a text to speech library into the program and shows how powerful having python as the program can be.

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

More
28 Mar 2021 11:53 - 28 Mar 2021 12:08 #203889 by Grotius
Replied by Grotius on topic ROS LinuxCNC Link
Hi,

I see they wanna buy the ar2 project in the future.
In basics the video shows what we are gonna do.

I am oke with a python interface. Would you like to use Qtvcp for this?

I think they use the opencascade python wrapper already. But better use the c++ lib and i will make the python wrapper.
Then we have a better screen responce, i know something to get a better visual output. and a 3d rotate box.

Is Tormach working open source?
If so we could do a software request.

If they are not open source in some parts. We could protect also certain part's of the software. Otherwise
they will just adapt it to their closed source, like window's has linux code inside the closed source, wich is published
after a windows source code leak.

What kind of ethercat stuff is on the shelf?

@ Rod. I will study your video when i watch tv with my girlfriend. :woohoo:
Last edit: 28 Mar 2021 12:08 by Grotius.
The following user(s) said Thank You: rodw

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

More
28 Mar 2021 12:06 #203890 by thefabricator03
Replied by thefabricator03 on topic ROS LinuxCNC Link
I have never used Qtvcp, is that what you wrote the Qt-Skynet-App in? That App looks nice and could be the base for the GUI.

I have asked Daniel about if they plan to release the software and he said not in the near future.

If we can get something working, I have a couple of industrial robots I can use to test out the software.

One thing I will need is the ability to control external axises, I have built a track that I plan to use to weld long trusses,
Attachments:

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

More
28 Mar 2021 12:10 #203891 by thefabricator03
Replied by thefabricator03 on topic ROS LinuxCNC Link
I have six Ethercat closed loop stepper drivers and some I/O modules,

Attachments:

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

More
28 Mar 2021 12:16 - 28 Mar 2021 12:18 #203892 by Grotius
Replied by Grotius on topic ROS LinuxCNC Link
Hi,

Nice test lab !

I have asked Daniel about if they plan to release the software and he said not in the near future.
Does he mean its not ready, or does he mean it's closed source?
This is quite important for open-source development. If they do not release the code, i think they have a problem with
the opencascade licence. At least they have to publish certain parts of their code. If they have some unique code with
intelectual property, they can keep that behind. The rest has to be published on request.

I have never used Qtvcp, is that what you wrote the Qt-Skynet-App in? That App looks nice and could be the base for the GUI.
No the skynet app is pure c++. I also never used Qtvcp. But i used glade-gkt2 before with linuxcnc for plasma.

One thing I will need is the ability to control external axises

This is no problem. Kdl can do a really good job with external axis. You will be surprised by the robot movements. In fact
i wass stunned when i tested the external axis.

For the ethercat leadshine's.
Maybe we can ask Chimeno to get the config file for this.
Last edit: 28 Mar 2021 12:18 by Grotius.

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

More
28 Mar 2021 12:22 #203893 by thefabricator03
Replied by thefabricator03 on topic ROS LinuxCNC Link
I think he meant its not ready for release as they are still testing the software. I asked him if they would release it for a nominal fee like they do with PathPilot.

I think from the video we can see everything they are doing and most of it should be do-able.

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

More
28 Mar 2021 12:24 #203894 by thefabricator03
Replied by thefabricator03 on topic ROS LinuxCNC Link
Yeah I was not too worried about setting up the Ethercat hardware as I have seen Chimeno's posts and he is always very helpful with Ethercat stuff.

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

More
28 Mar 2021 12:54 #203896 by Grotius
Replied by Grotius on topic ROS LinuxCNC Link
I think from the video we can see everything they are doing and most of it should be do-able.
There is no abracadabra.

Maybe something to think about :
I would like to start with a sps channel (safety channel) that start's when pc boots. Just like the ethercat starts at boot
and the mac adress is configured at boot time.

It run's separate from everything and has a few shared memory places to do communication.
It loops every second and checks if the emergency system is ok. This is a kuka standard. I think i adapt the emergency state
into the linux distro in the menu item, next to system date and time. This is also very interesting solution for a linuxcnc gantry production machine.

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

More
28 Mar 2021 19:42 - 28 Mar 2021 19:43 #203932 by rodw
Replied by rodw on topic ROS LinuxCNC Link

I would like to start with a sps channel (safety channel) that start's when pc boots. Just like the ethercat starts at boot
and the mac adress is configured at boot time.

It run's separate from everything and has a few shared memory places to do communication.
It loops every second and checks if the emergency system is ok. This is a kuka standard. I think i adapt the emergency state
into the linux distro in the menu item, next to system date and time. This is also very interesting solution for a linuxcnc gantry production machine.


There are two simple ways to achieve this in linuxcnc.
You can create a seperate thread in hal that fires every one second. Lets call it the safety-thread
The second way is simply to use a component on the standard 1 khz servo thread and fire on every 1000th iteration
static int ctr=0;
ctr += 1;
if(!(ctr % 1000)){
// Do something every 1 second
}

I guess the seperate thread is cleaner and has a huge amount of time to get stuff done if that is a requirement.
Last edit: 28 Mar 2021 19:43 by rodw.

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

More
28 Mar 2021 22:32 - 28 Mar 2021 23:03 #203957 by Grotius
Replied by Grotius on topic ROS LinuxCNC Link
Hi Rod,

Just pointing to the fact that the linuxcnc emergency button is not enough. In software design state,
it's maybe just important that software works. It's a quite early state to talk about this.

A file called sps.sub is a file wich run's separate from the program. It locks the safety magnet on door etc.
This is done outside the robot program. If linuxcnc would freeze or something would happen.
This would be not involved. The safety door would unlock when emergency is triggered.

This is how Kuka robotics work.

example sps.sub
Warning: Spoiler!


One of my welding projects, i think 15 years ago, last year i heard it was still running :


Attached 2 robot programs parts of a robot backup.
Maybe we can use them for setting up the code standard.
One is the big handling robot, the other is the welding robot.
Attachments:
Last edit: 28 Mar 2021 23:03 by Grotius.
The following user(s) said Thank You: rodw, thefabricator03

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

Time to create page: 0.335 seconds
Powered by Kunena Forum