用于動(dòng)態(tài)配置通信數(shù)據(jù)項(xiàng)的系統(tǒng)和方法
【專利摘要】重新配置在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)的系統(tǒng)和方法,所述網(wǎng)絡(luò)使用了通信協(xié)議。所述系統(tǒng)和方法包括處理器和存儲(chǔ)介質(zhì)。所述處理器是可操作以接收來自網(wǎng)絡(luò)上第二設(shè)備的數(shù)據(jù)。所述系統(tǒng)和方法包括數(shù)據(jù)配置器,可操作以動(dòng)態(tài)地重新配置來自第二設(shè)備的數(shù)據(jù),其中來自第二設(shè)備的數(shù)據(jù)是第二設(shè)備定義的網(wǎng)絡(luò)項(xiàng)格式。所述數(shù)據(jù)配置器可操作地以將重新配置后的數(shù)據(jù)以源自所述設(shè)備的設(shè)備項(xiàng)格式傳送到處理器和存儲(chǔ)介質(zhì)中的至少一個(gè)。數(shù)據(jù)設(shè)計(jì)工具生成映射配置以定義所述網(wǎng)絡(luò)項(xiàng)和所述設(shè)備項(xiàng)之間的唯一的關(guān)系。所述映射配置包括用于網(wǎng)絡(luò)項(xiàng)中數(shù)據(jù)的網(wǎng)絡(luò)表示部分以及用于數(shù)據(jù)項(xiàng)中數(shù)據(jù)的設(shè)備表示部分。
【專利說明】用于動(dòng)態(tài)配置通信數(shù)據(jù)項(xiàng)的系統(tǒng)和方法
交叉參考相關(guān)應(yīng)用
[0001]不適用
有關(guān)聯(lián)邦政府資助的研究或發(fā)展的聲明
[0002]不適用【背景技術(shù)】
[0003]本發(fā)明涉及數(shù)據(jù)項(xiàng),更具體地,涉及配置通信數(shù)據(jù)項(xiàng)。
[0004]通信協(xié)議可以被描述為數(shù)字消息格式和規(guī)則的系統(tǒng)。所述協(xié)議是用于在網(wǎng)絡(luò)上的設(shè)備之間交換數(shù)字消息,所述設(shè)備能夠發(fā)射和/或接收特定的消息格式。這些消息被網(wǎng)絡(luò)上的設(shè)備發(fā)送和接收以在設(shè)備之間建立通信和傳輸數(shù)據(jù)。所述通信協(xié)議定義了管理消息傳輸?shù)囊?guī)則,其中包括數(shù)據(jù)項(xiàng)的傳輸。因此,存在一類通信協(xié)議,其被設(shè)計(jì)為在網(wǎng)絡(luò)上的兩個(gè)或多個(gè)設(shè)備之間傳輸預(yù)定義的數(shù)據(jù)項(xiàng)。利用這樣的協(xié)議的設(shè)備制造商或供應(yīng)商通常配置設(shè)備的軟件和/或固件,其負(fù)責(zé)用以產(chǎn)生固定格式數(shù)據(jù)項(xiàng)的數(shù)據(jù)項(xiàng),這樣供應(yīng)商的設(shè)備能夠以對于設(shè)備以及在通信協(xié)議規(guī)則范圍內(nèi)最有效的配置來發(fā)送和接收通信。
[0005]但是,某些具有網(wǎng)絡(luò)設(shè)備的客戶與供應(yīng)商的設(shè)備通信的接口傾向于使用與設(shè)備供應(yīng)商所使用的預(yù)配置和固定數(shù)據(jù)項(xiàng)的格式所不同的數(shù)據(jù)項(xiàng)。相應(yīng)地,客戶可要求供應(yīng)商的設(shè)備支持修改后的或完全不同的數(shù)據(jù)項(xiàng)格式,以便提高通信效率、保持與傳統(tǒng)設(shè)備的兼容性或與競爭對手的設(shè)備的兼容性。為了滿足要求改變設(shè)備供應(yīng)商的預(yù)配置和固定的數(shù)據(jù)項(xiàng)格式的客戶,設(shè)備供應(yīng)商往往必須執(zhí)行對供應(yīng)商設(shè)備的軟件和/或固件的獨(dú)特的改變。軟件/固件的變化是昂貴的、費(fèi)時(shí)的、難以管理的,因?yàn)樗鼈兪歉鶕?jù)客戶的請求而定義的,并且很少可轉(zhuǎn)換到由其他客戶使用。出于這些原因,大多數(shù)廠商都不愿意為單一客戶做出這些獨(dú)特的變化。
[0006]通信協(xié)議被廣泛應(yīng)用的領(lǐng)域是制造及自動(dòng)化領(lǐng)域。例如,一些公知的用于設(shè)備之間的通信協(xié)議是EtherNet/IP, Profinet, CIP, ModbusTCP等等。所述制造/自動(dòng)化網(wǎng)絡(luò)也包括各種各樣的設(shè)備,包括計(jì)算機(jī)、機(jī)器人、機(jī)器、傳感器以及不限數(shù)目的其他等。
[0007]—個(gè)可使用通信協(xié)議以用于通信和傳輸數(shù)據(jù)的示例性的【技術(shù)領(lǐng)域】是機(jī)器視覺或圖像處理分析領(lǐng)域。在其簡單的形式中,機(jī)器視覺通常用于檢查和/或定位一個(gè)對象。例如,在制造應(yīng)用中,通過獲取對象的圖像,并使用不同類型的圖像處理算法來分析圖像,機(jī)器視覺分析可以被用于在所制造的對象中檢測缺陷。作為一個(gè)示例,一個(gè)制造諸如電阻的電氣元件的系統(tǒng),可以使用機(jī)器視覺檢查電阻,以檢測制造上的缺陷,并確保電阻器被適當(dāng)?shù)貥?biāo)記或進(jìn)行顏色編碼。在機(jī)器視覺處理中,大量的數(shù)據(jù)可以被收集和分析。不僅部分或所有這些數(shù)據(jù)必須被傳送到其他設(shè)備,指令和其他應(yīng)用相關(guān)數(shù)據(jù)也可以被傳達(dá)給機(jī)器視覺系統(tǒng)和由其發(fā)出。
[0008]數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)包以及工業(yè)網(wǎng)關(guān)設(shè)備可允許用戶將從使用第一數(shù)據(jù)格式操作的一臺(tái)設(shè)備而來的數(shù)據(jù)轉(zhuǎn)換到使用不同于所述第一數(shù)據(jù)格式的數(shù)據(jù)格式操作的另一臺(tái)設(shè)備。這些系統(tǒng)主要存在于信息處理系統(tǒng)或數(shù)據(jù)庫系統(tǒng)的領(lǐng)域中,并且主要用于一次從一個(gè)系統(tǒng)轉(zhuǎn)換數(shù)據(jù)到另一個(gè)系統(tǒng)。然而,這些系統(tǒng)沒有解決重新配置由設(shè)備供應(yīng)商定義的通信數(shù)據(jù)項(xiàng)的問題。
[0009]還有其他的系統(tǒng)規(guī)范,更專注于制造和自動(dòng)化應(yīng)用,如用于過程控制的OLE(OPC)和通用工業(yè)協(xié)議(CIP)。OPC為數(shù)據(jù)通信和數(shù)據(jù)訪問提供了一個(gè)開放的標(biāo)準(zhǔn)規(guī)范。OPC規(guī)范允許用戶動(dòng)態(tài)選擇想要傳輸哪些數(shù)據(jù)項(xiàng),但是OPC規(guī)范并不提供動(dòng)態(tài)改變數(shù)據(jù)項(xiàng)的格式或值的方法。同樣,CIP包括動(dòng)態(tài)程序集的規(guī)范,但是類似于0PC,其不允許數(shù)據(jù)類型或值的轉(zhuǎn)換,例如,諸如位字段設(shè)置為整數(shù)或值反轉(zhuǎn)。
[0010]所需要的是允許動(dòng)態(tài)配置數(shù)據(jù)的內(nèi)容和格式的系統(tǒng)和方法,并同時(shí)保持獨(dú)立于底層通信協(xié)議。
【發(fā)明內(nèi)容】
[0011]本實(shí)施例克服了現(xiàn)有技術(shù)的缺點(diǎn),其提供了用于動(dòng)態(tài)地配置在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)項(xiàng)的內(nèi)容和/或格式的系統(tǒng)和方法,同時(shí)保持獨(dú)立于底層通信協(xié)議,但遵守管理數(shù)據(jù)傳輸?shù)膮f(xié)議規(guī)則。所述通信協(xié)議定義了當(dāng)供應(yīng)商定義數(shù)據(jù)的內(nèi)容和格式時(shí),如何在網(wǎng)絡(luò)上傳輸數(shù)據(jù)項(xiàng)。
[0012]相應(yīng)地,一些實(shí)施例包括用于重新配置在網(wǎng)絡(luò)上發(fā)送的數(shù)據(jù)的系統(tǒng)和方法,所述網(wǎng)絡(luò)使用了通信協(xié)議。所述系統(tǒng)和方法包括處理器和存儲(chǔ)介質(zhì)。所述處理器是可操作以接收來自網(wǎng)絡(luò)上第二設(shè)備的數(shù)據(jù)。所述系統(tǒng)和方法包括數(shù)據(jù)配置器,可操作以動(dòng)態(tài)地重新配置來自第二設(shè)備的數(shù)據(jù),其中來自第二設(shè)備中的數(shù)據(jù)是第二設(shè)備定義的網(wǎng)絡(luò)項(xiàng)格式。所述數(shù)據(jù)配置器可操作的以將重新配置后的數(shù)據(jù)以源自所述設(shè)備的設(shè)備項(xiàng)格式傳送到處理器和存儲(chǔ)介質(zhì)中的至少一個(gè)。所述數(shù)據(jù)配置器使用映射記錄,所述映射記錄定義網(wǎng)絡(luò)項(xiàng)和設(shè)備項(xiàng)之間的唯一關(guān)系。所述映射記錄包括用于網(wǎng)絡(luò)項(xiàng)中數(shù)據(jù)的網(wǎng)絡(luò)表達(dá)部分以及用于數(shù)據(jù)項(xiàng)中數(shù)據(jù)的設(shè)備表達(dá)部分。
[0013]所述系統(tǒng)和方法包括數(shù)據(jù)設(shè)計(jì)工具,所述數(shù)據(jù)設(shè)計(jì)工具可操作以用于向用戶提供定義網(wǎng)絡(luò)項(xiàng)與一個(gè)或多個(gè)設(shè)備項(xiàng)之間的關(guān)系的機(jī)制。所述數(shù)據(jù)設(shè)計(jì)工具生成并存儲(chǔ)用戶所選擇的配置信息,其可以在運(yùn)行時(shí)由數(shù)據(jù)配置器消耗以構(gòu)造所述映射記錄。
[0014]按照以上所述,一些實(shí)施例包括用于重新配置來自網(wǎng)絡(luò)上的第一設(shè)備的通信數(shù)據(jù)并提供重新配置的數(shù)據(jù)到網(wǎng)絡(luò)上的第二設(shè)備的方法。所述方法包括:初始化數(shù)據(jù)配置器,所述數(shù)據(jù)配置器可在所述第二設(shè)備操作;接收用于根據(jù)配置模式重新配置所述選定的數(shù)據(jù)項(xiàng)的配置信息;生成用于所選擇的數(shù)據(jù)項(xiàng)的映射記錄;開始第二設(shè)備的運(yùn)行操作;在運(yùn)行時(shí),數(shù)據(jù)配置器接收所傳輸?shù)木W(wǎng)絡(luò)項(xiàng),所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)包括所選擇的數(shù)據(jù)項(xiàng);根據(jù)所述映射記錄,重新配置來自所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)的所選擇的數(shù)據(jù)項(xiàng);以及將重新配置后的所選擇的數(shù)據(jù)項(xiàng)傳送到第二設(shè)備上的應(yīng)用。
[0015]其他的實(shí)施例包括使用數(shù)據(jù)配置器重新配置數(shù)據(jù)項(xiàng)的方法。所述方法包括初始化數(shù)據(jù)設(shè)計(jì)工具,所述數(shù)據(jù)設(shè)計(jì)工具位于連接到網(wǎng)絡(luò)的第一設(shè)備上的存儲(chǔ)器中,所述第一設(shè)備包括用戶界面;從連接到網(wǎng)絡(luò)的第二設(shè)備中選擇數(shù)據(jù)項(xiàng)以用于重新配置;生成映射配置,所述映射配置包括網(wǎng)絡(luò)表達(dá)部分和設(shè)備表達(dá)部分;保存所述映射配置;將所述映射配置傳送到網(wǎng)絡(luò)上的第三設(shè)備,所述第三設(shè)備包括所述數(shù)據(jù)配置器;以及使用數(shù)據(jù)配置器,根據(jù)所述映射配置,動(dòng)態(tài)地重新配置從所述第二設(shè)備中所選擇的數(shù)據(jù)項(xiàng)。[0016]為了實(shí)現(xiàn)上述的和其它相關(guān)的目的,本發(fā)明包括有在以下全面描述并具體于權(quán)利要求書中指出的特征。下面的說明與附圖詳細(xì)地列述了本發(fā)明某些有代表性的方面。但這幾個(gè)方面僅僅表明了可以應(yīng)用本發(fā)明原理的各種方式中的幾個(gè)。本發(fā)明的其它方面、優(yōu)點(diǎn)與新穎特征,將通過結(jié)合附圖在本發(fā)明下面的詳細(xì)描述中而獲得理解。
【專利附圖】
【附圖說明】
[0017]圖1是根據(jù)本實(shí)施例的適用于重組數(shù)據(jù)項(xiàng)的系統(tǒng)的示意圖,所述系統(tǒng)包括網(wǎng)絡(luò)上的設(shè)備、數(shù)據(jù)設(shè)計(jì)工具和數(shù)據(jù)配置器;
[0018]圖2是位于一臺(tái)設(shè)備上的數(shù)據(jù)配置器的方框圖,所述設(shè)備通過網(wǎng)絡(luò)與另一臺(tái)設(shè)備通信;
[0019]圖3是類似于圖2的方框圖,顯示所述數(shù)據(jù)流的進(jìn)一步的細(xì)節(jié);
[0020]圖4是根據(jù)本實(shí)施例的可用于數(shù)據(jù)項(xiàng)重組的數(shù)據(jù)映射配置模式的方框圖;
[0021]圖5是根據(jù)本實(shí)施例的可用于數(shù)據(jù)項(xiàng)重組的數(shù)據(jù)類型轉(zhuǎn)換配置模式的方框圖;
[0022]圖6是根據(jù)本實(shí)施例的可用于數(shù)據(jù)項(xiàng)重組的邏輯數(shù)據(jù)操作配置模式的方框圖;
[0023]圖7和8是根據(jù)本實(shí)施例的網(wǎng)絡(luò)項(xiàng)重新配置的框圖,其中網(wǎng)絡(luò)項(xiàng)根據(jù)映射記錄被重新配置為單獨(dú)的設(shè)備項(xiàng)并隨后被發(fā)送到用戶設(shè)備;
[0024]圖9是根據(jù)本實(shí)施例的類似于圖7和8的網(wǎng)絡(luò)項(xiàng)重新配置的框圖,不同的是所述網(wǎng)絡(luò)項(xiàng)根據(jù)所述映射記錄以及邏輯元素被重新配置為單獨(dú)的設(shè)備項(xiàng),并且隨后被發(fā)送到用戶設(shè)備;
[0025]圖10是根據(jù)本實(shí)施例的示例性的映射記錄的方框圖;
[0026]圖11是從網(wǎng)絡(luò)項(xiàng)到設(shè)備項(xiàng)的示例性映射的方框圖;
[0027]圖12是從設(shè)備項(xiàng)到網(wǎng)絡(luò)項(xiàng)的示例性映射的方框圖;
[0028]圖13是根據(jù)本實(shí)施例的分層樹格式的映射列表的方框圖,所述樹由子列表的樹組成;
[0029]圖14是與所述數(shù)據(jù)設(shè)計(jì)工具相關(guān)聯(lián)使用的方法的流程圖;
[0030]圖15是與所述數(shù)據(jù)配置器相關(guān)聯(lián)使用的方法的流程圖。
[0031]雖然本發(fā)明容易受到各種修改和替換形式,其具體實(shí)施方案已被在附圖中例子示出,并在這里詳細(xì)描述。然而,應(yīng)該理解,本文描述具體實(shí)施例的目的不是將本發(fā)明限制到所公開的特定形式,恰恰相反,其意在覆蓋落在由所附權(quán)利要求限定的本發(fā)明的精神和范圍內(nèi)的所有修改、等同物和替換。
【具體實(shí)施方式】
[0032]現(xiàn)在參考附圖描述本發(fā)明主題的各方面,在幾個(gè)附圖中,同樣的參考標(biāo)號指的是相同或相應(yīng)的元素。然而,應(yīng)該理解,附圖及其涉及的詳細(xì)描述不旨在將所要求保護(hù)的主題限制于所公開的具體形式。相反,意圖是覆蓋落入所要求保護(hù)的主題的精神和范圍內(nèi)的所有修改、等效方式和替換方式。
[0033]如此處所使用的,術(shù)語“組件”和“系統(tǒng)”等指的是處理器相關(guān)的實(shí)體,或者是硬件、硬件和軟件的組合、軟件或者是執(zhí)行中的軟件。例如,組件可以是,但不限于,運(yùn)行在處理器上的進(jìn)程、處理器、對象、可執(zhí)行代碼、執(zhí)行的線程、程序和/或計(jì)算機(jī)。作為說明,運(yùn)行在計(jì)算機(jī)上的應(yīng)用程序和計(jì)算機(jī)本身均可以是組件。一個(gè)或多個(gè)組件可以駐留在進(jìn)程和/或執(zhí)行中的線程內(nèi),且組件可以位于一臺(tái)計(jì)算機(jī)上和/或分布在兩臺(tái)或多臺(tái)計(jì)算機(jī)之間。
[0034]詞語“示例性”此處被用來意味著用作示例、實(shí)例或說明。此處描述為“示例性”的任何方面和設(shè)計(jì)不必解釋為較其它方面或設(shè)計(jì)更優(yōu)選和有利。
[0035]此外,所公開的主題可被實(shí)現(xiàn)為系統(tǒng)、方法、裝置或制品,它們使用標(biāo)準(zhǔn)程序設(shè)計(jì)和/或工程技術(shù)來生產(chǎn)軟件、固件、硬件或其任何組合,以控制基于計(jì)算機(jī)或處理器的設(shè)備來實(shí)現(xiàn)此處詳細(xì)描述的各方面。如此處所用的術(shù)語“制品”旨在包含可從任何計(jì)算機(jī)可讀設(shè)備、載波或介質(zhì)訪問的計(jì)算機(jī)程序。例如,計(jì)算機(jī)可讀介質(zhì)可包括但不限于:磁存儲(chǔ)設(shè)備
(例如,硬盤、軟盤、磁條......)、光盤(例如,緊致盤(⑶)、數(shù)字多功能盤(DVD)......)、
智能卡和閃存設(shè)備(例如,卡、棒)。另外,應(yīng)該理解,可使用載波來攜帶計(jì)算機(jī)可讀電子數(shù)據(jù),諸如在發(fā)送和接收電子郵件或訪問諸如因特網(wǎng)或局域網(wǎng)(LAN)等網(wǎng)絡(luò)中所使用的那些。當(dāng)然,本領(lǐng)域的技術(shù)人員可以認(rèn)識到,可以對此配置進(jìn)行多種修改,而不背離所要求保護(hù)的主題的范圍或精神。
[0036]下面使用附圖描述本發(fā)明的實(shí)施例,以表明無論是實(shí)施例的結(jié)構(gòu)或處理將被用于實(shí)現(xiàn)本發(fā)明的系統(tǒng)和方法。以這種方式使用所述附圖以表示本發(fā)明的實(shí)施例并不應(yīng)當(dāng)解釋為限制其范圍。本發(fā)明考慮了用于動(dòng)態(tài)配置數(shù)據(jù)項(xiàng)的方法和系統(tǒng)。本發(fā)明的實(shí)施例可包括設(shè)備,例如,自動(dòng)化設(shè)備、特殊目的或通用目的的計(jì)算機(jī),包括各種計(jì)算機(jī)硬件、軟件和/或固件等等,其將在下面更詳細(xì)討論。
[0037]本發(fā)明的各種實(shí)施例將與包括網(wǎng)絡(luò)上的多個(gè)設(shè)備中的一個(gè)的機(jī)器視覺系統(tǒng)相結(jié)合而被描述。在一些實(shí)施例中,所述機(jī)器視覺系統(tǒng)包括用于動(dòng)態(tài)地配置機(jī)器視覺系統(tǒng)所使用的設(shè)備項(xiàng)的內(nèi)容和格式的數(shù)據(jù)配置器和數(shù)據(jù)設(shè)計(jì)工具,同時(shí)保持獨(dú)立于底層通信協(xié)議規(guī)貝U、但仍遵守著底層通信協(xié)議規(guī)則。這是因?yàn)楸景l(fā)明的特征和優(yōu)點(diǎn)能夠很好的適用于這一目的。盡管如此,應(yīng)當(dāng)理解,本發(fā)明的各個(gè)方面可以應(yīng)用于其他格式,以及應(yīng)用在能夠利用通信協(xié)議的其他設(shè)備中。
[0038]示例性的機(jī)器視覺系統(tǒng)中可以使用圖像處理軟件,所述圖像處理軟件可操作于在檢查所獲取的對象的圖像中,執(zhí)行任何各種類型的圖像分析或圖像處理功能或算法。任何類型的相機(jī)或其他設(shè)備可被用于獲得在機(jī)器視覺應(yīng)用中被分析的圖像,這些相機(jī)或其他設(shè)備包括數(shù)碼相機(jī)、線掃描相機(jī)、紅外熱成像儀、X射線成像設(shè)備、超聲波成像設(shè)備以及任何其他類型的可操作于接收、生成、處理或獲取圖像或傳感器數(shù)據(jù)的設(shè)備。例如在本領(lǐng)域中所公知的,所述圖像獲取、分析和/或上述的處理功能包括數(shù)據(jù)的生成和傳輸。
[0039]圖1示出的連接到網(wǎng)絡(luò)22的示例性的機(jī)器視覺系統(tǒng)20,所述網(wǎng)絡(luò)諸如局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、無線網(wǎng)絡(luò)或互聯(lián)網(wǎng),以及連接到本發(fā)明的教導(dǎo)所能應(yīng)用的領(lǐng)域。機(jī)器視覺系統(tǒng)20可用于在制造組裝、測試、測量、自動(dòng)化和/或控制應(yīng)用程序等作為非限制性實(shí)施例。應(yīng)當(dāng)指出,雖然本描述引用了機(jī)器視覺系統(tǒng)作為示例性的配置,本文所描述和要求保護(hù)的適用于范圍廣泛的設(shè)備,所述設(shè)備能夠使用通信協(xié)議跨網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)項(xiàng)通信。因此,本文所描述的系統(tǒng)和方法,應(yīng)采取廣泛適用于需要跨網(wǎng)絡(luò)使用的通信協(xié)議的通信數(shù)據(jù)項(xiàng)的任何系統(tǒng)或設(shè)備。
[0040]所述機(jī)器視覺系統(tǒng)20包括連接到計(jì)算機(jī)系統(tǒng)28的成像設(shè)備24。如本文所用,術(shù)語“成像設(shè)備”,是指包括任何各種類型的用于獲得和/或存儲(chǔ)圖像的設(shè)備,并可以包括板載處理能力。因此,成像設(shè)備可以進(jìn)一步可操作于分析或處理所獲取的或存儲(chǔ)的圖像。所述成像設(shè)備的實(shí)施例包括模擬和數(shù)字相機(jī),其具有主板上的處理器,以及其他類似類型的設(shè)備。
[0041]因此,圖1示出了示例性的圖像采集或機(jī)器視覺系統(tǒng)20,其中所述成像設(shè)備24可包括處理器32、存儲(chǔ)介質(zhì)40以及用于進(jìn)行圖像處理功能的機(jī)器視覺應(yīng)用36。所述成像設(shè)備24可通過串行總線、有線或無線的網(wǎng)絡(luò)、或者通過其他手段42連接到計(jì)算機(jī)28。
[0042]如本文所用,術(shù)語“處理器”可以包括一個(gè)或多個(gè)處理器、存儲(chǔ)器和/或一個(gè)或多個(gè)可編程的硬件元素。如本文所用,術(shù)語“處理器”是指包括任何類型的處理器、CPU、微控制器或能夠執(zhí)行軟件指令的其他設(shè)備。如本文所用,術(shù)語“可編程硬件部件”意圖包括各種類型的可編程硬件、可重配置硬件、可編程邏輯或者諸如一個(gè)或更多個(gè)FPGA(現(xiàn)場可編程門陣列)的現(xiàn)場可編程器件(FPD)、或者諸如一個(gè)或更多個(gè)簡單PLD (SPLD)或者一個(gè)或更多個(gè)復(fù)雜PLD (CPLD)的一個(gè)或更多個(gè)PLD (可編程邏輯器件)、或者其他類型的可編程硬件。
[0043]所述計(jì)算機(jī)28,或其他類似的計(jì)算設(shè)備,被示出連接到所述成像設(shè)備24。所述計(jì)算機(jī)28包括處理器38和用戶界面組件,諸如,但不是必需的,鼠標(biāo)44、鍵盤46和顯示器50。在替代實(shí)施例中,也可以采用其他類型的計(jì)算設(shè)備和界面,如個(gè)人數(shù)字助理(PDA)、筆記本電腦、人機(jī)界面或平板設(shè)備。在一些實(shí)施例中,成像設(shè)備24可以全時(shí)的連接到計(jì)算機(jī)28,特別是在計(jì)算機(jī)上執(zhí)行一個(gè)或多個(gè)數(shù)據(jù)配置和/或圖像處理功能。另外,在成像設(shè)備24中的處理器32通常允許設(shè)備24的獨(dú)立操作,且不必全時(shí)連接到計(jì)算機(jī)28。在本實(shí)施例中,計(jì)算機(jī)28可被連接到和/或與成像設(shè)備24以及相關(guān)聯(lián)的機(jī)器視覺應(yīng)用36通信,以用于例如設(shè)備設(shè)置、測試和運(yùn)行操作分析。計(jì)算機(jī)28還可以與圖像設(shè)備24 —起操作以進(jìn)行分析、測量或控制其他設(shè)備或過程。在其它實(shí)施例中,計(jì)算機(jī)28可被省略,即,成像設(shè)備24可完全獨(dú)立于計(jì)算機(jī)而操作。
[0044]計(jì)算機(jī)28可包括用以執(zhí)行計(jì)算機(jī)程序的處理器38和存儲(chǔ)計(jì)算機(jī)程序的存儲(chǔ)介質(zhì)54。在一個(gè)實(shí)施例中,另一存儲(chǔ)介質(zhì)58可以位于第二計(jì)算機(jī)62中,所述第二計(jì)算機(jī)通過網(wǎng)絡(luò)22連接到所述成像設(shè)備24或計(jì)算機(jī)28。在這種情況下,第二計(jì)算機(jī)62可以操作以通過網(wǎng)絡(luò)22向成像設(shè)備24或計(jì)算機(jī)28提供程序指令和/或數(shù)據(jù)。
[0045]仍然參考圖1,成像設(shè)備24還可以包括存儲(chǔ)介質(zhì)40,其上存儲(chǔ)有計(jì)算機(jī)程序,例如,基于文本的或圖形程序。在其它實(shí)施例中,配置信息可以被存儲(chǔ),可用于配置可編程的硬件元件,如現(xiàn)場可編程門陣列(FPGA),其被包括在成像設(shè)備24或計(jì)算機(jī)28中,用以進(jìn)行測量、控制、自動(dòng)化或分析功能等等。
[0046]如本文所用,術(shù)語“存諸介質(zhì)”包括:非易失性介質(zhì),例如磁介質(zhì)或硬盤、光存儲(chǔ)或快閃存儲(chǔ)器;易失性介質(zhì),諸如計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器,例如隨機(jī)存取存儲(chǔ)器(RAM)如DRAM、SRAM,EDO RAM,RAMBUS RAM,DR DRAM等;或安裝介質(zhì),如軟件介質(zhì)66,例如CD-ROM或軟盤,計(jì)算機(jī)程序可以在其上存儲(chǔ)和/或數(shù)據(jù)通信可在其上被緩沖。術(shù)語“存儲(chǔ)介質(zhì)”還可以包括其他類型的存儲(chǔ)器或它們的組合。
[0047]如該示例性的視覺系統(tǒng)20中所示,輸送器70可以被用于移動(dòng)多個(gè)對象72。反過來,這些對象在成像設(shè)備24的視野中(FOV)傳送,這樣它們運(yùn)行時(shí)的圖像可以被獲取并被檢查以尋找例如缺陷和/或在檢查過程中其他感興趣的特征。因此,成像設(shè)備24可以獲取觀察對象72的一個(gè)或多個(gè)圖像。
[0048]在一些實(shí)施例中,數(shù)據(jù)配置器76可以駐留和/或運(yùn)行在成像設(shè)備24上。所述數(shù)據(jù)配置器76也可以是機(jī)器視覺應(yīng)用程序36的一部分,并且可以使用計(jì)算機(jī)28來訪問。在其它實(shí)施例中,所述數(shù)據(jù)配置器76可以駐留和/或運(yùn)行在計(jì)算機(jī)28上,或者可以包括駐留和/或運(yùn)行在成像設(shè)備24上以及計(jì)算機(jī)28上的組件。
[0049]在一些實(shí)施例中,數(shù)據(jù)設(shè)計(jì)工具78可以駐留和/或運(yùn)行在計(jì)算機(jī)28上。在其它實(shí)施例中,數(shù)據(jù)設(shè)計(jì)工具76可能是在機(jī)器視覺應(yīng)用程序36的一部分,并且可以駐留和/或運(yùn)行在成像設(shè)備24上,并且可以使用計(jì)算機(jī)28來訪問。在其它實(shí)施例中,數(shù)據(jù)設(shè)計(jì)工具76可包括駐留和/或運(yùn)行在成像設(shè)備24上以及計(jì)算機(jī)28上的組件。數(shù)據(jù)設(shè)計(jì)工具78可操作以用于向用戶提供定義網(wǎng)絡(luò)項(xiàng)與一個(gè)或多個(gè)設(shè)備項(xiàng)之間的關(guān)系的機(jī)制。所述數(shù)據(jù)設(shè)計(jì)工具78可生成并存儲(chǔ)用戶選擇的配置信息,該配置信息可以在運(yùn)行時(shí)由數(shù)據(jù)配置器76消耗以構(gòu)造所述映射記錄(下面討論)。
[0050]在上述實(shí)施例中,數(shù)據(jù)設(shè)計(jì)工具78可能是離線工具,用戶使用該離線工具輸入并保存部分或全部配置信息,所述配置信息被數(shù)據(jù)配置器所使用以重新配置數(shù)據(jù)。在一些實(shí)施例中,數(shù)據(jù)設(shè)計(jì)工具78可被用于設(shè)計(jì)和/或設(shè)置,并且數(shù)據(jù)配置器可能是在線的工具,即運(yùn)行的工具。
[0051]本文所描述的數(shù)據(jù)配置器76和數(shù)據(jù)設(shè)計(jì)工具78的實(shí)施例提供可定制的數(shù)據(jù)重組,包括配置布局、內(nèi)容和通信數(shù)據(jù)值的能力,而無需修改發(fā)射或接收設(shè)備的軟件和/或固件。在本質(zhì)上,通過使用數(shù)據(jù)設(shè)計(jì)工具78定義網(wǎng)絡(luò)項(xiàng)與一個(gè)或多個(gè)設(shè)備項(xiàng)之間的關(guān)系,所述數(shù)據(jù)配置器76能夠使用所定義的關(guān)系將網(wǎng)絡(luò)22上外部可見的數(shù)據(jù)(被描述為網(wǎng)絡(luò)項(xiàng))映射為源自于供應(yīng)商設(shè)備的數(shù)據(jù)(被描述為設(shè)備項(xiàng))內(nèi)容和格式,以及將源自于供應(yīng)商設(shè)備的數(shù)據(jù)內(nèi)容和格式映射為網(wǎng)絡(luò)22上外部可見的數(shù)據(jù)。所述用戶不再依賴于供應(yīng)商的預(yù)編程數(shù)據(jù)格式的形式?,F(xiàn)在,用戶可以定義自己喜歡的數(shù)據(jù)格式,并仍與供應(yīng)商的設(shè)備進(jìn)行交互,而不需要供應(yīng)商來創(chuàng)建客戶軟件和/或固件。
[0052]正在重新配置的網(wǎng)絡(luò)項(xiàng)不需要基于通信協(xié)議的規(guī)則,即以太網(wǎng)/IP或Profinet規(guī)貝U,而是靜態(tài)填充到固定結(jié)構(gòu)的一個(gè)或多個(gè)預(yù)定義的設(shè)備項(xiàng),并且通過網(wǎng)絡(luò)22傳輸和/或接收。所述設(shè)備項(xiàng)由設(shè)備供應(yīng)商來定義。
[0053]所述通信協(xié)議定義網(wǎng)絡(luò)項(xiàng)如何在網(wǎng)絡(luò)上傳輸,但所述設(shè)備供應(yīng)商定義了所述數(shù)據(jù)內(nèi)容和格式。因此,為了保持協(xié)議獨(dú)立,所述設(shè)備項(xiàng)中被定義為協(xié)議獨(dú)立的式樣。從設(shè)備項(xiàng)到網(wǎng)絡(luò)項(xiàng)的映射可以是依賴于通信協(xié)議,但一般地,所述數(shù)據(jù)項(xiàng)本身不是基于協(xié)議的,因?yàn)槠洳皇菂f(xié)議的一部分。
[0054]所述數(shù)據(jù)設(shè)計(jì)工具78可包括用戶界面機(jī)構(gòu)80 (例如,圖形用戶接口、或鍵盤46和屏幕50)和/或與用戶界面機(jī)構(gòu)80交互,以允許用戶為數(shù)據(jù)配置器76創(chuàng)建指令,指示了哪些數(shù)據(jù)要被重組以及數(shù)據(jù)是如何進(jìn)行重組,而不需要根據(jù)每個(gè)單獨(dú)客戶的要求來執(zhí)行獨(dú)特的固件改變。因此,所述用戶能夠提供配置信息給所述數(shù)據(jù)配置器76,用于產(chǎn)生一個(gè)或多個(gè)映射記錄和/或邏輯元素,將在下面更詳細(xì)討論的,用于根據(jù)他們的特殊需要而重組數(shù)據(jù),進(jìn)而,數(shù)據(jù)配置器76在運(yùn)行時(shí)執(zhí)行數(shù)據(jù)操作。
[0055]例如,設(shè)備供應(yīng)商(在這個(gè)示例性的實(shí)施例中為機(jī)器視覺系統(tǒng)20),為成像設(shè)備24預(yù)定義了一個(gè)或多個(gè)設(shè)備項(xiàng)。設(shè)備項(xiàng)可包括任何數(shù)量的數(shù)據(jù)格式和/或類型。例如,設(shè)備項(xiàng)可以是設(shè)備命令、設(shè)備事件和/或設(shè)備值。在一個(gè)示例中,一條數(shù)據(jù)(通常是單個(gè)比特bit)也可以被用于指示事件的發(fā)生。在另一示例中,當(dāng)前的電機(jī)轉(zhuǎn)速值可被視為數(shù)據(jù)值。[0056]在使用中,任何連接到網(wǎng)絡(luò)22上的集線器86的其它設(shè)備62、82和/或84的用戶(參照圖1)隨后將能夠指示數(shù)據(jù)配置器76重組來自用戶設(shè)備82的數(shù)據(jù),這樣數(shù)據(jù)最終是供應(yīng)商預(yù)定義設(shè)備項(xiàng)的格式。例如,所述用戶設(shè)備82生成數(shù)據(jù),所述數(shù)據(jù)隨后可被在網(wǎng)絡(luò)22上發(fā)送到所述成像設(shè)備,即供應(yīng)商設(shè)備24,其中數(shù)據(jù)配置器76能將來自用戶設(shè)備中的數(shù)據(jù)重組為供應(yīng)商預(yù)定義的設(shè)備項(xiàng)格式。
[0057]所述數(shù)據(jù)配置器76可通過多種方式被指示以重組數(shù)據(jù)。在示范性實(shí)施例中,所述數(shù)據(jù)配置器可利用能夠重組數(shù)據(jù)的三種不同的配置模式的任何組合,雖然其它的模式也落在本發(fā)明的范圍之內(nèi)。示例性配置模式包括數(shù)據(jù)映射88、數(shù)據(jù)類型轉(zhuǎn)換90和邏輯數(shù)據(jù)操作92。每一個(gè)都在下面進(jìn)一步詳細(xì)描述。
[0058]參照圖3所示,網(wǎng)絡(luò)項(xiàng)98被用戶設(shè)備82生成,然后傳送到通信協(xié)議100,以用于傳輸?shù)骄W(wǎng)絡(luò)22上的供應(yīng)商設(shè)備24。網(wǎng)絡(luò)項(xiàng)98被供應(yīng)商設(shè)備24上的通信協(xié)議104接收。所述協(xié)議104隨后將網(wǎng)絡(luò)項(xiàng)發(fā)送到數(shù)據(jù)配置器76。然后所述數(shù)據(jù)配置器76使用任何下面描述的配置模式,將網(wǎng)絡(luò)項(xiàng)重組為一個(gè)或多個(gè)設(shè)備項(xiàng),并將設(shè)備項(xiàng)傳遞到供應(yīng)商設(shè)備24上的機(jī)器視覺應(yīng)用36,例如,將被機(jī)器視覺應(yīng)用36消耗。應(yīng)當(dāng)理解,數(shù)據(jù)配置器76是也能夠從供應(yīng)商設(shè)備上的機(jī)器視覺應(yīng)用36接收設(shè)備項(xiàng),并將設(shè)備項(xiàng)重組為網(wǎng)絡(luò)項(xiàng),然后將網(wǎng)絡(luò)項(xiàng)傳送到通信協(xié)議104,這樣協(xié)議能夠?qū)⒅亟M后的數(shù)據(jù)通過網(wǎng)絡(luò)22發(fā)送到用戶設(shè)備82。
[0059]在下列實(shí)施例中,網(wǎng)絡(luò)項(xiàng)是諸個(gè)單獨(dú)數(shù)據(jù)項(xiàng)的組織,因?yàn)樗瓷先ナ窃诰W(wǎng)絡(luò)22的?,F(xiàn)在參考圖4,數(shù)據(jù)映射的簡化表示被示為將網(wǎng)絡(luò)項(xiàng)98重組為設(shè)備項(xiàng)102。在這個(gè)例子中,網(wǎng)絡(luò)項(xiàng)98和設(shè)備項(xiàng)102都是已知的數(shù)據(jù)結(jié)構(gòu)的格式,但是這不是必需的,且圖5和6顯示了沒有數(shù)據(jù)結(jié)構(gòu)格式的單個(gè)設(shè)備項(xiàng)。
[0060]網(wǎng)絡(luò)項(xiàng)98被顯示為包括五個(gè)單獨(dú)數(shù)據(jù)項(xiàng)94。作為通信處理的一部分,數(shù)據(jù)項(xiàng)94將被透明地重組。將數(shù)據(jù)配置器76用于數(shù)據(jù)映射,網(wǎng)絡(luò)項(xiàng)98的部分或全部內(nèi)容可被重組(例如,映射)到設(shè)備項(xiàng)102。如在設(shè)備項(xiàng)102中可以看出,所發(fā)送的單獨(dú)數(shù)據(jù)項(xiàng)94的組織已經(jīng)被重新排列到設(shè)備項(xiàng)102中,所發(fā)送的單獨(dú)數(shù)據(jù)項(xiàng)94的數(shù)目已經(jīng)從5個(gè)減少至3個(gè)單獨(dú)數(shù)據(jù)項(xiàng)96。
[0061]相似地,如圖5所示,數(shù)據(jù)類型轉(zhuǎn)換是指對常見數(shù)據(jù)類型的轉(zhuǎn)換。圖5顯示了包括五個(gè)單獨(dú)數(shù)據(jù)項(xiàng)Iio的網(wǎng)絡(luò)項(xiàng)106。作為通信處理的一部分,任意的這五個(gè)單獨(dú)數(shù)據(jù)項(xiàng)110將被透明地轉(zhuǎn)換。圖5示出使用數(shù)據(jù)配置器76的數(shù)據(jù)轉(zhuǎn)換的例子,其中所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)106的部分或全部內(nèi)容可被重組,即,轉(zhuǎn)換為多個(gè)設(shè)備項(xiàng)114、116、118,其中所選擇的單獨(dú)數(shù)據(jù)項(xiàng)110已被轉(zhuǎn)換成單獨(dú)設(shè)備項(xiàng)114、116、118。單獨(dú)數(shù)據(jù)項(xiàng)110已從32位整數(shù)值被轉(zhuǎn)換到16位整數(shù)值,并且所發(fā)送的單獨(dú)數(shù)據(jù)項(xiàng)110的數(shù)量已經(jīng)從5個(gè)數(shù)據(jù)項(xiàng)減少到3個(gè)設(shè)備項(xiàng) 114、116、118。
[0062]現(xiàn)在參照圖6,邏輯數(shù)據(jù)操作是指基于任何邏輯(AND、0R、X0R、N0T、等)和/或算術(shù)操作符的對數(shù)據(jù)值的改動(dòng)。圖6顯示了包括五個(gè)單獨(dú)數(shù)據(jù)項(xiàng)126的網(wǎng)絡(luò)項(xiàng)122。作為通信處理的一部分,任意的這五個(gè)單獨(dú)數(shù)據(jù)項(xiàng)126可以被透明地操作。圖6示出了使用數(shù)據(jù)配置器76的數(shù)據(jù)操作的例子,其中傳輸網(wǎng)絡(luò)項(xiàng)目122的部分或全部內(nèi)容可被重組(即,被操作)為多個(gè)設(shè)備項(xiàng)130、134。從設(shè)備項(xiàng)130、134可以看出,同時(shí)使用邏輯和算術(shù)運(yùn)算符(雖然共同使用并不是必定地需要)處理被傳輸?shù)膯为?dú)數(shù)據(jù)項(xiàng)126。并且,所發(fā)送的單獨(dú)數(shù)據(jù)項(xiàng)126的數(shù)量已經(jīng)從5個(gè)單獨(dú)數(shù)據(jù)項(xiàng)減少為兩個(gè)設(shè)備項(xiàng)130、134。[0063]可以看出,除了邏輯和/或算術(shù)運(yùn)算符,也為數(shù)據(jù)類型轉(zhuǎn)換提供了邏輯的數(shù)據(jù)操作(或任何配置模式)。例如,比特字段可以被轉(zhuǎn)換成整數(shù)字段,反之亦然。此外,各配置模式可以被單獨(dú)或以任何組合執(zhí)行。
[0064]上述映射和邏輯功能均可獨(dú)立于所使用的通信協(xié)議的性質(zhì)和操作。因此,它不會(huì)被綁定為特定類型的連接或通信介質(zhì)。
[0065]為了數(shù)據(jù)配置器76如上文所述的重組數(shù)據(jù),所述數(shù)據(jù)配置器76動(dòng)態(tài)地構(gòu)造唯一的映射記錄140。構(gòu)建映射記錄140的信息可由數(shù)據(jù)設(shè)計(jì)工具78提供。每個(gè)映射紀(jì)錄140定義了唯一識別的網(wǎng)絡(luò)項(xiàng)中的所選擇的數(shù)據(jù)與相關(guān)聯(lián)的唯一識別的設(shè)備項(xiàng)中的所選擇的數(shù)據(jù)之間的唯一關(guān)系。在運(yùn)行時(shí),數(shù)據(jù)配置器76利用所構(gòu)造的映射記錄140重組用戶所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)。所述協(xié)議接收網(wǎng)絡(luò)項(xiàng),并將網(wǎng)絡(luò)項(xiàng)發(fā)送到數(shù)據(jù)配置器76以用于重組。
[0066]在開始底層通信協(xié)議和上線之前,供應(yīng)商設(shè)備24通常執(zhí)行初始化活動(dòng)。在此初始化活動(dòng)中,可動(dòng)態(tài)構(gòu)造映射記錄140。但是應(yīng)當(dāng)理解,數(shù)據(jù)配置器76也可重組來自供應(yīng)商設(shè)備24的數(shù)據(jù),使得數(shù)據(jù)可以在網(wǎng)絡(luò)22上發(fā)送到用戶設(shè)備82??梢酝ㄓ玫姆椒?gòu)造映射記錄140,這樣就可以配置各種映射記錄而無需改變設(shè)備軟件和/或固件。
[0067]圖7-9分別示出了在圖4-6中所示的網(wǎng)絡(luò)項(xiàng)98、106和122的重組的更詳細(xì)的表述。參考圖7,網(wǎng)絡(luò)項(xiàng)98代表數(shù)據(jù)的組織,其已被供應(yīng)商設(shè)備24上的通訊協(xié)議所接收。網(wǎng)絡(luò)上的每個(gè)網(wǎng)絡(luò)項(xiàng)被分配唯一的標(biāo)識符,例如,從I到1+n。為網(wǎng)絡(luò)項(xiàng)98中的需要重新配置的每個(gè)單獨(dú)數(shù)據(jù)項(xiàng)構(gòu)造映射記錄??梢詷?gòu)造任意數(shù)量的映射記錄,所示出的是三個(gè)映射記錄140、142、144。該多個(gè)映射記錄140、142、144被示出為形成示例性的映射列表148。所述映射列表148可以包含任意數(shù)量的映射記錄。如上所述,每個(gè)映射記錄140、142、144分別定義了網(wǎng)絡(luò)項(xiàng)98中的所選擇的數(shù)據(jù)141、143、145與供應(yīng)商設(shè)備24中相關(guān)聯(lián)的設(shè)備項(xiàng)102之間的關(guān)系。所述設(shè)備項(xiàng)可以是供應(yīng)商設(shè)備中的真正的數(shù)據(jù)元素或虛擬的數(shù)據(jù)項(xiàng),諸如下面描述的邏輯元素。
[0068]在運(yùn)行時(shí),數(shù)據(jù)配置器76利用映射列表148的映射記錄140、142、144中的一個(gè)或多個(gè)來操作所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)。例如,所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)98可被操縱,以使得映射記錄140操作數(shù)據(jù)141,所以它可以傳送給供應(yīng)商設(shè)備24中的設(shè)備項(xiàng)102。同樣,映射記錄142操作數(shù)據(jù)143,所以它可會(huì)傳送給設(shè)備項(xiàng)102,并且映射記錄144操作數(shù)據(jù)145,因此它可被傳送給設(shè)備項(xiàng)102。
[0069]圖8示出了在圖5中所示的網(wǎng)絡(luò)項(xiàng)106的重組的更詳細(xì)的表述。網(wǎng)絡(luò)項(xiàng)106表示數(shù)據(jù)的組織,如它在網(wǎng)絡(luò)22上所能看到的那樣。同樣,網(wǎng)絡(luò)上的每個(gè)網(wǎng)絡(luò)項(xiàng)被分配唯一的標(biāo)識符。為網(wǎng)絡(luò)項(xiàng)106中的需要重新配置的每個(gè)單獨(dú)數(shù)據(jù)項(xiàng)構(gòu)造映射記錄??梢詷?gòu)造任意數(shù)量的映射記錄,所示出的是三個(gè)映射記錄140、142、144。多個(gè)映射記錄140、142、144被示出為形成示例性的映射列表148。所述映射列表148可以包含任意數(shù)量的映射記錄。如上所述,每個(gè)映射記錄140、142、144分別定義了網(wǎng)絡(luò)項(xiàng)106中的所選擇的數(shù)據(jù)141、143、145與供應(yīng)商設(shè)備24中相關(guān)聯(lián)的的設(shè)備項(xiàng)114、116、118之間的關(guān)系。
[0070]在運(yùn)行時(shí),數(shù)據(jù)配置器76利用映射列表148中的映射記錄140、142、144中的一個(gè)或多個(gè)來操作所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)。例如,所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)106可被操縱,以使得映射記錄140操作數(shù)據(jù)141,所以它可以傳送給供應(yīng)商設(shè)備24中的設(shè)備項(xiàng)114。同樣,映射記錄142操作數(shù)據(jù)143,所以它可會(huì)傳送給設(shè)備項(xiàng)116,并且映射記錄144操作數(shù)據(jù)145,因此它可被傳送給設(shè)備項(xiàng)118。
[0071]圖9示出了在圖6中所示的網(wǎng)絡(luò)項(xiàng)122的重組的更詳細(xì)的表述。正如前面所討論的,數(shù)據(jù)配置器76也允許數(shù)據(jù)的邏輯操作。例如,數(shù)據(jù)配置器76允許用戶將多個(gè)數(shù)據(jù)項(xiàng)組合成新的數(shù)據(jù)項(xiàng),或基于另一數(shù)據(jù)項(xiàng)的值改變一個(gè)數(shù)據(jù)項(xiàng)的值。
[0072]網(wǎng)絡(luò)項(xiàng)122表示數(shù)據(jù)的組織,如它在網(wǎng)絡(luò)22上所能看到的那樣。網(wǎng)絡(luò)上的每個(gè)網(wǎng)絡(luò)項(xiàng)被分配唯一的標(biāo)識符。為網(wǎng)絡(luò)項(xiàng)122中的需要重新配置的每個(gè)單獨(dú)數(shù)據(jù)項(xiàng)構(gòu)造映射記錄??梢詷?gòu)造任意數(shù)量的映射記錄,所示出的是四個(gè)映射記錄140、142、144、150。該多個(gè)映射記錄140、142、144、150被示出為形成示例性的映射列表148。所述映射列表148可以包含任意數(shù)量的映射記錄。
[0073]另外,除了映射列表148之外,一個(gè)或多個(gè)邏輯元素172、174可被動(dòng)態(tài)地構(gòu)造并被示出。所述邏輯元素172、174可包括任何數(shù)量的邏輯運(yùn)算,在邏輯元素172中示出了一個(gè)“AND”操作,并且在邏輯元素174中示出了兩個(gè)“MULT”操作。以通用的方法來構(gòu)造邏輯元素,這樣可配置多個(gè)邏輯運(yùn)算而無需改變軟件或固件。如上所述,每個(gè)映射記錄140、142、144、150以及邏輯元素172、174分別定義了網(wǎng)絡(luò)項(xiàng)122中的所選擇的數(shù)據(jù)141、143、145、147與供應(yīng)商設(shè)備24中的相關(guān)聯(lián)的設(shè)備項(xiàng)130、134之間的關(guān)系。
[0074]在運(yùn)行時(shí),數(shù)據(jù)配置器76利用所構(gòu)造的邏輯元素172、174以及映射記錄140、142、144、150來操作所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)122。例如,所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)122可以被操作,以使得映射記錄140和邏輯元素172操作數(shù)據(jù)141,所以它可被傳送到供應(yīng)商設(shè)備24的設(shè)備項(xiàng)130。同樣,映射記錄142、144、150和邏輯元素174操作數(shù)據(jù)143、145、147,所以它可以傳送到供應(yīng)商設(shè)備24的設(shè)備項(xiàng)134。
[0075]圖9還顯示,映射記錄140可以提供將較大的數(shù)據(jù)項(xiàng)143、145、147拆分為較小的子項(xiàng)134,或者反過來,將較小的數(shù)據(jù)項(xiàng)141提供到更大的聚集項(xiàng)130。
[0076]參考圖10,示例性的映射記錄140被示出。如上所述,映射記錄140定義了例如從網(wǎng)絡(luò)項(xiàng)108的數(shù)據(jù)141的傳輸表不和例如設(shè)備箱102的供應(yīng)商設(shè)備24的設(shè)備表不之間唯一的映射。映射記錄包括網(wǎng)絡(luò)表示部分176、設(shè)備表示部分178和選項(xiàng)部分180。映射記錄140所表示一個(gè)單獨(dú)的數(shù)據(jù)項(xiàng)141包括網(wǎng)絡(luò)表示部176和設(shè)備表示部178的各種數(shù)據(jù)字段,包括例如ID、偏移量、大小和類型。項(xiàng)ID定義一個(gè)唯一的項(xiàng)目識別,項(xiàng)偏移定義網(wǎng)絡(luò)項(xiàng)98的偏移值,項(xiàng)大小定義網(wǎng)絡(luò)項(xiàng)98中單個(gè)數(shù)據(jù)項(xiàng)目141的大小,項(xiàng)類型定義任何已知的通用數(shù)據(jù)類型(如比特、無符號字節(jié)、符號長字節(jié)等等)之一,且一個(gè)特殊的鏈接類型識別分層映射的映射鏈接(參照圖14和下面的討論)。還可以存在多種識別選項(xiàng)部分180中可變選項(xiàng)的細(xì)節(jié),包括但不限于,數(shù)據(jù)流的方向、輸入/輸出、虛擬數(shù)據(jù)占位——無需映射而反轉(zhuǎn)數(shù)據(jù)。
[0077]通過舉例的方式,圖11顯示了由從網(wǎng)絡(luò)項(xiàng)182映射到設(shè)備項(xiàng)184的映射記錄104定義的網(wǎng)絡(luò)表示和設(shè)備表示。在這個(gè)例子中,四位無符號比特186的字段從網(wǎng)絡(luò)項(xiàng)182的比特偏移三十二 188映射為設(shè)備項(xiàng)目184的比特偏移八192的無符號字節(jié)190。圖12顯示了一個(gè)額外的映射示例,其中整個(gè)設(shè)備項(xiàng)194(包括比特偏移零的一個(gè)16位無符號整數(shù)196)被映射到包括比特偏移零處一個(gè)三十二位無符號整數(shù)199的整個(gè)網(wǎng)絡(luò)項(xiàng)目198。
[0078]如上所述,可將映射列表構(gòu)建為例如分層樹、平面列表或這兩種格式的組合。平面列表配置是一種映射記錄的簡單直列表,諸如圖7中所示的映射列表148。參考圖13,分層樹由子列表樹組成。不例性的分層樹200包括了根平面列表204,其將輸入子列表208和輸出子列表212分組為不同的樹分支。這種類型的配置通過省去在單個(gè)平面列表中搜索每個(gè)映射記錄的需要而可用于加速處理。分層樹的格式比較復(fù)雜,但允許數(shù)據(jù)被構(gòu)建為邏輯分組。這樣的分組可以任何所需的應(yīng)用目而被定義,例如增加處理速度。
[0079]圖14和15描述了使用數(shù)據(jù)配置器76和數(shù)據(jù)設(shè)計(jì)工具78以用于操作數(shù)據(jù)的方法的實(shí)施例。所示的方法也可以與在上面的圖中所示的任何計(jì)算機(jī)系統(tǒng)或設(shè)備或其他相結(jié)合使用。在各種實(shí)施例中,一些所示的方法元素可被同時(shí)執(zhí)行、以與所示的不同的順序執(zhí)行或者也可以省略。其他的方法元素也可以按照需求執(zhí)行。
[0080]參考圖14,示出了一種方法,其中用戶使用數(shù)據(jù)設(shè)計(jì)工具78生成用于數(shù)據(jù)配置器76的指令,以準(zhǔn)備其用于執(zhí)行數(shù)據(jù)轉(zhuǎn)換。第一步是初始化數(shù)據(jù)設(shè)計(jì)工具78,如在處理方框220中所示。用戶可以使用計(jì)算機(jī)28或可選擇地直接通過供應(yīng)商設(shè)備24上的界面來初始化數(shù)據(jù)設(shè)計(jì)工具78。正如前面所討論的,所述數(shù)據(jù)設(shè)計(jì)工具78可以位于設(shè)備24的存儲(chǔ)介質(zhì)40中和/或計(jì)算機(jī)28中的存儲(chǔ)介質(zhì)54中,并且相應(yīng)地由設(shè)備24中的處理器32和/或計(jì)算機(jī)28中的處理器38來執(zhí)行。例如,使用顯示在屏幕50上的界面80,用戶可以選擇數(shù)據(jù)項(xiàng)141、143和/或145,如在處理方框222中所示。選擇處理中可選地包括為網(wǎng)絡(luò)表示部分176、設(shè)備表示部分178和可選部分180提供數(shù)據(jù)信息。所選擇的數(shù)據(jù)項(xiàng)被組裝以生成用于數(shù)據(jù)配置器76的配置信息,從而使其使用一個(gè)或多個(gè)映射配置來執(zhí)行數(shù)據(jù)轉(zhuǎn)換,如在處理方框224中所示??蛇x地,用戶還可以生成一個(gè)或多個(gè)邏輯配置172。無論是數(shù)據(jù)設(shè)計(jì)工具78和/或數(shù)據(jù)配置器76隨后都可生成包括所組裝的映射配置的映射列表148。隨后,用戶可以保存映射列表、映射配置和/或邏輯配置,如在處理方框226中所示。映射列表148、映射配置和/或邏輯配置的任意之一可以被傳送到數(shù)據(jù)配置器,如在處理方框228中所示。
[0081]參照圖15,示出了描述數(shù)據(jù)配置器76所采取的步驟的方法。如在處理方框240所示,可使用數(shù)據(jù)設(shè)計(jì)工具78來初始化數(shù)據(jù)配置器76。所述數(shù)據(jù)配置器76隨后可收到用于根據(jù)任何可用的配置模式來重新配置所選擇的數(shù)據(jù)項(xiàng)的映射列表148、映射配置和/或邏輯配置信息,如在處理方框242中所示。所述映射配置和/或邏輯配置信息可選地包括為網(wǎng)絡(luò)表示部分176、設(shè)備表示部分178和可選部分180提供數(shù)據(jù)信息?;谂渲眯畔ⅲ蔀槊總€(gè)數(shù)據(jù)項(xiàng)生成映射記錄140和/或邏輯元素172,如在處理方框244中所示。無論是數(shù)據(jù)設(shè)計(jì)工具78和/或數(shù)據(jù)配置器76都可為每個(gè)數(shù)據(jù)項(xiàng)生成映射記錄140和/或邏輯元素172。所述設(shè)備的運(yùn)行操作隨后可以開始,如在處理方框246中所示。在運(yùn)行時(shí),如在處理方框248所示,數(shù)據(jù)配置器76從通信協(xié)議104接收所發(fā)送的網(wǎng)絡(luò)項(xiàng)98,并且在處理方框250中,數(shù)據(jù)配置器76根據(jù)映射記錄和/或邏輯元素重新配置從網(wǎng)絡(luò)項(xiàng)中所選擇的數(shù)據(jù)項(xiàng)。在處理方框252中,所操作的數(shù)據(jù)被傳送到供應(yīng)商設(shè)備24上的機(jī)器視覺應(yīng)用36,供應(yīng)商設(shè)備接收一個(gè)或多個(gè)設(shè)備項(xiàng),所述設(shè)備項(xiàng)已經(jīng)從所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)被重新配置。
[0082]盡管已經(jīng)參考優(yōu)選實(shí)施例描述了本發(fā)明,本領(lǐng)域技術(shù)人員將認(rèn)識到,可做出形式和細(xì)節(jié)的改變而不脫離本發(fā)明的精神和范圍。例如,本發(fā)明的實(shí)施例不是限制于本文示出的視覺系統(tǒng)和相關(guān)電子設(shè)備的實(shí)施例,且可由能夠在網(wǎng)絡(luò)上傳輸和/或接收數(shù)據(jù)的多種其他設(shè)備實(shí)施。
[0083]前文中已公開的實(shí)施例僅作顯示用,因?yàn)楸景l(fā)明可使用不同但可替代的方法修改及實(shí)行,且對于了解文中講授目的的本領(lǐng)域技術(shù)人員,這是顯而易見。再者,文中所顯示的構(gòu)造或設(shè)計(jì)的細(xì)節(jié)旨在不受限制,而非如下面權(quán)利要求所描述的。由此可知,前文中所揭示的特定實(shí)施例,皆可改變或修改,且所有這些改變皆視為在本發(fā)明的范疇及精神之中。因此,本文中的保護(hù)范圍即是以下權(quán)利要求所提出的部分。
【權(quán)利要求】
1.一種用于重新配置在制造和/或自動(dòng)化網(wǎng)絡(luò)上發(fā)送的數(shù)據(jù)的設(shè)備,所述網(wǎng)絡(luò)使用通信協(xié)議,所述設(shè)備包括: 處理器,以及被處理器訪問的存儲(chǔ)介質(zhì),所述處理器可操作用于接收來自網(wǎng)絡(luò)上的第二設(shè)備的數(shù)據(jù); 數(shù)據(jù)配置器,所述數(shù)據(jù)配置器可操作用于動(dòng)態(tài)地重新配置來自所述第二設(shè)備的數(shù)據(jù),所述來自第二設(shè)備的數(shù)據(jù)是由第二設(shè)備所定義的網(wǎng)絡(luò)項(xiàng)的格式,并且所述數(shù)據(jù)配置器可操作用于將所述重新配置的數(shù)據(jù)以設(shè)備項(xiàng)的格式傳輸?shù)剿鎏幚砥骱退龃鎯?chǔ)介質(zhì)的至少一個(gè),所述設(shè)備項(xiàng)源自所述設(shè)備;以及 映射記錄,所述映射記錄被數(shù)據(jù)配置器使用,并且定義了所述網(wǎng)絡(luò)項(xiàng)和所述設(shè)備項(xiàng)之間的唯一的關(guān)系,所述映射記錄包括用于所述網(wǎng)絡(luò)項(xiàng)中的數(shù)據(jù)的網(wǎng)絡(luò)表示部分以及用于數(shù)據(jù)項(xiàng)中的數(shù)據(jù)的設(shè)備表示部分。
2.根據(jù)權(quán)利要求1所述的設(shè)備,還包括數(shù)據(jù)設(shè)計(jì)工具,所述數(shù)據(jù)設(shè)計(jì)工具可操作用于為包括所述網(wǎng)絡(luò)表示部分以及所述設(shè)備表示部分的所述映射記錄生成配置信息。
3.根據(jù)權(quán)利要求1所述的設(shè)備, 其中所述數(shù)據(jù)配置器使用數(shù)據(jù)映射配置模式、數(shù)據(jù)類型轉(zhuǎn)換配置模式以及邏輯數(shù)據(jù)操作配置模式中的至 少一個(gè)來動(dòng)態(tài)地重新配置來自所述第二設(shè)備的所述數(shù)據(jù)。
4.根據(jù)權(quán)利要求1所述的設(shè)備, 其中所述映射記錄包括選項(xiàng)部分。
5.根據(jù)權(quán)利要求1所述的設(shè)備, 其中所述網(wǎng)絡(luò)表示部分與所述設(shè)備表示部分每一個(gè)均包括ID數(shù)據(jù)字段、偏移量數(shù)據(jù)字段、大小數(shù)據(jù)字段和類型數(shù)據(jù)字段中的至少一個(gè)。
6.根據(jù)權(quán)利要求1所述的設(shè)備, 其中所述數(shù)據(jù)配置器被存儲(chǔ)在所述存儲(chǔ)介質(zhì)中。
7.根據(jù)權(quán)利要求1所述的設(shè)備, 其中所述設(shè)備包括成像設(shè)備。
8.根據(jù)權(quán)利要求1所述的設(shè)備, 其中所述處理器可操作用于生成設(shè)備數(shù)據(jù)以與網(wǎng)絡(luò)上的所述第二設(shè)備通信。
9.如權(quán)利要求8所述的設(shè)備, 其中所述數(shù)據(jù)配置器進(jìn)一步可操作用于將所述設(shè)備數(shù)據(jù)動(dòng)態(tài)地重新配置為所述設(shè)備定義的網(wǎng)絡(luò)項(xiàng),所述設(shè)備數(shù)據(jù)是以供應(yīng)商預(yù)定義的數(shù)據(jù)項(xiàng)的格式,并且所述數(shù)據(jù)配置器可操作用于將所述網(wǎng)絡(luò)項(xiàng)傳送給所述通信協(xié)議以用于發(fā)送到所述第二設(shè)備。
10.根據(jù)權(quán)利要求1所述的設(shè)備,其中多個(gè)映射記錄被組織為映射列表。
11.根據(jù)權(quán)利要求10所述的設(shè)備, 其中所述映射列表中包括分層樹,所述分層樹包括平面樹和子列表樹。
12.一種用于重新配置來自網(wǎng)絡(luò)上第一設(shè)備的通信數(shù)據(jù)并提供所述重新配置的數(shù)據(jù)到網(wǎng)絡(luò)上的第二設(shè)備的方法,所述方法包括: 初始化數(shù)據(jù)配置器,所述數(shù)據(jù)配置器可操作在所述第二設(shè)備上; 接收用于根據(jù)配置模式而重新配置所選擇的數(shù)據(jù)項(xiàng)的配置信息; 為所述所選擇的數(shù)據(jù)項(xiàng)生成映射記錄;開始所述第二設(shè)備的運(yùn)行操作; 在運(yùn)行時(shí),所述數(shù)據(jù)配置器接收所傳輸?shù)木W(wǎng)絡(luò)項(xiàng),所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)包括所述所選擇的數(shù)據(jù)項(xiàng); 根據(jù)所述映射記錄,重新配置來自所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)的所述所選擇的數(shù)據(jù); 以及 將重新配置后的所選擇的數(shù)據(jù)項(xiàng)傳送到所述第二設(shè)備上的應(yīng)用。
13.根據(jù)權(quán)利要求12所述的方法, 進(jìn)一步包括生成邏輯元素,以及根據(jù)所述映射記錄和所述邏輯元素,重新配置來自所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)的所述所選擇的數(shù)據(jù)項(xiàng)。
14.根據(jù)權(quán)利要求12所述的方法, 進(jìn)一步包括所述第二設(shè)備上的所述應(yīng)用將所述重新配置的所選擇的數(shù)據(jù)項(xiàng),接收到已經(jīng)從所述所傳輸?shù)木W(wǎng)絡(luò)項(xiàng)被重新配置的設(shè)備項(xiàng)中。
15.根據(jù)權(quán)利要求14所述的方法, 其中生成所述映射記錄包括定義所述網(wǎng)絡(luò)項(xiàng)和所述設(shè)備項(xiàng)之間的唯一關(guān)系,所述映射記錄包括用于所述網(wǎng)絡(luò)項(xiàng)中的數(shù)據(jù)的網(wǎng)絡(luò)表示部分以及用于數(shù)據(jù)項(xiàng)中的數(shù)據(jù)的設(shè)備表示部分。
16.根據(jù)權(quán)利要求15所述的方法, 其中所述網(wǎng)絡(luò)表示部分與所述設(shè)備表示部分每一個(gè)均包括ID數(shù)據(jù)字段、偏移量數(shù)據(jù)字段、大小數(shù)據(jù)字段和類型數(shù)據(jù)字段中的至少一個(gè)。
17.一種使用數(shù)據(jù)配置器以重新配置數(shù)據(jù)項(xiàng)的方法,所述方法包括: 初始化數(shù)據(jù)設(shè)計(jì)工具,所述數(shù)據(jù)設(shè)計(jì)工具位于連接到網(wǎng)絡(luò)的第一設(shè)備上的存儲(chǔ)器中; 從連接到所述網(wǎng)絡(luò)的第二設(shè)備中選擇數(shù)據(jù)項(xiàng)以用于重新配置; 生成映射配置,所述映射配置包括網(wǎng)絡(luò)表示部分和設(shè)備表示部分; 保存所述映射配置; 將所述映射配置傳送到所述網(wǎng)絡(luò)上的第三設(shè)備,所述第三設(shè)備包括所述數(shù)據(jù)配置器;以及 使用所述數(shù)據(jù)配置器,根據(jù)所述映射配置來動(dòng)態(tài)地重新配置來自所述第二設(shè)備的所述所選擇的數(shù)據(jù)項(xiàng)。
18.根據(jù)權(quán)利要求17所述的方法, 其中動(dòng)態(tài)地重新配置所述所選擇的數(shù)據(jù)項(xiàng)包括使用數(shù)據(jù)映射配置模式、數(shù)據(jù)類型轉(zhuǎn)換配置模式和邏輯數(shù)據(jù)操作配置模式中的至少一個(gè)。
19.根據(jù)權(quán)利要求17所述的方法, 其中所述映射配置定義了網(wǎng)絡(luò)項(xiàng)和設(shè)備項(xiàng)之間唯一的關(guān)系。
20.根據(jù)權(quán)利要求17所述的方法, 其中選擇所述數(shù)據(jù)項(xiàng)包括為所述網(wǎng)絡(luò)表示部分和所述設(shè)備表示部分提供數(shù)據(jù)信息。
21.根據(jù)權(quán)利要求17所述的方法, 進(jìn)一步包括使用所述第一設(shè)備上的用戶界面用于選擇所述數(shù)據(jù)信息以重新配置。
【文檔編號】G06F9/44GK103473042SQ201310328594
【公開日】2013年12月25日 申請日期:2013年5月9日 優(yōu)先權(quán)日:2012年5月10日
【發(fā)明者】P·謝弗德, D·彼得森 申請人:康耐視公司