摘要:該文定義了可入群數(shù)控系統(tǒng),并引出該系統(tǒng)詳細(xì)的技術(shù)實(shí)現(xiàn)方案。重點(diǎn)介紹了該系統(tǒng)通信功能的實(shí)現(xiàn),即相關(guān)硬件、通信協(xié)議、通信程序的設(shè)計(jì),給出了通信程序流程圖。
關(guān)鍵詞:可入群數(shù)控系統(tǒng);協(xié)議;通信;監(jiān)控
中圖分類號(hào):TP338 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2009)35-10094-02
The Technical Plan of Numerical-control Systems Able to Join A Group Based on Single-chip Microcomputer
FENG Jie-yi1, SONG Wen2
(1.Hunan Normal University, Changsha 410081, China; 2.Guangzhou University, Guangzhou 510006, China)
Abstract: The paper defines a numerical-control system able to join a group, elicits the technical plan of realizing the system.Especially,the communication function of the system is introduced ,that is the design of the relative hardware and the communication protocol and communication software,the flow chart of cummnication program is given.
Key words: numerical-control system able to join a group; ptotocol; communica-tion; monitor
隨著勞動(dòng)生產(chǎn)率的提高,現(xiàn)代工業(yè)要求對(duì)自動(dòng)設(shè)備實(shí)現(xiàn)集群監(jiān)控。這樣做的好處一是集群監(jiān)控可以讓一個(gè)工人監(jiān)控一個(gè)“群”,大大節(jié)約人力資源;二是用“群”的概念極易構(gòu)建柔性生產(chǎn)線;三是“群”與互聯(lián)網(wǎng)連接還可以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。圖1是數(shù)控系統(tǒng)集群監(jiān)控的總體框圖。本文重點(diǎn)討論如何構(gòu)造群中的數(shù)控系統(tǒng)。
“群”中的數(shù)控系統(tǒng)應(yīng)該能“上網(wǎng)”,但是一般數(shù)控系統(tǒng)的CPU忙于在線插補(bǔ)運(yùn)算,是沒(méi)有時(shí)間“上網(wǎng)”的,參考文獻(xiàn)[1]提出了解決這一矛盾的方法。“群”應(yīng)該具備哪些功能,功能在上位機(jī)(集群主控機(jī))和下位機(jī)(數(shù)控系統(tǒng))中如何分配,參考文獻(xiàn)[2]討論了這一問(wèn)題。
依文獻(xiàn)[2]確定圖1中的下位機(jī)(數(shù)控系統(tǒng))基本功能有三:
1)通信功能:接收來(lái)自上位機(jī)的“自定義指令和機(jī)加工數(shù)據(jù)流[1]”、接收上位機(jī)操作命令并執(zhí)行之、應(yīng)上位機(jī)要求上傳即時(shí)信息等。
2)控制機(jī)床進(jìn)行機(jī)加工:依自定義指令和機(jī)加工數(shù)據(jù)流進(jìn)行零件加工。
3)輔助功能:手動(dòng)功能、回零功能、對(duì)刀功能等。
綜上所述,本文給出可入群數(shù)控系統(tǒng)定義。
定義:處于圖1中,并依參考文獻(xiàn)[1-2]具有功能的數(shù)控系統(tǒng)稱為可入群數(shù)控系統(tǒng)。
1 可入群兩坐標(biāo)數(shù)控系統(tǒng)硬件設(shè)計(jì)
數(shù)控系統(tǒng)的控制部分和驅(qū)動(dòng)部分構(gòu)成。驅(qū)動(dòng)部分與“集群”概念無(wú)任何關(guān)系,可以采用已有技術(shù)(步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)或者伺服系統(tǒng))??刂撇糠植捎眯詢r(jià)比較高的單片機(jī)實(shí)現(xiàn):
采用一片8031單片機(jī),程序存儲(chǔ)器ROM容量和數(shù)據(jù)存儲(chǔ)器RAM容量都選用32KB。ROM容量的選取基于筆者的開發(fā)經(jīng)驗(yàn)。RAM容量的選取依據(jù)是因?yàn)閿?shù)據(jù)流驅(qū)動(dòng),RAM大則能存放更多數(shù)據(jù)流信息,加工較大的工件。32KB的RAM存放的插補(bǔ)數(shù)據(jù)流,其驅(qū)動(dòng)軌跡近1300mm。滿足絕大多數(shù)情況下的加工要求。
輸入接口和輸出接口的和一般數(shù)控系統(tǒng)相同。
為實(shí)現(xiàn)入群概念,為串行口新增了半雙工通信接口電路。它包含電平轉(zhuǎn)換,以RS-232電平標(biāo)準(zhǔn)集群,增加了抗干擾能力。
2 可入群兩坐標(biāo)數(shù)控系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)采用前后臺(tái)程序結(jié)構(gòu)。除“零件加工”需驅(qū)動(dòng)刀架時(shí),通信程序作為后臺(tái)程序外,其他工作方式下通信程序都是前臺(tái)程序。筆者用串行口中斷服務(wù)程序充當(dāng)通信程序、定時(shí)器0中斷服務(wù)程序充當(dāng)“零件加工”中驅(qū)動(dòng)刀架的程序。兩程序的前后臺(tái)關(guān)系的改變,由CPU對(duì)中斷優(yōu)先級(jí)的控制來(lái)實(shí)現(xiàn)。
2.1 軟件總體介紹
主程序體現(xiàn)了程序總體結(jié)構(gòu)。圖2給出主程序流程圖。
由圖2可見(jiàn)有零件加工、手動(dòng)、回零、對(duì)刀等四個(gè)功能程序段。另外還有三段中斷服務(wù)程序:控制加工速度的定時(shí)器0中斷服務(wù)程序;實(shí)現(xiàn)暫停功能的外部中斷0中斷服務(wù)程序EX0;實(shí)現(xiàn)入群的通信程序——串行口中斷服務(wù)程序。
與傳統(tǒng)數(shù)控系統(tǒng)相比,“零件加工”程序分支有一定改變(大大簡(jiǎn)化了),通信程序?qū)儆趧?chuàng)新開發(fā),其他程序段可以復(fù)用原來(lái)的程序。因此,本文只介紹通信程序。
2.2 通信程序
串行口中斷服務(wù)程序即通信程序。它基于通信協(xié)議編制。
2.3.1 通信協(xié)議
下位機(jī)(單片機(jī))的串行口采用方式2與上位機(jī)通信,通信數(shù)據(jù)為9位。第9位的意思是:1表示該字節(jié)為地址,0表示該字節(jié)為數(shù)據(jù)。
下位機(jī)地址:1~254。定義0為廣播地址。
1)廣播協(xié)議
①上位機(jī)輸出廣播地址,隨即輸出數(shù)據(jù)包。
②下位機(jī)收到上位機(jī)的數(shù)據(jù)包后,準(zhǔn)備應(yīng)答信息,處理數(shù)據(jù)包,復(fù)位自己的串行口。
2)點(diǎn)點(diǎn)協(xié)議
①上位機(jī)呼叫下位機(jī),若下位機(jī)回本機(jī)號(hào),則上位機(jī)隨即輸出數(shù)據(jù)包,否則繼續(xù)呼叫;
②下位機(jī)收到上位機(jī)的數(shù)據(jù)包后,上傳應(yīng)答信息;處理數(shù)據(jù)包;復(fù)位自己的串行口。
其中“處理數(shù)據(jù)包”的意義是:若數(shù)據(jù)包為數(shù)據(jù)包1,則將其數(shù)據(jù)場(chǎng)存入RAM;
若數(shù)據(jù)包為數(shù)據(jù)包2,則執(zhí)行數(shù)據(jù)包2的命令。
3)上位機(jī)下傳的數(shù)據(jù)包格式:
①數(shù)據(jù)包1的格式:
起始標(biāo)志場(chǎng)+數(shù)據(jù)場(chǎng)+結(jié)束標(biāo)志場(chǎng)+校驗(yàn)場(chǎng)
起始標(biāo)志場(chǎng):1個(gè)特殊字節(jié),7EH
數(shù)據(jù)場(chǎng):若干個(gè)字節(jié)。若數(shù)據(jù)場(chǎng)中有與特征字符7EH相同者,在此數(shù)據(jù)后再插入一7EH。
結(jié)束標(biāo)志場(chǎng):2個(gè)字節(jié)7EH,F(xiàn)0H。校驗(yàn)場(chǎng):一字節(jié),數(shù)據(jù)場(chǎng)數(shù)據(jù)(不含插入的7EH)的累加和(累加時(shí)忽略產(chǎn)生的進(jìn)位)。
②數(shù)據(jù)包2的格式:命令場(chǎng)+校驗(yàn)場(chǎng)
命令場(chǎng)與校驗(yàn)場(chǎng)為同一單字節(jié)數(shù)據(jù),即上位機(jī)的命令。表1給出命令的定義和下位機(jī)接收應(yīng)答的定義。
4)下位機(jī)上傳的數(shù)據(jù)包規(guī)定為8個(gè)字節(jié),最后一個(gè)字節(jié)為前7個(gè)字節(jié)累加和(用于校驗(yàn))。
2.3.2 串行口中斷服務(wù)程序(通信程序)
圖3和圖4為通信程序流程圖。
3 結(jié)束語(yǔ)
本文是一個(gè)應(yīng)用系統(tǒng)開發(fā)的技術(shù)方案。在筆者原先開發(fā)的產(chǎn)品—車床數(shù)控系統(tǒng)的基礎(chǔ)上,技術(shù)實(shí)現(xiàn)了文獻(xiàn)[1]、[2]的內(nèi)容。實(shí)現(xiàn)的方法簡(jiǎn)單:原來(lái)的很多軟件可以復(fù)用,只是“零件加工”分支程序有所改動(dòng),并新增加通信程序。
較之一般的數(shù)控系統(tǒng),可入群數(shù)控系統(tǒng)簡(jiǎn)化了顯示,取消了鍵盤,降低了系統(tǒng)成本,必要的功能并沒(méi)有減少,且增加了入群功能。此功能使它便于集群。而集群的意義不僅在于可降低人力資源的使用,若圖1的某些下位機(jī)換以機(jī)械手和傳送帶等,則可構(gòu)建柔性生產(chǎn)線。群還可通過(guò)互聯(lián)網(wǎng)實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。由此可見(jiàn),強(qiáng)化入群功能的可入群數(shù)控系統(tǒng)的應(yīng)用前景是十分廣闊的。
參考文獻(xiàn):
[1] 馮介一,宋文.嵌入式數(shù)控系統(tǒng)研發(fā)[J].新技術(shù)新工藝,2007(3):45-46.
[2] 馮介一,宋文.關(guān)于數(shù)控系統(tǒng)群控的幾點(diǎn)討論[J].科學(xué)時(shí)代,2008(3).