簡單的解釋一下數控巨集程式裡的變數賦值是什麼意思

時間 2021-08-30 10:09:27

1樓:有求必營

基本指令:

h01賦值;格式:g65h01p#101q#102:把#102內的數值賦予到#101中

g65h01p#101q#10:把10賦予到#101中

h02加指令;格式g65 h02 p#101 q#102 r#103,把#102的數值加上#103的數值賦予#101

g65 h02 p#101 q#102 r10

g65 h02 p#101 q10 r#103

g65 h02 p#101 q10 r20

上面4個都是加指令的格式都是把q後面的數值或變數號內的數值加上r後面的數

值或變數號內的數值然後等於到p後面的變數號中.

h03減指令;格式g65 h03 p#101 q#102 r#103,把#102的數值減去#103的數值賦予#101

g65 h03 p#101 q#102 r10

g65 h03 p#101 q10 r#103

g65 h03 p#101 q20 r10

上面4個都是減指令的格式都是把q後面的數值或變數號內的數值減去r後面的數

值或變數號內的數值然後等於到p後面的變數號中.

h04乘指令;格式g65 h04 p#101 q#102 r#103,把#102的數值乘上#103的數值賦予#101

g65 h04 p#101 q#102 r10

g65 h04 p#101 q10 r#103

g65 h04 p#101 q20 r10

上面4個都是乘指令的格式都是把q後面的數值或變數號內的數值乘上r後面的數

值或變數號內的數值然後等於到p後面的變數號中.

h05除指令;格式g65 h05p#101 q#102 r#103,把#102的數值除以#103的數值賦予#101

g65 h05 p#101 q#102 r10

g65 h05 p#101 q10 r#103

g65 h05 p#101 q20 r10

上面4個都是除指令格式都是把q後面的數值或變數號內的數值除以r後面的數

值或變數號內的數值然後等於到p後面的變數號中.(餘數不存,除數如果為0的話會出現112報警)

三角函式指令:

h31 sin正玄函式指令:格式g65 h31 p#101 q#102 r#103;含義q後面的#102是三角形的斜邊r後面的#103記憶體的是角度.結果是#101=#102*sin#103,也就是說可以直接用這個求出三角形的另

一條邊長.和以前的指令一樣q和r後面也可以直接寫數值.

h32 cos餘玄函式指令:格式g65 h32 #101 q#102 r#103;含義q後面的#102是三角形的斜邊

r後面的#103記憶體的是角度.結果是#101=#102*cos#103,也就是說可以直接用這個求出三角形的

另一條邊長.和以前的指令一樣q和r後面也可以直接寫數值.

h33和h34本來應該是tan 和atan的可是經過我使用得數並不準確,希望有知道的人能夠告訴我是為什麼?

開平方根指令:

h21;格式g65 h21 p#101 q#102 ;意思是把#102內的數值開了平方根然後存到#101中(這個指令是非常重要的如果在車橢圓的時候沒有開平方跟的指令是沒可能用巨集做到的.

無條件轉移指令:

h80;格式:g65 h80 p10 ;直接跳到第10程式段

有條件轉移指令:

h81 h82 h83 h84 h85 h86 ,分別是等於就轉的h81;不等於就轉的h82;小於就轉的h83;大於就轉的h84;小於等於就轉的h85;大於等於就轉的h86;

格式:g65 h8x p10 q#101 r#102;將#101內的數值和#102內的數值相比較,按上面的h8x的碼帶入h8x中去,如果條件符合就跳到第10程式段,如果不符合就繼續執行下面的程式段.

用 戶 巨集 程 序

能完成某一功能的一系列指令像子程式那樣存入儲存器,用一個總指令來它們,使用時只需給出這個總指令就能執行其功能。

l 所存入的這一系列指令——使用者巨集程式

l 呼叫巨集程式的指令————巨集指令

l 特點:使用變數

一. 變數的表示和使用

(一) 變數表示

#i(i=1,2,3,…)或#[<式子>]

例:#5,#109,#501,#[#1+#2-12]

(二) 變數的使用

1. 地址字後面指定變數號或公式

格式: <地址字>#i

<地址字>-#i

<地址字>[<式子>]

例:f#103,設#103=15 則為f15

z-#110,設#110=250 則為z-250

x[#24+#18*cos[#1]]

2. 變數號可用變數代替

例:#[#30],設#30=3 則為#3

3. 變數不能使用地址o,n,i

例:下述方法下允許

o#1;

i#2 6.00×100.0;

n#3 z200.0;

4. 變數號所對應的變數,對每個地址來說,都有具體數值範圍

例:#30=1100時,則m#30是不允許的

5. #0為空變數,沒有定義變數值的變數也是空變數

6. 變數值定義:

程式定義時可省略小數點,例:#123=149

mdi鍵盤輸一. 變數的種類

1. 區域性變數#1~#33

一個在巨集程式中區域性使用的變數

例: a巨集程式 b巨集程式

… …

#10=20 x#10 不表示x20

… …

斷電後清空,呼叫巨集程式時代入變數值

2. 公共變數#100~#149,#500~#531

各使用者巨集程式內公用的變數

例:上例中#10改用#100時,b巨集程式中的

x#100表示x20

#100~#149 斷電後清空

#500~#531保持型變數(斷電後不丟失)

3. 系統變數

固定用途的變數,其值取決於系統的狀態

例:#2001值為1號刀補x軸補償值

#5221值為x軸g54工件原點偏置值

入時必須輸入小數點,小數點省略時單位為μm

一. 運算指令

運算式的右邊可以是常數、變數、函式、式子

式中#j,#k也可為常量

式子右邊為變數號、運算式

1. 定義

#i=#j

2. 算術運算

#i=#j+#k

#i=#j-#k

#i=#j*#k

#i=#j/#k

3. 邏輯運算

#i=#jok#k

#i=#jxok#k

#i=#jand#k

4. 函式

#i=sin[#j] 正弦

#i=cos[#j] 餘弦

#i=tan[#j] 正切

#i=atan[#j] 反正切

#i=sqrt[#j] 平方根

#i=abs[#j] 絕對值

#i=round[#j] 四捨五入化整

#i=fix[#j] 下取整

#i=fup[#j] 上取整

#i=bin[#j] bcd→bin(二進位制)

#i=bcn[#j] bin→bcd

1. 說明

1) 角度單位為度

例:90度30分為90.5度

2) atan函式後的兩個邊長要用“1”隔開

例:#1=atan[1]/[-1]時,#1為了35.0

3) round用於語句中的地址,按各地址的最小設定單位進行四捨五入

例:設#1=1.2345,#2=2.3456,設定單位1μm

g91 x-#1;x-1.235

x-#2 f300;x-2.346

x[#1+#2];x3.580

未返回原處,應改為

x[round[#1]+round[#2]];

4) 取整後的絕對值比原值大為上取整,反之為下取整

例:設#1=1.2,#2=-1.2時

若#3=fup[#1]時,則#3=2.0

若#3=fix[#1]時,則#3=1.0

若#3=fup[#2]時,則#3=-2.0

若#3=fix[#2]時,則#3=-1.0

5) 指令函式時,可只寫開頭2個字母

例:round→ro

fix→fi

6) 優先順序

函式→乘除(*,1,and)→加減(+,-,or,xor)

例:#1=#2+#3*sin[#4];

7) 括號為中括號,最多5重,園括號用於註釋語句

例:#1=sin[[[#2+#3]*#4+#5]*#6];(3重)

一. 轉移與迴圈指令

1.無條件的轉移

格式: goto 1;

goto #10;

2.條件轉移

格式: if[<條件式>] goto n

條件式:

#j eq#k 表示=

#j ne#k 表示≠

#j gt#k 表示>

#j lt#k 表示<

#j ge#k 表示≥

#j le#k 表示≤

例: if[#1 gt 10] goto 100;

… n100 g00 691 x10;

例:求1到10之和

o9500;

#1=0

#2=1

n1 if [#2 gt10] goto 2

#1=#1+#2;

#2=#2+1;

goto 1

n2 m301.迴圈

格式:while[<條件式>]do m;(m=1,2,3)

… …

… endm

說明:1.條件滿足時,執行dom到endm,則從dom的程式段

不滿足時,執行dom到endm的程式段

2.省略while語句只有dom…endm,則從dom到endm之間形成死迴圈

3.巢狀

4.eq ne時,空和“0”不同

其他條件下,空和“0”相同

例:求1到10之和

o0001;

#1=0;

#2=1;

while [#2le10] do1;

#1=#1+#2;

#2=#2+#1;

end1;

m30;

數控程式設計巨集程式中#1#2……是什麼意思

2樓:四舍**入

巨集程式中的代號,他好比我們小學學的x。

舉個例子,當x=2時,那麼5+x就等於7。

如果使用者在程式中寫上#1=5,那麼下一段只要讀到#1系統就知道是5了。

如果下面有一行程式為g0x[#1+2]z30,那麼系統就會把刀具走刀x是7的位置,z走刀30的位置

如果在指令#1=#1-1的話那麼系統每讀到#1的時候都會在上一個#1的資料減掉1毫米。這就是它的作用,也就是不單單表示一個資料,它還能運用計算來完成一些程式設計比較麻煩的環境中。

擴充套件資料:

優點1、可以編寫一些非圓曲線,如巨集程式編寫橢圓,雙曲線,拋物線等。

2、編寫一些大批相似零件的時候,可以用巨集程式編寫,這樣只需要改動幾個資料就可以了,沒有必要進行大量重複程式設計。

a類巨集程式

1、變數的定義和替換 #i=#j

程式設計格式 g65 h01 p#i q#j

例 g65 h01 p#101 q1005; (#101=1005)

g65 h01 p#101 q-#112;(#101=-#112)

2、加法 #i=#j+#k

程式設計格式 g65 h02 p#i q#j r#k

例 g65 h02 p#101 q#102 r#103;(#101=#102+#103)

3、減法 #i=#j-#k

程式設計格式 g65 h03 p#i q#j r#k

例 g65 h03 p#101 q#102 r#103;(#101=#102-#103)

法院簡易程式,普通程式解釋一下

普通程式是人民法院審判第一審案件通常適用的訴訟程式。在中國,分為刑事和民事兩種普通程式。刑事普通程式是相對於 特殊程式 死刑複核程式和審判監督程式 而言的。包括立案,偵查 起訴 審判和執行等程式。普通程式 是指人民法院審理第一審民事訴訟案件時通常所適用的程式。從普通程式的基本結構來看,包括起訴和受理...

誰能幫忙解釋一下Vista的應用程式

在網上輸入挨著個查就好了!12 realtek high definition audio driver 除了這個是音效卡驅動,其他沒有任何乙個事系統必須的 lz精簡一下吧,看著頭痛。有些輸入關鍵字搜尋一下就可以了。實在不知道的再來問。解釋一下 vista 在五年以前,微軟透露出longhorn的開...

幫我解釋一下詩句的意思,幫我解釋一下古詩的意思!!謝謝

西伯利亞的狼 1 等閒識得東風面 句中的 識 字承首句中的 尋 字。等閒識得 是說春天的面容與特徵是很容易辨認的。東風面 借指春天。萬紫千紅總是春 是說這萬紫千紅的景象全是由春光點染而成的,人們從這萬紫千紅中認識了春天。2 烏雲上湧,就如墨汁潑下,卻又在天邊露出一段山巒,明麗清新,大雨激起的水花如白...