CNC, hobby, gépépítés, programozás
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Feltételvizsgálatok

Go down

Feltételvizsgálatok Empty Feltételvizsgálatok

Témanyitás by Béni 2018-02-01, 12:15

A Mach3 G kódjában alapesetben nincs lehetőség valódi feltételvizsgálatra. Egy kis csalafintasággal megoldható. Szépnek nem mondható, de legalább működik. Smile

Írtam egy makrót, amivel megoldható két bemenő adat összehasonlító és logikai vizsgálata. Ezen felül egy operandussal hibrid előjelfüggvényt is tartalmaz.
A funkciók a hívó kódjukkal az alábbiak:

0 - egyenlő
1 - nem egyenlő
2 - kisebb
3 -nagyobb
4- kisebb-egyenlő (<=)
5- nagyobb-egyenlő (>=)
6 - logikai vagy (OR) : logikai kiértékelésnél a bemenő paraméterek lehetnek nulla értékűek és bármi más. Bármi más az 1-es lesz. A művelet bitművelet!
7 - logikai és (AND)
8 - logikai kizáró vagy (XOR)
9- hibrid előjel (HSGN)
Minden funkció esetén a kiértékelés eredményét a #33-as váltózón keresztül adja át a makró.
0- False, 1- True értékkel.
A HSGN értelmezése: 0- a P címen megadott operandus negatív vagy nulla, 1 - operandus pozitív

A makró 3 paraméterrel hívható.
P - 1. operandus
Q - 2. operandus
R - mód kódja (0-9)

pl.: M98 P12.4 Q4.3 R3
Érthetőbben: ha 12.4 nagyobb, mint 4.3, akkor #33 egy (true) lesz, különben nulla (false).

Ezt az eredmény fel lehet használni pl. program elágaztatásra is:
M98 P100 L#33 - itt csak akkor hívja meg az O100-as szubrutint (alprogramot, ha úgy tetszik), ha #33 értéke nem nulla. (például esetünkben 1.)

Tesztelésre az alábbi kis programot használtam:
Kód:

M669 P0.1 Q12.45 R9
M98 P100 L#33
G0 Z0
M30
O100
G0 Z-5
M99
%

Végezetül itt a makró is. Jelezzétek, ha valami gond lenne a működésével, csak futólag teszteltem!
Csatolmányok
Feltételvizsgálatok Attachment
M669.zip You don't have permission to download attachments.(2 Kb) Downloaded 6 times
Béni
Béni
Admin

Posts : 168
Join date : 2015. Apr. 02.
Location : Szeged

http://dotg.weebly.com/

Vissza az elejére Go down

Vissza az elejére


 
Engedélyek ebben a fórumban:
Nem válaszolhatsz egy témára ebben a fórumban.