Presentation is loading. Please wait.

Presentation is loading. Please wait.

SPiiPlus Training Class

Similar presentations


Presentation on theme: "SPiiPlus Training Class"— Presentation transcript:

1 SPiiPlus Training Class
ACSPL+ Overview

2 What is ACSPL+? ACS Motion Control’s programming language, 2nd generation (+) High level real-time scripting language built for motion control But powerful enough for general computing! Large command set includes both simple procedures and powerful motion operations Supported in all SPiiPlus products

3 What Can ACSPL+ Do For You?
With ACSPL+ you can write a complicated motion algorithm in a few lines of code 2D raster scan Electronic camming Gantry control Robot kinematics High speed camera triggering High speed position capture

4 What Can ACSPL+ Do For You?
That’s not all - with ACSPL+ you can handle general automation and signal processing. PLC operations High speed data collection I/O debouncing Real-time program scheduling State machines Data processing

5 How Does ACSPL+ Compare to C/C++?
C/C++ is a powerful general purpose computing language With C/C++ you can do just about anything The problem: you have to either find the libraries or explicitly code everything! With ACSPL+ all the commands are at your fingertips! No libraries to include / link Simple compiling on the controller No Main function!

6 How Does ACSPL+ Compare to C/C++?
Example: Enable a motor and move it a distance of 5000 units. C / C++: #include "MotionLibrary.h" int main(int argc, char** argv) { EnableMotor(0); PointToPoint(0, 5000); return 0; } ACSPL+: ENABLE 0 PTP 0, 5000 STOP

7 How Does ACSPL+ Compare to Other Motion Control Languages?
ACSPL+ uses commands with basic English syntax Easy to understand by reading the code ACSPL+ is powerful scripting language Built-in features make logic control simple ACSPL+ provides many of the basic features that programmers expect Standard math order of operations and operators Standard logical operators

8 How Does ACSPL+ Compare to Other Motion Control Languages?
Example: Enable a motor and move it a distance of 5000 units. ACSPL+: ENABLE 0 PTP 0, 5000 STOP Galil Language: SHA PA 5000 BG EN Parker AcroBASIC: DRIVE ON X MOV X5000 END

9 How Does ACSPL+ Compare to IEC-61131-3 Languages?
IEC defines 5 global languages used by PLCs Global standard for PLCs Very useful for logic control Very difficult for multi-axis motion Uses PLCopen function blocks for motion ACSPL+ is powerful scripting language Meant for multi-axis motion Can interact with IEC languages via SPiiPlus soft PLC

10 How Do ACSPL+ Programs Run?
Sequential Language Programs start at designated line or label Executes one line of buffer code after another at controller cycle rate (CTIME) Can execute more than 1 command per line Can execute more than 1 line per controller cycle

11 How Do ACSPL+ Programs Run?
Starting by line number: START 0, 1 START 0, 4 START 0, 9 START 0, 14 Starting by label: START 0, START_POINT_1 START 0, START_POINT_2 START 0, JUMP_POINT

12 ACSPL+ General Features
Structured programming constructs (flow control statements) IF statements, WHILE loops, subroutine CALL Support for standard arithmetic operators * / Support for standard logical operators >, <, =, <> (not equal), ^ (logical not), ~ (inversion)

13 ACSPL+ General Features

14 ACSPL+ General Features
Multiple commands per program line Semicolon (;) separated Program comments Start with exclamation mark (!) Firmware and user-defined variables 32-bit integers 64-bit floating point Scalar, 1-D arrays, or 2-D arrays (zero indexing) Global or local in scope

15 ACSPL+ General Features

16 ACSPL+ General Features
Standard math library Trigonometric functions Exponential and logarithmic functions Power / square root Basic array processing Average, min, max functions Basic signal processing Dead-zone, edge detection, lag functions Interpolation (linear, spline)

17 ACSPL+ General Features

18 ACSPL+ General Features
Robust motion programming support Enable / Disable motors 3rd order (S-curve) motion generation User-defined motion parameter units On-the-fly motion parameter updates Software position limits Motion tracking PT and PVT path motion Error-mapping Forward and inverse kinematics

19 ACSPL+ General Features

20 ACSPL+ General Features
Up to 64 independent program buffers Separate storage for each buffer Separate memory space for local variable declaration Isolated environment for program editing / execution Separate thread for concurrent execution Independent autoroutine (interrupt) execution

21 ACSPL+ General Features
Program buffer synchronization Mutual exclusion via global variables WAIT and TILL commands Real-time program scheduling Guaranteed response time Guaranteed execution time

22 ACSPL+ General Features

23 ACSPL+ General Features
Built-in safety control Firmware defined fault handling routines Support for user-defined fault handling routines Simplified EtherCAT interface Map EtherCAT PDOs to ACSPL+ variables CoE read/write functions for Object Dictionary access

24 ACSPL+ General Features
Low level socket communications interface Support for Ethernet and serial communications Byte-level data manipulation ASCII command support High level host communication interface Client-server model (host is client) Support for asynchronous controller interrupts C and COM library for multiple language support (C, C++, .NET, LabView) Can do just about anything that can be done in ACSPL+


Download ppt "SPiiPlus Training Class"

Similar presentations


Ads by Google