Power PMAC – The 7th Generation! November 2013

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

Categories of I/O Devices
Inputs: Digital and 4 configurable for Digital or 10 bit Analog Outputs:4 - 8 amp Relays or 700ma Transistors (1 PWM) 4 Line by 18 Character fully.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir.
Turbo PMAC Clipper One Board Control Solution Low Cost, 4 Axis controller with I/O and Ethernet A Turbo PC/104 with Acc-2P combined for a 30% cost reduction.
MotoHawk Training Model-Based Design of Embedded Systems.
Switchgears Control Using SCADA System Based on PLC
Operating Systems High Level View Chapter 1,2. Who is the User? End Users Application Programmers System Programmers Administrators.
Computational Astrophysics: Methodology 1.Identify astrophysical problem 2.Write down corresponding equations 3.Identify numerical algorithm 4.Find a computer.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
PhD/Master course, Uppsala  Understanding the interaction between your program and computer  Structuring the code  Optimizing the code  Debugging.
PROGRAMMABLE LOGIC CONTROLLERS PLC’S
New Generation Automation Controller (PAC) Overview and Trend eAutomation Group Γιάννης Στάβαρης Technical Manager Ιούνιος 26, 2007.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
INPUT-OUTPUT ORGANIZATION
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC as a Linux Computer January.
EPICS Meeting, APS, June 14 th 2006 MCS-8 The 8 axes motion control system Rok Šabjan
Partnership for Growth January 19, Machine PLCs Temp Controllers Servos & AC Drives Power Supplies HMIs Sensors “We Automate Machines”
Drivers Station 2010 Joe Ross Team /12/2009.
1 Input/Output. 2 Principles of I/O Hardware Some typical device, network, and data base rates.
Chapter 8 Input/Output. Busses l Group of electrical conductors suitable for carrying computer signals from one location to another l Each conductor in.
User C Programs in Power PMAC December 2013
Topics Introduction Hardware and Software How Computers Store Data
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Project Management November.
Copyright 2001 ACS-Tech80 1 ACS-Tech 80, Inc. SPiiPlus Control Module Overview.
Power PMAC Electronic Cam Tables April 2014
Schutzvermerk nach DIN 34 beachten XC200 Hardware Overview.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
02/2008 MATRIX VISION GmbH 1 Presentation The intelligent camera and Image processing sensor.
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Data Structures January 2012.
Upgrade to Real Time Linux Target: A MATLAB-Based Graphical Control Environment Thesis Defense by Hai Xu CLEMSON U N I V E R S I T Y Department of Electrical.
CHAPTER FOUR COMPUTER SOFTWARE.
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Talking to Power PMAC November 2013.
DLS Digital Controller Tony Dobbing Head of Power Supplies Group.
Typical Microcontroller Purposes
CS 342 – Operating Systems Spring 2003 © Ibrahim Korpeoglu Bilkent University1 Input/Output CS 342 – Operating Systems Ibrahim Korpeoglu Bilkent University.
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Encoder Conversion Table January.
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Operational Summary November.
Interrupts By Ryan Morris. Overview ● I/O Paradigm ● Synchronization ● Polling ● Control and Status Registers ● Interrupt Driven I/O ● Importance of Interrupts.
© Paradigm Publishing, Inc. 4-1 Chapter 4 System Software Chapter 4 System Software.
Lecture 1: Review of Computer Organization
Proposal for an Open Source Flash Failure Analysis Platform (FLAP) By Michael Tomer, Cory Shirts, SzeHsiang Harper, Jake Johns
An EPICS solution for Galil products that can provide a comprehensive, and high performance motor and PLC control system for use at synchrotrons and other.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Shared Memory December 2013.
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Compensation Tables November.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
Embedded Real-Time Systems Introduction to embedded software development Lecturer Department University.
SEPTEMBER 8, 2015 Computer Hardware 1-1. HARDWARE TERMS CPU — Central Processing Unit RAM — Random-Access Memory  “random-access” means the CPU can read.
CompactLogix Controllers Portfolio
Software Troubleshooting Eliminate possible programming and timing errors by stopping all programs ( and ). Use the Executive program terminal and send.
SPiiPlus Training Class
SPiiPlus Training Class
Topics Introduction Hardware and Software How Computers Store Data
CS703 - Advanced Operating Systems
Operating Systems Chapter 5: Input/Output Management
CS703 - Advanced Operating Systems
Topics Introduction Hardware and Software How Computers Store Data
Sysmac NC Controller Introducing the NJ5 PLC and NC integrated controller for complex and precision advanced manufacturing.
Five Key Computer Components
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Controller interfaces
Chapter 13: I/O Systems.
Presentation transcript:

Power PMAC – The 7th Generation! November 2013

What is Power PMAC? A general-purpose embedded computer with a hard real-time operating system Can run standard C applications A built-in software application for dedicated motion and machine control Can execute Script language controller programs Sequenced motion programs Asynchronous “PLC” programs Automatically executes motor servo and commutation algorithms Machine interface circuitry Analog and digital servo interfaces Analog and digital general-purpose I/O Industrial network interfaces (e.g. MACROTM and EtherCATTM) Fieldbus interfaces (e.g. DeviceNetTM and ProfibusTM)

Power PMAC CPU Capabilities 800 MHz – 1.2 GHz operating frequencies Single-core, dual-core configurations Full 32/64-bit architecture Hardware 64-bit (double-precision) floating-point implementation Very high-speed calculations (>10x Turbo PMAC floating-point) Huge dynamic range and resolution (>100K x Turbo PMAC) Support for very large memory 1 GB – 2 GB DDRAM active memory with error correction 64 MB NOR Flash for standard firmware 512 MB built-in NAND flash for user code/settings Interface for “USB stick” NAND flash Interface for “SD card” NAND flash Built-in USB2.0, Ethernet 100 Mbps or 1Gbps interfaces Direct connection and DMA optimize data streaming Optional direct video interface

Power PMAC CPU Block Diagram Video Card Vision System Card Fieldbus Cards, etc... Disk Drive SATA PCIe (x1) PCIe (x4) Ethercat, Powerlink, Modbus, etc… Ethernet 1G Eth *Can be used as SATA or PCIe (x1) Ethernet 1G Eth PC Comm i.e. -Web, TCP Sockets RS232 RS232 Power PMAC CPU 800Mhz - 1.0Ghz Up to x2 32GB SDHC Memory Card (User Programs) Lattice CPLD UBUS I/F SD/MMC Expansion Slot (User Expansion) USB 2.0 UBUS Soldered Down NAND Flash 2 or 8GB Contains Complete Operating System Files plus Add on products ie. IEC1131, EPICS NC Application, Ethercat, etc ... User Interface Software USB Hub/Card Reader Keyboard, Mouse, RS232, Hard Drive, Memory Stick etc... AMD NOR Boot Flash 64MB Contains everything necessary to boot Linux RTOS Kernel DDR2 1GB or 2GB RAM w/ ECC Removable SOCDIMM 16M Motion Prog Buffer (adjustable) 8M PPmac Memory Map (Fixed) 1M User Shared Memory (adjustable) USB 2.0 Host Expansion Port (User Expansion) USB USB USB 2.0 Device Laptop or PC

Power PMAC Operating Environment Full real-time operating system (Linux with real-time kernel) Dedicated controller runs in the real-time Linux environment Hard-real-time tasks operate on interrupts Phase: commutation and current loop Servo: interpolation, position/velocity loop “Real-time”: motion programs, foreground PLC programs Capture/compare (new!): highest priority for fast list updating Other tasks operate in general-purpose OS Background PLCs, status update, command processing Shared-memory access for RTOS, GPOS, and host communications Full file-management system Programs, tables, gathered data etc. can be transmitted and stored as files

Power PMAC Hardware Configurations Power UMAC 3U-format Euro-card Rack Modular selection of interface accessories: motion, I/O, Fieldbus Power PMAC Etherlite Compact controller for networked drives and I/O Supports MACRO and EtherCAT servo drives & I/O Supports Fieldbus I/O Power PMAC Brick Integrated controller amplifier 4-, 6-, & 8-axis configurations AC version: up to 240VAC input, 3-phase motors LV version: up to 60VDC input, 2- and 3-phase motors (steppers and servos)

Power PMAC Integrated Development Environment (IDE) WindowsTM PC application XP, Vista, or 7 Advanced editor with built-in debugging features Extensive project and resource-management features Integrated GNU C cross-compiler Interactive terminal window Many status and setup windows Tuning and plotting graphics screens Can incorporate windows into user applications with Visual StudioTM Terminal Intellisense Watch Motor Status Velocity F.E. Position Project User Written Code Message Window

Power PMAC Embedded Web Server Any computer with web browser can communicate Laptop with direct connection Over company network* From anywhere in world over Internet* HTTP and FTP supported Many standard windows built in Terminal, position, watch Backup and restore Tuning and plotting Status reporting Basic editor/downloader User can add own windows for easy HMI implementation * Must arrange to get through any firewalls

Power PMAC Script Language Easy-to-use but powerful programming language for machine and motion control Builds on Turbo PMAC language, with significant enhancements Automatic type-matching of different variable formats Fixed-point and floating-point formats Single-bit to 64-bit lengths Both “synchronous” motion programs and “asynchronous” PLC programs Motion program calculations automatically sequenced move by move PLC program calculations are “free running” Math and logic are C-like (not BASIC-like) Permits more power and flexibility Advanced built-in debugging features Break points, cycle counters, single-step Available for both motion and PLC programs

Power PMAC Script Language Math and Logic Ability to mix all variable and data types freely Over 24 mathematical functions (e.g. sin, sqrt, cbrt, exp, abs) Trig functions in radians (e.g. cos, atan2) or degrees (e.g. cosd, atan2d) Random number generators with repeatable or non-repeatable seeds 12 math/logic operators (+, - ,* ,/ ,%, &, |, ^, >>, <<, ++, --) 12 assignment operators (including delayed synchronous) Array access to any numbered variable type Vector and 2D matrix operations (e.g. vscale, minv, msolve) 8 conditional comparators (==, !=, >, <=, <, >=, ~, !~) Logical structures: while, do..while, if, else, switch Subroutines in motion and PLC programs: gosub, callsub, call callsub (in same program) and call (to separate program) permit local variables in subroutines (true argument pass and return) Argument passing thru “G-code” letter/number format supported

Power PMAC Built-In Data Structures Main technique for user access to Power PMAC registers Will largely replace I and M-variable use For hardware and software registers, control and status elements Key setup elements saved to flash memory (like I-variables) Accessible from Script & C programs, on-line commands “Intellisense” listing of elements in IDE windows (terminal, editor) Major structures defined: Sys, Motor[x]., Coord[x]., Gaten[i].Chan[j]., CompTable[m]. etc. Indexable for easy program access e.g.: Motor[Num].JogSpeed = 133.3333 Note that index numbers start at 0 (C convention)! User can substitute own name for structure element e.g.: #define M2Vj Motor[2].JogSpeed User can define M-variable to any structure element e.g.: ptr Mtr2Vjog->Motor[2].JogSpeed e.g.: ptr LaserOn->Acc68E[2].DataReg[4].6

Running C Code on Power PMAC GNU public-domain cross-compiler built into Power PMAC IDE Advanced editing/debugging features in IDE Code can be for both real-time (e.g. servo) and non-real-time (e.g. PLC) tasks Can use automatically generated C code: e.g.: IEC-61131 graphical programming for PLCs MATLAB/Simulink Embedded CoderTM for servos, etc. Supplied header files give access to Power PMAC data structures through shared-memory interface For I/O, C-language access is to full registers only; must subsequently mask out to get partial-register elements Structure names in C are case-sensitive (unlike in Script) Supplied API gives access to Power PMAC function calls C subroutines automatically called in phase, servo and real-time interrupt C subroutines automatically called in background between PLC scans Independent C applications run under GPOS

Power PMAC Motor Calculations Motor calculations done in 64-bit floating-point math (These were 48-bit fixed-point calculations in Turbo PMAC) Trajectory interpolation, servo loop closure, phase commutation Higher resolution permits more complex algorithms without adding too much “quantization noise” Increased dynamic range eliminates rollover & saturation concerns Position, time, etc. registers have meaningful units With hardware floating-point implementation, still faster than fixed-point calculations in fastest Turbo PMAC (>1.5x) Increased flexibility to add custom algorithms Servo, commutation, compensation, etc. Up to 256 motors controlled from 1 CPU at 2kHz update rate Networked connection (e.g. MACRO, EtherCAT) to machine required 1D, 2D, & 3D compensation tables with 1st or 3rd-order interpolation

Power PMAC Coordinate Systems Up to 128 independent coordinate systems (up from 16) Up to 32 independent axes per coordinate system (up from 9) Names: A, B, C, U, V, W, X, Y, Z, AA, BB,…, HH, LL, MM,…, ZZ Multiple motors can be assigned to same axis (e.g. gantry) Two full Cartesian axis sets per coordinate system X/Y/Z with I/J/K vectors, XX/YY/ZZ with II/JJ/KK vectors For circular interpolation, tool radius compensation Motors can be assigned to C.S. axes in two ways: Simple axis-definition statements (e.g. #1->1000X) Forward and inverse-kinematic subroutines Real-time reporting of axis data possible Position (command and actual), velocity, following error Reported in user engineering units Valid for either method of C.S. definition

Power PMAC Motion Trajectories All move modes of Turbo PMAC supported Enhancements to all move modes Point-to-point, triggered, alterable (jog, home, rapid) Jerk limits added (as well as acceleration and velocity) Ability to alter destination at up to servo rate Traditional blended (linear, circle) Jerk limits added (linear) All feature times (Ta, Ts, Tm) have floating-point resolution, can even go below servo period (but would be skipped over) Separate accel and decel rates/times Better optimized lookahead calculations Modern splined/contouring (pvt, spline) Ability to use lookahead (pvt) Ability to program like traditional linear mode (with F vector feedrate) Ability to change on the fly between traditional blended and pvt modes Good for custom accel/decel profiles

Power PMAC PLC Program Enhancements Expanded math and logic capabilities of Power PMAC Script Subroutine and subprogram calls added Local variables permit true argument passing Ability to command axis motion directly rapid-mode point-to-point or triggered moves Can break into ongoing move at any point Program execution does not pause until move over (unlike motion programs) “Direct” motor (e.g. jog1+) and C.S. (e.g. abort1) commands No need to pass through text command queue Improved debugging features Automatic cycle counters can be put on instructions Breakpoint capability (on specified cycle count) Single-step capability

PMAC3 ASIC: DSPGATE3 Combines all features of existing ASICs (Servo, MACRO, and I/O) 4 servo channels plus 32 digital I/O points, plus 32-node MACRO 3 servo channels each alternately configurable as 32 added I/O points Built-in resolver excitation generator (add external DAC only) Built-in sin/cos encoder/resolver 16-bit interpolator (add external ADCs only) Built-in 12-bit hardware 1/T interpolator for servo, capture, & compare Whole-count and fractional-count info combined into single register Support for multiple serial encoder protocols (e.g. SSI, EnDat, Yaskawa) MLDT timer at 600 MHz (4.7μm resolution, no averaging) PWM counter at 300 MHz (1.5 extra bits over PMAC2 resolution) Multiple PWM frequencies supported on a single ASIC 4-phase PWM output each axis (direct support for steppers) Pulse-frequency output: pulse-and-direction or quadrature, 0-100% duty cycle 32-node MACRO interface: MACRO at 125 Mbps, or new MACRO2 at 1.25Gbps Support for configurable fast DMA processor interface

Power PMAC Computational Speeds Computational Task 80 MHz Turbo PMAC 240 MHz Turbo PMAC 533 MHz Power PMAC (proto) 800 MHz Power PMAC Phase Update 1,2 1.9 μsec 1.0 μsec8 0.7 μsec8,9 Servo Update2,3 4.8 μsec 1.7 μsec 1.1 μsec 0.65 μsec9 Custom Servo4 588 μsec 326 μsec 10 μsec 1.6 μsec10 Program SQRT5 3.7 μsec 1.0 μsec 0.14 μsec 0.08 μsec Program Multiply5 3.0 μsec 0.9 μsec 0.06 μsec 0.04 μsec 4-Axis Move Eqns.6 129 μsec 36 μsec 5.0 μsec 2.8 μsec Ethernet Transfer7 4.0 sec 3.8 sec 255 msec 220 msec Notes: 1. PM brushless-motor commutation, current-loop closure, one motor 2. Fixed-point math on Turbo PMAC, floating-point math on Power PMAC 3. PID, trajectory interpolation, 1/T encoder extension, one motor 4. Control of 7 harmonics, all floating-point math, one motor 5. Uncompiled script language, floating-point math 6. Linear mode equation calculations, no segmentation, no lookahead 7. File downloaded to set 8192 variable values, 100 Mbps 8. Limited by I/O speed 9. With PMAC3 ASIC, “packed” I/O mode 10. Executing from internal memory