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