Med strängfunktionerna kan du definiera och bearbeta strängar med hjälp av QS-parametrar för att t.ex. skapa variabla protokoll med FN 16: F-PRINT. Inom informatiken betecknar en sträng en alfanumerisk teckenföljd.
Funktionsbeskrivning
Du kan tilldela en QS-parameter maximalt 255 tecken.
- Inom QS-parametrar är följande tecken tillåtna:
- Bokstäver
- Siffror
- Specialtecken, t.ex. ?
- Kontrolltecken, t.ex. \ för sökvägar
- Mellanslag
Du programmerar de enskilda strängfunktionerna med hjälp av den fria syntaxinmatningen.
Du kan bearbeta eller kontrollera värdena från QS-parametrar med NC-funktionerna Formel Q/QL/QR och Strängformel QS.
Syntax | NC-funktion | Överordnad NC-funktion |
---|---|---|
DECLARE STRING | Tilldela en QS-parameter ett alfanumeriskt värde | |
STRING-FORMEL | Sammanfoga innehåll från QS-parametrar och tilldela en QS-parameter innehållet | Stringformel QS |
TONUMB | Omvandla det alfanumeriska värdet hos en QS-parameter till ett numeriskt värde och tilldela en Q-, QL- eller QR-parameter värdet | Formel Q/QL/QR |
TOCHAR | Omvandla det numeriska värdet till ett alfanumeriskt värde och tilldela en QS-parameter värdet | Stringformel QS |
SUBSTR | Kopiera en delsträng från en QS-parameter och tilldela en QS-parameter delsträngen | Stringformel QS |
SYSSTR | Läs systemdata och tilldela en QS-parameter innehåll | Stringformel QS |
INSTR | Sök efter en delsträng i en QS-parameter och tilldela en Q-, QL- eller QR-parameter fyndplatsen | Formel Q/QL/QR |
STRLEN | Beräkna en QS-parameters teckenlängd och tilldela en Q-, QL- eller QR-parameter teckenlängden | Formel Q/QL/QR |
STRCOMP | Jämför den stigande lexikaliska ordningsföljden hos QS-parametrar och tilldela en Q-, QL- eller QR-parameter resultatet Jämföra den lexikaliska ordningsföljden hos två alfanumeriska teckensträngar | Formel Q/QL/QR |
CFGREAD | Läs av innehållet i en maskinparameter och tilldela en QS-parameter innehållet |
|
Läsa systemdata med SYSSTR
Med NC-funktionen SYSSTR kan du läsa systemdata och spara innehåll i QS-parametrar. Du väljer systemdatum med hjälp av ett gruppnummer ID och ett nummer NR.
Du kan välja att ange IDX och DAT.
Du kan läsa följande systemdata:
Gruppnamn, ID-Nr. | Nummer | Betydelse |
---|---|---|
Programinformation, 10010 | 1 | Sökväg till det aktuella huvudprogrammet eller palettprogrammet |
2 | Sökväg till NC-programmet som exekveras för närvarande | |
3 | Sökväg till NC-programmet som valts med cykel 12 PGM CALL | |
10 | Sökväg till NC-programmet som valts med SEL PGM | |
Kanaldata, 10025 | 1 | Namn på den aktuella kanalen, t.ex. CH_NC |
Värde programmerat i verktygsanropet, 10060 | 1 | Det aktuella verktygets namn Tip NC-funktionen sparar bara verktygsnamnet när du anropar verktyget med hjälp av verktygsnamnet. |
Kinematik, 10290 | 10 | Kinematiken som programmerats i den senaste NC-funktionen FUNCTION MODE |
Aktuell systemtid, 10321 | 1–16, 20 |
|
Data för avkännarsystemet, 10350 | 50 | Den aktiva arbetsstyckesavkännarens TS avkännarsystemstyp |
70 | Den aktiva arbetsstyckesavkännarens TT avkännarsystemstyp | |
73 | Namn på den aktiva arbetsstyckesavkännaren TT från maskinparametern activeTT | |
Data för palettbearbetning, 10510 | 1 | Namnet på pallen som bearbetas för närvarande |
2 | Sökväg till den för tillfället valda palettabellen | |
NC-programvaruversion, 10630 | 10 | NC-programvaruversionens nummer |
Information för obalanscykel, 10855 | 1 | Sökväg till obalanskalibreringstabellen Obalanskalibreringstabellen hör till den aktiva kinematiken. |
Verktygsdata, 10950 | 1 | Det aktuella verktygets namn |
2 | Innehåll i kolumnen DOC till det aktuella verktyget | |
3 | Det aktuella verktygets AFC-reglerinställning | |
4 | Det aktuella verktygets verktygshållarkinematik |
Läsa maskinparametrar med CFGREAD
Med NC-funktionen CFGREAD kan du läsa av styrsystemets maskinparameterinnehåll som numeriska eller alfanumeriska värden. De lästa numeriska värdena presenteras alltid metriskt.
För att kunna läsa en maskinparameter måste du beräkna följande innehåll i styrsystemets konfigurationseditor:
Symbol | Typ | Betydelse |
---|---|---|
Key | Maskinparameterns gruppnamn Det är valfritt att ange gruppnamn | |
Entity | Parameterobjekt Namnet börjar alltid med Cfg | |
Attribut | Maskinparameterns namn | |
Index | Listindex för en maskinparameter Det är valfritt att ange listindex |
I maskinparametrarnas konfigurationseditor kan du ändra visningen av befintliga parametrar. Med standardinställningen visas parametrarna med en kort förklarande text.
När du vill läsa av en maskinparameter med NC-funktionen CFGREAD måste du först definiera en QS-parameter med attribut, entitet och nyckel.
Tilldela en QS-parameter ett alfanumeriskt värde
Innan du kan använda och bearbeta alfanumeriska värden måste du tilldela QS-parametrarna tecken. För att göra detta använder du kommandot DECLARE STRING.
| ||
![]() |
| |
| ||
|
I det här exemplet tilldelar styrsystemet QS-parametern QS10 ett alfanumeriskt värde.
11 DECLARE STRING QS10 = "workpiece" | ; Tilldela QS10 ett alfanumeriskt värde |
Sammanfoga alfanumeriska värden
Med sammanfogningsoperatorn || kan du sammanfoga innehållet från flera QS-parametrar. På så sätt kan du t.ex. kombinera fasta och variabla alfanumeriska värden.
| ||
![]() |
| |
| ||
| ||
| ||
|
I det här exemplet sammanfogar styrsystemet innehållet från QS-parametrarna QS12 och QS13. Styrsystemet tilldelar QS-parametern QS10 det alfanumeriska värdet.
11 QS10 = QS12 || QS13 | ; Sammanfoga innehåll från QS12 och QS13 och tilldela QS-parametern QS10 innehållet |
Parameterinnehåll:
- QS12: status:
- QS13: skrot
- QS10: status: skrot
Omvandla alfanumeriska värden till numeriska värden
Med NC-funktionen TONUMB kan du spara enbart numeriska tecken från en QS-parameter i en annan variabeltyp. Sedan kan du använda de här värdena i beräkningar.
I det här exemplet omvandlar styrsystemet det alfanumeriska värdet från QS-parametern QS11 till ett numeriskt värde. Styrsystemet tilldelar Q-parametern Q82 det här värdet.
11 Q82 = TONUMB ( SRC_QS11 ) | ; Omvandla det alfanumeriska värdet från QS11 till ett numeriskt värde och tilldela Q82 värdet |
Omvandla numeriska värden till alfanumeriska värden
Med NC-funktionen TOCHAR kan du spara en variabels innehåll i en QS-parameter. Det sparade innehållet kan du t.ex. sammanfoga med andra QS-parametrar.
I det här exemplet omvandlar styrsystemet det numeriska värdet från Q-parametern Q50 till ett alfanumeriskt värde. Styrsystemet tilldelar QS-parametern QS11 det här värdet.
11 QS11 = TOCHAR ( DAT+Q50 DECIMALS3 ) | ; Omvandla det numeriska värdet från Q50 till ett alfanumeriskt värde och tilldela QS-parametern QS11 värdet |
Kopiera en delsträng från en QS-parameter
Med NC-funktionen SUBSTR kan du spara en definierad delsträng från en QS-parameter i en annan QS-parameter. Du kan t.ex. använda den här NC-funktionen till att extrahera filnamnet från en absolut filsökväg.
I det här exemplet sparar styrsystemet en delsträng från Q-parametern QS10 i QS-parametern QS13. Med hjälp av syntaxelementet BEG2 definierar du att styrsystemet ska kopiera från och med det tredje tecknet. Med syntaxelementet LEN4 definierar du att styrsystemet ska kopiera de efterföljande fyra tecknen.
11 QS13 = SUBSTR ( SRC_QS10 BEG2 LEN4 ) | ; Tilldela QS-parametern QS13 delsträngen från QS10 |
Söka efter en delsträng i ett QS-parameterinnehåll
Med NC-funktionen INSTR kan du kontrollera om en viss delsträng finns i en QS-parameter. På så sätt kan du t.ex. fastställa om sammanfogningen av flera QS-parametrar har fungerat. Två QS-parametrar krävs för kontrollen. Styrsystemet söker i den första QS-parametern efter innehållet i den andra QS-parametern.
Om styrsystemet hittar delsträngen sparar styrsystemet antalet tecken fram till det ställe där delsträngen hittades i resultatparametern. Om flera ställen hittas är resultatet detsamma, eftersom styrsystemet sparar det första hittade stället.
Om styrsystemet inte hittar den sökta delsträngen sparar styrsystemet det totala antalet tecken i resultatparametern.
I det här exemplet söker styrsystemet i QS-parametern QS10 efter teckensträngen som sparats i QS13. Sökningen börjar från den tredje positionen. När tecknen räknas börjar styrsystemet alltid med noll. Styrsystemet tilldelar Q-parametern Q50 det hittade stället som antal tecken.
37 Q50 = INSTR ( SRC_QS10 SEA_QS13 BEG2 ) |
Beräkna antalet tecken i ett QS-parameterinnehåll
NC-funktionen STRLEN beräknar antalet tecken i ett QS-parameterinnehåll. Med den här NC-funktionen kan du t.ex. beräkna längden hos en filsökväg.
Om den valda QS-parametern inte har definierats anger styrsystemet värdet -1.
I det här exemplet beräknar styrsystemet antalet tecken hos QS-parametern QS15. Styrsystemet tilldelar Q-parametern Q52 det numeriska värdet för antalet tecken.
11 Q52 = STRLEN ( SRC_QS15 ) | ; Beräkna antalet tecken hos QS14 och tilldela Q52 antalet tecken |
Jämföra den lexikaliska ordningsföljden hos två alfanumeriska teckensträngar
Med NC-funktionen STRCOMP jämför du den lexikaliska ordningsföljden hos innehållet i två QS-parametrar.
Styrsystemet levererar tillbaka följande resultat:
- 0: Innehållet i de båda QS-parametrarna är identiskt
- -1: Innehållet i den första QS-parametern ligger i lexikalisk ordningsföljd före innehållet i den andra QS-parametern
- +1: Innehållet i den första QS-parametern ligger i lexikalisk ordningsföljd efter innehållet i den andra QS-parametern
- Den lexikaliska ordningsföljden är följande:
- Specialtecken, t.ex. ?_
- Siffror, t.ex. 123
- Versaler, t.ex. ABC
- Gemener, t.ex. abc
Styrsystemet genomför kontrollen, med början från det första tecknet, tills innehållet i QS-parametrarna skiljer sig åt. Om innehållet t.ex. skiljer sig åt vid det fjärde tecknet, avbryter styrsystemet kontrollen vid det här tecknet.
Kortare innehåll med identisk teckenföljd visas först i ordningsföljden, t.ex. abc före abcd.
I det här exemplet jämför styrsystemet den lexikaliska ordningsföljden hos QS12 och QS14. Styrsystemet tilldelar Q-parametern Q52 resultatet som numeriskt värde.
11 Q52 = STRCOMP ( SRC_QS12 SEA_QS14 ) | ; Jämför den lexikaliska ordningsföljden hos värdena i QS12 och QS14 |
Överta innehållet i en maskinparameter
Beroende på innehållet i maskinparametern kan du med hjälp av NC-funktionen CFGREAD överföra alfanumeriska värden till QS-parametrar eller numeriska värden till Q-, QL- eller QR-parametrar.
I det här exemplet sparar styrsystemet överlappningsfaktorn från maskinparametern pocketOverlap som numeriskt värde i en Q-parameter.
- Förinställda inställningar i maskinparametrarna:
- ChannelSettings
- CH_NC
- CfgGeoCycle
- pocketOverlap
11 QS11 = "CH_NC" | ; Tilldela QS-parametern QS11 en nyckel |
12 QS12 = "CfgGeoCycle" | ; Tilldela QS-parametern QS12 en entitet |
13 QS13 = "pocketOverlap" | ; Tilldela QS-parametern QS13 ett attribut |
14 Q50 = CFGREAD( KEY_QS11 TAG_QS12 ATR_QS13 ) | ; Läs av innehållet i maskinparametern |
- NC-funktionen CFGREAD innehåller följande syntaxelement:
- KEY_QS: Maskinparameterns gruppnamn (Key)
- TAG_QS: Maskinparameterns objektnamn (Entity)
- ATR_QS: Maskinparameterns namn (Attribut)
- IDX: Maskinparameterns index
Om det inte finns något gruppnamn definierar du ett tomt värde för motsvarande QS-parameter.
Hänvisning
När du använder NC-funktionen Strängformel QS är resultatet alltid ett alfanumeriskt värde. När du använder NC-funktionen Formel Q/QL/QR är resultatet alltid ett numeriskt värde.