• About
  • Work
  • Blog
  • Contact
Menu

LIFT architects

448 Broadway
Cambridge, MA 02138
(646) 483-9731

​You're Custom Text Here

LIFT architects

  • About
  • Work
    • Air Flower
    • Smart Fan
    • Projection One
    • Robotic Motion Controller
    • Flux
    • Synthetic Landscapes
    • Surface Patterns
    • Pickle Pavilion
    • Prototyping Shield
  • Blog
  • Contact

GRASSHOPPER PRIMER SPANISH EDITION

November 18, 2009 Andrew Payne
GH Primer_spanish edition_web.jpg

After an arduous amount of work the digital publication of the Grasshopper Primer (Second edition) has been translated into Spanish.  The goal of this endeavoer was to bring this knowledge to all interested professionals and students from the Hispanic community.  Congrats to the team for this amazing effort!

Translator's team: Francisco Calvo - Katherine Cáceres, both Chilean architects specialists in Rhino, and also members of Digital Tectonics - www.tectonicasdigitales.com - a web platform based on research in advanced architecture and the impact of new digital technologies in areas such as parametric design and urban simulation models. 

Luego de una ardua tarea hemos finalizado la publicación digital del Manual de Grasshopper (Segunda edición) en su versión en español. Esperamos con esto, contribuir a la difusión acerca del manejo de este plugin para todos los profesionales y estudiantes de habla hispana interesados en el tema.

Grupo traductor: Francisco Calvo – Katherine Cáceres, ambos arquitectos Chilenos especialistas en Rhino, y miembros de Tectónicas Digitales – www.tectonicasdigitales.com - una plataforma web de investigación en base a la arquitectura avanzada y el impacto de las nuevas tecnologías digitales en temas como el diseño paramétrico y los modelos de simulación urbana.

Source Files:
The Grasshopper Primer_Spanish Edition.pdf (size: 13.3mb - right-click and select 'Save Link As' - adobe acrobat needed)

Primer Source Files (size: 193k - right-click and select 'Save Link As' - this is a collection of definitions and Rhino files needed to complete the examples in the primer.

In Writings Tags Grasshopper Primer, Spanish, Grasshopper, Tutorials
1 Comment

TEX-FAB WORKSHOP

October 6, 2009 Andrew Payne
TEXFAB logo web.jpg

ARLINGTON, TX | INTRO/INTERMEDIATE GRASSHOPPER WORKSHOP | FEBRUARY 6th, 2010

I would like to thank Andrew Vrana, Brad Bell, and Kevin Patrick McClellan for inviting me to teach two sessions at the first ever TEX-FAB event being held at the University of Texas at Arlington School of Architecture from February 4th-6th, 2010.  The weekend event promises to be an exciting one with key note speakers, workshops, and an exhibition planned to highlight the growing interest in digital fabrication and design. 

TEX-FAB is a new resource for designers, academics, fabricators, and students seeking out the innovative application of digital technology to the physical environment. Within Texas there is an emerging network of companies, institutions, and individuals focusing on the exploration of parametric design and the digital production of building components. Specifically, there is a growing opportunity for collaborative exchange between the academic, technical, and professional communities by leveraging the immense resources found in some of the largest metropolitan centers across the United States. TEX-FAB seeks to create a forum for the exchanges of these ideas and techniques through workshops, lectures, and exhibitions. 

In Workshops Tags TEXFAB, Grasshopper, Univ. of Texas, Fabrication
Comment

USING GRASSHOPPER TO CONTROL SERVOS

September 12, 2009 Andrew Payne

The above is a follow up video to the posting I made last week showing how we can use a Wii nunchuck to control parametric data in Grasshopper.  However, in this video, we are looking at reversing the flow of information and using parametric data (numeric sliders in Grasshopper) to control two different servos.  In this case, one slider controls the panning servo, while the other controls the tilting servo.

In this demo, we need to set up two different files.  The first is the Grasshopper definition (written for ver. 0.6.0019) which sends the numeric slider information over the serial port via a custom VB.NET component.  This component formats the two variables (the pan slider and the tilt slider) into a string that is separated by a comma.  This comma will serve as our delimeter when we read the data over the serial port on the Arduino side.  You can download the Grasshopper source file below.

On the Arduino side, we first have to understand that serial communication receives individual bytes of information as a stream.  This can become complicated because most data types are more than 1 byte... so you have to understand the data type and then convert it on the Arduino side to the format you are looking for.  In this example, we are reading a string into the buffer and then working through each individual byte until we reach our delimeter (don't forget about the comma).  Once we reach the comma, we pass the data that has been read into the buffer into a variable that ultimately controls one of the servos.  We do a similar process for the second set of bytes after the comma.  The Arduino source code can also be downloaded below.

Again, I'd like to thank Robert Lee for his explanations and insights on how to set up this demo.

Source Files:
Grasshopper_controlling_PanTilt_Servo.pde (Right-click to 'Save Link As') This is the Arduino source code needed to program the micro-controller.  This file was written for Arduino IDE ver. 0017.

Grasshopper to PanTilt Servo.3dm (Right-click to 'Save Link As') This is the Rhino file that accompanies the Grasshopper definition.

Update: Please use the new FireFly toolbar to facilitate the Grasshopper to Arduino connection.  Click here for more information.

Note: These documents are in the public domain and are furnished "as is". The author, Andrew Payne, makes no warranty, expressed or implied, as to the usefulness of the software and documentation for any purpose. This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License. http://creativecommons.org/licenses/by-sa/3.0/us 

In Demos Tags Grasshopper, Firefly, Pan Tilt Servos, Robotics, Arduino
1 Comment

USING A WII TO CONTROL GRASSHOPPER

September 9, 2009 Andrew Payne

The video above demonstrates how we can feed a stream of live sensor data (in this case, I chose to use the accelerometer data from a Wii nunchuck) into Grasshopper to control a parametric model.  I'll be the first to admit that this is not a 'new' demo... In fact, this demo was heavily inspired (in concept) by this video that was created in 2008 that shows how a Wii nunchuck can control a mechanical arm in 3D Studio Max . 

However, my own research was primarily concerned with understanding how to get the sensor data into Grasshopper (and how we can also reverse this flow of information to get Grasshopper to control servos, motors, LED's, etc...) in order to create more complex and sophisticated digitial and physical environments.

Before we get too far, I'd like to say thank you to Robert Lee for his insights on how to setup the VB.NET listener.

Now onto the more technical aspects.  Let's start with the hardware setup.  I am sending the accelerometer data from the Wii nunchuck to an Arduino Diecimila micro-controller which allows me to format the data into a block of code that the Grasshopper VB.NET listener will be able to understand.  I could have spliced up my Wii controller to connect the various parts of the circuit to the appropriate pins on the Arduino board, but I decided to buy a wonderful and cheap little adapter that simplifies the entire process.  You can buy your own from these online stores:

- FunGizmos.com. International shipping for $1 more.
- Tinker.it (UK)
- Little Bird Electronics (Australia)
- Sparkfun. Ships domestic & internationally. Be sure to order header pins too!
- Freduino.eu (EU)

Now, that we've properly connected the Wii nunchuck to our micro-controller, we'll need to program our Arduino board so that it can read the incoming sensor data and send it over the serial port.  For this, I have used a custom built library written by Tod E. Kurt that was designed to help the communication process between a Wii controller and the Arduino.  You can download the "nunchuck_funcs.h" library from his website at: http://todbot.com/blog/.  You can also get the source file needed to program your own board by clicking on the links below.

On the Grasshopper side of things, we need to create a custom VB.NET listener component that can read a string of data coming in over the serial port.  The nice thing about this listener is that it will display any string that is being sent from the Arduino... What you do with that string is another matter... but in this example, we are feeding a string of information that is separated by a comma ",".  The comma will be our delimeter which essentially tells us where to split the string so we can extract the integer value on the left side of the comma (which cooresponds to the X-value of the accelerometer) and the integer value on the right side of the comma (which will cooresponds to the Y-value of the accelerometer). 

Once we have successfully read the data from Grasshopper, we can connect a Timer Component to automatically refresh the solution at a given time interval.  In the video above, I was able to refresh the sensor data at 50 millisecond (the smallest time interval that is currently available in Grasshopper) without any lag or delay.  You can download both the Rhino file and the Grasshopper definition needed for this demo by clicking on the links below.

Source Files:
Wii Nunchuck to Grasshopper.pde (Right-click to 'Save Link As') This is the Arduino source file.  This file was written for Arduino IDE ver. 0017.

Wii Nunchuck to Grasshopper.3dm (Right-click to 'Save Link As') This is the Rhino file that accompanies the Grasshopper definition.

Update: Please use the new FireFly toolbar to facilitate the Grasshopper to Arduino connection.  Click here for more information.

Note: These documents are in the public domain and are furnished "as is". The author, Andrew Payne, makes no warranty, expressed or implied, as to the usefulness of the software and documentation for any purpose. This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License. http://creativecommons.org/licenses/by-sa/3.0/us 

In Demos Tags Grasshopper, Wii Nunchuck, Firefly, Arduino
1 Comment

G-CODE WRITER FOR 2D SHAPE MILLING

August 30, 2009 Andrew Payne

This video shows some on going research on how the Grasshopper plugin for Rhino can streamline the CNC milling fabrication process; specifically for 2D shape milling on a PADE spin-W 5 axis continuous CNC Work Center.  Special thanks to Matthew Spremulli (former University of Toronto Grashopper workshop attendee) and Greg Everett of the Airport Railings & Stairs Co. Ltd. located in Mississauga Ontario Canada for running the code on their 5-axis CNC mill. 

The original Grasshopper definition has been updated to write both the G-codes (which are the individual groups of numerically controlled functions called packets which tell the mill how and where to move) and the P-codes (which are the instructions that are read by the PADEeasy software to call up the packets in a specific order).  Both sets of codes are streamed automatically to .txt files and are automatically updated upon any changes in the definition or Rhino geometery.

More videos to come on surface milling and 5-axis milling techniques.

Team:
Parametric Modeling - Andrew Payne & Matthew Spremulli
CNC Milling - Greg Everett

Fabrication Tools:

Parametric Modeling Software - Grasshopper plugin for Rhino
CAM Manager - PADEeasy
CAM Controller - OSAI Controller
CNC Milling Machine - PADE spin-W 5 axis continuous CNC Work Center

Fabrication Shop:
Airport Railings & Stairs Co. Ltd. located in Mississauga Ontario Canada 

In Research Tags Fabrication, CNC Milling, Grasshopper, Rhino, G-code
Comment

G-CODE WRITER FOR SURFACE MILLING

July 29, 2009 Andrew Payne

In this video, we will walk through how to setup a Grasshopper definition that will write the G-code for surface milling on a 3-axis CNC milling machine.  When surface milling - the contouring engine is crucial.  For speed reasons, I found the C# contouring definition written by Giulio Piacentino works extremely well because it allows the user to specify a step distance (tool path offset).  After we have generated the contours (or tool paths) we can subdivide each curve, using the evaluate length component, to create a series of points which will guide the CNC mill head in order.   Because we now have data structures, we can weave formatted text strings that have been derived from the point data into a G-code that will work with the ShopBot CAM software.

As in the previous example, we have formatted our text strings to work with the opensource CAM software, Shopbot.  You can download a free version of the software here: http://www.shopbottools.com/controlsoftware.htm.

 You can also check out this video in HD after the jump.

Note: This video is for demonstration purposes only. Andrew Payne and LIFT architects will not be held responsible for any damages that might arise from using this method. Please consult your machine's operating manual before implementing this fabrication method. 

In Demos Tags Grasshopper, Fabrication, CNC Milling, Shop-Bot
Comment
← Newer Posts Older Posts →

Category Index

  • Tutorials (1)
  • News (3)
  • Demos (6)
  • Writings (6)
  • Research (10)
  • Workshops (10)
  • Projects (13)
Blog
MAKING INTERACTIVE PROTOTYPES
about 11 years ago

Contact Information
Phone: +1(646) 483-9731
Email:info@liftarchitects.com 

Studio
320 West Earle Street
Greenville, SC 29609


Copyright © 2007 - 2020 All rights reserved.