[Robot] Status of WB and Edge2Trac orientation

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
ascaron
Posts: 13
Joined: Sat Jun 01, 2019 3:59 pm

[Robot] Status of WB and Edge2Trac orientation

Postby ascaron » Mon Jul 22, 2019 11:52 pm

Hi,
my name is Maxim and I was using FC for a couple of months now.
My main field is programming in automation mainly robots and PLCs, but due to unexpected circumstances I had to start to also design our robot cells. I started with SolidWorks but... well, Richard Stallman got me. Unfortunately it's not easy finding free (as in freedom, not beer) software especially for robots and PLCs but at least for CAD design I found this great free alternative which I'm really thankful for.

Another proprietary app that I use right now is RoboDK for robot offline programming. It's a great tool with a similar philosophy (well as far as you can compare closed to open source) as FC for openness in terms of a scripting API. Compared to the Robot WB it's miles ahead but as mentioned earlier I am interested in a free solution first.

So I'd like to know what the status of the Robot WB is. It looks like there hasn't been major development for quite some time now. Is it planned to keep the WB around? Because I have some ideas I'd like to implement. My idea is making some improvements to some of the available tools first and to start using C++/Python again (it has been a while) and open source development in general. I have a mathematical background (it has also been a while) of kinematics specifically serial kinematics though the KDL library probably has all kinds of math implemented already.

To start with I'd like to implement automatic orientation of Edge2Trac objects by calculating the normal vector of edges in Z direction followed by calculating the normal vector by investigating the shapes/faces contigous to the edge. Is someone working on it already? Is it maybe already implemented and I did not find it?
User avatar
wandererfan
Posts: 3839
Joined: Tue Nov 06, 2012 5:42 pm

Re: [Robot] Status of WB and Edge2Trac orientation

Postby wandererfan » Tue Jul 23, 2019 11:11 am

ascaron wrote:
Mon Jul 22, 2019 11:52 pm
So I'd like to know what the status of the Robot WB is. It looks like there hasn't been major development for quite some time now. Is it planned to keep the WB around?
There was some talk about moving the Robot WB out of the core system and making it an add-on workbench, but I don't think anything became of it. AFAIK, there are no plans to remove Robot.

If you want to work on Robot, by all means go ahead. Post your plan in "Open Discussion" to get feedback from interested parties, then make your changes and submit PR(s).

If you get stuck somewhere in the development process, just post to this forum or "Python Scripting" and some one will help you.

wf
jmaustpc
Posts: 9638
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: [Robot] Status of WB and Edge2Trac orientation

Postby jmaustpc » Tue Jul 23, 2019 2:02 pm

the most likely reason for Robot WB to be removed is if it bit-rots into dysfunction and if no one works on it. It would be great if you want to work on it.

Robot WB was created before Path WB existed, I wonder how much of Path could be relevant to a robot? Surely there would be some use in using a Path in programming a robot? I don't know much about the subject. Are, or can, some or all robots be controlled with g-code or similar?
User avatar
Kunda1
Posts: 7304
Joined: Thu Jan 05, 2017 9:03 pm

Re: [Robot] Status of WB and Edge2Trac orientation

Postby Kunda1 » Tue Jul 23, 2019 3:16 pm

Interesting related links:
https://forum.freecadweb.org/viewtopic.php?f=10&t=22081 - Robot Workbench development
https://forum.freecadweb.org/viewtopic.php?f=10&t=15442 - URDF Workbench, robotics
https://forum.freecadweb.org/viewtopic.php?f=24&t=26404 - Annotations for robotics workbench (ARBench)
fosselius wrote:ping
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
ascaron
Posts: 13
Joined: Sat Jun 01, 2019 3:59 pm

Re: [Robot] Status of WB and Edge2Trac orientation

Postby ascaron » Tue Jul 23, 2019 3:31 pm

wandererfan wrote:
Tue Jul 23, 2019 11:11 am
Post your plan in "Open Discussion" to get feedback from interested parties, then make your changes and submit PR(s).
Alright, I will do that.
jmaustpc wrote:
Tue Jul 23, 2019 2:02 pm
Surely there would be some use in using a Path in programming a robot?
Absolutely. Robots have a wider application range than CNC machines, but machining is one of them. It would be awesome to combine both WBs to simulate the milling (and someday maybe 3D printing) process with a robot. Unfortunately robots come with a cost for their flexibilities. There are some constraints like singularities that must be avoided while milling but it would be the job of the Robot WB to bypass those and find the best configuration. Thats one of the reasons that robots have their own languages but it should be possible already to translate the path output to robots by using a respective post processor.
User avatar
fosselius
Posts: 348
Joined: Sat Apr 23, 2016 10:03 am

Re: [Robot] Status of WB and Edge2Trac orientation

Postby fosselius » Tue Jul 23, 2019 9:56 pm

As for the URDF workbench, currently its rather a SDF workbench, and I currently use pybullet rather than gazebo. but development progress is slow and sporadic. but hopefully will speed up a bit now that i am actually working on a robot project.
User avatar
sliptonic
Posts: 1743
Joined: Tue Oct 25, 2011 10:46 pm

Re: [Robot] Status of WB and Edge2Trac orientation

Postby sliptonic » Tue Jan 28, 2020 11:27 pm

ascaron wrote:
Tue Jul 23, 2019 3:31 pm
wandererfan wrote:
Tue Jul 23, 2019 11:11 am
Post your plan in "Open Discussion" to get feedback from interested parties, then make your changes and submit PR(s).
Alright, I will do that.
Ascaron, Have you poked around on the robot WB lately? It's something that I'd like to see get more love. Let's chat about what's possible.
ascaron
Posts: 13
Joined: Sat Jun 01, 2019 3:59 pm

Re: [Robot] Status of WB and Edge2Trac orientation

Postby ascaron » Wed Jan 29, 2020 9:39 am

sliptonic wrote:
Tue Jan 28, 2020 11:27 pm
Ascaron, Have you poked around on the robot WB lately? It's something that I'd like to see get more love. Let's chat about what's possible.
Hi sliptonic,
I barely did. After reading some C++ and Python books and some digging into the code work got crazy. I will start a new job in March and hope to find some time then.

Nevertheless I still burn to start working on it. I would like to use it at work. My main areas of interest there are path creations along edges of parts for machining as well as reachability checks, so my focus would be creating a new and simple way to import new robots, easily attaching tools and TCPs and a simple creation of base frames.

I haven't looked into Zolkos Assembly4 WB code yet, but the use of LCS would be perfect for that. Thats also what other robot simulation programs do that I know of. So maybe it would be best to create a new Robot WB around Assembly4 but I didn't put much thought into this.

What are your ideas?
User avatar
sliptonic
Posts: 1743
Joined: Tue Oct 25, 2011 10:46 pm

Re: [Robot] Status of WB and Edge2Trac orientation

Postby sliptonic » Wed Jan 29, 2020 8:22 pm

Path workbench has you covered for tool path generation. It can work on edges, faces, and whole solids. Not perfect but improving. Those boil down to gcode and not true robot trajectories.

My dream is that robot could be part of more sophisticated simulation capability and the basis for working with machining centers with perhaps a robot for loading pallets into a cnc mill.

The first thing I'd like to see is a regular Cartesian robot like a 3axis cnc in robot workbench. It would be cool if a user could model their own cnc mill/router and then convert gcode to a trajectory and move the machine.

A future goal might be to link the virtual and real machines for control and feedback.

Mlampert has already done some work to build a workbench to directly control a machinekit cnc from freecad. It's pretty cool.
marmni
Posts: 44
Joined: Sat Nov 30, 2013 3:53 pm

Re: [Robot] Status of WB and Edge2Trac orientation

Postby marmni » Wed Jan 29, 2020 10:47 pm

Hi,
I'm a robot programmer (I know Robcad and Process Simulate) and in my opinion it is possible to implement some solutions from them in current robot WB.

https://www.youtube.com/watch?v=yYItVIBwwd8

However, I think that Robot WB should based on assembly/kinematics workbenches (this is how it works in commercial solutions + controllers) - not special wb for creating robots but standard WB. Without them (as a "final products") not everything will be possible.
Current state of workbench is ok, but be realistic it is not possible to make something reasonable in robot WB (I'm still talking about amateur use).

"So maybe it would be best to create a new Robot WB around Assembly4 but I didn't put much thought into this"
This is some solution.