algorithmic modeling for Rhino


Industrial robotic automation has become commonplace in manufacturing and has been integrated into a wide range of processes from meat-packing to Tesla’s vaunted robotic assembly line for its Model S electric car. While architectural manufacturing has more recently implemented this technology, the conventional means for programming robotic motion have proven ill-suited to the architectural design process for two primary reasons:

  1. They are better suited for mass production than mass customization

  2. They are not directly linked to the CAD model, meaning variation and iteration must be performed manually through an export/import process

Historically it’s been critical for designers to maintain open lines of communication with construction personnel and fabricators to successfully realize their collective vision. This course will seek to improve these lines of communications while rectifying the architecture-specific issues outlined above through a data-driven parametric design workflow which integrates upstream analysis, geometric modeling, and downstream robotic toolpathing into a single live definition, allowing for a direct relationship between initial data inputs and robotic motion.

A mass-customized architectural assembly will be proposed, simulated, and prototyped using HAL-generated ABB RAPID code to drive the ABB IRB 140 industrial robotic arm’s IRC5 controller. This assembly will be a series of vaulted shell structures constructed from thin plastics such as high impact polystyrene (HIPS) sheets. In order for such a thin material to span the structure, stiffness (or an improved resistance to deflection under load) must be considered at both the local level of the panel’s shape and the global level of the shell’s form and panel-to-panel connections. Stiffness will be added to the HIPS panels by testing heat-based deformation of the plastic, such as creasing and stretching to create depth along the spanning axis and induce double-curvature.

Each robotic technique may require its own end-of-arm tooling as well as custom molds and jigs, which is very costly. Clustering methods and genetic optimization algorithms will be implemented in the panel rationalization process to control variation.


Views: 2201

Replies to This Discussion

I have a license problem for "HAL 0.5.3". When I pasted the 1-month trial license file into the "Grasshopper-->File-->Special Folders-->Components/HAL"  file directory, I lost almost all of my robotics tool set (Only 22tool left). Please see error report and screenshots below.

I am using Rhino SR9 5.9.4 and Grasshopper 0.9.0076

With License File:

Without License File:

File Directory:


Hi Ugur,

Are you using an Apple computer?

Also, what is your antivirus software?

I'll email you with more details to troubleshoot this, but there are known issues with the above items.



Yeap I'm using a late 2012 macbook pro retina display and using Avast Antivirus. 

Hi Ugur,

Please send me a new license request with another MAC address, it will solve the problem. This is a small bug happening on some computers, I will solve it in the next version.

I had the same issue, then I merged Brian's definition and Thibault's example file in HAL and it worked with the robot. I tried to find the difference in the definition and only found 2.

Purple one's are Brian's definition, 

Difference 1: ("CompGeo?" is directly connected in Thibault's definition)

Difference 2: (NoFlip selected)

I don't think these differences effecting it, but these are the only ones that I could see in grasshopper definition.

My final work is not really perfect (see below). I'm not sure what is the problem. It might be something with the definition or I need to try a different pen, not sure. Any ideas?

Ugur could you post your RAPID code so we could have a 1:1 code comparison? Thank you

RAPID file attached


It's probably just a wrinkly paper pad, no? We will go over how to define a custom work object which will help you to reorient your program to an imperfect surface

I checked the file again and found the problem. It becomes a 3d drawing (it is a really tiny difference, less than 1mm) when I map the curves to the paper surface. Just projected it and solved the problem. Next drawing should be clear and perfect.

Ah yes this can happen when the reference and target surfaces have a very large size difference. Basically anytime you take something very large modeled to a specific tolerance and crush it down to a tiny size you're liable to get glitches. I wonder if you scaled down your original geometry if there would be less of a Z variation, or no Z variation at all. Regardless, it's likely a good safeguard to use the Project component in this workflow.

Hi everyone tonight we'll be covering ruled surface toolpathing in HAL - see you soon!






  • Add Photos
  • View All

© 2023   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service