本文工業(yè)機(jī)器人培訓(xùn)專家為您帶來RAPID語(yǔ)言的算術(shù)符號(hào)、數(shù)學(xué)指令以及數(shù)學(xué)函數(shù)
時(shí)間:2021-05-28 14:52
來源:
在之前的文章中我們學(xué)習(xí)輸入算術(shù)表達(dá)式時(shí)遇到了很多的算術(shù)符號(hào),使用賦值指令配合這些算術(shù)符號(hào)就能夠?qū)Τ绦驍?shù)據(jù)進(jìn)行各種算術(shù)運(yùn)算。另外RAPID語(yǔ)言還提供了數(shù)學(xué)指令和數(shù)學(xué)函數(shù)供用戶計(jì)算和修改程序數(shù)據(jù)的值。本文東莞工業(yè)機(jī)器人培訓(xùn)專家將會(huì)對(duì)算術(shù)符號(hào)、數(shù)學(xué)指令、數(shù)學(xué)函數(shù)進(jìn)行介紹。
1.數(shù)學(xué)符號(hào)
表8-2列出了RAPID語(yǔ)言所提供的各種數(shù)學(xué)符號(hào)
算術(shù)符號(hào)的運(yùn)算優(yōu)先級(jí)是:括號(hào)>乘除>加減,對(duì)于優(yōu)先級(jí)相同的運(yùn)算符號(hào),左側(cè)優(yōu)先于右側(cè)。這與我們平時(shí)數(shù)學(xué)中所學(xué)的運(yùn)算符號(hào)優(yōu)先級(jí)是一致的。
2.數(shù)學(xué)指令
表8-3列出了RAPID語(yǔ)言所提供的部分常用的數(shù)學(xué)指令。
(1)ADD指令 指令格式為Add Name,Addvalue;
Add:指令代碼
Name:執(zhí)行增減數(shù)值的對(duì)象名稱,支持的數(shù)據(jù)類型為num、dnum
AddDvalue:期望增減的值,支持的數(shù)據(jù)類型為num、dnum、數(shù)值常數(shù)
例1:Add reg2,5; 將5增加到num型變量reg2中,等同于reg2:=reg2+5;
例2:Add reg2,-reg1;從reg2的數(shù)值中減去reg1的數(shù)值,等同于reg2:=reg2-reg1;
例3:var num cont;
Add cont,100;
將100增加到變量cont中,等同于cont:=cont+100;
(2)INCR指令 指令格式為Incr Name;
Incr:指令代碼
Name:執(zhí)行自加1的數(shù)據(jù)對(duì)象的名稱,支持的數(shù)據(jù)類型為num、dnum
例:Incr reg1;將reg1的數(shù)值增加1,等同于reg1:=reg1+1;
(3)DECR指令 指令格式為Decr Name;
Decr:指令代碼
Name:執(zhí)行自減1的數(shù)據(jù)對(duì)象的名稱,支持的數(shù)據(jù)為num、dnum
例:Decr reg1; 將reg1的數(shù)值減去1,等同于reg1:=reg1-1;
(4)CLEAR指令 指令格式為Clear Name;
Clear:指令代碼
Name:執(zhí)行清除數(shù)值的數(shù)據(jù)對(duì)象的名稱
例:Clear reg1; 將reg1的值清除為0,等同于reg1:=0;
(5)TRYINT指令 指令格式為Tryint Name;
Tryint:指令代碼
Name:執(zhí)行整數(shù)有效性測(cè)試的數(shù)據(jù)對(duì)象的名稱
例:reg1:=3.14;
Tryint reg1;
測(cè)試reg1是否為有效整數(shù),如果是則往下執(zhí)行,如果不是則引發(fā)執(zhí)行錯(cuò)誤,需要由錯(cuò)誤處理器內(nèi)的指令處理,本例將引發(fā)執(zhí)行錯(cuò)誤。
東莞工業(yè)機(jī)器人培訓(xùn)專家表示,隨著控制器系統(tǒng)軟件版本的更新,RAPID語(yǔ)言所提供的指令也不斷增加,圖8-16中對(duì)比了ROBOTWARE5.61與ROBOTWARE6.06所提供的數(shù)學(xué)指令數(shù)量差異。對(duì)于新增的指令可通過查詢官方最新公布的技術(shù)參考手冊(cè),了解其指令格式與指令用途。
圖8-16
3.數(shù)學(xué)函數(shù)
函數(shù)不同于指令,指令自成語(yǔ)句,而函數(shù)不能自成語(yǔ)句。函數(shù)可以視作一個(gè)會(huì)返回特定數(shù)據(jù)類型數(shù)據(jù)對(duì)象的一個(gè)指令封裝,我們只需了解函數(shù)的功能、數(shù)據(jù)類型、格式即可,無需關(guān)注封裝之內(nèi)是如何構(gòu)成的,甚至可以將整個(gè)函數(shù)表達(dá)式視作一個(gè)指定類型的數(shù)據(jù)對(duì)象。表8-4中列出了RAPID語(yǔ)言所提供部分常用數(shù)學(xué)函數(shù),欲掌握更多的RAPID函數(shù)可查閱RAPID語(yǔ)言技術(shù)參考手冊(cè)。
(1)DIV整數(shù)商函數(shù) 用于求被除數(shù)除以除數(shù)的整數(shù)商。
返回值數(shù)據(jù)類型:num或dnum,
語(yǔ)法格式:<被除數(shù)> DIV <除數(shù)>
限制條件:除數(shù)不能為零,除數(shù)與被除數(shù)同為num或dnum型數(shù)據(jù)
例1:reg2:=17 DIV 5;
執(zhí)行后的結(jié)果是,reg2的值為3。
例2:var num count1:=9;
var num count2:=4;
reg2:=count1 DIV count2;
執(zhí)行后的結(jié)果是reg2的值為2。
(2)MOD模數(shù)函數(shù) 用于求被除數(shù)除以除數(shù)的模數(shù)。
返回值數(shù)據(jù)類型:num或dnum
語(yǔ)法格式:<被除數(shù)> MOD <除數(shù)>
限制條件:除數(shù)不能為零,除數(shù)與被除數(shù)同為num或dnum型數(shù)據(jù)
例1:reg2:=17 DIV 5;
執(zhí)行后的結(jié)果是,reg2的值為2。
例2:var num count1:=9;
var num count2:=4;
reg2:=count1 DIV count2;
執(zhí)行后的結(jié)果是reg2的值為1。
(3)OR或函數(shù) 如果條件表達(dá)式之一或者全部正確,則返回true,否則返回false。
返回值數(shù)據(jù)類型:bool
語(yǔ)法格式:<條件表達(dá)式1> OR <條件表達(dá)式2>
限制條件:條件表達(dá)式1與條件表達(dá)式2同為bool型數(shù)據(jù)
例1:var bool flag1;
flag1:=5>3 OR 3<4;
執(zhí)行后的結(jié)果,flag1的值為TRUE。
例2:var num num1
var string string1
var bool bool1
bool1:=string1=”good ”O(jiān)R num1<12;
如果string1為“good”,或者num1<12,bool1的值為TRUE。
(4)AND與函數(shù) 如果條件表達(dá)式全部正確,則返回true,否則返回false
返回值數(shù)據(jù)類型:bool
語(yǔ)法格式:<條件表達(dá)式1> AND <條件表達(dá)式2>
限制條件:條件表達(dá)式1與條件表達(dá)式2同為bool型數(shù)據(jù)
例1:var bool flag1;
flag1:=5>3 AND 3<4;
執(zhí)行后的結(jié)果,flag1的值為FALSE。
例2:var num num1;
var string string1;
var bool bool1;
bool1:=string1=”good ”AND num1<12;
如果string1為“good”,并且num1<12,bool1的值為TRUE。
(5)NOT非函數(shù) 將布爾型數(shù)據(jù)對(duì)象的值轉(zhuǎn)換為相反的值
返回值數(shù)據(jù)類型:bool
語(yǔ)法格式:NOT <取非對(duì)象>
限制條件:取非對(duì)象為bool型數(shù)據(jù)
例1:var bool bool1;
var bool bool2;
bool1:=NOT bool2;
如果bool2為true,則bool1為false;如果bool2為false,則bool1為true。
例2:var bool a;
var bool b;
var bool c
c:=a AND NOT b;如果a為true,且b為false,則c的值為true。
(6)ABS絕對(duì)值函數(shù) 用于獲取絕對(duì)值,即數(shù)值數(shù)據(jù)的正值
返回值數(shù)據(jù)類型:num
語(yǔ)法格式:Abs(<取絕對(duì)值對(duì)象>)
限制條件:取絕對(duì)值對(duì)象為num型數(shù)據(jù)
例:var num cont1:=-3.14;
reg1:=Abs(cont1)
執(zhí)行結(jié)果,reg1的值為3.14。
(7)SIN正弦函數(shù) 用于計(jì)算一個(gè)角度值的正弦值
返回值數(shù)據(jù)類型:num,范圍=【-1,1】
語(yǔ)法格式:Sin(角度值)
限制條件:角度值的單位為度
例:var num value;
var num angle:=30;
value:=Sin(angle)
執(zhí)行結(jié)果,value的值為0.5。
以上就是東莞工業(yè)機(jī)器人培訓(xùn)專家為大家整理的RAPID語(yǔ)言所提供的各種數(shù)學(xué)符號(hào)、部分常用的數(shù)學(xué)指令以及常用數(shù)學(xué)函數(shù)了,你記住了嗎?若還有其他疑問,歡迎撥打咨詢熱線:0769-87078535.
1.數(shù)學(xué)符號(hào)
表8-2列出了RAPID語(yǔ)言所提供的各種數(shù)學(xué)符號(hào)
表8-2
算術(shù)符號(hào)的運(yùn)算優(yōu)先級(jí)是:括號(hào)>乘除>加減,對(duì)于優(yōu)先級(jí)相同的運(yùn)算符號(hào),左側(cè)優(yōu)先于右側(cè)。這與我們平時(shí)數(shù)學(xué)中所學(xué)的運(yùn)算符號(hào)優(yōu)先級(jí)是一致的。
2.數(shù)學(xué)指令
表8-3列出了RAPID語(yǔ)言所提供的部分常用的數(shù)學(xué)指令。
表8-3
(1)ADD指令 指令格式為Add Name,Addvalue;
Add:指令代碼
Name:執(zhí)行增減數(shù)值的對(duì)象名稱,支持的數(shù)據(jù)類型為num、dnum
AddDvalue:期望增減的值,支持的數(shù)據(jù)類型為num、dnum、數(shù)值常數(shù)
例1:Add reg2,5; 將5增加到num型變量reg2中,等同于reg2:=reg2+5;
例2:Add reg2,-reg1;從reg2的數(shù)值中減去reg1的數(shù)值,等同于reg2:=reg2-reg1;
例3:var num cont;
Add cont,100;
將100增加到變量cont中,等同于cont:=cont+100;
(2)INCR指令 指令格式為Incr Name;
Incr:指令代碼
Name:執(zhí)行自加1的數(shù)據(jù)對(duì)象的名稱,支持的數(shù)據(jù)類型為num、dnum
例:Incr reg1;將reg1的數(shù)值增加1,等同于reg1:=reg1+1;
(3)DECR指令 指令格式為Decr Name;
Decr:指令代碼
Name:執(zhí)行自減1的數(shù)據(jù)對(duì)象的名稱,支持的數(shù)據(jù)為num、dnum
例:Decr reg1; 將reg1的數(shù)值減去1,等同于reg1:=reg1-1;
(4)CLEAR指令 指令格式為Clear Name;
Clear:指令代碼
Name:執(zhí)行清除數(shù)值的數(shù)據(jù)對(duì)象的名稱
例:Clear reg1; 將reg1的值清除為0,等同于reg1:=0;
(5)TRYINT指令 指令格式為Tryint Name;
Tryint:指令代碼
Name:執(zhí)行整數(shù)有效性測(cè)試的數(shù)據(jù)對(duì)象的名稱
例:reg1:=3.14;
Tryint reg1;
測(cè)試reg1是否為有效整數(shù),如果是則往下執(zhí)行,如果不是則引發(fā)執(zhí)行錯(cuò)誤,需要由錯(cuò)誤處理器內(nèi)的指令處理,本例將引發(fā)執(zhí)行錯(cuò)誤。
東莞工業(yè)機(jī)器人培訓(xùn)專家表示,隨著控制器系統(tǒng)軟件版本的更新,RAPID語(yǔ)言所提供的指令也不斷增加,圖8-16中對(duì)比了ROBOTWARE5.61與ROBOTWARE6.06所提供的數(shù)學(xué)指令數(shù)量差異。對(duì)于新增的指令可通過查詢官方最新公布的技術(shù)參考手冊(cè),了解其指令格式與指令用途。
圖8-16
3.數(shù)學(xué)函數(shù)
函數(shù)不同于指令,指令自成語(yǔ)句,而函數(shù)不能自成語(yǔ)句。函數(shù)可以視作一個(gè)會(huì)返回特定數(shù)據(jù)類型數(shù)據(jù)對(duì)象的一個(gè)指令封裝,我們只需了解函數(shù)的功能、數(shù)據(jù)類型、格式即可,無需關(guān)注封裝之內(nèi)是如何構(gòu)成的,甚至可以將整個(gè)函數(shù)表達(dá)式視作一個(gè)指定類型的數(shù)據(jù)對(duì)象。表8-4中列出了RAPID語(yǔ)言所提供部分常用數(shù)學(xué)函數(shù),欲掌握更多的RAPID函數(shù)可查閱RAPID語(yǔ)言技術(shù)參考手冊(cè)。
表8-4
(1)DIV整數(shù)商函數(shù) 用于求被除數(shù)除以除數(shù)的整數(shù)商。
返回值數(shù)據(jù)類型:num或dnum,
語(yǔ)法格式:<被除數(shù)> DIV <除數(shù)>
限制條件:除數(shù)不能為零,除數(shù)與被除數(shù)同為num或dnum型數(shù)據(jù)
例1:reg2:=17 DIV 5;
執(zhí)行后的結(jié)果是,reg2的值為3。
例2:var num count1:=9;
var num count2:=4;
reg2:=count1 DIV count2;
執(zhí)行后的結(jié)果是reg2的值為2。
(2)MOD模數(shù)函數(shù) 用于求被除數(shù)除以除數(shù)的模數(shù)。
返回值數(shù)據(jù)類型:num或dnum
語(yǔ)法格式:<被除數(shù)> MOD <除數(shù)>
限制條件:除數(shù)不能為零,除數(shù)與被除數(shù)同為num或dnum型數(shù)據(jù)
例1:reg2:=17 DIV 5;
執(zhí)行后的結(jié)果是,reg2的值為2。
例2:var num count1:=9;
var num count2:=4;
reg2:=count1 DIV count2;
執(zhí)行后的結(jié)果是reg2的值為1。
(3)OR或函數(shù) 如果條件表達(dá)式之一或者全部正確,則返回true,否則返回false。
返回值數(shù)據(jù)類型:bool
語(yǔ)法格式:<條件表達(dá)式1> OR <條件表達(dá)式2>
限制條件:條件表達(dá)式1與條件表達(dá)式2同為bool型數(shù)據(jù)
例1:var bool flag1;
flag1:=5>3 OR 3<4;
執(zhí)行后的結(jié)果,flag1的值為TRUE。
var string string1
var bool bool1
bool1:=string1=”good ”O(jiān)R num1<12;
如果string1為“good”,或者num1<12,bool1的值為TRUE。
(4)AND與函數(shù) 如果條件表達(dá)式全部正確,則返回true,否則返回false
返回值數(shù)據(jù)類型:bool
語(yǔ)法格式:<條件表達(dá)式1> AND <條件表達(dá)式2>
限制條件:條件表達(dá)式1與條件表達(dá)式2同為bool型數(shù)據(jù)
例1:var bool flag1;
flag1:=5>3 AND 3<4;
執(zhí)行后的結(jié)果,flag1的值為FALSE。
例2:var num num1;
var string string1;
var bool bool1;
bool1:=string1=”good ”AND num1<12;
如果string1為“good”,并且num1<12,bool1的值為TRUE。
(5)NOT非函數(shù) 將布爾型數(shù)據(jù)對(duì)象的值轉(zhuǎn)換為相反的值
返回值數(shù)據(jù)類型:bool
語(yǔ)法格式:NOT <取非對(duì)象>
限制條件:取非對(duì)象為bool型數(shù)據(jù)
例1:var bool bool1;
var bool bool2;
bool1:=NOT bool2;
如果bool2為true,則bool1為false;如果bool2為false,則bool1為true。
例2:var bool a;
var bool b;
var bool c
c:=a AND NOT b;如果a為true,且b為false,則c的值為true。
(6)ABS絕對(duì)值函數(shù) 用于獲取絕對(duì)值,即數(shù)值數(shù)據(jù)的正值
返回值數(shù)據(jù)類型:num
語(yǔ)法格式:Abs(<取絕對(duì)值對(duì)象>)
限制條件:取絕對(duì)值對(duì)象為num型數(shù)據(jù)
例:var num cont1:=-3.14;
reg1:=Abs(cont1)
執(zhí)行結(jié)果,reg1的值為3.14。
返回值數(shù)據(jù)類型:num,范圍=【-1,1】
語(yǔ)法格式:Sin(角度值)
限制條件:角度值的單位為度
例:var num value;
var num angle:=30;
value:=Sin(angle)
執(zhí)行結(jié)果,value的值為0.5。
以上就是東莞工業(yè)機(jī)器人培訓(xùn)專家為大家整理的RAPID語(yǔ)言所提供的各種數(shù)學(xué)符號(hào)、部分常用的數(shù)學(xué)指令以及常用數(shù)學(xué)函數(shù)了,你記住了嗎?若還有其他疑問,歡迎撥打咨詢熱線:0769-87078535.