Relevant regulations for programming CNC machine tools
As we all know, the purpose of using CNC machine tools is to efficiently process qualified parts. The qualified parts must be products that meet the requirements of the drawings. How can the machine know the requirements of the drawings? This must be told by people. In what way, by what rules and conventions are people telling the machine tool? This requires the development of rules for the programming of numerically controlled machine tools. In other words, we must express the parts' drawing size, process route, cutting parameters, etc., with numerical and machine-readable codes that can be accepted by the CNC machine tool, and then make input media (such as perforated tapes, tapes, cards, etc.) according to the prescribed form of the code. ) Then input the information recorded on the input medium into the numerical control device so that the machine tool can be automatically controlled for processing. This process from the part drawing to the input media is called CNC machine programming. The programming of CNC machine tools is divided into manual programming and automatic programming. The general steps of manual programming include process processing, coordinate calculation of the motion trajectory, filling in a procedure sheet, preparation of the input media, and program check. The automatic programming process is also carried out according to the above steps, but most of the work is done by a computer or an automatic programmer. According to different input methods, automatic programming is divided into three modes: language input, graphic input and voice input. Common programming languages ​​include APT, SKC-1, and ZCX-1. In order for the machine tool to receive the programmed program, there must be corresponding regulations. These concepts are described separately below. 1, punch tape and code There are two ways to read information from CNC machine tools: one is manual input mode; the other is automatic input mode. Therefore, there are two types of control media as the carrier of CNC machine tools: one is the punched tape, punched card, tape, disk, etc. when the input is automatic; the other is the keyboard, band switch, manual data input when the console is manually input ( MDI) and so on. Perforated belts are mechanically fixed code holes, are not easily affected by the environment (such as magnetic fields), easy to long-term preservation and reuse, and the program's storage capacity is large, so it is still the main commonly used information input method of many CNC machine tools. 2, block format When programming a CNC machine tool, first determine the coordinate value based on the pulse equivalent of the machine tool, and then program the NC program according to its program segment format. The so-called program segment refers to the combination of the function "word" required to complete an action. "Word" is a set of code symbols representing a certain function. For example, X2500 is a word indicating that the X dimension is 2500; F20 is a word indicating that the feed rate is 20. The block format refers to the order and expression of each word in a block. There are three commonly used block formats, the fixed sequence block format, the fixed sequence block format with separators, and the word address block format. Since the program segment consists of the function "word", the following describes the common function words first, and then introduces the program segment format. 1) Common function words In a program segment, in addition to the three-digit number (N×××) consisting of the address character N, the commonly used function words are: ready function word G; coordinate function word X, Y, Z; auxiliary function word M; feed function word F; spindle speed function word S and tool function word T, etc. (1) Prepare the function word. The preparation function word is preceded by the address character G, followed by two digits (G00-G99). The provisions of the ISO 1056 standard for preparing function G are shown in Table 1. The standard in our country is JB3208-83, which stipulates that ISO1056-1975(E) is equivalent. These preparation functions include: specification of coordinate movement or positioning method; designation of interpolation method; selection of plane; designation of machining such as thread, tapping, fixed cycle, etc.; description of spindle or feedrate; tool offset or tool offset Designation etc. When designing a numerical control system for a machine tool, it is necessary to select a part of preparation functions that are compatible with the system in the G functions specified in the standard, as a basis for hardware design and programming. The "not specified" preparation function in the standard can be used as a special preparation function for the system if necessary. Table 1 Provisions for preparation function G of the ISO standard Code Features Instructions Code Features Instructions G00 Point positioning G57 XY plane linear displacement G01 Linear interpolation G58 XZ plane linear displacement G02 Clockwise arc interpolation G59 YZ plane linear displacement G03 Counterclockwise arc interpolation G60 Accurate positioning (fine) Positioning according to specified tolerances G04 time out Suspend for a period of time before executing this paragraph of procedure G61 Accurate positioning (in) Positioning according to specified tolerances G05 Not specify G62 Accurate positioning (rough) According to the provisions of the larger tolerance positioning G06 Parabolic interpolation G63 Tapping G07 Not specify G64-G67 Not specify G08 Automatic acceleration G68 Internal corner tool offset G09 Automatic deceleration G69 Outer Corner Tool Offset G10-G16 Not specify G70-G79 Not specify G17 Select XY plane G80 Cancel canned cycle Cancel the canned cycle of G81-G89 G18 Select ZX plane G81 Drilling cycle G19 Select YZ plane G82 Drilling or reaming cycles G20-G32 Not specify G83 Drilling deep hole circulation G33 Cutting pitch spiral pattern G84 Tapping cycle G34 Cutting increase pitch spiral pattern G85 Boring cycle 1 G35 Cut Pitch Swirl G86 Boring cycle 2 G36-G39 Not specify G87 Boring cycle 3 G40 Cancel tool compensation G88 Boring cycle 4 G41 Tool Compensation - Left According to the direction of movement, The tool is on the left side of the workpiece G89 Boring cycle 5 G42 Tool Compensation - Right Side According to the direction of movement, The tool is on the right side of the workpiece G90 Absolute value input method G43 Positive compensation The tool compensation value is added to the given coordinate value G91 Incremental value input method G44 Negative compensation Tool offset value is subtracted from the given coordinate value G92 Prefabricated Modify size words No movement G45 Used for tool compensation G93 Feed rate given by the countdown time G46-G52 Used for tool compensation G94 Feed rate (mm/min) G53 Linear displacement function canceled G95 Feed rate (mm/r (spindle)) G54 X axis linear displacement G96 Spindle constant speed (m/min) G55 Y-axis linear displacement G97 Spindle speed (r/min) Cancel the designation of G96 G56 Z axis linear displacement G98-G99 Not specify (2) coordinate function word. The coordinate function word (also referred to as the dimension word) is used to set the displacement of each machine coordinate. It generally uses X, Y, Z, U, V, W, P, Q, R, A, B, C, D, E, etc., followed by the address character followed by "+" (positive) or " — (negative) and a series of digits. This number is generally expressed in units of system pulse equivalents and does not use a decimal point. When there are multiple size words in a block, they are generally arranged in the order of the above address characters. (3) Feed function word. The feed function word is used to specify the speed of the tool relative to the workpiece motion. Its unit is generally mm/min. When the feed speed is related to the spindle speed, such as thread, tapping, etc., the unit used is mm/r. The feed function word is preceded by the address character "F" followed by a series of numeric codes. Specifically specify the following methods: 1 Three-digit code method: F followed by three digits, the first one is the integer bit of feedrate plus “3â€, and the last two digits are the first two significant digits of the feedrate. For example, the feed rate of 1728mm/min is specified by F717; the feed rate of 15.25mm/min is specified by F515; the feed rate of 0.1537mm/min is specified by F315. 2 two-digit code method: For the two-digit code followed by F, specifies the speed table corresponding to 00-99, except for 00 and 99, when the number code increases from 01 to 98, the speed is increased in an equal relationship of. The 20th root of the scale factor is 10 ( Table 2 Two-digit digital feed rate comparison table mm/min Code speed Code speed Code speed Code speed Code speed 00 stop 20 10.0 40 100 60 1,000 80 10000 01 1.12 twenty one 11.2 41 112 61 1120 81 11200 02 1.25 twenty two 12.5 42 125 62 1250 82 12500 03 1.40 twenty three 14.0 43 140 63 1400 83 14000 04 1.60 twenty four 16.0 44 160 64 1600 84 16000 05 1.80 25 18.0 45 180 65 1800 85 18000 06 2.00 26 20.0 46 200 66 2000 86 20000 07 2.24 27 22.4 47 224 67 2240 87 22400 08 2.50 28 25.0 48 250 68 2500 88 25000 09 2.80 29 28.0 49 280 69 2800 89 28000 10 3.15 30 31.5 50 315 70 3150 90 31500 11 3.55 31 35.5 51 355 71 3550 91 35500 12 4.00 32 40.0 52 400 72 4000 92 40000 13 4.50 33 45.0 53 450 73 4500 93 45000 14 5.00 34 50.0 54 500 74 4500 94 50000 15 5.60 35 56.0 55 560 75 5600 95 56000 16 6.30 36 63.0 56 630 76 6300 96 63000 17 7.10 37 71.0 57 710 77 7100 97 71000 18 8.00 38 80.0 58 800 78 8000 98 80000 19 9.00 39 90.0 59 900 79 9000 99 high speed 3 One-digit code method: For numerically controlled machine tools with less speed limit, F can be followed by a digit, ie 0-9 to correspond to 10 preset speeds. 4 Direct designation method: Just like the coordinate displacement amount in the dimension word, the required feedrate is written directly after F in the predetermined unit. (4) Spindle speed function word. The spindle speed function word is used to specify the spindle speed in r/min. It is prefixed by the address character S, followed by a string of digits. It can use the three-digit, two-digit, one-digit code method or direct designation method as the feed function word headed by F. The meaning of the numbers, the method of splitting the block, and the comparison table and feed function are common. Just change the unit to r/min. (5) Tool function word. When the system has a tool change function, the tool function word is used to select the replaced tool. The tool function word is preceded by the address symbol T, followed by two digits, which represents the tool number. (6) Auxiliary function word. The auxiliary function word is preceded by the address symbol M, followed by two digits (M00-M99). The provisions of the ISO 1056 standard for the auxiliary function M are shown in Table 3. This table is equivalent to the provisions of the Chinese standard JB3208-83 M function. These auxiliary functions include: specifying the spindle's steering and start and stop; specifying the system's coolant on and off; specifying the clamping and release of the machine; specifying the fixed line and angular displacement of the table, etc.; indicating that the program is stopped or the tape ends. . Some unspecified auxiliary functions in the standard can be selected for special purposes. When designing a machine tool numerical control system, it is necessary to select some of the auxiliary function codes required by the system in the M code specified in the standard as the basis for the relevant circuit design and future programming. Table 3 Provisions of the ISO standard for auxiliary functions M Code Features Instructions Code Features Instructions M00 Program stop Spindle, coolant stop M32-M35 Not specify M01 Planned stop Need button operation to confirm line feed M36 Feed speed range 1 Do not stop gear shift range M02 End of program Spindle, coolant stop, machine reset M37 Feed speed range 2 M03 Spindle rotates clockwise Right-hand thread into the workpiece M38 Spindle speed range 1 Do not stop gear variable speed range M04 Spindle counterclockwise Right-hand thread exits the workpiece M39 Spindle speed range 2 M05 Spindle stop Cooling fluid off M40-M45 Not specify Can be used for gear shifting M06 Change knife Manual or automatic tool change, excluding tool selection M46-M47 Not specify M07 Coolant No. 2 opens M48 Cancel M49 M08 Coolant No. 1 open M49 Manual speed correction fails Return to programmed speed or feedrate M09 Coolant stops M50 Coolant No. 3 opens M10 Clamping Workbench, workpiece, fixture, spindle, etc. M51 Coolant #4 on M11 release M52-M54 Not specify M12 Not specify M55 The tool is linearly displaced to a predetermined position 1 M13 Spindle rotates clockwise, coolant opens M56 The tool is linearly displaced to the predetermined position 2 M14 The spindle rotates counterclockwise and the coolant opens M57-M59 Not specify M15 Positively moving fast M60 Change workpiece M16 Reverse fast M61 Workpiece linear only to the predetermined position 1 M17-M18 Not specify M62 The tool is linearly displaced to the predetermined position 2 M19 Spindle exact stop Spindle slows down to a predetermined angle to stop M63-70 Not specify M20-M29 Not specify M71 The workpiece rotates to a predetermined angle 1 M30 Tape end Spindle coolant stop, machine reset, tape rewind, etc. M72 The workpiece rotates to a predetermined angle 2 M31 Temporary failure of the interlock mechanism M73-M99 Not specify 2) Block format Different CNC machine tools stipulate different program segment formats depending on the number of functions, the complexity of the numerical control device, and whether the programming is simple and intuitive. If the format of the input program does not comply with the regulations, the CNC will report an error. Common segment formats include fixed sequence, fixed sequence with separator TAB, and word address format. In the early days, due to the simplicity of numerical control devices, a block format called fixed sequence was specified, for example: Programs compiled in this format have no address code for each word. The order of the words is the order of the addresses. The order of each word and the number of character lines are fixed (regardless of whether a certain word is needed or not), even if it matches the previous paragraph. Compared to certain words, they have to be rewritten and cannot be omitted. When the effective number of digits of a word is small, the required number of digits must be supplemented with "0" in the front. Therefore, the length of the perforated belt occupied by each program segment is constant. The control system of this format is simple, but the programming is not intuitive, the perforated belt is longer and the application is less. Later, a fixed sequential segment format with the separator symbol TAB was produced. The basic form is the same as the above format except that the words are separated by a separator to indicate the order of the addresses. The above example can be written as: Due to delimiters, unwanted words or words that are identical to the upper block can be omitted, but the corresponding delimiter must be retained (ie the number of delimiters in each block is equal). This format is better than the former one and is often used for numerically-functional devices such as wire-cutting machines and certain CNC milling machines. The "3B" or "4B" format commands used in CNC wire-cutting machine tools in China are typical fixed sequential formats with separate symbols. The general representation of its 3B format is: BXBYBJGZ Its specific meaning is as follows: X B B Y J G Z x coordinate value Delimiter y coordinate value Delimiter Count length Counting direction Processing instructions The most commonly used at present is the word address block format (also called variable block format using address characters). Blocks expressed in this format, each word is preceded by an address code to identify the address, that is, as previously described by the letter and data of the various functional words, so for the unwanted words or with the previous section The same word can be omitted. Each word in a program segment can also be arranged out of order (but for programming convenience, often in a certain order). Although using this format to increase the address into the circuit, but the programming is intuitive and flexible, easy to check, can shorten the punch tape, widely used in car, milling and other CNC machine tools. Program segments for word address formats can often be represented in general form. Such as: If formula (1-1) is written in the general form, it is: N3G2X ± 23Y ± 23F4S4T2M2 (1 - 2) In the formula Film Blowing Machine Extruder,Blown Film Extruder Machine,Plastic Film Blowing Taizhou Langshun Trade Co.,ltd , https://www.lsblowingmachine.com ≈ 1.12), that is, the adjacent speed increases by about 12% from the previous speed. For example, F20 is 10 mm/min, F21 is 11.2 mm/min, F54 is 50 mm/min, and F55 is 560 mm/min. The comparison of the feed rate of F00-F99 is shown in Table 2.