CAN現(xiàn)場總線在DNC集成制造技術(shù)中的應(yīng)用
第二類連接方式主要針對少數(shù)連串行接I=I都沒有的經(jīng)濟型數(shù)控機床,對于這類機床要在CAN智能模塊和機床之間加入適配器才能連接到CAN網(wǎng)絡(luò)。
第三類連接方式主要用于具備串行接口的數(shù)控機床,這類機床不能直接上網(wǎng),因此采用CAN現(xiàn)場總線技術(shù)使機床連如DNC網(wǎng)絡(luò),CAN總線的網(wǎng)絡(luò)功能由裝有CAN接口卡的DNC主機和CAN智能控制單元實現(xiàn),這里CAN通訊卡采用的是周立功單片機公司的PCI5110單路智能CAN接I=I卡和CAN232B智能CAN轉(zhuǎn)換器,通訊卡提供了Windows和DOS下的驅(qū)動程序、CAN通用接口庫,完全能夠?qū)崿F(xiàn)本系統(tǒng)中DNC主機與CNC之間的CAN通訊功能;CAN轉(zhuǎn)換器的核心是CAN控制器的處理器和CAN收發(fā)器,并在微處理器和CAN收發(fā)器之間增加了電氣隔離電路,提高了系統(tǒng)的抗干擾性,并帶有1個RS232通道和1個CAN通道,可以使機床在不需改變原有硬件結(jié)構(gòu)的前提下很方便地接入CAN網(wǎng)絡(luò),CAN232B智能CAN轉(zhuǎn)換器提供有基本的控制命令和配置軟件,串口通訊參數(shù)的設(shè)置均由簡單的控制命令實現(xiàn),可以按照不同數(shù)控廠家的機床的要求進行配置,解決了平臺之間可移植性差的問題,提高了系統(tǒng)的開放性。
4系統(tǒng)軟件實現(xiàn)
在本系統(tǒng)中,數(shù)據(jù)庫服務(wù)器與DNC主控制機之間采用客戶機/服務(wù)器的體系結(jié)構(gòu),后臺數(shù)據(jù)庫服務(wù)器是以SQL作為語言的DBMS;前臺用戶開發(fā)工具我們采用C++BuilderEnterprise6.0。C++Builder是Borland公司發(fā)布的一種最新的可視化編程工具,它將面向?qū)ο蟮某绦蛟O(shè)計方法與數(shù)據(jù)庫技術(shù)、網(wǎng)絡(luò)技術(shù)以及可視化等先進技術(shù)完美的結(jié)合在一起,利用其豐富的控件可直觀的、快速的開發(fā)出高質(zhì)量的Windows應(yīng)用程序;在軟件設(shè)計過程中,運用模塊化的設(shè)計思想,將操作平臺劃分為不同的功能模塊,使每個模塊處理相應(yīng)的信息,完成一個特定的功能,具有一定的獨立性;各個模塊成一個完整的系統(tǒng)(如圖2所示)。
圖2軟件模塊功能結(jié)構(gòu)圖
主機、CAN智能控制單元和數(shù)控系統(tǒng)三方采用請求/響應(yīng)方式協(xié)調(diào)工作。對數(shù)控系統(tǒng)的遠程控制由主機先發(fā)命令,而NC程序的上、下載則可由數(shù)控系統(tǒng)先發(fā)申請,CAN智能控制單元主要完成信息在主機與數(shù)控系統(tǒng)之間的雙向傳遞。目前,數(shù)控系統(tǒng)通信協(xié)議一般有三層,即物理層、數(shù)據(jù)鏈路層和應(yīng)用層。由于CAN總線的加入,必須建立主機、前端和數(shù)控系統(tǒng)三者之間新的協(xié)議對應(yīng)關(guān)系。但是數(shù)控系統(tǒng)通信協(xié)議不同,前端程序就不一樣。因此主機程序應(yīng)針對不同的數(shù)控系統(tǒng)通信協(xié)議和數(shù)控功能建立相應(yīng)的通信協(xié)議轉(zhuǎn)換軟件模塊,將其封裝到“軟插件庫”中,使該模塊可直接下載到與機床相連的CAN通信前端單元中。
因此,在整個系統(tǒng)設(shè)計過程中主要采用以下技術(shù):
(1)基于客戶機/服務(wù)器的體系結(jié)構(gòu)近年來,分布式數(shù)據(jù)庫開放體系結(jié)構(gòu)中最有成效的是客戶機/服務(wù)器體系結(jié)構(gòu)。該結(jié)構(gòu)是由客戶機和服務(wù)器構(gòu)成的一種網(wǎng)絡(luò)計算機結(jié)構(gòu),解決了客戶應(yīng)用與服務(wù)器數(shù)據(jù)庫分布處理的問題。應(yīng)用程序的任務(wù)分別由客戶機(DNC主機)和服務(wù)器分擔(dān),一方面充分發(fā)揮客戶機處理能力,另一方面減輕服務(wù)器的負擔(dān)。該系統(tǒng)中,要對加工設(shè)備、加工程序、機床狀態(tài)等信息及時的管理和維護,我們通過C++BuilderEnterprise6.0提供的ADO組件組中的控件建立客戶機/服務(wù)器之間的連接,設(shè)置其Connectionstring屬性即可實現(xiàn)對本機或遠程SQL數(shù)據(jù)庫的訪問,另外還要進行任務(wù)分配及有關(guān)圖紙、工藝信息、NC程序代碼等信息的傳送,因此該系統(tǒng)必須具有網(wǎng)絡(luò)功能。我們通過Socket控件來實現(xiàn)。
評論