Workshop on Robots and Stop Motion Animation | San José State University Department of Design | February 2023
In this workshop, we'll be designing and programming robotic motion-controlled camera paths for stop motion animation.
We'll be using Rhino 3D and Grasshopper to design the camera motion and focal points, and the Robots for Grasshopper plug-in to program the UR5e robot arm holding the camera.
- Download a trial version of Rhino 7.
- Install the Robots for Grasshopper plug-in by following these instructions:
- Install in Rhino 7 using the
_PackageManager
command, search forRobots
. - Restart Rhino and open Grasshopper. There should be a new tab in Grasshopper named Robots.
- Install a robot library by clicking on the
Libraries
button of aLoad robot system
component.- The robots from the library should appear in a value list connected to a
Load robot system
component.
- The robots from the library should appear in a value list connected to a
- For more detailed information on the Robots plug-in, I recommend this great YouTube playlist from @robin-gdwl.
Begin by powering on and starting the robott.
-
Once the robot is fully powered on, connect an ethernet cable from your computer to the ethernet port in the robot's control box.
-
Set up a LAN with a static IP address on the same network as the UR robot.
- Here is how to find the robot's IP address.
-
Do a
ping
test to check your connectivity.
Windows Users
: if the ping test fails, your firewall is likely blocking incoming and/or outgoing connections. See troubleshouting tips here.
-
Once you get a response from the
ping
, you are ready to send a program to the robot. -
When you are ready to receive a program from Grasshopper, put the robot into
Remote
mode.
Our Grasshopper scripts allow you to send and run your program directly to the robot at the press of a button. This faster workflow is very useful for quickly iterating and fine-tuning a program.
- Start Rhino 7 and then run the
Grasshopper
command to start Grasshopper. - Open the
.3dm
and.gh
pairs of files from this repo. For example: openfollow_target.3dm
in Rhino andfollow_target.gh
in Grasshopper. - Navigate to the
GREEN
panel and verify that IP address input is the same as the robot's IP address. - When you're ready, press the
Send Button
to send the camera path to the robot.
CAUTION
: stand clear of the robot before moving and be close to the emergency stop — especially on the first run.
- When successfully sent, you should see a pop-up window on the teach pendant asking if you are ready to go to the first position.
WARNING
: the robot can take unpredictable route to the first position.
- Press
Continue
to move the the first position. - A pop-up window appears after every motion so you can decide when the robot should advance to the next position.
Our Grasshopper scripts also generate a static .urp
file that you can manually load and run on the Universal Robots robot. This workflow is useful for reliably running and re-running a program, once it has already been fine-tuned.
Here are list of cutting-edge tools that may help in your production pipeline:
- Runway's Frame Interpolation
Steve Giralt, Visual Engineer, Master of Robotic Motion Control for Practical Effects
Motorized Precision, US-based cinmena robot integrator | KIRA robot
MRMC, UK-based cinmena robot integrator | Bolt Mini robot for moving models
Cinema Robots on Set
- Designing Cable-Driven Actuation Networks for Kinematic Chains and Trees
- Bend-It: Design and Fabrication of Kinetic Wire Characters
- Motion Retargeting for Robotic Characters
- Programming Robots in Grasshopper | Robots Plugin for Universal Robots video tutorials by @robin-gdwl.
- How To Transfer a Program via FTP with Filezilla
- How To Run a Program or Script from the UR Controller
- How to enable Remote Control on UR e-Series
- How to program a Relative Move from the UR Controller