国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

尋邊器碰圓上三點找圓心方法再探

2014-04-16 04:58河南中光學集團有限公司南陽473006胡飛嘉
金屬加工(冷加工) 2014年12期
關鍵詞:個點數(shù)組點數(shù)

河南中光學集團有限公司 (南陽 473006) 胡飛嘉

《金屬加工 (冷加工)》2013年第8期機床自動化欄目刊登了《用尋邊器快速找正圓孔中心》一文,文中提出了用尋邊器碰圓上三點通過編程來確定圓心的方法。這是一個相當實用的方法,尤其在找正大圓和非整圓等打表不便的情況下更具優(yōu)勢。

這一方法的思路是先用尋邊器碰圓上的三點,把這3個點的機械坐標值讀入6個變量中。文中是讀入到R1~R6這6個變量中,R1、R2分別表示第一點的X、Y坐標,其余變量含義類推。由于三點能確定一個圓,根據(jù)已知的3個點的坐標就可以計算出圓心坐標。為了計算圓心坐標,原文用了兩個很復雜的計算式。這其實是把簡單問題復雜化了。因為西門子840D系統(tǒng) (不限于840D)已經(jīng)自帶了根據(jù)三點計算圓心的函數(shù),沒有必要再編程計算了。這個函數(shù)就是CALCDAT。它不僅能計算出圓心坐標,還能計算出圓的半徑。這個函數(shù)的格式是:

CALCDAT(<原始坐標數(shù)組>,<點數(shù)>,<結果數(shù)組>)

<原始坐標數(shù)組>是一個3×2的二維數(shù)組,存放的是圓上的3個點的坐標。

<點數(shù)>是指圓上的點數(shù) (只能取3或4)。本例是碰圓上三點,應取3。

<結果數(shù)組>是變量參數(shù),用于存放計算結果。這個參數(shù)是一個有3個元素的一維數(shù)組,前兩個數(shù)表示三點所在的圓的圓心X、Y坐標,第三個數(shù)表示圓的半徑。

這個函數(shù)有一個布爾型的返回值,表示是否計算成功 (只要三點不在一條直線上,通常都能計算成功)。

使用這個函數(shù),原文中的LD3程序可以非常簡單。程序如下:

DEF REAL PT[3,2],RES[3];定義兩個數(shù)組 (PT存放原始數(shù)據(jù),RES存放結果)

PT [0,0] =SET(R1,R2,R3,R4,R5,R6);圓上三點坐標賦值給PT數(shù)組,用于CALCDAT計算

IF CALCDAT(PT,3,RES);計算圓心坐標和圓的半徑

R7=RES [0]R8=RES [1]R9=RES [2] +5;圓心坐標放在R7、R8里,半徑放在R9里 (RES[2]中是計算出的半徑,加上5的意思是假設碰的是內(nèi)圓,尋邊器的觸頭半徑是5 mm。如果碰的是外圓,則把加號改成減號。后面的數(shù)是尋邊器觸頭半徑,需根據(jù)實際情況打入)

ENDIF

M17

比較這個程序和原文的程序可以看出,原文中用于計算圓心坐標的兩個很復雜的計算式僅用一個CALCDAT函數(shù)即可實現(xiàn) (還計算出了圓的半徑),不僅程序簡練了,而且編程難度也明顯降低了。

猜你喜歡
個點數(shù)組點數(shù)
JAVA稀疏矩陣算法
JAVA玩轉(zhuǎn)數(shù)學之二維數(shù)組排序
看不到的總點數(shù)
Excel數(shù)組公式在林業(yè)多條件求和中的應用
畫點數(shù)
畫線串點
由一道習題引出的思考
多核并行的大點數(shù)FFT、IFFT設計
尋找勾股數(shù)組的歷程
關于m2(3,q)的上界