黄色三级片无码高清-一级国产黄色片传媒-下载日韩一级黄色片-国产黄片卡片一级-看三四级黄色毛片-国产一级爱做c片免费-欧美一级电影播放观看-日韩一级视频在线看-成人簧片一级AAA片

【請(qǐng)登錄】【免費(fèi)注冊(cè)】

首頁新聞技術(shù)產(chǎn)品供應(yīng)二手培訓(xùn)展會(huì)物流維修求購(gòu)招商招標(biāo)招聘企業(yè)

技術(shù)

搜索
技術(shù)文章機(jī)械知識(shí)技術(shù)技巧論文試題維修知識(shí)招投標(biāo)知識(shí)
您的位置:盤古機(jī)械網(wǎng)>技術(shù)文章>機(jī)械知識(shí)>詳情

數(shù)控編程系統(tǒng)——前置處理程序設(shè)計(jì)

時(shí)間:2008-11-03瀏覽:899次收藏

    前置處理任務(wù):完成對(duì)用數(shù)控語言編寫的源程序進(jìn)行翻譯、處理與計(jì)算,最終形成一個(gè)記錄刀具中心運(yùn)動(dòng)軌跡位置數(shù)據(jù)的文件(CL文件),作為不同數(shù)控機(jī)床的后置處理程序的輸入數(shù)據(jù)。 
    后置處理任務(wù):將前置處理程序輸出的CL文件中的刀位數(shù)據(jù)及有關(guān)信息轉(zhuǎn)換成特定數(shù)控機(jī)床控制系統(tǒng)所要求的數(shù)控加工程序。 
    另外,為了直觀檢查CL文件中的數(shù)據(jù)(CLDATA)的正確程度,以圖形方式用CLDATA在屏幕上進(jìn)行繪圖,若所繪圖形與所要求的加工刀心軌跡不符,可進(jìn)一步修改源程序。其前置處理程序的基本結(jié)構(gòu)及流程如圖3-11所示。
程序?qū)υ凑Z句的處理過程:是取出一條處理一條,直到最后一條源語句(FINI)為止,生成一張幾何定義語句的幾何參數(shù)表和一個(gè)反映工藝參數(shù)、運(yùn)動(dòng)語句等數(shù)據(jù)的CL文件。因此,它實(shí)際上是屬于一種解釋程序的設(shè)計(jì)方法。
一、幾何定義語句的處理 
    任務(wù):主要是將MPAPT語言中的幾何定義語句所定義的幾何元素?fù)Q算為標(biāo)準(zhǔn)型數(shù)據(jù):即將點(diǎn)表示為直角坐標(biāo)值;線表示為直線的一般方程;圓表示為圓心直角坐標(biāo)和半徑;列表曲線采用雙圓弧樣條擬合,分別求出該雙圓弧的圓心坐標(biāo)、半徑和切點(diǎn)坐標(biāo),并分別記入幾何元素參數(shù)表中,以便向后續(xù)幾何定義語句與運(yùn)動(dòng)語句處理程序提供參數(shù)。 
    處理內(nèi)容:主要為源程序語句的分類、錯(cuò)誤診斷和針對(duì)不同的定義方式進(jìn)行不同的數(shù)學(xué)處理。 
    為了便于描述上述有關(guān)內(nèi)容的處理,先介紹程序設(shè)計(jì)中的某些常用子程序。
(一) 常用子程序設(shè)計(jì) 
    在APT語言中,不同元素之間分別用“=”、“/”或“;”等符號(hào)分隔。為了便于取出與處理這些不同的元素,應(yīng)首先確定這些分隔符號(hào)在被處理語句中的位置,然后進(jìn)行分類、查錯(cuò)、確定修飾詞信息及數(shù)學(xué)處理等內(nèi)容。
例如,一條幾何定義語句,暫存到某一字符串變量(AA$)中,語句中分隔符號(hào)的位置與語句所含字符串的長(zhǎng)度,分別存放于某一數(shù)組(N(8))中,如下所示: 
    "L1=LINE/Point;ATANGL;112;Line"→AA$ 
    ↓↓↓↓↓↓ 
    N(0)N(1)N(2)N(3) N(4) N(8) 
    則N(0)=3;N(1)=8;N(2)=14;N(3)=21;N(4)=25與N(8)=29(沒用上N(5)~N(7)其值為0,為了取出語句中的每個(gè)元素,首先必須確定以上數(shù)組中的值。
1. 查找?guī)缀味x語句中“=”位置子程序 
    幾何定義語句的一個(gè)顯著標(biāo)志是語句中含有“=”號(hào),程序中指定N(0)存放“=”的位置。 


    有關(guān)程序: 
    Public N(8) As Integer 
    Public Sub FindEq(AA$) 
    For I = 0 To 8 
    N(I) = 0 
    Next I 
    N(8) = Len(AA$) 
    For I = 1 To 8 
    If Mid$(AA$, I, 1) = "=" Then 
    N(0) = I 
    Exit Sub 
    End If 
    Next I 
    End Sub 
    由上述子程序可知,若語句中沒有“=”,則N(0)=0。
2. 查找語句中“/”位置子程序 
    幾何定義語句(包括大部分工藝參數(shù)語句和所有的刀具運(yùn)動(dòng)語句)中均含有“/”,程序中指定N(1)存放“/”的位置。 有關(guān)程序:
Public Sub Findx(AA$)
For I = 1 To N(8)
If Mid$(AA$, I, 1) = "/" Then
N(1) = I
Exit Sub
End If
Next I
ER = 2
End Sub
由上述子程序可知,若需查找語句中沒有“/”,則返回出錯(cuò)信息(ER=2)。
3. 查找語句中“;”位置子程序 
    幾何定義語句(包括有的工藝參數(shù)語句和刀具運(yùn)動(dòng)語句)中均含有“;”,程序中指定N(2)~N(7)存放“;”的位置(除列表曲線定義語句外,MPAPT 系統(tǒng)的幾何定義語句中最多含有六個(gè)“;”)。 
    有關(guān)程序:
Public Sub FindF(AA$)
Dim numf As Integer
numf = 2
For I = N(1) + 1 To N(8) - 1
If Mid$(AA$, I, 1) = ";" Then
N(numf) = I
numf = numf + 1
End If
Next I
End Sub

4. 取點(diǎn)、線、圓定義語句的內(nèi)部形式子程序 
    概念:按序取出幾何定義語句“=”后前五個(gè)元素中第一個(gè)字符(若取出的字符為數(shù)字則以“N”代替),組成的字符串(不足五位的以空格補(bǔ)齊),稱為點(diǎn)、線、圓定義語句的內(nèi)部形式。 
    作用:由于點(diǎn)、線、圓定義語句的定義方式多種多樣,且形式又不統(tǒng)一,為了便于點(diǎn)、線、圓各幾何定義語句的分類、查錯(cuò)等內(nèi)容的處理,把點(diǎn)、線、圓定義語句化為統(tǒng)一形式的目標(biāo)代碼。 
    例如下列語句:“L1=LINE/PARLEL;LIN;XSMALL;112”,其內(nèi)部形式為L(zhǎng)PLXN。 
    有關(guān)程序:

Public WS As String
Public Sub PLCForm(AA$)
Dim NS As String,v$
NS = "1234567890.+-"‘數(shù)字表
WS = ""‘用于存放幾何定義語句的內(nèi)部形式
For I = 0 To 4
If N(I) = 0 Then
V$ = " "‘不足五位以空格補(bǔ)齊
WS = WS + V$
Else
V$ = Mid$(AA$, N(I) + 1, 1)‘取出分隔符號(hào)后第一位字符
For j = 1 To 13
If V$ = Mid$(NS, j, 1) Then‘查數(shù)字表,若為數(shù)字則以“N”代替
V$ = "N"
Exit For
End If
Next j
WS = WS + V$
End If
Next I
End Sub.

5. 查標(biāo)準(zhǔn)內(nèi)部形式表子程序
    作用:為了便于點(diǎn)、線、圓各幾何定義語句的分類與查錯(cuò)處理,將第二章所述的點(diǎn)、線、圓定義語句的內(nèi)部形式,組成一張標(biāo)準(zhǔn)內(nèi)部形式表,如表3-1所示。 
    方法:被取出的幾何定義語句內(nèi)部形式與標(biāo)準(zhǔn)內(nèi)部形式逐個(gè)進(jìn)行比較,即可確定該語句的書寫是否有語法錯(cuò)誤及該語句在標(biāo)準(zhǔn)內(nèi)部形式表中的位置(如果沒有語法錯(cuò)誤),從而可按位置編碼(EI)值進(jìn)行分類。 
    有關(guān)程序: 
    Public EI As Integer 
    Public Sub FindTab()‘查標(biāo)準(zhǔn)內(nèi)部形式表子程序 
    Tb = "PNNPILL PXILCPYILCPXICCPYICCPCCPRNN LNNNNLPPLPAN 
    LPANLLPLXNLPLYNLPRTCLPLTCLRTCR" 
    Tb = Tb + "LRTCLLLTCRLLTCLCNNN CCPRNCCPLTCCPSTCXLXLCXLYL" 
    Tb = Tb + "CYLXLCYLYLCXLXICXLXOCXLYICXLYOCYLXICYLXOCYLYI" 
    Tb = Tb + "CYLYOCXICICYICICXICOCYICOCXOCICYOCICXOCOCYOCO"‘標(biāo)準(zhǔn)內(nèi)部形式表 
    For EI = 1 To 44 
    If WS = Mid$(Tb, (EI - 1) * 5 + 1, 5) Then Exit Sub ‘查標(biāo)準(zhǔn)內(nèi)部形式表 
    Next EI 
    ER = 8 
    End Sub

表3-1 點(diǎn)、線、圓、定義語句的標(biāo)準(zhǔn)內(nèi)部形式表

位置(EI)

1

2

3

4

5

6

7

8

標(biāo)準(zhǔn)

形式

PNN

PILL

PXILC

PYILC

PXICC

PYICC

PCC

PRNN

9

10

11

12

13

14

15

16

17

LNNN

LPP

LPAN

LPANL

LPLXN

LPLYN

LPRTC

LPLTC

LRTCR

18

19

20

21

22

23

24

25

26

LRTCL

LLTCR

LLTCL

CNNN

CCPRN

CCPLT

CCPST

CXLXL

CXLYL

27

28

29

30

31

32

33

34

35

CYLXL

CYLYL

CXLXI

CXLXO

CXLYL

CXLYO

CYLXI

CYLXO

CYLYI

36

37

38

39

40

41

42

43

44

CYLYO

CXICI

CYICI

CXICO

CYICO

CXOCI

CYOCI

CXOCO

CYOCO

    程序中將幾何定義語句內(nèi)部形式與標(biāo)準(zhǔn)內(nèi)部形式表每隔五位逐個(gè)進(jìn)行比較,若相符返回EI值,否則返回錯(cuò)誤信息。
    標(biāo)準(zhǔn)內(nèi)部形式表的作用:不僅是點(diǎn)、線、圓定義語句分類的依據(jù),而且是檢查這些點(diǎn)、線、圓定義語句的書寫是否含有語法錯(cuò)誤的診斷依據(jù)。也就是說點(diǎn)、線、圓定義語句語法的診斷過程,實(shí)際上就是一個(gè)查表對(duì)照過程。

熱門文章

業(yè)務(wù)咨詢:932174181   媒體合作:2279387437    24小時(shí)服務(wù)熱線:15136468001 盤古機(jī)械網(wǎng) - 全面、科學(xué)的機(jī)械行業(yè)免費(fèi)發(fā)布信息網(wǎng)站 Copyright 2017 PGJXO.COM 豫ICP備12019803號(hào)