GB2088093A - An Automatic Position Control System for Slitters - Google Patents

An Automatic Position Control System for Slitters Download PDF

Info

Publication number
GB2088093A
GB2088093A GB8134819A GB8134819A GB2088093A GB 2088093 A GB2088093 A GB 2088093A GB 8134819 A GB8134819 A GB 8134819A GB 8134819 A GB8134819 A GB 8134819A GB 2088093 A GB2088093 A GB 2088093A
Authority
GB
United Kingdom
Prior art keywords
module
slitter
control system
mov
move
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB8134819A
Other versions
GB2088093B (en
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beloit Corp
Original Assignee
Beloit Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beloit Corp filed Critical Beloit Corp
Publication of GB2088093A publication Critical patent/GB2088093A/en
Application granted granted Critical
Publication of GB2088093B publication Critical patent/GB2088093B/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4141Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by a controller or microprocessor per axis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B26HAND CUTTING TOOLS; CUTTING; SEVERING
    • B26DCUTTING; DETAILS COMMON TO MACHINES FOR PERFORATING, PUNCHING, CUTTING-OUT, STAMPING-OUT OR SEVERING
    • B26D7/00Details of apparatus for cutting, cutting-out, stamping-out, punching, perforating, or severing by means other than cutting
    • B26D7/26Means for mounting or adjusting the cutting member; Means for adjusting the stroke of the cutting member
    • B26D7/2628Means for adjusting the position of the cutting member
    • B26D7/2635Means for adjusting the position of the cutting member for circular cutters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/195Controlling the position of several slides on one axis
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31094Data exchange between modules, cells, devices, processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41241Anti-coincidence, synchronizer
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41249Several slides along one axis
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41326Step motor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45039Slitter, scoring
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Forests & Forestry (AREA)
  • Mechanical Engineering (AREA)
  • Control By Computers (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

An automatic position control system is for a slitter which longitudinally slits a sheet, e.g. of paper, into strips. Each slitter has an upper and lower slitter station which can be moved transversely to the sheet to be cut. Each slitter includes an electronic communication module, an electronic stepping motor drive module, and a stepping motor gear box and pinion assembly for moving the slitter. Each electronic module recognises when a main control computer 53 is communicating with that module by recognising its selectable address. Communication can occur in either direction between the electronic modules and the computer. The computer can command an electronic module to carry out specific functions and also can request information from the electronic module concerning its status at a particular time. Control information can also be supplied to the computer which can rapidly move the slitters to desired locations. <IMAGE>

Description

SPECIFICATION An Automatic Position Control System for Slitters This invention relates in general to slitters for longitudinally cutting webs of paper or other material into a plurality of longitudinal strips and in particular relates to an automatic position control system for slitters.
Conventional winders require that slitter assemblies be positioned by hand. This is an inaccurate method of positioning slitters. The time required to move slitter assemblies is substantial when they are positioned by hand and thus it is desirable to move and index such slitter assemblies more accurately for saving time for cutting and winding paper. Prior art slitter systems are described in U.S.
Patent Specification No. 3,176,566 and Canadian Patent Specification No. 1,043,004.
The present invention compries an automatic position control system for slitters which operates under computer control so as to position slitter assemblies accurately and quickly. According to the invention there is provided an automatic position control system for slitters for dividing a moving web, comprising upper and lower rails mounted above and below said moving web, upper and lower racks, respectively, mounted on said upper and lower rails, a plurality of upper slitter stations with cutters mounted on said upper rail and having driving gears which engage said upper rack, a plurality of lower slitter stations with cutters mounted on said lower rail and having driving gears which engage said lower rack and said upper and lower slitter stations arranged in associated pairs so as to cut said web, a plurality of motors with one in each upper and lower slitter station and connected to said driving gears to move said upper and lower slitter stations on said upper and lower rails, a plurality of electronic control modules with different addresses and one in each upper and lower slitter station respectively, connected to one of said plurality of motors, a main control computer, a communication bus connected between said main control computer and each of said electronic control modules, and means for supplying command signals to said main control computer for positioning said upper and lower slitter stations.
In a preferred embodiment of the invention a central control computer interrogates and controls several electronic modules each located on a positioning assembly and 80 electronic modules are utilised all of which are connected to the same sixteen wires.
Each of the positioning assemblies has 1) an electronic communication module, 2) an electronic stepping motor drive module and 3) a stepping motor, gear box and pinion assembly.
Each of the electronic modules can recognize its address when the main control computer desires to communicate with that particular module. Each electronic communication module has a switch selectable identification number address which is unique to that particular module. The main control computer determines with which module it desires to communicate and addresses that module to initiate the communication. Such communication can be in either direction in that the main control computer can command an electronic module to carry out specific functions and can also request information from an electronic module so as to determine its status at a particular time.
By communicating with and issuing orders to a number of electronic modules in an orderly fashion under acomputer program the main control computer systematically controls and moves assemblies to the desired locations.
The use of bus conductors in the machine tool and slitter industries to position large numbers of independently powered mechanical assemblies is novel.
An example of a typical communication sequence required to position mechanical assemblies is as follows. If the main control computer desires to move a particular assembly 8" to the right and a second assembly 4" to the left, the following is an illustration of the manner in which the system of the invention accomplishes this task.
1. The main control computer (MCC) sends a signal to the electronic module (EM) in the first assembly to enable itself for accepting communication.
2. The main control computer issues a signal to a first electronic module to enable itself for a move in the direction to the right.
3. The main control computer informs the second module to enable itself to accept communication.
4. The main control computer issues instructions to the second module to enable itself for a move in the left direction.
5. The main control computer generates step commands to move both of the modules 4" (800 steps).
6. The main control computer tells the second module to enable itself to accept communication.
7. The main control computer tells the second module to disconnect itself since it has moved the total of 4" which was required.
8. The main control computer knowing that it must move the first module another 4" and also knowing that it has already disconnected the second module so that it will not move any further generates the remaining step commands and supplies them to the first module to move it the remaining 4".
9. The main control computer informs the first electronic module to prepare itself to accept a communication.
10. The main control computer informs the first module to disconnect itself since its move has now been completed.
1 The main control computer then proceeds with other business as to the various electronic modules.
The total time for completing steps 1, 2, 3,4, 6, 7, 9 and 10 is about 0.0005 seconds. Steps 5 and 8 each take about 1 second (assuming movement is approximately 4" per second).
If a slitter machine had five stations, the time to move all five stations to new positions for the next cut, takes about 10 seconds. This is in contrast to conventional winder machines wherein the set up of five stations to new positions takes up to 10 minutes. Thus, the invention provides substantial savings and time over systems of the prior art.
The following is a detailed description of embodiments of the invention, reference being made to the accompanying drawings in which: Figure 1 is a front plan view of two slitter stations, Figure 2 is an electronic block diagram illustrating a central computer and its connection to various modules, Figure 3 is a block diagram of the positioner module, and Figures 4 to 59 comprise flow diagrams of the control system.
Figure lisa front plan view of two slitter stations of a slitter machine which can be used, for example, for longitudinally slitting paper or other material. The first slitter assembly comprises an upper slitter station 40 which moves on a rail 10 that is provided with a rack 11 for indexing purposes. A housing 16 is movably mounted on the rail 10 and carries a frame member 13 with a cutting blade 12 for the top slitter station 40. A gear box 18 carries a gear which mates with the rack 11 and receives an input from a motor 19 such that when the motor 19 is energised the housing 16 and the associated blade 12 can be moved longitudinally along the rail 10. A top slitter station electronic module 50 is carried by the housing 16.A lower rail 27 has a rack 28, and a band 14 which mates with the blade 12 to shear the paper at the surface between the blade 12 and the band 14 is carried by a frame member 25 which also supports a motor 29 for driving the band and carries a gear box 31 and a motor 32 which is connected to a gear that mates with the rack 28 for moving the band transversely on the rail 27. A bottom slitter station 60 contains an electronic module for controlling the band 14.
A second top slitter station 80 carries a blade 21 which is mounted on a frame 22 which is supported on a member 23 mounted for movement relative to the rail 10. A gear box 24, motor 26 and top slitter electronic module 42 are carried by the frame member 23. A lower slitter station 85 carries a band 33, motor 34 and has a frame member 30 which is movable transversely of the rail 27. A motor 37 and gear box unit 36 and a bottom slitter electronic module 43 complete the lower slitting station 85. It is to be realised of course that a number of other top and bottom slitter units may be mounted and carried by the rails 10 and 27.
Figure 2 illustrates the communication and power arrangement between a main processor 53 which is located at an operator console 80 which also has a monitor 51 and input buttons or keys 52.
The main processor 53 is connected to each of the top and bottom slitter stations 50,42, 90, 60,43 and 95 as illustrated in Figure 2 by a communication bus 55 and a power bus 54. In a particular system constructed according to the invention, the communication bus comprised 10 wires and the power bus 54 comprised six wires. As shown in Figure 2, the communication bus is connected by segment 64 to top slitter station 50, segment 67 to top slitter station 42, segment 69 to top slitter station 90 as well as by segments 63, 66 and 68 to bottom slitter stations 60,43 and 95. The power bus is connected by segments 57, 59 and 62 to the top slitter stations 50, 42 and 90, respectively and by segments 56, 58 and 61 to the bottom slitter stations 60, 43 and 95.
Figure 3 is a detail view of the top slitter station 50 which comprises an electronic communication module 71 which is connected by segment 64 of communication bus 55 with the main processor 53 as well as with its associated bottom slitter station 60 as well as with the other modules.
The electronic communication module 71 also receives an input on segment 57 of power bus 54 and supplies output to a step motor drive 72 which is connected to a step motor 19 which moves the blade 12 relative to the rail 10. An encoder 73 provides a feedback signal to the electronic communication module 71. A home limit switch 74 also supplies an input to the electronic communication module 71 and a manual move switch 76 directly provides an input to the electronic communication module 71 to move the blade 12 manually. A blade wear switch 77 also provides an input to the electronic communication module.
Each electronic module has the capability of recognising when the main processor wishes to communicate with that particular module and each electronic module has a switch selectable identification number or address which is unique. The main processor decides which module it wishes to communicate with, addresses that module, then communicates with that module. This communication can be in either direction. The main control processor can command an electronic module to accomplish a specific job and can also ask an electronic module questions concerning its status at a particular time. By communicating with a number of electronic modules in an orderly fashion the main processor systematically moves the cutter blades and associated bands to desired locations.The following program and accompanying flow diagrams detail the operation of the main processor and the electronic modules for both the top and bottom stations.
Auto Position Slitters Monitor and Communication Program Table of Contents A-INTRODUCTION MEMORY MAP AND EXPLANATION OF VARIABLES C-VECTORS AND MAIN PROGRAM D-INTERRUPT HANDLING ROUTINES E-READ ROUTINES WRITE ROUTINES G-GENERAL SUBROUTINES H-COMMUNICATION SUBROUTINES I-ASSEMBLED VERSION The function of the following set of routines is to monitor the status of all of the modules Qf an auto position slitter unit, and to execute any motions requested by either the main processor or by the modules themselves.The program operates through the following principles: 1) A monitor program continuously checks the status of all modules, and executes various updating routines based on the status read 2) The main processor (A Z8080) communicates with the modules through this processor. Any attempt to read or write information generates an interrupt in the 8085. The interrupt handling routines in this program process these requests and then return to the monitor routine.
3) Both (1) and (2) utilise a common pool of subroutines.
MEMORY MAP: I) ROM ADDRESSES 0000 to 07FF 000-RESTART 002C-lNTERRUPT 5.5 0034-INTERRUPT 6.5 003C-INTERRUPT 7.5 0040-BEGINNING OF PROGRAM II) RAM (ADDRESSES 0800 TO 08FF) 0800 TO 08FF-PRESENT POSITION ARRAY 0900 TO 09FF-FUTURE POSITION ARRAY 0A00 to OAOF--AUTO MOVE REQUEST ARRAY 0A10-N OA11--STATB 0A1 2-CONTB OA13--LATCH OA14--MODNM OA15--NPAIR 0A1 6-NUMON OA 17--SMALL OA19--LOSS OBFF--INITIAL TOP OF STACK III) SPECIAL PURPOSE ADDRESSES 1 400=DATAB 1800=ALSB 1 FF2=COMM I FF4=SWTCH Variables:: Present Position Array This is an array which holds the positions of all of the modules. Positions are measured in units of pulses from the home position (1 PULSE=.005 Inches). All positions are positive, and require two bytes. However, since modules move in pairs, only one position is required for every two modules.
Positions are stored least significant byte first, most significant byte second.
Example: If module No. 7 is A0 10 pulses from home, then the seventh byte in the array is 10, and the eighth byte is AO.
Future Position Array This array is identical to the present position array, except it contains the future positions of the module pairs. When a move is executed, all modules move to their future positions.
Auto Move Request Array This is a 1 OH byte array in which each bit corresponds to a different module pair. (Bit zero on the first byte corresponds to modules 0 and 1, bit one to 2 and 3, etc). This bit is set if a particular module pair is to be moved. It is set when the future position is entered, and reset after the move.
N This byte stores the total number of modules on line.
STATB This byte stores the status of a given module. The meaning of the various bits of status byte is given at the end of this section.
CONTB This byte holds the command to be given to a module. The function of the various bits of a control byte is given at the end of this section.
LATCH This byte is used to indicate various internal states of the program. The function of the various bits of the latch byte is given at the end of this section.
MODNM This byte holds the module number which the main processor is concerned with. For example, if the main processor requests to enter a future position, it is entering the future position of module number MODNM.
NPAIR This byte holds the first even number which is greater than or equal to N. This variable ensures that all modules move in pairs.
NUMON This byte holds the number of modules which must move. When this byte is zero, all modules have moved to their future positions.
SMALL This is a two byte variable used to store the smallest distance any module has to move. The least significant byte is stored in SMALL, and the most significant byte is stored in SMALL+1.
LOSS This is a two byte variable which holds the two's complement of loss. The LSB is stored in LOSS, and the MSB is stored in LOSS+1.
DATAB This is the data bus for the main processor. Any time the main processor requests to read or write information, the data should be transferred to or from DATAB.
ALSB This is the least significant byte of the address bus of the main processor. In the main processor, reading to and writing from specific memory locations should cause the 8085 to perform specific functions. The data in ALSB should indicate to the 8085 which function to perform.
COMM This memory location is used to communicate with the modules.
SWTCH This memory location is used to enter the number of pulses which the pulse generator should produce. The least significant byte is entered at SWTCH, and the most significant byte is entered at SWTCH+ 1. Entering the most significant byte causes the pulse generator to begin generating pulses.
STATUS BYTE:
BIT No.
0-FAULT (1 =FAULT OCCURRED) 1 2-HOME (1=MODULE IS HOME) 3-LOCAL CUTTER DISABLE (1=DISABLED) BIT 4 SET BY 8085 4-AUTO MOTION COMPLETED (1=DONE) 5-MANUAL MOVE REQUEST LEFT (0=REQUEST) 6-MANUAL MOVE REQUEST RIGHT (0=REQUEST) 7-TEST BIT CONTROL BYTE:
BIT No.
0 1-GRANT REQUEST LEFT (0=REQUEST GRANTED) 2-GRANT REQUEST RIGHT (0=REQUEST GRANTED) 3-DISABLE CUTTER REMOTE (1=DISABLED) 4 5-CONNECT MODULE LEFT (1 =CONNECT) 6-CONNECT MODULE RIGHT (1=CONNECT) 7-TEST BIT LATCH BYTE:
BIT No.
0-MANUAL MOVE (1=MANUAL MOVE IN PROGRESS) 1-MANUAL MOVE FAIL (1=FAULT ON MANUAL MOVE) FAULT READ (0=FAULT ACKNOWLEDGED) 3-AUTO MOVE (1=AUTO MOVE IN PROGRESS) 4-READ ERROR (1=READ ERROR OCCURRED) WRITE ERROR (1=WRITE ERROR OCCURRED) 6-MANUAL MOVE RIGHT (1=LAST MANUAL MOVE WAS TO THE RIGHT) 7 Variables and Initial Data ORG 0800H PRES: DS 100H FUTR: DS 1 QOH AUTMV: DS 10H N: DB 00H STATB: DB OOH CONTB: DB 00H LATCH: DB OOH MODNM: DB OOH NPAIR: DB 00H NUMON: DB 00H SMALL: DW 0000H LOSS: DW 0000H TOP EQU OBFFH COMM EQU 1FF2H ALSB EQU 1800H DATAB EQU 1400H SWTCH EQU 1FF4H END Vectors ORG 0000H JMP STRT : START ORG 002CH JMP RINT : RESTART 5.5 ORG 0034H JMP WINT :RESTART 6.5 ORG 003CH JMP PINT RESTART 7.5 Main Program The purpose of this program is to monitor the status of the positioning modules of the autoposition slitters. This is accomplished by checking the status of each slitter in turn. If a fault (any kind of unexpected motion or lack of motion) is detected this processor interrupts the main processor and reports the fault. If a module sends a manual move request (a local attempt to move the module), both the module and its partner are moved until either a fault is detected or the manual move is completed.
This routine also records the position of the modules in an array known as the "present position array". If a module's status indicates that it is in the home position (defined by a switch in the module) then its position is set to zero. After a manual move, the distance the module moved is either added or subtracted (depending on the direction of motion) to its present position.
Note that because this is a monitor program, it does not terminte but continuously cycles.
For further details, consult the documentation manual for this program.
Subroutines called- Break Cout Cpout Fout Part Ppadd Pulse Sin Spin Updat ORG 0040H INITIALISATION STRT: LXI SUP, TOP MVI A,08H DB 30H : UMASK ALL INTERRUPTS XRA A STA LATCH STA N STA STATE STA CONTE STA MODNM STA NPAIR STA NUMON MUI B,1OH LXI H, AUTMV MCLR: MOV M, A CLEAR AUTO MOVE REQUESTED ARRAY INX H OCR B JNZ MCLR MAIN ROUTINE El MAIN: LDA N WAIT UNTIL N IS NOT ZERO ANA A (THROUGH AN INTERRUPT) JZ MAIN MOV B, A SET B TO HIGHEST MODULE NUMBER MN EXT: DCR B (B)=CURRENT MODULE NUMBER CALL SIN CHECK STATUS OF MODULE B LDA STATE ANI 01 H ANY FAULTS DETECTED JNZ MFALT :IF YES, GO TO MFALT LDA STATE CMA ANI 60H IS A MANUAL MOVE REQUESTED? JZ MO CPl 60H JNZ MANMV IF YES, EXECUTE IT MO: LDA STATE ANI 04H IS THE MODULE IN HOME POSITION? JZ M1 IF NO, GO ON TO NEXT MODULE CALL PPADD IF YES, UPDATE PRESENT POSITION ARRAY MVI M, OOH INX H MVI M,OOH ML: El MOV A, B ANA A IS BE THE LAST MODULE7 JNZ MNEXT IF NO, GO ON TO NEXT MODULE JMP MAIN IF YES, START OVER MANUAL MOVE WAS REQUESTED MAN MV: CALL FOUT NOTIFY THE MAIN PROCESSOR LXI D, 0000H (DE)=NUMBER OF PULSES COUNTED LXI H, COMM ((HL)): BIT ZERO INDICATES RISING PULSE CALL PART C=PARTNER MODULE NUMBER LDA STATE CMA ANI 60H ORI OBH STA CONTR ANI 40H LDA LATCH WAS NEGATIVE DIRECTION REQUESTED? JZ MPOS ORI 40H IF YES, SET NEGATIVE LATCH JMP MSIGN MPOS:ANI OBFH IF NO, RESET NEGATIVE LATCH MSIGN: ORI 01 H SET MANUAL MOVE LATCH STA LATCH CALL CPOUT CONNECT PARTNER MODULE (No. C) LDA STATE ANI 60H RRC RRC RRC RRC ORI 08H STA CONTB CALL COUT APPROVE REQUEST OF MODULE (No. B) MCYCL: CALL PULSE: WAIT FOR A PULSE CALL SIN CHECK STATUS OFF MODULE B LDA STATE ANI 01H WERE ANY FAULTS DETECTED? JNZ MFALT IF YES, GO TO MFALT LDA LATCH ANI 40H JNZ MTEST ORI 20H PREPARE TEST BYTE MTEST: PUSH B MOV B,A LDA STATE ANI 60H JZ MTES1 CMA ANI 60H CMP B IS MANUAL MOVE STILL REQUESTED7 MTES1: POP B JNZ MANFM : IF NO, COMPLETE THIS MOVE CALL PULSE : WAIT FOR A PULSE CALL SPIN : CHECK STATUS OF PARTNER LDA STATE ANI 01 H WERE ANY FAULTS DETECTED7 JNZ MPFLT IF YES, GO TO MPFLT JMP MCYCL IF NO, CONTINUE THE MOTION FAULT WAS DETECTED IN MODULE No.B MFALT: LDA LATCH ANI 01 H WAS A MANUAL MOVE IN PROGRESS7 JZ MAUTO IF NO, REPORT FAULT TO MAIN PROCESSOR CALL BREAK IF YES, DISENGAGE MANUAL MOVE LDA LATCH ANI OFEH RESET MANUAL MOVE LATCH ORI 02H SET MANUAL MOVE FAIL LATCH STA LATCH CALL UPDAT : UPDATE POSITION ARRAY MAUTO: CALL FOUT REPORT FAULT JMP M1 CONTINUE ON TO NEXT MODULE FAULT IN PARTNER DETECTED MPFLT: CALL BREAK DISENGAGE MANUAL MOTION M3: LDA LATCH ANI OFEH RESET MANUAL MOVE LATCH ORI 02H SET MANUAL MOVE FAIL LATCH STA LATCH CALL UPDAT UPDATE PRESENT POSITION ARRAY PUSH B MOV B,C CALL FOUT REPORT PARTNER FAULT POP B JMP M1 CHECK NEXT MODULE COMPLETION OF MANUAL MOVE MANFN:CALL BREAK DISENGAGE MANUAL MOTION CALL SPIN LDA STATE ANI 01 H WERE ANY FAULTS DETECTED IN PARTNER) JNZ M3 IF YES, HANDLE THEM LDA LATCH IF NO, RESET MANUAL MOVE AND ANI OFCH MANUAL MOVE FAIL LATCHES STA LATCH CALL UPDAT UPDATE PRESENT POSITION ARRAY JMP M1 CHECK NEXT MODULE END OF MAIN PROGRAM Figures 4 to 11 comprise flow charts for the Main Program.
Interrupt Handling Routines The main processor for the aps sends commands to and receives data from the modules by writing to and reading from certain memory locations. This action will cause an interrupt condition to occur in the 8085 processor.
The following routines are used to process these interrupts. The least significant byte of address which the main processor references is viewed as data by the 8085, and is used to determine which function the interrupt serves.
Data is passed to and from the main processor through address "DATAB".
Another interrupt is generated when the pulse generator has finished a motion.
The purpose of this routine is to route the various interrupts to their proper handling routines.
No registers are ever changed in an interrupt routine.
Note-the terms "READ" and "WRITE" refer to the perspective of the main processor. Thus, a "READ" routine generates data, while a "WRITE" routine receives data.
Read Interrupt Handler Executed from INT 5.5 RINT: PUSH PSW : SAVE STATUS AND REGISTERS PUSH B PUSH D PUSH H LDA ALSB CPl 08H VALID READ COMMANDS JC RERR JZ STEST 08=SYSTEMS TEST CPI OAH JC RERR JZ RSB OA=READ STATUS BYTE CPI OCH JC RFMOD OB=READ FAULT MODULE NUMBER JZ RFB OC=READ FAULT BYTE CPI OEH JC RLB OD=READ LATCH BME JZ RPLSB OE=READ POSITION (LSB) CPl OFH JZ RPMSB OF=READ POSITION (MSB) JMP RERR ANY OTHER COMMAND IS AN ERROR Figures 12 and 1 3 comprise flow charts for interrupt handler and read handler.
Write Interrupt Handler Executed from INT 6.5 WINT: PUSH PSW : SAVE STATUS AND REGISTERS PUSH B PUSH D PUSH H LDA ALSB VALID WRITE COMMANDS CPl 01H JC WMOD O0=LOAD CURRENT MODULE NUMBER JZ WHOME 01=SEND ALL MODULES HOME CPl 03H JC WPLSB 02=WRITE NEW POSITION (LSB) JZ WPMSB 03=WRITE NEW POSITION (MSB) CPI 04H JZ WNUM 04=WRITE NUMBER OF MODULES CPl 06H JC CUTTR : 05=RAISE OR LOWER CUTTER JZ WCB : 06=WRITE CONTROL BYTE CPl 07H JZ EXEQT 07=EXECUTE MOTION JMP WERR ALL OTHERS ARE ERRORS Figures 14 and 1 5 comprise flow chart for interrupt handling and read handler.
Pulse Interrupt Handler Executed from INT 7.5 PINT: PUSH PSW LDA LATCH ANI OF7H RESET AUTO MOVE LATCH STA LATCH POP PSW RET RETURN FROM INTERRUPT ROUTINE RFINT: POP H POP D POP B RESTORE STATUS AND REGISTERS POP PSW El ENABLE INTERRUPTS RET ERROR HANDLING ROUTINES READ ERROR RERR: LDA LATCH PUSH PSW SAVE ORIGINAL LATCH BYTE ORI 1 OH SET "READ ERROR OCCURRED" LATCH JMP IERR WRITE ERROR WERR: LDA LATCH PUSH PSW : SAVE ORIGINAL LATCH BYTE ORI 20H SET "WRITE ERROR OCCURRED" LATCH BOTH ERRORS IERR: STA LATCH LDA N MOV B, A CONDITION FOR R/W ERROR (B=NUMBER OF MODULES) CALL FOUT REPORT ERROR TO MAIN PROCESSOR POP PSW STA LATCH : RESTORE LATCH JMP RFINT : RETURN FROM INTERRUPT Figure 1 6 is the flow chart for interrupt handling routines pulse handler.
Figure 17 is the flow chart for interrupt handling routines return from interrupt.
Figure 18 is the flow chart for interrupt handling routines error handling.
Read Routines Routine STEST This routine will be used to test the system. Its exact function has not yet been established.
STEST: STA DATAB JMP RFINT Routine RSB This routine allows the main processor to read the status of the module whose identification number is stored in location MODNM.
INPUT CONDITIONS- (MODNM)=MODULE NUMBER OUTPUT CONDITIONS- STATUS BYTE IS SENT TO MAIN PROCESSOR SUBROUTINES CALLED- SIN RSB: LDA STATB PUSH PSW PRESERVE OLD STATUS WORD LDA MODNM MOV B, A (B)=REQUIRED MODULE NUMBER CALL SIN GET STATUS OF MODULE B LDA STATB STA DATAB : OUTPUT STATUS BYTE TO MAIN PROCESSOR POP PSW STA STATB : RESTORE STATUS BYTE JMP RFINT Figure 1 9 is the flow chart for routine "RSB".
Routine RFMOD This routine allows the main processor to read the module number which caused the fault. Note that if this number is equal to the number of modules, then the fault was caused by a read/write error.
INPUT CONDITIONS- (B)=MODULE NUMBER CAUSING FAULT OUTPUT CONDITIONS- MODULE NUMBER SENT TO MAIN PROCESSOR SUBROUTINES CALLED- NONE RFMOD: MOV A, B STA DATAB OUTPUT MODULE NUMBER TO MAIN PROCESSOR JMP RFINT Figure 20 is the flow chart for routine "RFMOD".
Routine RFB This routine allows the main processor to read the status byte of the module causing the fault.
Note that on a read/write error, the byte read has no significance, but must be read to reset a latch.
INPUT CONDITIONS- (STATB)=FAULT BYTE OUTPUT CONDITIONS- FAULT BYTE SENT TO MAIN PROCESSOR FAULT ACKNOWLEDGMENT LATCH (BIT NUMBER 2 OF "LATCH") IS RESET SUBROUTINES CALLED- NONE RFB: LDA STATB STA DATAB OUTPUT FAULT BYTE LDA LATCH ANI OFBH RESET FAULT ACKNOWLEDGMENT LATCH STA LATCH JMP RFINT Figure 21 comprises the flow chart for routine "RFB".
Routine RLB This routine allows the main processor to read the byte at location "LATCH". For a complete description of the latch byte, see the documentation manual.
INPUT CONDITIONS- NONE OUTPUT CONDITIONS- LATCH BYTE IS SENT TO MAIN PROCESSOR SUBROUTINES CALLED- NONE RLB: LDA LATCH STA DATAB OUTPUTLATCHBYTE JMP RFINT Figure 22 is the flow chart for routine "RLB".
Routines RPMSB and RPLSB These two routines allow the main processor to read the present position of the module whose identification number is in location MODNM. Distances are measured in units of pulses, where one pulse=.005 inches. The position is stored in the array pres in two consecutive memory locations. The first is the least significant byte, and the second is the most significant byte. RPLSB sends the first one to the main processor, and RPMSB sends the second.
INPUT CONDITIONE-- POSITION IS STORED IN ARRAY PRES (MODNM)=MODULE NUMBER OUTPUT CONDITIONS-- APPROPRIATE BYTE SENT TO MAIN PROCESSOR SUBROUTINES CALLER PPADD RPMSB: LDA MODNM MOV B, A (B)=CURRENT MODULE NUMBER CALL PPADD INX H ((HL))=PRESENT POSITION (MOST SIGNIFICANT BYTE) JMP RPOS RPLSB: LDA MODNM MOV B, A . (B)=CURRENT MODULE NUMBER CALL PPADD : ((HL))=PRESENT POSITION (LEAST SIGNIFICANT BYTE) RPOS: MOV A, M STA DATAB : OUTPUT APPROPRIATE BYTE JMP RFINT Figure 23 is the flow chart for routines RPMSB and RPLSB.
Write Routines Routine WNUM This routine allows the main processor to enter the total number of modules which are on line.
This number is stored in location N. Note that this routine must be executed before the monitor program will begin checking status.
INPUT CONDITIONS- NONE OUTPUT CONDITIONS- (N)=NUMBER OF MODULES ON LINE SUBROUTINES CALLED- NONE WNUM: LDA DATAB INPUT NUMBER OF MODULES STA N JMP RFINT Figure 24 is the routine for "WNUM".
Routine WMOD This routine allows the main processor to enter the identification number of a module. This number will be used in subsequent read/write operations. The data will be stored in location N.
INPUT CONDITIONS- NONE OUTPUT CONDITIONS- (N)=MODULE NUMBER SUBROUTINES CALLED- NONE WMOD: LDA DATAB : INPUT MODULE NUMBER STA MODNM JMP RFINT Figure 25 is the flow chart for routine "WMOD".
Routines WPLSB and WPMSB These routines allow the main processor to enter the new position of the module whose identification number is stored in location MODNM. This position is stored in a future position array located at FUTR. Like the present position array, numbers are stored in FUTR in two bytes: first the least significant byte, then the most significant byte. WPLSB stores the least significant byte, and WPMSB stores the most significant byte.
WPMSB also affects an array known as the auto move request array. Each bit in this array corresponds to a different module pair. WPMSB will set the appropriate bit, which will eventually be used to decide if the module pair should be moved.
INPUT CONDITIONS- (MODNM)=MODULE NUMBER OUTPUT CONDITIONS- FUTURE POSITION STORED IN ARRAY FUTR BIT IN AMR ARRAY SET (AFTER WPMSB) SUBROUTINES CALLED- AMRAD FPADD WPLSB: LDA MODNM MOV B, A (B)=CURRENT MODULE CALL FPADD ((HL))=FUTURE POSITION (LSB) LDA DATAB GET BYTE FROM MAIN PROCESSOR AND MOV M, A STORE IT IN MEMORY JMP RFINT WPMSB: LDA MODNM MOV B, A (B)=CURRENT MODULE CALL FPADD INX H ((HL))=MSB OF FUTURE POSITION LDA DATAB GET BYTE FROM MAIN PROCESSOR AND MOV M, A STORE TIN MEMORY CALL AMRAD ORA M MOV M, A SET BIT IN AUTO MOVE REQUESTED JMP RFINT ARRAY Figures 26 and 27 are the flow charts for routines "WPLSB" and "WPMSB".
Routine Cutter This routine allows the main processor to raise or lower the cutter of the module (and its partner) whose identification number is located in location MODNM. To raise the cutter, the main processor should write "08H" into memory. To lower the cutter the main processor should write "OOH" into memory.
INPUT CONDITIONS- (MODNM)=MODULE NUMBER OUTPUT CONDITIONS- (CONTB) IS CHANGED CUTTER IS MOVED SUBROUTINES CALLED- COUT CPOUT PART CUTTR: LDA DATAB ANI 08H (DATAB)=08H FOR RAISING CUTTER ORI 06H AND OOH FOR LOWERING CUTTER STA CONTB LDA MODNM MOV B, A . (B)=CURRENT MODULE CALL PART : (C)=PARTNER MODULE CALL COUT : RAISE OR LOWER CURRENT MODULE CALL CPOUT : RAISE OR LOWER PARTNER - JMP RFINT Figure 28 is the flow chart for routine "CUTTR".
Routine WCB This routine allows the main processor to write a control byte directly to the module whose identification number is stored in location MODNM. For further information on control bytes, consult the documentation manual.
INPUT CONDITIONS- (MODNM)=MODULE NUMBER OUTPUT CONDITIONS- (CONTB)=DATA FROM MAIN PROCESSOR SUBROUTINES CALLER COUT WCB: LDA MODNM MOV B, A (B)=CURRENT MODULE LDA DATAB (DATAB)=DESIRED CONTROL BYTE STA CONTB CALL COUT OUTPUT COMMAND JMP RFINT Figure 29 is the flow chart for routine "WCB".
Routine WHOME This routine allows the main processor to send all modules to the home position. This is accomplished by first moving all modules to the right 62 inches, since the modules cannot (except by intertial effects) move past their home positions, they will all stop when they reach that point.
A correction is made for any overshooting due to momentum by backing all modules out + inch and moving them back slowly to the home position.
This routine also initialises the present position array, and interrupts the main processor.
INPUT CONDITIONS- (N)=NUMBER OF MODULES OUTPUT CONDITIONS- (CONTB)=DEH ARRAY PRES=0 UP TO NTH ELEMENT MAIN PROCESSOR INTERRUPTED SUBROUTINES CALLED- ENDAM MASMV UNITY WHOME: LDA DATAB COMPLETE "READ" OPERATION LDA N ANI 01H LDA N JZ W1 DOES LAST MODULE HAVE AN ACTIVE PARTNER7 INR A IF NO, ACTIVATE PARTNER W1:STA NPAIR MV1 A, OEH MASK INTERRUPTS 5.5 AND 6.5 DB 30H MV1 A,4EH CALL UNITY LXI H,3070H CALL MASMV MOVE ALL MODULES 62 INCHES NEGATIVE (HARD ZERO) MVI A, ZEH CALL UNITY LXI H,0064H CALL MASMV BACK ALL MODULES OFF + INCHES MVI A, 4EH CALL UNITY LXI H,0050H CALL MASMV MOVE ALL MODULES .4 INCHES NEGATIVE LXI H,OO1EH CALL MASMV MOVE ALL MODULES BACK HOME MV1 A, OEH (SOFT ZERO) CALL UNITY LDA NPAIR LX1 H, PRES DCR A MVI M,OOH INX H JNZ W2 MVI A, 08H DB 30H UNMASK ALL INTERRUPTS CALL ENDAM INFORM MAIN PROCESSOR THAT MOVE IS DONE JMP RFINT Figures 30, 31 and 32 are the flow charts for routine "WHOME".
Routine EXEQT This routine allows the main processor to actually execute any moves which were entered through a "write position" command. This is accomplished by first checking to see which modules must be moved, and connecting these to the pulse generator so that they will move in the desired direction. The future position array is replaced with the distances which the modules have to move, with zero being entered for those modules not moving. All modules connected are then moved the smallest of all these distances, and the distance moved is substracted from all the remaining distances. Those modules which have reached their goal are then disconnected and the procedure is repeated until all modules have reached their goals.
This routine also updates the present position array, and interrupts the main processor when done.
INPUT CONDITIONS- ALL ARRAYS PRESET FOR MOVE (N)=NUMBER OF MODULES OUTPUT CONDITIONS- MOTION COMPLETED ARRAYS FUTR AND AUTO MOVE ARE CLEARED ARRAY PRES IS UPDATED (SMALL)="FFFFH" (NUMON)="OOH" LOSS NPAIR CONTB ARE MODIFIED MAIN PROCESSOR IS INTERRUPTED SUBROUTINES CALLED- AMRAD COUT CPOUT ENDAM FPADD LEAST PART PPADD TWOSC EXEQT: LDA DATAB : COMPLETE "WRITE" OPERATION MVI A, OBH DB 30H MASK INTERRUPTS 5.5 AND 6.5 MVI A, OOH STA NUMON NUMON=NUMBER OF MODULES ACTUALLY MOVING LXI H, OFFFFH SHLD SMALL (SMALL)=SMALLEST DISTANCE ANY MODULE MUST MOVE LDA N ANI 01H LDA N (N)=NUMBER OF MODULES ON LINE JZ EO (IF LAST MODULE'S PARTNER INR A IS NOT ON LINE INCLUDE IT EO: STA NPAIR IN MOTION) MOV B,A El:DCR B DCR B CALL AMRAD ANA M . IS MODULE B TO BE MOVED7 JZ NOMOV : IF NO, SKIP IT CALL PPADD MOV E,M INX H MOV D,M PUSH D CALL FPADD MOV E,M INX H (DE)=FUTURE POSITION OF MODULE B MOV D,M CALL PPADD MOV M, F INX H UPDATE PRESENT POSITION ARRAY WITH MOV M, D FUTURE POSITION POP H (HL)=PRESENT POSITION OF MODULE B MOV A, H CMP D JNZ E2 IS PRESENT POSITION=FUTURE MOV A, L POSITION7 CMP E JZ NOMOV IF YES, SKIP THIS MODULE E2: CALL TWOSC DAD D SUBTRACT FUT POS FROM PRES POS XCHG JC EXNEG IS RESULT POSITIVE7 CALL PPADD MOV A,M ANA A JNZ EXPOS OR WAS DESTINATION HOME POSITION7 INX H MOV A,M ANA A JZ EXNEG EXPOS: CALL TWOSC IF NO, TAKE ABSOLUTE VALUE OF DIFFERENCE AND CONNECT IN MVI A2 EH POSITIVE DIRECTION JMP E3 EXNEG:MVI A, 4EH IF YES, CONNECT IN NEGATIVE DIRECTION DIRECTION E3: STA CONTB (RAISE CUTTER IN EITHER CASE) CALL FPADD STORE DISTANCE (=(DE)) IN MOV M, E FUTURE POSITION ARRAY INX H MOV M, D LDA NUMON INR A INCREMENT NUMBER OF MODULES MOVING STA NUMON CALL LEAST IF (DE) < (LEAST), REPLACE LEAST WITH (DE) JMP E4 NOMOV: MVI A, OOH CALL FPADD MOV MA INX H SET DISTANCE=0 MOV M,A MVI A, OEH DISCONNECT MODULES AND RAISE CUTTERS STA CONTB E4: CALL PART (C)=B'S PARTNER CALL COUT EXECUTE COMMAND TO MODULE CALL CPOUT EXECUTE COMMAND TO PARTNER MOV A,B ANA A HAVE ALL MODULES BEEN CHECKED? JNZ El IF NO, CHECK NEXT MODULE MVI A, OEH STA CONTB E5: LDA NUMON ANA A ARE ANY MODULES CONNECTED7 JZ EXIT IF NO, EXIT ROUTINE LDA LATCH ORI 08H IF YES, SET AUTO MOTION LATCH STA LATCH LHLD SMALL SMALL IS DISTANCE TO BE MOVED El SHLD SWTCH INITIATE MOTION XCHG CALL TWOSC XCHG SHLD LOSS : (LOSS)=-(DISTANCE MOVED) LXI H, OFFFFH SHLD SMALL SMALL INITIALISED FOR NEXT MOTION LDA NPAIR MOV B, A BEGIN CALCULATIONS FOR NEXT MOTION E6: DCR B DCR B CALL FPADD MOV E,M INX H (DE)=OLD DISTANCE MODULE HAD TO MOVE MOV D,M MOV A,D ANA A JNZ E7 WAS THIS DISTANCE ZERO? MOV A,E ANA A JZ ESKIP IF YES, SKIP THIS MODULE E7:LHLD LOSS DAD D OTHERWISE SUBTRACT DISTANCE MOVED XCHG CALL FPADD STORE NEW DISTANCE IN FP ARRAY MOV M,E INX H MOV M,D MOV A,D ANA A IS NEW DISTANCEZERO? JNZ E8 MOV A, E ANA A JNZ EB LDA NUMON IF YES, DECREMENT THE NUMBER CONNECTED DCR A STA NUMON JMP ESKIP E8: CALL LEAST IF NO, DETERMINE IF DISTANCE IS THE SMALLEST FSKIP: MOV A, B ANA A .IS THIS THE LAST MODULE? JNZ E6 : IF NO, GO TO NEXT ONE EWAIT: LDA LATCH ANI 08H WAIT UNTIL MOTION HAS STOPPED JNZ EWAIT LDA NPAIR MOV 8,A E9: DCR B DCR B CALL FPADD MOV A,M ANA A JNZ E10 IS REMAINING DISTANCE ZERO? INX H MOV A,M ANA A JNZ E10 CALL PART CALL COUT : IF YES, DISCONNECT MODULE AND PARTNER CALL CPOUT E10: MOV A, B ANA A IS THIS THE LAST MODULE) JNZ E9 IF NO GO ON TO NEXT MODULE JMP E5 IF YES, BEGIN NEXT MOTION EXIT: MVI R, 1 OH LXI H, AUTMV MVI A, OOH ERASE: MOV M, A CLEAR AUTO MOVE ARRAY DCR B JNZ ERASE MVI A, 08H DB 30H UNMASK ALL INTERRUPTS CALL ENDAM INFORM MAIN PROCESSOR THAT MOVE IS DONE JMP RFINT Figures 33 to 39 illustrate the flow chart for routine "EXEQT".
End of Interrupt Handling Routines Subroutines Subroutine Part This subroutine computes the identification number of the partner of the module whose identification number is stored in register B. The result is stored in register C.
Module pairs are as follows: 0 and 1 are partners, 2 and 3, are partners, 4 and 5 are partners, etc.
INPUT CONDITIONS- (B)=MODULE NUMBER OUTPUT CONDITIONS- (C)=PARTNER MODULE NUMBER SUBROUTINES CALLED- NONE REGISTERS AFFECTED- C PART: PUSH PSW MOV A,B RAR ; COMPLEMENT ZERO BIT OF MODULE CMC : NUMBER TO GET PARTNER'S NUMBER RAL MOV C,A STORE INC POP PSW RET Figure 40 is the flow chart for subroutine "PART".
Subroutine Break This subroutine disengages the manual motion of the modules whose identification numbers are in registers B and C. Normally, C should be B's partner.
INPUT CONDITIONS- (B)=MODULE NUMBER (C)=PARTNER MODULE NUMBER OUTPUT CONDITIONS- (CONTB)="OEH" SUBROUTINES CALLED- COUT CPOUT REGISTERS AFFECTED- NONE BREAK: PUSH PSW MVI A, OEH STA CONTB CALL COUT DISENGAGE MODULE NO. B CALL CPOUT DISENGAGE PARTNER POP PSW RET Figure 41 is the flow chart for subroutine "BREAK".
Subroutines PPADD and FPADD These subroutines calculate the addresses in memory which hold the present (PPADD) and future (FPADD) positions of the module whose identification number is in register B. The result is stored in register PAIR HL.
INPUT CONDITIONS- (B)=MODULE NUMBER OUTPUT CONDITIONS- ((HL))=POSITlON (LSB) ((HL)+ 1 )=POSlTION (MSB) SUBROUTINES CALLED- NONE REGISTERS AFFECTED- H, L PPADD: LXI H, PRES PRES=BASE ADDRESS OF PRESENT POSITION ARRAY JMP OFFST FPADD: LXI H, FUTR : FUTR=BASE ADDRESS OF FUTURE POSITION ARRAY OFFST: PUSH D PUSH PSW MOV A, B (B)=MODULE NUMBER ANI OFEH RESET BIT 0 MOV E,A MVI D, OOH : (DE)=OFFSET TO DESIRED ADDRESS DAD D : (HL)=DESIRED ADDRESS POP PSW POP D RET Figure 42 is the flow chart for subroutine "PPADD" and "FPADD".
Subroutine Spin This subroutine inputs one byte of status information from the module whose identification number is in register C. (C is normally the partner to B). This byte will be stored in location STATB.
INPUT CONDITIONS- (C)=PARTNER MODULE NUMBER OUTPUT CONDITIONS- (STATB)=STATUS BYTE READ SUBROUTINES CALLED- - SIN REGISTERS AFFECTED- NONE SPIN: PUSH B MOV B,C CALL SIN POP B RET Figure 43 is the flow chart for subroutine "SPIN".
Subroutine CPOUT This subroutine outputs one byte of control information to the module whose identification number is stored in register C (C is normally the partner to register B). The control byte is taken from location CONTB.
INPUT CONDITIONS- (C)=PARTNER MODULE NUMBER (CONTB)=CONTROL BYTE OUTPUT CONDITIONS- NONE SUBROUTINES CALLED- COUT REGISTERS AFFECTED- NONE CPOUT: PUSH B MOV BC CALL COUT POP B RET Figure 44 is the flow chart for subroutine "CPOUT".
Subroutine UPDAT This subroutine updates the present position array after a manual move has taken place. The number of pulses in the move is stored in register PAIR DE. The identification number of the module which moved is stored in register B.
INPUT CONDITIONS- (DE)=DISTANCE MOVED (B)=MODULE NUMBER NEGATIVE MOTION LATCH IS SET IF MOTION WAS NEGATIVE OUTPUT CONDITIONS- PRES ARRAY IS UPDATED SUBROUTINES CALLED- PPADD TWOSC REGISTERS AFFECTED- NONE UPDAT: PUSH D PUSH H PUSH PSW CALL PPADD PUSH H PUSH D MOV E,M INX H MOV D,M XCHG . HL NOW HOLDS THE ORIGINAL POSITION POP D : DE NOW HOLDS THE DISTANCE THE MODULES MOVED LDA LATCH ANI 40H : WAS THE MOTION NEGATIVE? JZ CALL TWOSC : (DE)=TWO'S COMPLEMENT OF (DE) U1: DAD D : ADD DISTANCE MOVED TO OLD POSITION XCHG TO GET NEW POSITION POP H MOV M,E INX H STORE NEW POSITION IN ARRAY MOV M,D POP PSW POP H POP D RET Figure 45 is the flow chart for subroutine "UPDAT".
Subroutine FOUT This subroutine notifies the main processor that either a fault occurred or a manual motion was requested. The routine interrupts the main processor and then delays for 5 MSEC. When the main processor is interrupted, it should read the fault module and then read the fault byte. Reading the fault byte resets a latch which allows the 8085 to step out of the delay loop.
If the fault was a read/write error, then the data transfer is completed while the interrupt is in progress.
INPUT CONDITIONS- NONE OUTPUT CONDITIONS- MAIN PROCESSOR INTERRUPTED SUBROUTINES CALLER NONE REGISTERS AFFECTED-- NONE FOUT: PUSH D PUSH PSW LDA LATCH ORI 04H STA LATCH : SET FAULT ACKNOWLEDGMENT LATCH MVI D, ODCH : SET LOOP COUNTER FOR 5 MSEC DELAY MVI A, 80H STA COMM : INTERRUPT MAIN PROCESSOR LDA LATCH ANI 30H WAS FAULT A READ/WRITE ERROR? JZ F2 ANI 20H IF YES, THEN COMPLETE THE READ OR WRITE JNZ F1 STA DATAB JMP F2 F1: LDA DATAB F2: NOP NOP MVI A, 00H El STA COMM : TURNOFF INTERRUPT FLOOP: LDA LATCH ANI 04H : HAS FAULT BEEN ACKNOWLEDGED? JZ FEND : IF YES, EXIT LOOP
XTHL XTHL . DELAY XTHL XTHL DCR D JNJ FLOOP CONTINUE THROUGH LOOP FEND: Dl POP PSW POP D RET Figures 46 and 47 are the flow charts for subroutines "FOUT".
Subroutine TWOSC This subroutine calculates the two's complement of the number stored in register PAIR DE. The result is then stored in DE.
INPUT CONDITIONS- (DE)=NUMBER OF INTEREST OUTPUT CONDITIONS- (DE)=2's COMPLEMENT OF NUMBER SUBROUTINES CALLED- NONE REGISTERS AFFECTED- D, E TWOSC: PUSH - PSW MOV A,D CMA COMPLEMENT HIGH ORDER BYTE MOV D, A MOV A,E CMA : COMPLEMENT LOW ORDER BYTE MOV E,A INX D ADD 1 POP PSW RET Figure 48 is the flow chart for subroutine "TWOSC".
Subroutine PULSE This subroutine is used in a manual move to wait for a pulse and to keep track of the position of the module. The routine has a time-out feature which returns to the calling routine if no pulse has been detected in 200 MSEC.
INPUT CONDITIONS- (HL)=COMM (DE)=PREVIOUS PULSE COUNT OUTPUT CONDITIONS- (DE)=NEW PULSE COUNT SUBROUTINES CALLED- NONE REGISTERS AFFECTED- A, D, E PULSE: PUSH B PRESERVE STATUS MVI B, 80H MVI C, OOH SET REGISTERS FOR 200 MSEC DELAY PULS 1: MOV A, ANI 01H : ISA RISING PULSE OBSERVED? JNZ PULS2 IF IF YES, EXT DCR C JNZ PULS 1 DCR B . HAS 200 MSEC ELAPSED7 JNZ PULS1 : IF NO, KEEP CHECKING POP B RET IF YES, RETURN PULS2: POP B INX D INCREMENT PULSE COUNTER AND RETURN RET Figure 49 is the flow chart for subroutine "PULSE".
Subroutine LEAST This subroutine compares the 2 byte number stored in register PAIR DE with the number stored at location SMALL and SMALL+ 1. The smaller of the two numbers is stored in SMALL and SMALL+ 1.
INPUT CONDITIONS- (DE)=NEW NUMBER (SMALL)=OLD NUMBER (LSB) (SMALL+ 1)=OLD NUMBER (MSB) OUTPUT CONDlTIOl'lS- (SMALL)=SMALLEST NUMBER (LSB) (SMALL+1 )=SMALLEST NUMBER (MSB) SUBROUTINES CALLED- NONE REGISTERS AFFECTED- NONE LEAST: PUSH PSW LDA SMALL+0001H CMP D COMPARE MOST SIGNIFICANT BYTES JC LEXIT JNZ L1 LDA SMALL CMP E IF NECESSARY, COMPARE LEAST SIGNIFICANT BYTES JC LEXIT JZ LEXIT L1: XCHG SHLD SMALL : IF (DE) < (SMALL), REPLACE XCHG LEXIT: POP PSW RET Figure 50 is the flow chart for subroutine "LEAST".
Subroutine AMRAD This subroutine finds the address and bit indicating whether a particular module has been programmed to move. The auto move requested array (located at AUTMV) is a 16 byte array where each bit is reserved for a certain register PAIR. That bit is a 1 if the module is to be moved.
This routine stores the address in register PAIR HL and sets the appropriate bit (as well as resetting all other bits) in the accumulator.
Examples: Module Pair (HLJ (A) 0, 1 AUTMV 0000 0001 8,9 AUTMV 0001 0000 2A, 2B AUTMV+0002 0010 0000 INPUT CONDITIONS- (B)=MODULE NUMBER OUTPUT CONDITIONS- (HL)=ADDRESS (A)=1 IN APPROPRIATE BIT SUBROUTINES CALLED- NONE REGISTERS AFFECTED- A, H, L AMRAD: PUSH D MOV A,B RRC RRC RRC RRC ANI OFH MOV E,A MVI D, OOH LXI H, AUTMV AUTMV IS BASE ADDRESS OF AUTO MOVE REQUESTED DAD D (HL)=ADDRESS MOV A,B RRC ANI 07H MOV D,A INR D MVI A, 80H ALOOP: RLC A HAS A 1 IN THE APPROPRIATE BIT DCR D JNZ ALOOP POP D RET Figure 51 is the flow chart for "AMRAD".
Subroutine UNITY This subroutine outputs one byte of control information to every module on line. The control byte is taken from the accumulator.
INPUT CONDITIONS- (N)=NUMBER OF MODULES (A)=CONTROL BYTE OUTPUT CONDITIONS- (CONTB)=CONTROL BYTE (NPAIR) IS MODIFIED SUBROUTINES CALLED- COUT REGISTERS CHANGED- NONE UNITY: PUSH PSW PUSH B STA CONTB LDA NPAIR MOV B,A UN 1: DCR B CALL COUT OUTPUT BYTE TO MODULE B JNZ UN1 GO ON TO NEXT MODULE POP B POP PSW RET Figure 52 is the flow chart for subroutine "UNITY".
Subroutine MASMV This routine requests the pulse generator to send out the number of pulses stored in register PAIR HL. The routine then waits until the motion is completed before it returns to the calling routine.
INPUT CONDITIONS- (HL)=NUMBER OF PULSES DESIRED OUTPUT CONDITIONS- NONE SUBROUTINES CALLED- NONE REGISTERS AFFECTED- NONE MASMV: PUSH PSW LDA LATCH ORI 08H : SET AUTO MOVE LATCH STA LATCH El SHLD SWTCH INITIATE MOTION MASWT: LDA LATCH ANI 08H WAIT UNTIL MOTION IS COMPLETED JNZ MASWT POP PSW RET Figure 53 is the flow chart for subroutine "MAS MV".
Subroutine ENDAM This subroutine interrupts the main processor and indicates that an auto motion has been completed. This is accomplished by setting bit No. 4 in "STATB" and calling FOUT.
INPUT CONDITIONS- NONE OUTPUT CONDITIONS- MAIN PROCESSOR IS INTERRUPTED SUBROUTINES CALLED- FOUT REGISTERS AFFECTED- NONE ENDAM: PUSH PSW LDA STATB PUSH PSW SAVEOLD STATUS BYTE MVI A,10H STA STATB STATB INDICATES END OF AUTO MOVE CALL FOUT INTERRUPT MAIN PROCESSOR POP PSW STA STATB RESTOREOLD STATUS BYTE POP PSW RET Figure 54 is the flow chart for subroutine "ENDAM".
Subroutine COUT This subroutine outputs one byte of control information to the module whose identification number is stored in register B. The control byte must be located in location CONTB EXECUTION TIME- 2315 STATES INPUT CONDITIONS- (REG B)=MODULE NUMBER (CONTB)=CONTROL BYTE OUTPUT CONDITIONS- INTERRUPTS DISABLED SUBROUTINES CALLED- NONE REGISTERS AFFECTED- NONE SAVE STATUS COUT: DI PUSH H PUSH B PUSH D PUSH PSW ENABLE BUS DRIVERS LXI H, COMM: BUS ADDRESS MVI E, 2AH MOV M,E SET UP REGISTERS FOR PASS 1 AND 2 STC : SET CARRY BIT MOV A, B MVI C, 02H PASS COUNTER MVI B,14H : SUBTRACT DATA FOR FALLING EDGE MVI D, 01H : BIT COUNTER MVI E, 3FH DATA FOR RISING EDGE JMP PASBC RESET REGISTERS FOR PASS 1 AND O PASl C: MVI B, 04H : SUBTRACT DATA FOR FALLING EDGE MVI D, 08H : BIT COUNTER JMP PASAC RESET REGISTER FOR PASS O PASOC: MVI D, 08H BIT COUNTER LDA CONTB CONTROL BYTE NOP NOP OUTPUT D BITS FOR PASS C PASAC: MVI E, 2FH PASBC: RAR JC SKIPC DCR E SKIP: MOV M, E OUTPUT RISING EDGE OF CLOCK PUSH PSW MOV A,E SUB B MOV E,A POP PSW MOV M, E OUTPUT FALLING EDGE OF CLOCK DCR D JZ PAS?C XTHL XTHL : THIS IS A 36 STATE DELAY NOP JMP PASAC DETERMINE IF NEXT PASS IS PASS ZERO PAS?C:DCR C JZ PASOC DETERMINE IF NEXT PASS IS PASS 1 or FINISHED JP PAS1C DISABLE BUS DRIVERS MVI E, OOH MOV M, E RESTORE STATUS POP PSW POP D POP B POP H RETURN TO CALLING SUBROUTINE RET Subroutine SIN This subroutine inputs one byte of status information from the module whose identification number is stored in register B. This status byte will be located in location STATB.
EXECUTION TIME- 2329 STATES INPUT CONDITIONS (REG B)=MODULE NUMBER OUTPUT CONDITIONS- (STATB)=STATUS BYTE READ INTERRUPTS DISABLED SUBROUTINES CALLED- NONE REGISTERS AFFECTED- NONE SAVE STATUS SIN: DI PUSH H PUSH B PUSH D PUSH PSW ENABLE BUS DRIVERS LXI H, COMM BUS ADDRESS MVI E, 2AH MOV M,E SET UP REGISTERS FOR PASS 2 AND 1 XRA A : CLEAR CARRY BIT MOV A, B MVI C, 02H PASS COUNTER MVI B, 1 4H SUBTRACT DATA FROM FALLING EDGE MVI D, 01H BIT COUNTER MVI E, 3FH DATA FOR RISING EDGE JMP PASBS RESET REGISTERS FOR PASS 1 AND O PAS 1 S: MVI B, 04H SUBTRACT DATA FOR FALLING EDGE MVI D, 08H BIT COUNTER OUTPUT D BITS FOR PASS C PASAS: MVI E, 2FH PASBS: RAR JC SKIPS DCR E SKIPS:MOV M, E OUTPUT RISING EDGE OF CLOCK PUSH PSW MOV A,E SUB B MOV E,A POP PSW MOV M, E OUTPUT FALLING EDGE OF CLOCK DCR D JZ PASS XTHL XTHL THIS IS A 36 STATE DELAY NOP JMP PASAS DELAY THEN DETERMINE IF NEXT PASS IS PASS 1 OR PASS 0 PAS?S: NOP NOP NOP NOP DCR C JNZ PASTS RESET REGISTERS FOR PASS 0 MVI D, 08H BIT COUNTER MVI C, 00H INPUT D BITS FOR PASS 0 PASOS: NOP TIMING DELAY NOP NOP NOP MVI E, 2CH MOV M, E OUTPUT RISING EDGE OF CLOCK PUSH PSW MOV A,E SUB- B MOV E, A POP PSW MOV M, E .OUTPUT FALLING EDGE OF CLOCK MOV A, M : GET INPUT BYTE ANI 80H ORA C READ A BIT DCR D JZ DONES RRC POSITION BITS MOV C, A : SAVE STATUS BYTE THUS FAR NOP : TIMING DELAY NOP JMP PASOS DISABLE BUS DRIVERS DOZES: MVI E,00H MOV M, E STORE THE STATUS BYTE READ AT STATB STA STATB RESTORE STATUS POP PSW POP D POP B POP H RETURN TO CALLING SUBROUTINE RET Figures 55 and 56 are'the flow charts for subroutine "SIN".
Figures 57, 58 arid 59 comprise the flow chart for subroutine "COUT".
END OF SUBROUTINES In operation, when the operator desires to move the top and bottom slitter stations, he supplies this information into the keyboard 52 of the operator console 80. The main processor 53 starts the procedure under the control of the preceding program for communicating with each of the top and bottom slitter stations. These stations then control their associated blade or band to the proper position.

Claims (11)

Claims
1. An automatic position control system for slitters for dividing a moving web, comprising upper and lower rails mounted above and below said moving web, upper and lower racks, respectively, mounted on said upper and lower rails, a plurality of upper slitter stations with cutters mounted on said upper rail and having driving gears which engage said upper rack, a plurality of lower slitter stations with cutters mounted on said lower rail and having driving gears which engage said lower rack and said upper and lower slitter stations arranged in associated pairs so as to cut said web, a plurality of motors with one in each upper and lower slitter station and connected to said driving gears to move said upper and lower slitter stations on said upper and lower rails, a plurality of electronic control modules with different addresses and one in each upper and lower slitter station respectively, connected to one of said plurality of motors, a main control computer, a communication bus connected between said main control computer and each of said electronic control modules, and means for supp!ying command signals to said main control computer for positioning said upper and lower slitter stations.
2. An automatic position control system for slitters according to claim 1 , wherein said plurality of motors are step motors and said plurality of electronic control modules supply pulses to said motors.
3. An automatic position control system for slitters according to claim 2, including a plurality of home position switches with one home position switch mounted on either lower or upper electronic control module of each slitter station and electrically connected to the associated electronic control module.
4. An automatic position control system for slitters according to claim 3, including a plurality of manual move switches with one manual move switch mounted on either the upper or lower electronic control module of each slitter station and electrically connected to the associated electronic control module to allow manual control of the slitter station.
5. An automatic position control system according to any of claims 1 to 4, wherein said means supplying command signals to said main control computer comprises a manual console.
6. An automatic position control system according to any of claims 1 to 5, including a monitor for displaying the positions of said slitter stations.
7. An automatic position control system according to any of claims 1 to 6, wherein each of said electronic control modules has means for recognising its address so as to energise the module when its address is sent by the main control computer.
8. An automatic position control system according to claim 7, wherein one of each upper and lower slitter stations has means for addressing and supplying command signals to the other slitter station so that they move to the same position.
9. An automatic position control system according to claim 3 including a plurality of wear detecting switches respectively mounted on said upper and lower electronic control modules of each slitter station and supplying electrical signals thereto for adjusting the stations position for wear of the slitters.
10. An automatic position control system for slitters substantially as hereinbefore described with reference to the accompanying drawings.
11. Slitting apparatus for dividing a moving web, including an automatic position control system according to any of the preceding claims.
GB8134819A 1980-11-20 1981-11-19 An automatic position control system for slitters Expired GB2088093B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US20852080A 1980-11-20 1980-11-20

Publications (2)

Publication Number Publication Date
GB2088093A true GB2088093A (en) 1982-06-03
GB2088093B GB2088093B (en) 1984-09-19

Family

ID=22774890

Family Applications (1)

Application Number Title Priority Date Filing Date
GB8134819A Expired GB2088093B (en) 1980-11-20 1981-11-19 An automatic position control system for slitters

Country Status (4)

Country Link
JP (1) JPS57136204A (en)
CA (1) CA1177147A (en)
DE (1) DE3144714C2 (en)
GB (1) GB2088093B (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0249160A1 (en) * 1986-06-06 1987-12-16 Frankl &amp; Kirchner GmbH. &amp; Co. KG Fabrik für Elektromotoren und elektrische Apparate Industrial sewing machine
EP0275992A2 (en) * 1987-01-21 1988-07-27 Dürr GmbH Machine unit with several actuators
EP0311007A2 (en) * 1987-10-07 1989-04-12 Allen-Bradley Company, Inc. Programmable controller with multiple task processors
DE4020143A1 (en) * 1990-06-25 1992-02-20 Messer Griesheim Gmbh Arc welding current source - connected in series with ancillary equipment and microprocessor
EP0572432A1 (en) * 1989-06-29 1993-12-08 Alpine Engineered Products, Inc. Apparatus for assembly of wood structures
EP1413408A1 (en) * 2002-10-22 2004-04-28 Paroc Group Oy Ab Method and arrangement for cutting a moving web
EP3381632A1 (en) * 2017-03-27 2018-10-03 Valmet Pescia srl A machine for cutting a moving elongated web of paper or nonwoven material

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI68185C (en) * 1983-03-01 1985-08-12 Waertsilae Oy Ab FOERFARANDE OCH ANORDNING FOER LAEGESOBSERVERING
FI69771C (en) * 1983-08-12 1986-05-26 Nokia Oy Ab REQUIREMENTS FOR THE INSTALLATION OF A NUMBER OF CIRCULAR CIRCUIT BORDERS
DE3417042A1 (en) * 1984-05-09 1985-11-14 Lenox Europa Maschinen GmbH, 7312 Kirchheim METHOD FOR CONTROLLING THE POSITION OF THE CUTTING EDGES ON A LONGITUDINAL CUTTING DEVICE FOR SHEETS OF PAPER AND THE LIKE AND CORRESPONDING LENGTH CUTTING DEVICE
DE4219670C1 (en) * 1992-06-16 1993-07-01 J.M. Voith Gmbh, 7920 Heidenheim, De Paper strip cutter with adjustable positioning system - moves knife slides along rail past first pre-positioned sensor, then travels on to second pre-positioned sensor, thus being accurately positioned
DE4235578A1 (en) * 1992-10-22 1994-04-28 Schoth Hans Peter Electronic tool coordinating system for cutting wide strip material - works programme controlled with start and finish and cutter edge indicated by illuminated or flashing LED(s) or electromechanically by position alteration
FI108023B (en) * 1999-09-27 2001-11-15 Metso Paper Inc Method of web winding and paper web winder
DE102004054599A1 (en) * 2004-07-14 2006-02-09 Koenig & Bauer Ag Method and device for positioning of web processing tools or for presetting a cutting width
DE102005010948B4 (en) * 2005-03-10 2007-10-18 Koenig & Bauer Aktiengesellschaft Device for separating a printed paper web

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3176566A (en) * 1961-06-02 1965-04-06 Beloit Eastern Corp Remotely positioned slitter system
DE2433302C3 (en) * 1974-07-11 1981-07-23 Jagenberg-Werke AG, 4000 Düsseldorf Device for adjusting the mutual spacing of several elements arranged next to one another, in particular of pairs of knives for longitudinal cutting of web material
DE2832982A1 (en) * 1977-08-11 1979-02-22 Masson Scott Thrissell Eng Ltd POSITIONING DEVICE

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0249160A1 (en) * 1986-06-06 1987-12-16 Frankl &amp; Kirchner GmbH. &amp; Co. KG Fabrik für Elektromotoren und elektrische Apparate Industrial sewing machine
EP0275992A2 (en) * 1987-01-21 1988-07-27 Dürr GmbH Machine unit with several actuators
EP0275992A3 (en) * 1987-01-21 1989-07-26 Dürr GmbH Machine unit with several actuators
EP0311007A2 (en) * 1987-10-07 1989-04-12 Allen-Bradley Company, Inc. Programmable controller with multiple task processors
EP0311007B1 (en) * 1987-10-07 1994-03-09 Allen-Bradley Company, Inc. Programmable controller with multiple task processors
EP0572432A1 (en) * 1989-06-29 1993-12-08 Alpine Engineered Products, Inc. Apparatus for assembly of wood structures
EP0572432A4 (en) * 1989-06-29 1994-07-13 Alpine Eng Prod Apparatus for assembly of wood structures
DE4020143A1 (en) * 1990-06-25 1992-02-20 Messer Griesheim Gmbh Arc welding current source - connected in series with ancillary equipment and microprocessor
EP1413408A1 (en) * 2002-10-22 2004-04-28 Paroc Group Oy Ab Method and arrangement for cutting a moving web
EP3381632A1 (en) * 2017-03-27 2018-10-03 Valmet Pescia srl A machine for cutting a moving elongated web of paper or nonwoven material

Also Published As

Publication number Publication date
JPS57136204A (en) 1982-08-23
DE3144714A1 (en) 1982-07-01
DE3144714C2 (en) 1986-02-13
CA1177147A (en) 1984-10-30
GB2088093B (en) 1984-09-19

Similar Documents

Publication Publication Date Title
GB2088093A (en) An Automatic Position Control System for Slitters
KR950000839B1 (en) Machine tool numerical controller with a trouble stop function
US4607552A (en) Apparatus for automatically controlling the position of a plurality of slitters
EP0105158A2 (en) Customization window for a computer numerical control system
US4472783A (en) Flexible manufacturing system
CA1102434A (en) Interactive machining system
US4554777A (en) Convertible-format packaging machine
US4477754A (en) Interactive machining system
US4651601A (en) Device for preventing a collision between a work holder and a tool in numerical control for a turret punch press
US4129813A (en) Method and apparatus for adaptive control of a stepper motor
US4072887A (en) Apparatus for adjusting the mutual distances of several elements arranged side by side, particularly pairs of blades for the straight-line cutting of sheet material
US3525917A (en) Method and apparatus for producing digital contour movement for a plural axes stepping motor drive
EP0170924A1 (en) Process for control optimisation of machines
US4096563A (en) Machine tool control system and method
US5126956A (en) Method and apparatus for displaying segments of a ladder diagram which turn on an operator specified relay
EP0369173A3 (en) Computer controlled coiling machine
US4514080A (en) Apparatus for controlling optical system for copying machine
US3101436A (en) Numerically controlled positioning system
EP0268683B1 (en) Method of reconstituting instruction position
EP0600672B1 (en) Machine for trimming and forming lead frames
EP0233292B2 (en) Control system for injection molding machine driven by servo motors
JP2859706B2 (en) Bending method and bending control device
EP0070700A2 (en) Method and apparatus for controlling an electric discharge machine
EP0092312A2 (en) Method and apparatus for displaying ladder diagrams
US2961752A (en) Installation for manufacturing contact spring assemblies

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)
PCNP Patent ceased through non-payment of renewal fee

Effective date: 19981119