Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Johannes @ Robots in Architecture

#1
Hello Honza,

What might be useful there is that you can group command in KUKA|prc (but take care to use the KUKA|prc command and not the Grasshopper Group). Then you could use the normal "Weave" component to combine these into one program, alternating between full brick and half brick. For the optimization, the Analysis component outputs an approximate process time. It is not accurate, but you can use it for optimization, i.e. faster = better. With that you build your fitness function for optimization.
Note that you need access to the member version to access the Analysis component!

Best,
Johannes
#2
Support / Re: Setting Tool and Base via Code
August 20, 2024, 01:22:27 PM
I think the most straightforward approach would be to set the XYZABC values via your script and then use them as in the example!
You need to enable the Base option via right-clicking the core component, same goes for switching the Custom Tool - Plane component to accept XYZABC input.
Best,
Johannes
#3
Support / Re: Setting Tool and Base via Code
August 20, 2024, 01:07:06 PM
Hello,
Sure, it's just regular KRL, so you can use the Custom KRL command. Just note that it won't be simulated if it's only text in KRL.
Or are you referring by "via code" to something like Python within Grasshopper?
Best,
Johannes
#4
Hello,

The Multi-State Tool is mostly for visualization and some IO convenience. If the gripper has got its own library for operation, I would try to hack that into the Java file. So that rather then setting an output in an IOGroup, you toggle the gripper.

Best,
Johannes
#5
Support / Re: Handle large files with PRC
August 07, 2024, 04:03:45 PM
Hello,
When we got started in 2009 we used KUKA CamRob which could process CSV or BIN files, but that doesn't exist anymore. Something similar is possible with the OrangeApps PointLoader, which is pretty affordable, in my opinion, and works with KUKA|prc.
The "best" (but most expensive and by far hardest to integrate) solution would be KUKA.CNC which comes with its own pathplanner that is optimized for CNC applications. So while PointLoader is basically the same as running the KRL file (with problems when the path is spaced too tight) KUKA.CNC improves upon that.
We can also generate KUKA.CNC G-code from KUKA|prc.
Best,
Johannes
#6
Support / Re: MacOS KukaPRC Alternate Code Generation
August 01, 2024, 07:39:07 PM
Hello Jason,

As you wrote in the email, the HL component only shows up with your license installed. I'm pasting that here as well, in case it helps anyone!

"In GH, go into File/Special Folders/Component folder which should open a Finder window, go into KUKAprcGH and place the license file there as KUKAprcLicense.json (without the university name). Then restart Rhino and it should work!"

Best,
Johannes
#7
Support / Re: Connection with the stepper
July 29, 2024, 11:40:01 AM
Hello Michal,

There are many ways as you have already outlined them. In our work, we added a simulated external axis to the robot, set the extrusion value as E1 and then had a program running on the robot that would send the current E1 value to the stepper. However, you need to ensure that the stepper can follow that fast enough as you are sending absolute position values. You could also get the current speed of E1 and send that to the stepper, which avoids some problems, but at the expense of accuracy.

With an analogue output you can theoretically encode like 16m positions (assuming 24bit) but you will have to cope with signal problems etc. Coupling digital outputs into a signal might be easier.
You could consider getting an EtherCAT Arduino shield, that way you don't need many cables.

And yes, you would probably set the parameters via a Custom KRL component. You'll need to make sure that the values are set in the advance run so that the robot doesn't stop whenever your values change.

Hope that helps you get started!
Best,
Johannes
#8
Hello,

We had such solutions, I believe Tongji University had a gantry setup that we initially supported. We have users with two external axis (X, Y) which works fine, I think with Z it was a bit hacky.

Best,
Johannes
#9
Thank you! My email is johannes@robotsinarchitecture.org, let's continue the conversation there!
Best,
Johannes
#10
Hello,

As far as I remember - for some reason I don't often use analog outputs - you set the value in a normalized fashion as you observed and it scales it to the appropriate values by itself.
So with a 0-10V analog output 0 is 0V and 1 is 10V. I would definitely recommend to test it with a multimeter, though, just to be on the safe side.

Best,
Johannes
#11
Hello,

The netstandard.dll is no longer necessary in the more recent versions. Please download a more current release from the member section. As you don't seem to have access yet, I need to know which institution you are affiliated with, and then I will unlock your account!

Best,
Johannes
#12
Hello,

What do you mean by changing the library? I guess that it is looking for the folder location from my PC, so you will have to right-click the component and change the path to the KUKAprcGH library.

Best,
Johannes
#13
Hello Jesse,

From my perspective, I obviously love the software development aspects of robotics. However, developing a "universal" software as we're doing is tricky business-wise because the money lies in the applications. So my recommendation would be to develop tools that solve specific issues in specific industries and can therefore be sold for a lot of money.
Ideally, that would be for an industry that is relevant where you are living so that you can be there on-site, as for remote jobs, you are often compared with companies working out of low-wage countries.
Again, that is just the limited perspective from me and the people in my bubble.

Best,
Johannes
#14
Support / Re: Custom Variables
July 16, 2024, 01:41:31 PM
Excellent, thanks for the update!

Best,
Johannes
#15
Support / Re: Custom Variables
July 12, 2024, 10:03:58 AM
Hello,
What exactly would you like to achieve? The main purpose of a DAT file is a nicer separation of logic and variables (in my opinion, at least), so you could declare those variables also in the SRC file if that is needed. However, if the scope of the DAT file is global, you could access those variables also from your SRC program.
I am not sure how the Python script fits in here, does it generate the parameters for your printing process and saves them to a DAT file?
Best,
Johannes