Guider
M-kod är maskinstyrningsspråket för CNC-bearbetning. Det används i kombination med G-kod för att slå av och på olika maskinfunktioner. Liksom för G-kod finns det vissa gemensamma funktioner mellan olika styrningsplattformar, men den slutgiltiga definitionen för en viss M-kodfunktion stavas av tillverkaren av styrningen. I den här artikeln diskuteras M-kod i allmänhet och hur den är tillämplig på CNC-bearbetning. För ytterligare information se de andra relaterade artiklarna i denna serie som anges i slutet av denna artikel.
Kommandon
M:et i M-kod talar om för maskinen att ett diverse kommando följer. Till exempel startar M03 spindeln och föregås i allmänhet av en S-kod för att ställa in hastigheten. Följande delförteckning över M-koder, som visas nedan som exempel, gäller för Fanuc-styrenheter.
M00 Programstopp
M01 Programstopp – valfritt
M02 Slut på programmet
M03 Spindelstart – framåt, medurs rotation
M04 Spindelstart – bakåt, eller rotation moturs
M05 Spindelstopp
M06 Verktygsbyte
Koderna fortsätter fram till M99, som avslutar ett underprogram. Alla nummer är inte tilldelade, och vissa M-koder, t.ex. M06, används endast för bearbetningscentraler och inte för svarvar, och vice versa. Andra leverantörer tillhandahåller fler koder. Det är viktigt att känna till koderna för just den aktuella maskinen. Många tillverkare lämnar också ett antal M-koder som inte är tilldelade för definition av användaren. Tabell 1 nedan visar en mer omfattande förteckning över M-koder för svarvoperationer. Tabell 2 innehåller en liknande förteckning över M-koder för fräsoperationer. Båda dessa tabeller är baserade på Fanuc-koderna.
Tabell 1 – Sammanfattning av M-kodernas kommandon för svarvoperationer
M-kod* |
Beskrivning* |
|
M00 |
Programstopp |
|
M01 |
Optionellt programstopp |
|
M02 |
Programslut |
|
M03 |
Spindel startar framåt CW |
|
M04 |
Spindelstart bakåt CCW |
|
M05 |
M05 |
Spindel stopp |
M08 |
Kylmedel på |
|
M09 |
Kylmedel av |
|
M29 |
Rigid tappläge |
|
M30 |
Nedställning av programslut |
|
M40 |
Spindelkugghjul i mitten |
|
M41 |
Low Gear Select |
|
M42 |
High Gear Select |
|
M68 |
Hydraulisk chuck close |
|
M69 |
Hydraulisk chuck öppen |
|
M78 |
Slutstycke framåt |
|
M79 |
Svansspårstång backar |
|
M94 |
Spegelbild avbryta |
|
M95 |
Spegelbild av X-axeln |
|
M98 |
Underprogramsanrop |
|
M99 |
Slut av underprogram |
Tabellens datakälla: http://www.helmancnc.com/fanuc-m-code-list/
Tabell 2 – Sammanfattning av M-kodernas kommandon för fräsoperationer
M-kod* |
Beskrivning* |
M00 |
Programstopp |
M01 |
Optionellt programstopp |
M02 |
Programmet avslutas |
M03 |
Spindel startar framåt CW |
M04 |
Spindelstart bakåt moturs |
M05 |
Spindelstopp |
M06 |
Verktygsbyte |
M07 |
Kylmedel PÅ – Kylmedel genom spindeln |
M08 |
Kylmedel PÅ – Kylmedel genom spindeln |
M09 |
Kylmedel OFF |
M19 |
Spindelriktning |
M28 |
Retur till ursprung |
M29 |
Rigid tap |
M30 |
Programslut (återställning) |
M41 |
Väljning av låg växel |
M42 |
Hög växel välj |
M94 |
Avbryt spegelbild |
M95 |
Spegelbild av X-axeln |
M96 |
Spegelbild av Y-axeln |
M98 |
Underprogramskall |
M99 |
Slut på underprogram |
Datakälla för tabell: http://www.helmancnc.com/fanuc-m-code-list/
Underprogram och makroprogram
Underprogram anropas med kommandot M98. Dessa används för olika operationer, t.ex. indexering av Z-axeln mellan upprepade snitt. Underprogrammen betecknas med bokstaven ”P” och ett ”L” anger hur många gånger underprogrammet ska köras. Varje underprogram avslutas med M99, vilket returnerar styrenheten till huvudprogrammet, eller föregående underprogram om de är inbäddade. Ett annat vanligt underprogram är ett som återställer modala statusar före eller efter ett verktygsbyte – ett säkerhetssteg.
Förprogrammerade funktioner som tillhandahålls av maskintillverkaren betraktas också som underprogram, men de anropas i G-kod.
Makronor gör det möjligt för CNC-maskinen att göra två viktiga saker. Genom att skapa variabler som kan ändras kan funktionsstorlekar (t.ex. bredden på ett spår) justeras utan att ändra programmet. De gör det också möjligt för samma program att bearbeta en familj av delstorlekar som kan vara tabellerade på en ritning. Variabler tilldelas adresser som vanligtvis anges i programraden på följande sätt: G00 X#123 som säger åt maskinen att snabbt flytta sig till den plats som är lagrad i den variabla adressen 123.
Det är viktigt att vara mycket försiktig när man använder makron, eftersom man kan ange ett nummer som är för snabbt för processen, vilket kan leda till skador och/eller personskador. CNC-programmerare bygger rutinmässigt in kontroller i programmen för att undvika dessa katastrofer.
Användningar
Andra bokstavsbeteckningar (eller ”ord”) används för att ange matningshastighet (F), spindelhastighet (S), verktygsadresser (T) osv. Ett fullständigt CNC-program kommer att vara fyllt med dessa bokstäver samt G- och M-koderna. Flera M-koder används för att hänvisa till kontrollpanelen för operatörsinmatning. M01, ett valfritt programstopp, stoppar tillfälligt programmet och väntar på inmatning från operatören om knappen Opt Stop på kontrollpanelen är aktiverad. I annat fall ignoreras M01-kommandot. Denna funktion kan användas för att låta operatören ta bort spåner. En annan panelknapp märkt Block Skip gör att programmen hoppar över alla kodblock som föregås av ett snedstreck framåt. Detta är användbart vid automatisk matning eftersom det kan användas för att hoppa över kommandot för programstopp.
Sammanfattning
Denna artikel presenterade en kort diskussion om M-kod och dess tillämpning vid programmering av CNC-bearbetning. För mer information om relaterade produkter, se våra andra guider eller besök Thomas Supplier Discovery Platform för att hitta potentiella leveranskällor eller se detaljer om specifika produkter.
Andra artiklar om CNC-programmering
- En introduktion till G-kod och CNC-programmering
- Lista över vanliga G-kodkommandon och deras innebörd
- Exempel på G-kod för vanliga CNC-funktioner
- G-kodfuskblad med vanliga kommandon
- Underprogram, makron och parametrisk programmering för CNC-bearbetning
.