val3 basics n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
VAL3 Basics PowerPoint Presentation
Download Presentation
VAL3 Basics

Loading in 2 Seconds...

play fullscreen
1 / 29

VAL3 Basics - PowerPoint PPT Presentation


  • 730 Views
  • Uploaded on

VAL3 Basics. Sebastian van Delden USC Upstate svandelden@uscupstate.edu. What it is?. VAL3 is Stäubli’s current language Available on the different versions of the CS8 controller. New teach pendant has also be designed that supports complete program development from the pendant…

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'VAL3 Basics' - denton-santos


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
val3 basics

VAL3 Basics

Sebastian van Delden

USC Upstate

svandelden@uscupstate.edu

what it is
What it is?
  • VAL3 is Stäubli’s current language
  • Available on the different versions of the CS8 controller.
  • New teach pendant has also be designed that supports complete program development from the pendant…
    • I.e. you can teach points and write the program all from the pendant – no need for a computer at all in many applications!!
teach pendant overview
Teach Pendant Overview

Mode Button

Arm Power on/off

E-Stop

Movement keys

Movement Mode (joint/frame/..)

Speed adjust

Function keys

Keyboard

Navigation keys

Application control (Run/Pause/..)

Enable button (like dead man)

Digital I/O buttons

Jog keys

pendant menus
Pendant Menus
  • Arrow keys for navigation
    • Up / Down to select items
    • Right to enter/ expand
    • Left to collapse
  • Application manager
    • Load, save, and edit applications
  • Task manager
    • Debugging
  • Control panel
    • System status, settings, IO
  • Calibration
    • Arm maintenance
  • Event Log
manual mode
Manual Mode
  • Turn on Arm Power
    • Arm power button
    • Toggle deadman / parking
  • Move / Hold status
    • Must press and hold to get move
  • Speed
    • Restricted to 250 mmps
  • Deadman
    • Active
  • In Manual mode the arm can be manually jogged around.
manual mode joint

3

4

5

6

2

1

1

3

2

4

Manual Mode: Joint
  • Move each joint seperately
  • Simple, easy to understand
  • Fast large movements of arm in cell
  • 6 Axis
    • Angle for each axis
  • 4 Axis
    • Angle for joints 1,2, and 4
    • Distance for joint 3
manual mode frame tool

Z+

X

Y

Y+

X+

Z

Manual Mode: Frame, Tool
  • Manual movement based on a reference frame (3D coordinate system)
  • Coordinated movement of all joints
  • Allows linear paths or rotations around a frame‘s axis
  • Good for Small precise movements
  • Offset with in frame
    • Translational
      • X, Y, Z
    • Rotational
      • RX, RY, RZ
manual mode point
Manual Mode: Point

2 – press and hold

  • Can be used to move to (or with respect to) a taught point.
  • Cursor to taught point and then hold down Move/Hold
  • Can also be used to approach points – based on the tool frame.

1

w.r.t tool frame

teaching locations

X

Tool flange

tool pointer

Z

X

X

100 mm

Z

Teaching Locations
  • Press New to create a new location variable
    • A point location
      • Y-Y-Z Yaw-Pitch-Roll information is stored
    • A joint location
      • Joint angles are stored
  • After you declare the new variable, to set it press Here
  • Select tool and frame
    • Don‘t forget to set a correct tool transformation which moves the tool frame to an appropriate spot on the tool
    • Note: Yaw-Pitch-Roll in VAL3 is Rotation around X-Y-Z
creating applications
Creating Applications
  • Applications/projects contain data and instructions used by the robot to perform its job.
  • A folder with xml files inside
    • A project file (PJX)
    • A Data file (DTX)
    • Many program/function files (PGX)
      • Several functions can be written for a project
  • Stored on a Drive
  • Loaded into memory to be run
example program function pgx file
Example program/function PGX file
  • <?xml version="1.0" encoding="utf-8" ?>
  • <programList xmlns="ProgramNameSpace" >
  • <program name="demo" public="false" >
  • <description />
  • <paramSection/>
  • <localSection/>
  • <source>
  • <code> begin
        • movej(above2,flange,mNomSpeed)
        • movel(p[0],flange,mNomSpeed)
        • movel(p[1],flange,mNomSpeed)
        • movej(above2,flange,mNomSpeed)
        • movel(p[0],flange,mNomSpeed)
        • movec(p[2],p[1],flange,mNomSpeed)
        • movej(above2,flange,mNomSpeed)
        • waitEndMove()
  • end
  • </code>
  • </source> </program> </programList>
programs functions
Programs/functions
  • The application can consist of numerous functions which can call each other
  • There are two special ones that are always created for you when you create a new application:
    • start()
      • Is the function that always gets called when you run the program.
    • stop()
      • Is the function that always gets called when the program finishes.
    • You can place any kind of VAL3 instructions/code in these functions.
taskcreate call
TaskCreate / Call
  • taskCreate
    • Spawns a seperate process
    • Several process can be spawned which run in parrellel to each other
    • CPU alternates between all tasks based on some Priority
    • Arguments: function title, priority and function name.
      • taskCreate “some title”, 100, fun()
  • call
    • Transfer program execution to a subroutine.
    • call fun()
  • Use taskCreate or call in the start() function to get things going
editing code
Editing Code
  • Use the menus to create new programs/functions and edit code. Example function
  • Ins. inserts a new line
  • VAL3 gives you a drop down menu with VAL3 code... Sweet!
  • Or, you can insert pre-defined variable names(Glo.), etc.
global variables
Global Variables
  • Simple
    • Num
    • Bool
    • String
  • Structures
    • Trsf
    • Joint
    • Point
      • Frame
      • Config
    • Tool
  • IO
    • Dio
    • Aio
    • Sio
  • Saving
arrays
Arrays
  • More then one value
    • Same name
    • Numerical index
      • [ ]
      • Starts with 0
  • Actually all VAL3 variables are arrays
    • Single value array of 1
      • No brackets defaults to index 0
flow control
Flow Control
  • taskCreate
  • call
  • while
  • do until
  • for
  • if
  • switch
  • wait
  • watch
  • delay
operators
Operators
  • Math
    • = assignment
    • + add, conacate
    • - subtract
    • * multiply
    • / divide
    • % modulus
    • ! not
  • Comparisons
    • == equal to
    • != not equal to
    • > greater then
    • >= greater then or equal to
    • < less then
    • <= less then or equal to
instructions
Instructions
  • Some examples
    • Abs
    • Min
    • Max
    • Limit
    • Power
    • Left
    • Right
    • Mid
    • Chr
    • Asc
    • Size
motion

pA

pA

pA

ROBOT MOVEMENT

pB

pC

movej, movel, movej,...

pB

pB

pC

pC

pD

pD

pE

pD

pD

pC

MOTION

STACK

pB

pE

pA

Motion
  • Instructions
    • movej
    • movel
    • movec
  • Stack
    • stopMove
    • restartMove
    • restMotion
    • waitEndMove
different types of movement
Different types of movement
  • Point-to-Point
    • movej(point/joint location, tool, mDesc)
      • Move to a location in the most optimal manner – either joint-angle or regular point
      • The second parameter is the tool frame you should use… So, a tool frame is provide for every movement command.
      • mDesc is a parameter that says what kind of movement to do. mNomSpeed is the built-int variable that refers to normal movement.
  • Linear
    • movel(point location, tool, mDesc)
      • Just like movej, but move in a linear motion (straight line movement.
  • Circular
    • movec(point via, point target, tool, mDesc)
      • Move to target location, but in a circular fashion which passes through a via point.
executing an application
Executing an Application
  • Navigate to load from disk or create a new program and store it on the built-in harddrive
  • You‘ll need to be in Local mode before you can run the program
    • Keep pressing Mode button to cycle through the different modes.
    • Need to re-park teach pendant when switching between Local and Manual modes.
      • Remove the metal bracket from the back of the pendant and set the pendant back in it.
  • Press the Run button and choose the program to run.
  • If the program involves movement, you‘ll also have to press Move/Hold
st ubli robotics studio
Stäubli Robotics Studio
  • Recall that VAL3 software can also be developed with Stäubli Robotics Studio
  • It’s an IDE that runs on a PC
  • More user friendly that the teach pendant.
  • Offline Programming
    • Edit
    • Test
    • Transfer
using st ubli robotics studio srs
Using Stäubli Robotics Studio (SRS)
  • A project can be FTPed back and forth between the CS8 and a PC running SDS.
  • SDS is a much better programming IDE and will make developing complex projects easier.
  • Points still need to be taught using the controller though…
  • This example project named ‘circular’ (to the right) was started on the CS8 controller and has a program called ‘demo’ in it.
st ubli robotics studio1
Stäubli Robotics Studio
  • To transfer a project to SDS, you need to establish an FTP connection
  • Need to know the controller IP address and username and password
    • This can be found in the menus on the controller.
  • Enter the information in SDS’s FTP tool:
st ubli robotics studio2
Stäubli Robotics Studio
  • Locate the project you would like to transfer
st ubli robotics studio3
Stäubli Robotics Studio
  • Open the project in SRS
st ubli robotics studio4
Stäubli Robotics Studio
  • Edit code; transfer back went ready