Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| ur10_robot_arm:ur10_robot_arm [2020/08/05 02:27] – [Hole drilling attachment] formlab | ur10_robot_arm:ur10_robot_arm [2025/09/08 03:00] (current) – [Connect to the robot] formlab | ||
|---|---|---|---|
| Line 4: | Line 4: | ||
| Collaborative robot-arm | Collaborative robot-arm | ||
| + | References: | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | ===== Software ===== | ||
| + | * [[ur10_robot_arm: | ||
| + | * [[ur10_robot_arm: | ||
| + | * [[ur10_robot_arm: | ||
| + | * Other possible control software | ||
| + | * Python | ||
| + | * [[https:// | ||
| + | ==== Polyscope (the teaching pendant) ==== | ||
| - | Applications | + | === Define TCP === |
| + | * Click ‘new’ (you cant rename TCP’s) | ||
| + | * Define the position | ||
| + | * Enter the offset by measuring, or use the wizard. The wizard lets you orient the physical TCP around a point in 4 different positions. | ||
| + | * Define the orientation (optional) | ||
| + | * Enter a custom orientation in case the TCP is not normal to the flange. | ||
| + | * Define a tool weight and center of gravity. | ||
| + | * Click ‘set as default’ | ||
| + | * Save the installation setting (on the left bar) | ||
| - | ===== future tool heads ===== | + | Test the setup: |
| - | * 3D scanner | + | * rotate the robot around the TCP on the teaching pendant (move tab). The tool tip should stay still in space while the rest of the robot rotates around it. |
| - | * | + | |
| - | ===== Brush attachment | + | ==== RoboDK |
| + | - [[https:// | ||
| - | ===== 3D print attachment ===== | + | - Direct computer-robot ethernet connection doesn' |
| + | ==== Grasshopper | ||
| + | |||
| + | Grasshopper runs inside Rhino 7. In order to control the robot arm, a Grasshopper plugin is needed: Robots. | ||
| + | |||
| + | |||
| + | === Connect to the robot === | ||
| + | |||
| + | (08/ | ||
| + | Connect the Robot controller with an ethernet cable. This can be done in 3 ways: | ||
| + | * Robot controller direct to the Mac | ||
| + | * Robot controller to a network switch, which then connects to a Mac (not connected to the main network) | ||
| + | * Robot controller to a network switch, which is connected to the main network | ||
| + | |||
| + | On the teaching pendant go to Setup Robot > Network | ||
| + | * Select Static Address | ||
| + | * IP address: 192.168.185.99 | ||
| + | * Subnet Mask: 255.255.192.0 | ||
| + | * Default Gateway: 0.0.0.0 | ||
| + | * Preferred & Alternative DNS servers: | ||
| + | |||
| + | On the computer, go to System Settings > Network > Ethernet > TCP/IP | ||
| + | * Set ' | ||
| + | * IP Address: 192.168.185.88 | ||
| + | * Subnet Mask: 255.255.192.0 | ||
| + | |||
| + | In the terminal, try pinging to check the connection to the robot: | ||
| + | * '' | ||
| + | * If the ping returns data, you know the computer can reach the robot | ||
| + | |||
| + | Now you can control the robot with the Robots plugin in Grasshopper / Rhino and use the URRealtimeFeedback script to get the current pose & TCP position. | ||
| + | |||
| + | Current versions used: | ||
| + | * Rhino version: 7 (7.38.24338.17002, | ||
| + | * Grasshopper version 03/12/2024 build 1.0.0007 | ||
| + | * Robots (Visose) version: 1.4.1: [[https:// | ||
| + | * URRealtimeFeedback script for Grasshopper Robots: [[https:// | ||
| + | |||
| + | Using a forked version of the URRealtimeFeedback script by Odbee ([[https:// | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | === The Robots plugin === | ||
| + | == Installation == | ||
| + | |||
| + | * In Rhino, go to '' | ||
| + | * Search for ' | ||
| + | * Select version '' | ||
| + | * Everything below version '' | ||
| + | * Briefly tested versions: '' | ||
| + | |||
| + | == Robots.dll file == | ||
| + | |||
| + | If Rhino keeps asking to locate the Robots.dll file, here's a tip. Make all grasshopper projects (files with a '' | ||
| + | * On mac: cmd + i, under sharing & permissions, | ||
| + | * Location of the robots.dll file: | ||
| + | * '' | ||
| + | |||
| + | == Guides == | ||
| + | |||
| + | * [[https:// | ||
| + | * There are a few example files in (' | ||
| + | * I followed this [[https:// | ||
| + | * Robots guide by [[https:// | ||
| + | * Drawing with robots [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | I tried adapting the ' | ||
| + | |||
| + | |||
| + | == Tips == | ||
| + | * The first target should be a joint target. Following ones can be cartesian targets. | ||
| + | == Upload script to robot == | ||
| + | * Small programs can be streamed directly to the robot with the ' | ||
| + | * Send the program to the robot by clicking ' | ||
| + | * The arm starts moving without warning(!). | ||
| + | * With larger programs (1000+ targets(? | ||
| + | * Larger programs (2500+ targets) cannot be streamed. Use the 'Save Program' | ||
| + | * This file is created right away (it's streamed). | ||
| + | * Change the .URS extension to .script | ||
| + | * Open the script in a script editor, copy the function name at the top, and add to the bottom '' | ||
| + | * Upload to the robot via SFTP (place it somewhere in the map '/ | ||
| + | * Make a new program, add the script module, change it from line to file, and load the file from the programs folder. | ||
| + | * This doesn' | ||
| + | * 485 targets works | ||
| + | * 24673 targets already doesn' | ||
| + | |||
| + | |||
| + | === URRealtimeFeedback plugin for Robots === | ||
| + | This is a grasshopper file with some builtin scripts that allows to receive the current pose of the robot arm. | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | == Setup == | ||
| + | * Do not connect to the LAN network of KASK. Instead connect to the robot arm directly, or via a separate switch. | ||
| + | * Set the computer to a static IP address that is the same as the Robot' | ||
| + | |||
| + | |||
| + | * < | ||
| + | * or | ||
| + | * < | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | == Related ' | ||
| + | * Wirecutting with Grasshopper & Robots ([[https:// | ||
| + | ==== FTP connection ==== | ||
| + | * Use FIleZilla | ||
| + | * Host: '' | ||
| + | * Username: root | ||
| + | * Password: easybot | ||
| + | * Port: 22 (also works without entering anything here) | ||
| + | |||
| + | Location of program (URP) or script (URS) files: ''/ | ||
| + | |||
| + | |||
| + | ==== RoboDK ==== | ||
| + | - [[https:// | ||
| + | |||
| + | |||
| + | ===== Hardware | ||
| + | ==== Toolhead connector ==== | ||
| + | |||
| + | A suitable cable that mates to the toolhead connector is [[https:// | ||
| + | |||
| + | |||
| + | |||
| + | ===== Broom handle | ||
| + | {{: | ||
| + | {{: | ||
| + | ===== 3D printer (Clay) | ||
| In development | In development | ||
| - | ===== Pen plotter | + | {{: |
| + | ===== 3D printer (Plastic) ===== | ||
| + | In development | ||
| + | |||
| + | {{: | ||
| + | |||
| + | |||
| + | ===== Pen plotter ===== | ||
| + | {{: | ||
| + | |||
| + | Used by [[http:// | ||
| + | [[Drawing with the UR10]] (RoboDK).\\ | ||
| + | [[Drawing with the UR10 V2]] (Grasshopper) | ||
| ===== Webcam attachment ===== | ===== Webcam attachment ===== | ||
| + | {{: | ||
| + | {{: | ||
| ===== DSLR attachment ===== | ===== DSLR attachment ===== | ||
| ===== Hole drilling attachment ===== | ===== Hole drilling attachment ===== | ||
| + | {{: | ||
| {{: | {{: | ||
| This tool head turns the robot into an automated hole drilling machine. Good for elaborate hole patterns that would be tedious to do manually. | This tool head turns the robot into an automated hole drilling machine. Good for elaborate hole patterns that would be tedious to do manually. | ||
| Line 30: | Line 198: | ||
| The 3D printed part attaches to a [[https:// | The 3D printed part attaches to a [[https:// | ||
| - | Download the 3D files {{ : | + | Download the 3D files {{ : |
| + | Attach the clamps to the largest part with M4 screws and nuts.\\ | ||
| + | Attach the largest part to the tool changer with 4 M5x16 low profile bolts and 4 M4 nuts | ||
| + | === Applications === | ||
| - | Applications | ||
| * [[: | * [[: | ||