THE CNC SYSTEM WITH STEPPER MOTOR DRIVES



Similar documents
TRACKING ERRORS DECREASING IN CNC SYSTEM OF MACHINE TOOLS

How To Calculate Kinematics Of A Parallel Robot

PCI/PC Bus Operation ACR8020. ACR8020 Exclusives. ACR8020 (1- to 8-Axes) Ordering. 11 Parker Hannifin Corporation. Catalog 8180/USA Motion Controllers

Path Tracking for a Miniature Robot

10. CNC Hardware Basics

Micro-Step Driving for Stepper Motors: A Case Study

Thermodynamic efficiency of an actuator that provides the mechanical movement for the driven equipments:

Dev eloping a General Postprocessor for Multi-Axis CNC Milling Centers

UNIT 1 INTRODUCTION TO NC MACHINE TOOLS

The Design of DSP controller based DC Servo Motor Control System

Ruled Surface Machining on Five-Axis CNC Machine Tools

Power Electronics. Prof. K. Gopakumar. Centre for Electronics Design and Technology. Indian Institute of Science, Bangalore.

How To Control Gimbal

Machine Tool Control. Besides these TNCs, HEIDENHAIN also supplies controls for other areas of application, such as lathes.

A System for Capturing High Resolution Images

PROPORTIONAL FLOW CONTROLLER MODEL IN MATLAB-SIMULINK MODEL PROPORCJONALNEGO REGULATORA PRZEPŁYWU W MATLAB-SIMULINK

Application Note. EtherCAT Master Architecture. Applicable Products: Yaskawa Servodrives with CANopen over EtherCAT

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

A PC-BASED TIME INTERVAL COUNTER WITH 200 PS RESOLUTION

CNC HARDWARE & TOOLING BASICS

Presentation on CNC MACHINES. By: Hafiz Muhammad Rizwan

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

STEPPER MOTOR SPEED AND POSITION CONTROL

SINUMERIK 810/840D DIN Programming for Milling

AXIS DESIGNATION IN NC PART PROGRAMMING

Outline Servo Control

POWER EFFICIENCY MANAGEMENT OF PHOTOVOLTAIC ENERGY SOURCE BASED ON MPPT ALGORITHM

MS Excel as Tool for Modeling, Dynamic Simulation and Visualization ofmechanical Motion

A 5 Degree Feedback Control Robotic Arm (Haptic Arm)

An Efficient NURBS Path Generator for a Open Source CNC

Stepper motor I/O. Application Note DK Motion Control. A General information on stepper motors

DUGARD. Machine Tools Since Dugard 200HT / 200MC Slant Bed, High Precision CNC Lathes.

W a d i a D i g i t a l

MSc in Autonomous Robotics Engineering University of York

A Fuzzy System Approach of Feed Rate Determination for CNC Milling

Online Tuning of Artificial Neural Networks for Induction Motor Control

Application Note AN-SERV-006

Constant scallop-height tool path generation for three-axis sculptured surface machining

Algorithms for Real-Time Tool Path Generation

Force/position control of a robotic system for transcranial magnetic stimulation

CNC Machine Control Unit

Application of Virtual Instrumentation for Sensor Network Monitoring

COMPUTER AIDED GEOMETRIC MODELLING OF CYLINDRICAL WORM GEAR DRIVE HAVING ARCHED PROFILE S.

Development of the Induction Motor for Machine Tool Spindles and Servo Amplifier SANMOTION S

Attaining EDF Task Scheduling with O(1) Time Complexity

Data Sheet. Adaptive Design ltd. Arduino Dual L6470 Stepper Motor Shield V th November L6470 Stepper Motor Shield

Accuracy and Tuning in CNC Machine Tools

Active Vibration Isolation of an Unbalanced Machine Spindle

Machining processes simulation with the use of design and visualization technologies in a virtual environment

A matrix method for degree-raising of B-spline curves *

Mathematical Modeling and Dynamic Simulation of a Class of Drive Systems with Permanent Magnet Synchronous Motors

CNC-STEP. "LaserProbe4500" 3D laser scanning system Instruction manual

PROFINET the Industrial Ethernet standard. Siemens AG Alle Rechte vorbehalten.

DUGARD. Machine Tools Since Dugard 700L Series Heavy Duty CNC Lathes.

Braking/Traction Control Systems of a Scaled Railway Vehicle for the Active Steering Testbed

White Paper Implementing a Flexible CPLD-Only Digital Dashboard for Automobiles

LEGO NXT-based Robotic Arm

CNC Vertical Machining Center Alpha-Center HD Heavy cast iron design, precise guideways, high-performance gear designed for heavy machining

APPLICATION OF SHAPE SENSITIVITY ANALYSIS IN NUMERICAL MODELLING OF SOLIDIFICATION PROCESS

LLRF. Digital RF Stabilization System

CALIBRATION OF A ROBUST 2 DOF PATH MONITORING TOOL FOR INDUSTRIAL ROBOTS AND MACHINE TOOLS BASED ON PARALLEL KINEMATICS

Robust NURBS Surface Fitting from Unorganized 3D Point Clouds for Infrastructure As-Built Modeling

5-Axis Test-Piece Influence of Machining Position

Technical Guide No High Performance Drives -- speed and torque regulation

EDUMECH Mechatronic Instructional Systems. Ball on Beam System

ExmoR A Testing Tool for Control Algorithms on Mobile Robots

EnDat 2.2 Bidirectional Interface for Position Encoders

SAMSUNG Machine Tools

Architecture for Direct Model-to-Part CNC Manufacturing

Digital Single Axis Controller

Synchronization of sampling in distributed signal processing systems

MOBILE ROBOT TRACKING OF PRE-PLANNED PATHS. Department of Computer Science, York University, Heslington, York, Y010 5DD, UK

Datasheet of the Easy Servo Drive ES-D VDC, 8.2A Peak, Close-loop, No Tuning. Version

Setting up the DeskCNC controller.

LINEAR MOTOR CONTROL IN ACTIVE SUSPENSION SYSTEMS

Monitoring solar PV output

An Instructional Aid System for Driving Schools Based on Visual Simulation

Operational Space Control for A Scara Robot

3D SCANNING: A NEW APPROACH TOWARDS MODEL DEVELOPMENT IN ADVANCED MANUFACTURING SYSTEM

Robotics & Automation

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

SKYFIRE TM CNC. www. Skyfirecnc.com. SVM-2 Vertical CNC Milling Machine

SAMSUNG Machine Tools

Vibration analysis and monitoring Compact. Powerful. Modern technology.

CPM Booster Card. Retrofit card for Isel IMC4 controllers. User s Guide

dspace DSP DS-1104 based State Observer Design for Position Control of DC Servo Motor

POSITIONING AND CONTOURING APCI-8001, APCI-8008 AND CPCI-8004 OPERATING MANUAL / OM CONTROL SYSTEM. Rev. 12/

Physics 9e/Cutnell. correlated to the. College Board AP Physics 1 Course Objectives

SOLID MECHANICS TUTORIAL MECHANISMS KINEMATICS - VELOCITY AND ACCELERATION DIAGRAMS

COMPUTER BASED REMOTE CONTROL FOR LAYOUT OF SCALED MODEL TRAINS

Active and passive structural health monitoring system based on arrays of ultrasonic guided waves transducers

Copley Camming User Guide

Design of a High-speed and large-capacity NAND Flash storage system based on Fiber Acquisition

Analysis of seismic response control for long-span cable-stayed. bridge under traveling wave input *

DIGITAL DISPLACEMENT RISING STEP LOAD LRA/RSL TEST EQUIPMENT

Current Loop Tuning Procedure. Servo Drive Current Loop Tuning Procedure (intended for Analog input PWM output servo drives) General Procedure AN-015

Chapter 2 The Research on Fault Diagnosis of Building Electrical System Based on RBF Neural Network

FRENIC5000MS5 for Machine Tool Spindle Drives

Transcription:

Kazimierz KARWOWSKI Marcin PAPROCKI THE CNC SYSTEM WITH STEPPER MOTOR DRIVES ABSTRACT In the paper the conception of CNC system with stepper motor drives is presented. The system consists of a PC computer and a stand-alone CNC controller based on FPGA (Field Programmable Gate Array). In order to eliminate geometric discontinuities of motion trajectory in "G" and "M" codes, special conversion to NURBS (Non Uniform Rational B-Spline) curves on the PC is realized. Additionally, optimization of the motion trajectory feedrate is achieved by using the Look-Ahead algorithm. In the standalone CNC controller the software processor and CLK pulses generator are implemented. CLK pulses with high resolution and varying time period are sent to each of drives independently. An appropriate test to verify the correctness of CNC system was realized. Keywords: stepper motor drives, CNC controller 1. INTRODUCTION Most of CNC systems with stepper motor drives are open loop systems. Motor drives with microstepping mode affects to minimize torque pulsation and simultaneously increasing stepper motors angular resolution. Kazimierz KARWOWSKI, Ph.D., Marcin PAPROCKI, M.Sc. Eng. e-mail: kkarwowski@fizyka.umk.pl, marcin.paprocki@fizyka.umk.pl Nicolaus Copernicus University, Faculty of Physics, Astronomy and Informatics, Grudziądzka 5/7,87-100 Toruń, POLAND PROCEEDINGS OF ELECTROTECHNICAL INSTITUTE, Issue 240, 2009

76 K. Karwowski, M. Paprocki The motion trajectories for multiaxial machines are most commonly described by "G" and "M" codes. The curvature fragments of motion trajectory in many cases are described by a G1 code (linear interpolation). This description produces geometrical discontinuities in the points of connection of various sections of the trajectory. This implicates abrupt feedrate changes during motion trajectory realization. In many cases this may cause vibration and loss of synchronism[5]. Eliminating the geometrically discontinuous of motion trajectory improves the quality of its realization. There are many ways of describing geometrically continuous motion trajectory [2, 3, 4, 6, 9]. In the paper, the description of motion trajectory is realized by means of NURBS curves. One of the more well-known ways to implement velocity profiling of movement is Look-Ahead algorithm [1, 8, 11, 13]. The proposed algorithm is based on an analysis of motion trajectory described by NURBS curves. The trajectory is realized with variable feedrate. The speed is adjusted in regard to individual characteristics of each mechanical axle dynamics and the curvature realization of current motion trajectory part. Particular attention should be paid to not exceeding the maximum value of acceleration feeds of each axle. The maximum acceleration values are derived from the multiaxial machine specification supplied by the manufacturer or calculated from mathematical models of axles and anticipated load. Calculations related to the analysis of motion trajectory are computed on-line. 2. THE ARCHITECTURE OF CNC SYSTEM The block diagram of the proposed CNC system is shown in Figure 1. The system can run with stepper motor drives and servo drives. Fig. 1. The conception of CNC system

The CNC system with stepper motor drives 77 In the system, the motion trajectory is described by "G" and "M" codes. The interpreter block transforms numerical codes to NURBS curves form. Motion optimization is conducted by the feedrate profiling block using Look-Ahead algorithm. The interpolation block generates the next position of the axle. Modern multiaxial machine control systems with stepper motor drives can run with high velocity (about 5-30 m/min). When designing control system, the dynamic development of stepper motor drives must be taken into account. For the exampled parameters of the mechanical axle: linear velocity of slides 15 m/min; lead of rolling screw gear 5 mm/turn; and a resolution of the stepper motor drive 2π/51200 (200 steps per turn, driver in 256 microstepping mode), the frequency pulse CLK (to drives) is 2.56 MHz. The jitter of CLK pulse ought to be as small as possible. The CLK pulses generation at high resolution and trajectory analysis described by NURBS curves using Look-Ahead algorithm, requires large resources and computing power of machine control system. The proposed CNC control system is based on a PC and the stand-alone CNC controller (Fig. 2). Fig. 2. The architecture of CNC control system

78 K. Karwowski, M. Paprocki Calculations performed on the PC include: conversion of motion trajectory in the "G" and "M" codes to the NURBS curves form, feedrate profiling using Look- Ahead algorithm and interpolation. The data from the PC computer are sent to the stand-alone CNC system controller via Ethernet, USB (Universal Serial Bus) or RS232. The stand-alone CNC controller is based on a FPGA device. The controller calculates data from PC to form of pulses with variable time period and generates the CLK pulses at high resolution to stepper motor drives. 3. TRAJECTORY CONVERSION FROM G AND M CODES TO THE NURBS CURVES The CAD/CAM systems usually generate motion trajectory in G1 codes. A motion trajectory represented in G1 codes, is geometrically discontinuous and a large amount of resources for its description are needed. Other form of description include parametric curves [3, 12] or different varieties of Bézier curves [1, 6, 8, 11]. In the CNC system the proposed representation are NURBS curves. The example of motion trajectory described by NURBS curves is presented in Figure 3. Fig. 3. The example of motion trajectory described using NURBS curves The parametric representation of NURBS curves is [10]: C N n 1 = n 1 i= 0 j = 0 i, k N j, k w i w j P i where: xi P i = yi (1) z i

The CNC system with stepper motor drives 79 where: C(u) the point coordinates on the curve for the specific value u, P i control points, w weights, n the number of control points, k curve degree, N i,k (u) the k-th-degree basis function, u parameter accepting the value of (0,1), identifying location on the curve. N Basic functions are defined using a recurrent formula: ( u ui ) Ni, k 1 ( ui + k+ 1 u) Ni + 1, k 1 i, k = + where: u i+ k u i u i+ k+ 1 u i+ k 1 u ui, u N i,0 = (2) 0 u ui, u Equation (1), can describe a straight line and a conic section. The motion trajectory conversion algorithm from the "G" and "M" codes to NURBS curves is described in [7]. That work focuses mainly on the line segment elimination described by G1 codes. The revised description still contains geometrical discontinuous points. In many cases, there is a possibility of motion trajectory realization with a specific contour error tolerance. In such cases the motion trajectory can be modified to form which eliminates all the geometrical discontinuities. The proposed modification includes circular motion trajectory interpolation in part where geometrical discontinuities occur. The motion trajectory conversion algorithm from "G" and "M" codes to NURBS curves is implemented in application on a PC computer. [ [ 4. MOTION TRAJECTORY VELOCITY PROFILING In most cases motion trajectory is realized with constant motion velocity. One of many ways of velocity profiling is the Adaptive Feedrate algorithm [12]. The motion velocity is calculated according to the following formula: V F 2 T V 2 2 = δmax min V 1 ρ ( ρ ) Vmin < Vaf < F where:, κ V af af > F < V min 2 2 max 2 ρ = ( ρ) ρ ( ρ δ ), V af = (3) T

80 K. Karwowski, M. Paprocki where: V calculated feedrate, F desired feedrate, V min minimum feedrate, V af federate with constrained chord error, δ max chord error tolerance, ρ radius of curvature, κ curvature, calculated from the formula: C" 3 C' C' κ =, (4) The disadvantage of Adaptive Feedrate algorithm is discontinuous motion velocity, which causes sudden changes of acceleration. To avoid this shortcoming, the feedrate profile should be generated as an "S" profile with simultaneous forward motion trajectory analysis Look-Ahead algorithm. Look-Ahead algorithm implemented in CNC control system realizes both motion trajectories described in the G and M and NURBS curves. 5. STAND-ALONE STEPPER MOTOR DRIVES CONTROLLER Stand-alone stepper motor drives controller is based on Spartan 3E 1600 FPGA device. In its structure the software 32-bit Harvard RISC MicroBlaze processor, the interpolator block and the generator of CLK pulses for stepper motor drives are implemented. The MicroBlaze processor converts the data obtained from the PC computer in form of displacement in constant time period to a form of constant displacement in variable time period. Additionally, the processor configures CNC control system, sets digital inputs and outputs, communicates with the PC computer and controls auxiliary machine equipment. The generator block implemented in FPGA structure generates CLK pulses for stepper motor drives in real time. The blocks implemented in FPGA structure and calculations done by the processor run parallel. The schematic diagram of stand-alone stepper motor drives controller is presented in Figure 4.

The CNC system with stepper motor drives 81 Fig. 4. Stand-alone stepper motor drives controller 6. EXPERIMENTAL RESULTS The presented CNC control system with two step motor drives run correctly. Tests of the PC-based part of the CNC control system were aimed at verifying the correctness of the running application on the PC and communication with stand-alone CNC controller via USB bus. It was verified that the Look-Ahead algorithm and trajectory conversion of "G" and "M" codes to the NURBS curves are running correctly. In stand-alone CNC controller tests verified the processing accuracy of the data received from the PC. The MicroBlaze processor software was tested to investigate the correctness of the CLK pulses generation algorithm in varying time period. CLK pulses generation in stand-alone CNC controller was checked as a result of the trajectory realization on multiaxial machine (cross-xy table).

82 K. Karwowski, M. Paprocki Examples of motion trajectory of circle and broken line described in G1 code are presented in Fig. 5. Figure 6 shows CLK pulses sent from the controller to stepper motor drives. There is visible continuous change in the time period of CLK pulses in case of trajectory in form of circle and stable period time for broken line trajectory. a) b) Fig. 5. Motion trajectory realizes by multiaxial machine: a) broken line, b) circle a) b) Fig. 6. Oscillogram of CLK pulses sent to X and Y stepper motor drives of multiaxial machine axles for motion trajectory presented in a) figure 5a, b) figure 5b 7. REMARKS AND CONCLUSION The presented CNC system with stepper motor drives consists of a PC computer and stand-alone CNC controller. Implementation of "G" and "M" codes to the NURBS curves trajectory converter and the Look-Ahead algorithm

The CNC system with stepper motor drives 83 in the PC application, remove geometrical discontinuities from the motion trajectory and determines the optimum feedrate of its realization. The standalone CNC controller generates high resolution and high precision CLK pulses with varying time period for the stepper motor drives. The presented system provides more smoothness of operation and is more resistant to vibration and falling out of steps. LITERATURE 1. Chenga M.-Y., Tsaib M.-C., Kuo J.-C.: Real-time NURBS command generators for CNC servo controllers, International Journal of Machine Tools &Manufacture,2002,Vol. 42, nr 7, May 2. Erkorkmaz K., Yeung C. H., Altintas Y.: Virtual CNC system. Part II. High speed contouring application, International Journal of Machine Tools & Manufacture, 2006, Vol. 46, nr 10 3. Farouki R. T., Manjunathaiah J., Yuan G. F.: G codes for the specification of Pythagoreanhodograph tool paths and associated feedrate functions on open-architecture CNC machines, International Journal of Machine Tools & Manufacture, 1999, Vol. 39, nr 1, January 4. Helleno A. L., Schützer K.: Investigation of tool path interpolation on the manufacturing of die and molds with HSC technology, Journal of Materials Processing Technology, 2006, Vol. 179, nr 1-3, October 5. Lee E.C., Nian C.Y., Tarng Y.S.: Design of a dynamic vibration absorber against vibrations in turning operations, Journal of Materials Processing Technology, 2001, Vol. 108, nr 3 17 January 6. Li W., Liu Y., Yamazaki K., Fujisima M., Mori M.: The design of a NURBS pre-interpolator for five-axis machining, The International Journal of Advanced Manufacturing Technology, 2008, Vol. 36, nr 9-10, April 7. Lin K.-Y., Ueng W.-D., Lai J.-Y.: CNC codes conversion from linear and circular patos to NURBS curves, The International Journal of Advanced Manufacturing Technology, 2007, 8. Lin M.-T., Tsai M.-S., Yau H.-T.: Development of a dynamics-based NURBS interpolator with real-time look-ahead algorithm, International Journal of Machine Tools and Manufacture, 2007, Vol. 47, nr 15 9. Pateloup V., Duc E., Ray P.: Corner optimization for pocket machining, International Journal of Machine Tools & Manufacture, 2004, Vol. 44, nr 12-13, October 10. Piegl L., Tiller W.: The NURBS Book, Springer Verlag, Berlin Heidelberg New York, 1997 11. Yau H.-T., Lin M.-T., Tsai M.-S.: Real-time NURBS interpolation using FPGA for high speed motion control, Computer-Aided Design, 2006, Vol. 38, nr 10, October 12. Yeh S. S., Hsu P. L.: Adaptive-feedrate interpolation for parametric curves with a confined chord error, Computer-aided design, 2002, Vol. 34, nr 3 13. Zhiming X., Jincheng C., Zhengjin F.: Performance Evaluation of a Real-Time Interpolation Algorithm for NURBS Curves, International Journal of Advanced Manufacturing Technology, 2002, Vol. 20, nr 4 Manuscript submitted 09.02.2009 Reviewed by Andrzej Pochanke

84 K. Karwowski, M. Paprocki UKŁAD STEROWANIA CNC Z NAPĘDAMI SKOKOWYMI K. KARWOWSKI, M. PAPROCKI STRESZCZENIE Na rysunku 1 przedstawiono schemat blokowy proponowanego układu sterowania CNC. Układ może być użyty do sterowania napędami skokowymi jak i serwonapędami. Złożony jest z komputera PC oraz autonomicznego sterownika CNC (rys. 2). Na komputerze PC wykonywane są obliczenia związane z realizacją funkcji interpretera kodu numerycznego, konwertera opisu trajektorii ruchu z kodów G i M na opis z wykorzystaniem krzywych NURBS (ang. Non Uniform Rational B-Spline) oraz profilowania prędkości parametrycznej z wykorzystaniem algorytmu Look-Ahead. Autonomiczny układ sterownika CNC realizuje zadania związane z generacją sygnałów sterujących CLK z dużą rozdzielczością dla poszczególnych napędów skokowych osi mechanicznych. Opis trajektorii ruchu w kodach G1, charakteryzuje się występowaniem nieciągłości geometrycznych. Proponowanym opisem trajektorii ruchu jest opis z wykorzystaniem krzywych NURBS. Opis za pomocą krzywych NURBS umożliwia minimalizację występowania nieciągłości geometrycznych. Na rysunku 3 przedstawiono przykład trajektorii ruchu, opisanej z wykorzystaniem krzywych NURBS. W celu optymalnego dostosowania prędkości realizacji trajektorii ruchu zastosowano profilowanie prędkości po krzywej S z jednoczesną analizą zadanej trajektorii ruchu w przód algorytm Look-Ahead. Na rysunku 4 przedstawiono budowę autonomicznego sterownika CNC. Sterownik zbudowany jest na układzie FPGA (ang. Field Programmable Gate Array). W układzie FPGA zaimplementowano procesor MicroBlaze oraz układ generacji sygnałów sterujących CLK dla napędów skokowych. Generator impulsów z dużą rozdzielczością oblicza okresy impulsów CLK dla każdej z osi i niezależnie wysyła je do napędów skokowych. Badania układu CNC miały na celu sprawdzenie poprawności działania aplikacji uruchomionej na komputerze PC (algorytmu Look- Ahead i konwersji z kodów G i M na opis z wykorzystaniem NURBS) oraz komunikacji poprzez port USB. W autonomicznym sterowniku CNC przeprowadzono badania związane z poprawnością przetwarzania otrzymywanych danych z komputera PC poprze port USB. Przykłady trajektorii ruchu w postaci okręgu i linii łamanej opisanej w kodzie G1 przedstawiono na rysunku. 5. Na rysunku 6 przedstawiono oscylogramy impulsów CLK wysyłanych do napędów skokowych.