Nios II-Based Air-Jet Loom Control System



Similar documents
Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Networking Remote-Controlled Moving Image Monitoring System

Nios II-Based Intellectual Property Camera Design

STEPPER MOTOR SPEED AND POSITION CONTROL

DS1104 R&D Controller Board

Lab Experiment 1: The LPC 2148 Education Board

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

PUSH BUTTON START INSTALLATION MANUAL

Microtronics technologies Mobile:

Ping Pong Game with Touch-screen. March 2012

Chapter 13. PIC Family Microcontroller

MINIMAT-EC-Servo Screwdriver Spindles

Microcontroller for Variable Speed BLDC Fan Control System. T.C. Lun System Engineer, Freescale Semiconductor, Inc.

Programming Logic controllers

Speed Control Methods of Various Types of Speed Control Motors. Kazuya SHIRAHATA

Design of Self-service Car Washing Machine Control System Based on ARM Zhengmin Cui a, Peng Sun b

Electronic Power Control

Design of Strong-motion Monitoring System for Dam-reservoir D s e i s gn of Stro r ng-mo m tion Monito t ri r ng Syst s em

White Paper Utilizing Leveling Techniques in DDR3 SDRAM Memory Interfaces

Embedded Systems on ARM Cortex-M3 (4weeks/45hrs)

P545 Autonomous Cart

The I2C Bus. NXP Semiconductors: UM10204 I2C-bus specification and user manual HAW - Arduino 1

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor

SOPC-Based Servo Control System for the XYZ Table

Note monitors controlled by analog signals CRT monitors are controlled by analog voltage. i. e. the level of analog signal delivered through the

Am186ER/Am188ER AMD Continues 16-bit Innovation

Motor Control using NXP s LPC2900

PROJECT PRESENTATION ON CELLPHONE OPERATED ROBOTIC ASSISTANT

Data Acquisition Module with I2C interface «I2C-FLEXEL» User s Guide

Implementing a Digital Answering Machine with a High-Speed 8-Bit Microcontroller

POCKET SCOPE 2. The idea 2. Design criteria 3

7a. System-on-chip design and prototyping platforms

... Electronic Softstarter...

Tutorial for MPLAB Starter Kit for PIC18F

Car Racing Game. Figure 1 The Car Racing Game

Atmel Norway XMEGA Introduction

PRODUCTIVITY THROUGH INNOVATION 600 CONTROL DIRECT DRIVE TECHNICAL/OPERATION MANUAL

A.3 ALARMS (SERIAL SPINDLE)

Design of a High Speed Communications Link Using Field Programmable Gate Arrays

How To Control Gimbal

X8 Option 2 - Technology

Display Board Pulse Width Modulation (PWM) Power/Speed Controller Module

Sigma Control PC INSIDE. 97 psi 187 F R on load

HT46R14A Single Phase AC Induction Motor Frequency Converter Application

Software Manual RS232 Laser Merge Module. Document # SU Rev A

How to Turn an AC Induction Motor Into a DC Motor (A Matter of Perspective) Steve Bowling Application Segments Engineer Microchip Technology, Inc.

Soft processors for microcontroller programming education

TURBOtech srl. SED-635 Digital Excitation System. Industrial Electronics Sector FEATURES

How to read this guide

The Design of DSP controller based DC Servo Motor Control System

How to design and implement firmware for embedded systems

Signature and ISX CM870 Electronics

Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester

A 5 Degree Feedback Control Robotic Arm (Haptic Arm)

Design of an Insulin Pump. Purpose of an Insulin Pump:

Applying the Benefits of Network on a Chip Architecture to FPGA System Design

EXPERIMENT 2 TRAFFIC LIGHT CONTROL SYSTEM FOR AN INTERSECTION USING S7-300 PLC

AN2680 Application note

Digital Signal Controller Based Automatic Transfer Switch

DEVELOPMENT OF DEVICES AND METHODS FOR PHASE AND AC LINEARITY MEASUREMENTS IN DIGITIZERS

UPS PIco. to be used with. Raspberry Pi B+, A+, B, and A. HAT Compliant. Raspberry Pi is a trademark of the Raspberry Pi Foundation

Application Note AN-SERV-006

CHAPTER 11: Flip Flops

Designing VM2 Application Boards

TwinCAT NC Configuration

An inertial haptic interface for robotic applications

Transmitter Interface Program

Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit

Measuring, Controlling and Regulating with labworldsoft

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

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

ROTOTWIST BELMONT TEXTILE MACHINERY COMPANY

Accurate Measurement of the Mains Electricity Frequency

How to design an insulin pump

Open Architecture Design for GPS Applications Yves Théroux, BAE Systems Canada

RPLIDAR. Low Cost 360 degree 2D Laser Scanner (LIDAR) System Development Kit User Manual Rev.1

Application Note AN-1187

Pre-tested System-on-Chip Design. Accelerates PLD Development

AVR151: Setup and Use of the SPI. Introduction. Features. Atmel AVR 8-bit Microcontroller APPLICATION NOTE

VEHICLE SPEED CONTROL SYSTEM

ACS 800. Supplement Traverse Control Application Program 7.x

ECU Development for a Formula SAE Engine

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

ontroller LSI with Built-in High- Performance Graphic Functions for Automotive Applications

Creating a Project with PSoC Designer

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC Microprocessor & Microcontroller Year/Sem : II/IV

Permissible ambient temperature Operation Storage, transport

MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN.

Application Information Fully Integrated Hall Effect Motor Driver for Brushless DC Vibration Motor Applications

DC Motor control Reversing

3-Phase BLDC Motor Control with Hall Sensors Using 56800/E Digital Signal Controllers

Microcontroller Programming Beginning with Arduino. Charlie Mooney

Project Plan. Project Plan. May Logging DC Wattmeter. Team Member: Advisor : Ailing Mei. Collin Christy. Andrew Kom. Client: Chongli Cai

Sierra Dual 24 Volt Brushless DC Motor Controller Product Specification

Embedded Electric Power Network Monitoring System

Network connectivity controllers

MODULE BOUSSOLE ÉLECTRONIQUE CMPS03 Référence :

Computer and Set of Robots

Flexible Active Shutter Control Interface using the MC1323x

INSTALLATION MANUAL VEHICLE SECURITY SYSTEM CE-SS200

Transcription:

Nios II-Based Air-Jet Loom System Third Prize Nios II-Based Air-Jet Loom System Institution: Participants: Instructor: Donghua University Yu-Bin Lue, Hong Chen, and Bin Zhou Ge-Jin Cui Design Introduction Widely used in the textile industry, the air-jet loom is one of the fastest, shuttleless looms today. The loom has significant control system requirements. With multiple tasks (for example, the ZA205 loom s control board needs 61 I/O ports) and demanding response time requirements, the control system s performance usually determines the air-jet loom s capability. The loom usually needs to complete a series of movements in a few milliseconds, such as opening, weft insertion, beating up, warp let-off, fabric take-up, weft cutting, weft storage, etc. The advanced air-jet looms overseas use 32-bit embedded systems, while China still uses 8-bit monolithic processors and digital integrated circuits. Because other control systems have a high price and maintenance costs, a reliable substitute with excellent price/performance is of significance to China in loom production and maintenance cost reduction compared to imported looms. The air-jet loom does not have a customized 32-bit microcontroller (MCU), so the MCU application inevitably wastes resources. With the rapid development of electronic technology, system-on-a-programmable-chip (SOPC) performance has improved. As a leader in the industry, Altera has developed the Nios II processers. The latest Nios II processor provides performance up to 200 DMIPS. The user can select the core type to balance performance and size. Additionally, designers can use multiple Nios II CPUs, custom instruction sets, and hardware acceleration, improving performance. The μc/os-ii multi-tasking, RTOS provides flexible, efficient applications. In industrial sites, FPGAs integration capability and rich I/O resources improve the system s antiinterference capability and satisfy I/O requirements. By studying the ZA205 air-jet loom s control system, we were able to implement a Nios II-based control board. 325

Nios II Embedded Processor Design Contest Outstanding Designs 2006 Because of time and other conditions, the system is restricted to a simulated platform. We give priority to the warp tension control to implement constant tension control without overshoot, because this is a key factor affecting the cloth quality. In the system, the signals output by the photoelectric coder use the remaining FPGA resources to build a small Nios II system that generates Gray code, with the relay s control signal indicated by a LED. Function Description The air-jet loom computer control system is a typical direct digital control (DDC) system. It has four layers: collection/execution, I/O channel, main control loom, and peripheral devices. The control board belongs to the main control loom and precisely runs all organization and fittings. This section describes the ZA205 air-jet loom s control system and the control board functions. Warp Let-off To ensure continuity of the production process, the loom must be constantly supplied with tensioned warp yarns. The knitting must be drawn away from the opening while the system winds the knitting onto the roller. The system has the following controls: Tension control The servomotor controls the warp yarn tension and slack according to the signal collected by the tension sensor. This process ensures that the warp yarn s tension is controlled properly during opening, warp loosening, and warp let-off. Manual warp yarn loosening and tightening When the machine is not operating, the user can manually tighten or loosen the warp by controlling the servomotor s forward and reverse rotator. Fabric take-up control This function pulls the finished cloth away from the opening in time as required by the weft density so that the position of the opening does not vary with the new weftyarn, ensuring successful production. Crank Angle Collection The loom s crank angle is an indicator of the loom s operation state. It is collected by the 256-line absolute photoelectric coder in the signal format of binary Gray code. According to this signal, the control board indicates the loom s operational state and send commands accordingly. Picking According to the Crank Angle The air-jet loom is a shuttleless loom that inserts the weft with the airflow s frictional traction force on the weft yarn. Most air-jet looms today use main and auxiliary nozzles to relay air jetting and weft insertion. Therefore, weft insertion control mainly focuses on controlling the valve solenoid of the main and auxiliary nozzles. Main nozzle control This control draws the weft yarn from the weft feeder using a high-speed airflow and completes the first phase weft insertion. Auxiliary nozzle control The auxiliary nozzles pull out the yarns introduced by the main nozzle, relaying weft insertion. Weft stop pin control After weft insertion, this process sends the weft stop pin signal to the FDP system (weft feeder) to make it ready for the next round of picking. Nozzles cutting control Uses the electronic knives to cut the weft yarns. Main Motor Loop The main motor drives the loom by a pulley and uses a gear to drive the other mechanisms such as the cam harness mechanism, crank beating mechanism, and electric take-up mechanism. The air-jet loom s 326

Nios II-Based Air-Jet Loom System operational states are divided into quick action and slow action; the slow action can be further divided into forward and backward. This section describes control circuit functions of the main motor. Star-delta start control Starting the main motor too strongly jeopardizes the electric network and motor, so the system adopts a star-delta press reduction start mode. The system connects in a delta when starting the motor and then switches the relay when it receives the control signal from the I/O port of the control system. As the system comes up to speed, the motor connects in a star. Slow forward and reverse control When the loom needs to run slowly, the AC switches from 50 Hz to 5 Hz, so that the loom can accurately stay at a certain angle when faults such as broken warp and weft occurs. Braking control This function uses different braking methods when it receives different braking signals, such as: Emergency braking Stops the loom using the main motor while shutting off all power. Safe standstill or scram Loosens the clutch and then brakes suddenly to slow down the motor. After a while, it brakes slowly to stop the motor. Finally, it stops the motor at a certain angle by slow action. Network Remote Monitoring Function To facilitate monitoring, the loom s control system transfers its operation state and parameters into the server through the network. The following table shows the control board s I/O. Board I/O Board I/O Number of Routes Crank angle 8 Input State collection 11 Input Button signal 10 Input Main nozzles control 2 Output Auxiliary nozzles control 12 Output Weft stop pin signal 2 Output Yarn shield pin signal 2 Output Cutting nozzles control 2 Output Main motor control 8 Output Alarm light signal 4 Output Performance Parameters The control parameters are described below. Tension control density < 5% Direction Touch screen operation response time 0.1 second Speed of the simulated main motor 3,000 RPM 327

Nios II Embedded Processor Design Contest Outstanding Designs 2006 System power supply ±5 V, 10 V IPV4 data frame send frequency 10 Hz Design Architecture Figure 1 shows the control structure block diagram. Figure 1. Overall Block Diagram Touch Screen Console Button Slow Forward Emergency Braking Slow Reverse Braking Pick Finding Starting Parameter Settings State Display Server Alarm light Weft Stop Warp Stop Main Motor Automatic Stop Start/Stop M Synchronous Fast Forward, Slow Forward, Reverse Main Motor Photoelectric Coder Weft Insertion Weft Stop Synchronous Open and shut o ff all the air valve relay on time Warp Yarn Detector Air Valve Relay Warp Yarn Tension Warp Stop Tension Tighten the Warp Yarn Tighten the Warp Yarn Button Loosen the Warp Yarn Loosen the Warp Yarn M Warp Let-Off Motor Warp Stop Detector Tension Sensor Tension Figure 2 shows the warp let-off motor control block diagram. 328

Nios II-Based Air-Jet Loom System Figure 2. Warp Let-off Motor Block Diagram Manual Instruction Preset Tension Value ler Servomotor Driving Module Warp Let-Off Motor Warp Yarn Tension Sensor Figure 3 shows the hardware block diagram. Figure 3. Hardware Block Diagram GP 320 x 240 Touch Screen Server 8-Mbyte SDRAM 4-Mbyte Flash Memory EPCS16 Nios II Processor0 Main UART DM9000A SDRAM ler Common Flash Interface EPCS ler Nios II Processor1 I/O Avalon Switch Fabric CPU0 Timer CPU1 Timer CPU2 Timer On-Chip RAM SDRAM ler PLL Avalon Tri-State Bridge Relay PIO State PIO Button PIO Angle PIO Weft Picking Relay Photoelectric Coder Nios II Processor1 Gray Clutch PIO Step Motor PIO Tensility Sensor PIO LED PIO Motor PIO Main Motor Drive Module Electronic Clutch Servomotor Driver Warp Yarn Tension Sensor Module LEDs Touch Button State Sensor Figure 4 shows the main software flow. 329

Nios II Embedded Processor Design Contest Outstanding Designs 2006 Figure 4. Main Software Flow Touch Screen Operation Warp Let Off Weft Picking Initialization Initialization Initialization Inquiry Touch Screen Register Read the Data from the Tension Sensor Read the Picking Signal Is Something Entered? N Within the Preset Scope? Y Valid? Y N Y Encode the Instructions & Send Them to the Corresponding Tasks N Calculate the Tension Tuning with the Digital Algorithm Knitting Winding with Specified Speed Weft Picking Operation Reach Weft? Abnormal Deliver Warp Let Off Motor Instruction Normal Modify Weft Picking Parameter, Fault Settlement Design Methodology The design provides multi-tasking with multiple Nios II processors and shares data between the processors. It adds a variety of peripherals to the bus. See Figure 5. Figure 5. SOPC Builder 330

Nios II-Based Air-Jet Loom System The system s functions are warp yarn tension control, touch screen communication, network monitoring, main motor and nozzle control, etc. It uses three CPUs, which are described as follows: CPU0 Warp yarn tension reading, servo motor control, and nozzle control. CPU1 Touch screen and network communication. CPU2 Main motor movement simulation and Gray code generation. The following sections describe these functions. Warp Yarn Tension The following sections describe the warp yarn tension control function. Data Collection The warp yarn tension is indicated by the sensor of its pulse signal duty cycle. After the signal is reshaped by a Schmitt trigger, the system filters it to obtain the tiny DC level proportional to the tension. Then it is enlarged by a multi-stage amplifier to obtain the 0 to 3 V valid signal (after adding the DC offset). The system performs analog-to-digital (A/D) conversion of the valid signal. Because of limited I/O resources, the A/D converter selects the serial output TLC0832 device. Because the A/D converter can only work in slave mode, the system uses Verilog HDL to write the driving interface module. After A/D conversion, the sampled digital signals are sent into the shared memory for the CPUs to read. Servomotor The system compares the tension sensor reading with a preset value and then adjusts the warp let-off motor by the digital process ID (PID). The warp let-off motor is REDCOM s 57ZW-10W brushless DC servomotor that has three Hall output routes. Figure 6 shows the schematic diagram. Figure 6. Warp Let-off Motor Schematic The schematic uses Sanken s SLA6023 chip, which is used specifically for brushless DC motors. The chip is composed of three Darlington doubled pipes, as shown in Figure 7. 331

Nios II Embedded Processor Design Contest Outstanding Designs 2006 Figure 7. Sanken SLA6023 Chip Figure 8 shows the motor-driven connection lines. Figure 8. Motor-Driven Connection Lines Inverter Permanent - Magnet Synchronous Motor + ia A E DC ib - B ic C To drive the motor, the system determines the wheel rotor s position by reading the three-route Hall sensor. It controls the current direction of the A, B, and C stator winding by turning on/off the Darlington pipes according to the drive timing. The timer interruption mode uses pulse width modulation (PWM) and initializes according to the timer core s register map. The following code describes the initialization process: //Clear TO IOWR(TIMER_1_BASE,0,0x0); //Set START,CONT,ITO?start the timer and make cycle count, and //generate system interruption on the crossover point IOWR(TIMER_1_BASE,1,0x07); //Registration interruption responsive funtion alt_irq_register(timer_1_irq,edge_capture_ptr,handle_timer1_interrupts); The following code sets the count cycle in the handle_timer1_interrupts interrupt response function: IOWR(TIMER_1_BASE,2,periodl); IOWR(TIMER_1_BASE,3,periodh); Where periodl is the starting value s low count address and periodh is the high address. 332

Nios II-Based Air-Jet Loom System During program operation, the system dynamically alters the values in the two registers according to the PID-calculated output, implementing the corresponding PWM duty cycle control. Touch Screen Communications The touch screen is Digital s 37W2 6-inch blue LCD for industrial graphics, featuring 320 x 240 resolution and 16 x 12 touch keys on each screen. It also has a graphic interface development environment, which is very convenient for the user. The screen has an RS-232 communications interface, which operates slowly. So that it does not affect the overall speed, the system usually sets independent threading for the serial port reads/writes in the PC s WIN32 program. In this design, a designated CPU communicates with the screen. It polls the touch screen s registers, reads the corresponding data when there are operations, and sends operation instructions (such as starting and stopping) into the data sharing area, so that the other CPUs can perform as instructed by the instructions they receive. The user can also use the screen to change the parameters and password. The system writes data to the flash chip to initiate the touch screen when the power is on, which saves the parameters in the event of a power failure. Additionally, if the system becomes abnormal, the screen sends an instruction to control the alarm interface. Figure 9 shows the touch screen interface. Figure 9. Touch Screen Interface Warp Yarn Tension: Preset Value: 100 Actual Value: 100 Rotating Speed Display Alarm Light Primary Nozzle Angle: 30 Reaching Weft Angle: 60 Rotating Speed: 1,000 rpm Alarm Information Main Motor Start Normal Inch Turning Reverse Inch Turning Warp Let-Off Start Manual Tightening Manual Loosening Parameter Settings W eft Yarn Nozzles Trial Jetting Network Monitoring The current loom is an independent entity, requiring the workers to walk back and forth to watch the state of each loom. We tried a few methods to solve this problem, and decided to add a control system with a network monitoring function. Even without an operating system, the system can generate a network data frame, packaging the data in IPV4 frame format. Then, it delivers the data to a server via the network interface. We used Visual C++ 6.0 to develop the server side monitoring software, which displays the warp yarn tension s preset value and actual value in dynamic curves, and monitors the cooresponding loom according to its number. Figure 10 shows a section of the software, in which the green curve is the tension s preset value and the red curve is the actual value (the curve data sampling frequency is 10 Hz). 333

Nios II Embedded Processor Design Contest Outstanding Designs 2006 Figure 10. Server Monitoring Software Main Motor and Picking Nozzle The loom is driven by the main motor. Its working state is shown by the photoelectric coder on the crankshaft that is connected to the motor. To reduce the peak current pulse caused by the coding, the output codes adopt the most reliable coding method, which is binary Gray code. Our system is a simulated platform without actual photoelectric coding components. Therefore, it uses an independent CPU to simulate the main motor movements, generating 8-bit Gray codes to simulate the photoelectric coder output. Its primary task is to generate Gray codes and put them into the data sharing area according to the main motor s operational state after obtaining the touch screen operation instruction. It has four states: starting, stopping, normal inch turning, and reverse inch turning. The main CPU turns on/off the nozzles according to the Gray code value and the loom s state (simulated by the seven-segment LED). In the main motor simulation of the above tasks, the CalcGray() function we used for Gray code calculation has many cycles, is independent, and is used frequently. Therefore, we used the Altera C2H compiler and generated the SOPC Builder component accelerator_gray_generator_calcgray. SOPC Builder automatically generates the function interface for the new component, which is very convenient for the user. Design Features Our design has the following features: Achieves data sharing communication between the three Nios II processors and uses a large CPU instruction cache. Generates and delivers the IPV4 frame format network information packet. Uses the C2H compiler to perform hardware acceleration for frequently used functions. 334

Nios II-Based Air-Jet Loom System Uses many other peripherals, which are connected to the Avalon bus. The traditional multiple monolithic computers architecture are affected by electronic interference in industrial sites, and are unable to maintain a stable system. The Nios II processor integrates most of the system on a FPGA, increasing the system s stability and enhancing its antiinterference capability. This system involves the communication between modules. The configurability of the Nios II processor let us add a UART, SDRAM, the LCD interface, and a custom interface, avoiding the resources wasted by MCU applications, accelerating research and devlopment, and lowering costs. Conclusion The Altera Quartus II software and Nios II Integrated Development Environment (IDE) are revolutionary in system development. They have played a leading role in software-like-hardware design and simplified the design process. During the competition, we spent a lot of time figuring out how to initiate the multiple CPUs simultaneously. We experimented with many methods, including modifying SDRAM clock deviation, bringing a phase-locked loop (PLL) from the inside to outside of the project, modifying CPU types, and modifying the code storage position in flash. Despite the strong support we received from Altera via the MySupport site, some problems remained unresolved until the end of the competition. In the end, we modified our plan according to the advice we received, canceling one CPU that was to be used for servomotor control and only using three. Meanwhile, we integrated the tasks into the main CPU. Although this solution increases stability at system start-up, other problems occur, such as too many tasks in the main CPU and non-specific labor division. Because of these reasons, we were not able to spend enough time on software development and peripheral tuning to complete all of the functions we planned. 335

Nios II Embedded Processor Design Contest Outstanding Designs 2006 336