TWI825289B - 自動光學檢測設備的控制系統 - Google Patents
自動光學檢測設備的控制系統 Download PDFInfo
- Publication number
- TWI825289B TWI825289B TW109108426A TW109108426A TWI825289B TW I825289 B TWI825289 B TW I825289B TW 109108426 A TW109108426 A TW 109108426A TW 109108426 A TW109108426 A TW 109108426A TW I825289 B TWI825289 B TW I825289B
- Authority
- TW
- Taiwan
- Prior art keywords
- abstraction layer
- light source
- camera
- trigger
- abstract
- Prior art date
Links
- 238000007689 inspection Methods 0.000 title claims abstract description 25
- 230000003287 optical effect Effects 0.000 title claims abstract description 21
- 238000001514 detection method Methods 0.000 claims abstract description 48
- 238000013519 translation Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims description 2
- 230000001960 triggered effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 18
- 238000000034 method Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 238000003384 imaging method Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Abstract
本發明是一種自動光學檢測(AOI)設備的控制系統,該控制系統包含一控電腦,該控制電腦用於控制一或多個檢測站,每個檢測站可配置有實體光源控制器、實體相機及實體觸發器,其中,在該控制電腦中係透過一主程式、一光源抽象層、一相機抽象層及一觸發抽象層控制各檢測站的實體設備;光源抽象層、觸發抽象層及相機抽象層依據使用者的設定而產生對應的抽象式物件(抽象光源控制器、抽象相機群及抽象觸發器)及具有預設的控制規則,主程式即可透過該抽象層控制各實體設備或由抽象層提供主程式所需資源。
Description
本發明關於自動光學檢測設備的控制系統,特別是指一種可因應硬體架構的變動而彈性配合變化的控制系統。
自動光學檢測(Automatic optical inspection,AOI)設備常被廣泛應用在不同領域,主要是依賴機器視覺取代人眼視覺,例如應用在高科技產業的生產線上,藉由機器視覺測量產品的外觀而檢查該產品是否存在瑕疵問題。
請參考圖13所示,傳統的自動光學檢測設備一般包含了四個硬體單元,分別是取像單元、控制電腦、機構與驅動馬達單元、以及電控單元。其中,控制電腦用於控制整個自動光學檢測設備的運作,其內部軟體負責進行影像處理、設備通訊及動作控制等;該取像單元連接控制電腦,取像單元包括了照明光源及相機(CCD),用於拍攝待檢視物的外觀;驅動馬達單元、電控單元則根據該控制電腦的指令執行相應的機械運作。
在某些情況之下,有可能在原有的AOI設備進行硬體的擴充或縮減,例如當原有的控制電腦的資料運算效能不足以應付龐大的資料量時,必需新增一台控制電腦來分工處理部分的工作。
舉例而言,參考圖14所示,假設原本的硬體架構是以單一台的控制電腦來控制第一檢測站及第二檢測站,而第一檢測站中包含一光源控制器、一觸發器及一第一相機群;第二檢測站中包含一光源控制器、一觸發器及一第二相機群,各相機群中的相機數目可彼此相異。當該控制電腦接到一硬體到位信號時,會設定相關檢測站的該光源控制器電流,並透過該觸發器對光源
與相機達成同步觸發。由第一相機群及第二相機群拍攝到的影像,傳送至控制電腦進行後續分析。
圖15是以圖14的架構作為基礎再新增一台新的控制電腦,並將一部分的相機移轉交由該新的控制電腦主導,由原控制電腦負責控制第一檢測站及接收第一相機群拍攝到的影像,新控制電腦負責控制第二檢測站及接收第二相機群拍攝到的影像。
在上述架構變動時程式設計師必需大幅度直接修改原始程式碼,以符合新的架構。可能涉及原始程式碼修改的部分包含有:
相機:針對相機硬體調整對應的程式碼,以完成影像處理程式所需的影像資料。
光源控制器:光源控制器的功能是用以控制照明光源。當由單一控制電腦擴增為兩台控制電腦時,針對不同檢測站的光源控制器,程式設計師必需修改原本光源控制器的程式碼,使每台控制電腦分別對應各自的光源控制器。
觸發介面卡:觸發介面卡的功能是啟動對應相機群中的每一台相機進行影像拍攝,每一觸發介面卡有複數個控制通道(channel),可分別連接複數台相機。因為相機群的控制權移轉到新的控制電腦,因此不同觸發介面卡分別負責控制的相機亦有變動,程式碼必須根據各控制通道的實際情況作出修改。
影像處理程式:因為原有的兩相機群已分別由不同控制電腦負責,因此在控制電腦中的影像處理程式亦需要隨著新硬體架構作出修改。
從前述範例中可以理解,當硬體設備發生變動時,程式設計人員需要從原始程式碼開始修改以符合新的架構,因此相當耗費時間而無效率。
本發明的主要目的是針對自動光學檢測設備提供更彈性靈活的控制系統,當自動光學檢測設備中的光源控制器、相機或觸發器需要變動時,可不需變動控制電腦中的原始程式碼,而可快速因應新硬體配置。
本發明「自動光學檢測設備的控制系統」用於控制自動光學檢測設備的至少一檢測站,各檢測站包含有實體光源控制器、實體相機及實體觸發器,該控制系統包含:一控制電腦,包含:一主程式,提供一使用介面供使用者輸入設定參數,該主程式中包含一全域控制模組及至少一主控制模組;一光源抽象層,依據使用者之設定參數產生至少一抽象光源控制器,該抽象光源控制器由該主控制模組所控制,該光源抽象層用以控制該實體光源控制器或建立一軟體光源;一相機抽象層,依據使用者之設定參數產生至少一抽象相機群,透過該抽象相機群由該主控制模組所控制,該相機抽象層用以控制該實體相機或建立一軟體相機;一觸發抽象層,依據使用者之設定參數產生至少一抽象觸發器,透過該抽象觸發器由該主控制模組所控制,該觸發抽象層用以控制該實體觸發器或建立一軟體觸發。
上述光源抽象層、觸發抽象層及相機抽象層依據使用者的設定而產生對應的抽象物件(抽象光源控制器、抽象相機群及抽象觸發器),並偵測實體的光源控制器、觸發器與相機等硬體是否存在,以依據實體的硬體配置來決定是否需進行軟體虛擬,也就是當偵測到有實際硬體存在時,可透過該抽象
層對實際的硬體裝置進行控制;當偵測到無實際硬體時,可透過該抽象層虛擬出該硬體的功能。
對主程式而言,只需要發出控制指令至該抽象物件,透過各抽象層達到實體控制,不需直接對實體裝置進行控制。因此,當硬體裝置變動時,可降低修改程式的負擔。
1,1A,1B:控制電腦
11,11A,11B,11C:實體光源控制器
12:實體相機
121,122,123:實體相機
13:實體觸發器
20:主程式
21,21A,21B:全域控制模組
22,22A,22B:主控制模組
30:光源抽象層
31,31A,31B:抽象光源控制器
40:相機抽象層
41,41A,41B:抽象相機群
50:觸發抽象層
51,51A,51B:抽象觸發器
圖1:本發明的系統架構圖。
圖2A:本發明利用光源抽象層將兩個4通道實體光源控制器抽象化為單一個8通道抽象光源控制器的示意圖。
圖2B:本發明利用光源抽象層將一個8通道實體光源控制器抽象化為兩個4通道抽象光源控制器的示意圖。
圖3A:本發明利用相機抽象層將不同相機群拍攝的影像資料分別作為不同檢測站之影像資料來源。
圖3B:本發明利用相機抽象層將同一相機群拍攝的影像資料作為不同檢測站之影像資料來源。
圖4A:本發明利用觸發抽象層執行硬體觸發的示意圖。
圖4B:本發明利用觸發抽象層執行軟體觸發的示意圖。
圖5:本發明在單一台控制電腦中的全域控制模組及主控制模組的架構示意圖。
圖6:本發明主控制模組的控制流程示意圖。
圖7:本發明抽象層控制實際硬體的指令轉換示意圖。
圖8:本發明抽象層接收實際硬體發出之信號示意圖。
圖9:本發明在兩台控制電腦中的全域控制模組及主控制模組的架構示意圖。
圖10A~圖10C:本發明相機群拆分流程示意圖。
圖11A~圖11D:本發明觸發器拆分流程示意圖。
圖12A~圖12D:本發明光源控制器拆分流程示意圖。
圖13:自動光學檢測(AOI)系統的組成示意圖。
圖14:AOI系統以單一台控制電腦控制兩檢測站的示意圖。
圖15:AOI系統以兩台控制電腦分別控制兩檢測站的示意圖。
本發明針對自動光學檢測(Automatic optical inspection,AOI)系統中的三大主要元件,即相機、觸發器(觸發介面卡)與光源控制器,分別建立各自的硬體抽象層(Hardware abstraction layer,HAL),即相機抽象層、觸發抽象層及光源抽象層,這些抽象層可以使AOI系統在需要變動硬體時,透過該些抽象層簡化修改作業。
前述該光源抽象層、觸發抽象層及相機抽象層可以依據使用者的設定,偵測實體的光源控制器、觸發器與相機等硬體是否存在,以依據實體的硬體配置來決定是否需進行軟體虛擬,也就是當偵測到有實際硬體存在時,可透過該抽象層對實際的硬體裝置進行控制,因為實體的光源控制器、觸發器或相機等均具有唯一的識別碼(ID,例如機器的序號S.N.、機器的IP等),所以可以根據該識別碼判斷是有無實際硬體存在,該識別碼通常是由硬體製造商提供的定址方式;當偵測到無實際硬體時,可透過該抽象層虛擬出該硬體的功能,關於各抽象層的控制及功能將在後文更進一步詳細說明。
請參考圖1所示,為本發明的系統架構圖,AOI系統中的控制電腦1可控制不同硬體,這些硬體主要包含有實體光源控制器11、實體相機12及
實體觸發器13,該實體觸發器13用於同時觸發該實體光源控制器11及實體相機12,圖中顯示的各種元件數量僅是作為舉例說明。
在控制電腦1內部安裝軟體控制系統,該軟體控制系統包含有一主程式20、一光源抽象層30、一相機抽象層40以及一觸發抽象層50,其中,該光源抽象層30、相機抽象層40以及觸發抽象層50可以是單獨獨立的程式透過標準協定溝通或者與主程式10整合在同一個執行檔。
在每一控制電腦1中均具有主程式20,該主程式20中包含了一全域控制模組21以及與檢測站對應數量的主控制模組22,例如該控制電腦1用於控制兩檢測站,則該主程式20即具有二個主控制模組22。該主程式10提供一視覺化的使用介面供使用者進行設定以及顯示系統目前的狀態,使用者可透過該使用介面設定各檢測站所需要的相機群及各相機群中包含的相機數量、觸發器與光源控制器等配置。
該光源抽象層30根據使用者從該使用介面輸入的設定參數(即光源抽象層30的設定表),可建立出抽象光源控制器31,該光源抽象層30與主控制模組22之間透過預先定義的通訊協定(protocol)互相傳輸指令。該光源抽象層30會判斷有無存在實體光源控制器13、實體光源控制器13的數量等,判斷應直接對實體光源控制器13進行控制,或是虛擬出軟體光源。其中,若是有存在實體光源控制器13進行控制,如圖2A所示的範例,該光源抽象層30可將兩個4通道的實體光源控制器13抽象化為單一個8通道的抽象光源控制器31,即一對多的抽象化,其中,每一個4通道的實體光源控制器13可被觸發而輸出驅動電流以啟動連接在各通道的實體照明光源(如LED光源)。如圖2B所示的範例,該光源抽象層30也可將兩個4通道的實體光源控制器13抽象化為單一個8通道的抽象光源控制器31,即多對一的抽象化。若光源抽象層30判斷無真正的實體光源控制
器13,則光源抽象層30會虛擬出一軟體光源,惟此軟體光源基本上無任何作用。
再以另一範例說明,如果使用者需要建構一個“12通道的光源控制器31”,該光源抽象層30可以透過以下任何一種方式建構出來,但無論是透過何種方式建構出來,對主控制模組22而言都是視為12通道的光源控制器:
(1)選用一個12通道的實體光源控制器:可藉由選擇該12通道的實體光源控制器的識別碼而選用。
(2)4通道+8通道:組合一個4通道的實體光源控制器及一個8通道的實體光源控制器,可藉由選擇該4通道的實體光源控制器的識別碼以及該8通道的實體光源控制器的識別碼而組合出來。
(3)4通道+4通道+4通道:組合三個4通道的實體光源控制器,即藉由選擇三個4通道的實體光源控制器的識別碼而組合出來。
該相機抽象層40根據使用者在該使用介面輸入的設定,可建立出抽象相機群41A、41B的數量,以及指定各抽象相機群41A、41B應包含的相機,在指定相機時,因為每台相機均具有供應商名及硬體序號,故可以利用供應商名及硬體序號作為每台相機的識別資訊。該相機抽象層40會判斷有無存在實體相機12以及其數量,根據判斷結果決定應直接對實體相機12進行控制或是虛擬出軟體相機。同理,相機與主控制模組22之間也是透過預先定義的通訊協定(protocol)互相通訊及傳輸指令。如圖1及圖3A所示的範例,使用者欲建立兩個抽象相機群41A、41B,其中一抽象相機群41A指定包含有兩台相機,另一抽象相機群41B指定具有一台相機。該相機抽象層40若是偵測到有對應該抽象相機群41A所指定的兩台實體相機12,將會從兩台實體相機12實際拍攝時產生的影像資料提供給主程式10,反之,當該相機抽象層40沒有偵測到對應該抽象相機群41A指定的兩台實體相機12,則會虛擬出兩台軟體相機,也就是從一資料
庫(如硬碟)讀取影像資料並提供給主程式10;同理,該相機抽象層40也會判斷另一抽象相機群41B中的相機是否有對應的實體相機12,若無,則會虛擬出一軟體相機。
在圖3A中,該相機抽象層40可以將不同抽象相機群41A、41B的影像資料作為不同檢測站的影像資料,也就是說第一檢測站的影像資料會從抽象相機群41A獲得,第二檢測站的影像資料會從抽象相機群41B獲得。在其它實施例中,如圖3B所示,該相機抽象層40可以將單一抽象相機群41的影像資料作為多個檢測站的影像資料,也就是不同檢測站可以利用同一抽象相機群41的影像資料。
相機拍攝後所產生的影像資料,根據影像的產生方式,影像資料可以區分為同步影像及非同步影像。同步影像的定義是指在同一時序,由不同的相機拍攝後得到的影像資料。非同步影像的定義是指在不同時序,由同一相機群所產生的影像組。如下表所示,
以上方表格中的(1,2)為例,代表一台相機進兩次取像,可得到2張影像。以(2,2)為例,代表兩台相機進行兩次取像,可得到4張影像。
觸發抽象層50根據使用者從該使用介面輸入的設定參數,可建立出抽象觸發器51。該觸發抽象層50判斷有無存在實體觸發器13而決定控制實
體觸發器13或是虛擬出一軟體觸發器。請參考圖4A,以控制2通道的實體觸發器13為例,當觸發抽象層50接收到一到位信號後,可以控制該實體觸發器13的兩個通道同步發出觸發信號以控制相機或光源。請參考圖4B所示,該觸發抽象層50亦可以在接收到位信號後,直接送出觸發信號以直接控制相機或光源,即以軟體觸發器的形式完成觸發。
請參考圖5,控制電腦1中的全域控制模組21用以指定每個主控制模組22A、22B應負責的檢測站,且每一個主控制模組22A、22B分別控制對應檢測站的一抽象光源控制器31A、31B、一抽象相機群41A、41B及一抽象觸發器51A、51B。例如控制電腦1分派主控制模組22A負責第一檢測站,另一主控制模組22B負責第二檢測站之後,該主控制模組22A控制對應第一檢測站的抽象光源控制器31A、抽象相機群41A及抽象觸發器51A;另一主控制模組22B控制對應第二檢測站的抽象光源控制器31B、抽象相機群41B及抽象觸發器51B。對於每一個主控制模組22A、22B而言,所控制的並不是真正的實體裝置,而是抽象物件。實體裝置是由對應的抽象層控制。但對同一控制電腦1來講,即使是不同檢測站的抽象光源控制器31A、31B,仍然是共用相同的光源抽象層30,而相機抽象層40、觸發抽象層50也是如此。
請參考圖6,為單一主控制模組22之控制流程示意圖,大致流程為:當主控制模組22接收到一到位信號後(S1),該主控制模組22根據檢測流程設定所要控制的光源和觸發情境(S2),並等待觸發(S3),當相機接收觸發後便進行拍攝產生影像,主控制模組(22)最後接收影像資料(S4)。該主控制模組22內部之影像檢測程序針對接收到的影像檢測流程進行分析。
該主控制模組22內部預先建立出針對不同抽象層的通用指令,通用指令是指由主控制模組22發出給各抽象物件的指令,例如針對光源抽象層30預先建立關於光源控制的通用指令,針對相機抽象層40預先建立關於相機控
制的通用指令,針對觸發抽象層50亦是建立相關的通用指令,用以控制與之相對應的抽象物件。本發明會在各抽象層中預先建立好不同的轉譯規則,當各抽象層接收到通用指令後,會將每個通用指令轉譯成實際硬體指令,輸出該實際硬體指令來控制實體裝置,即實體光源控制器11、實體相機12或實體觸發器13。該實際硬體指令通常為硬體設備製造商提供的API(Application programming interface)指令,因此轉譯規則會根據不同硬體設備製造商的規格而制訂。即使是針對相同的通用指令,不同廠商的實際硬體裝置會有分別對應的實際硬體指令。例如主控制模組22發出的通用指令是「相機在A位置取像」,若相機抽象層40比對出實際硬體裝置的規格、型號、廠商製造者為甲廠商,該相機抽象層40會將該通用指令轉譯為符合甲廠商規格的實際硬體指令;若相機抽象層40比對出實際硬體裝置是由乙廠商提供,該相機抽象層40會將該通用指令轉譯為符合乙廠商規格的實際硬體指令。
因此,通用指令是廣泛適用在不同硬體設備製造商,主控制模組22只需要負責發出預先建立的高階命令。用以控制實際硬體裝置的低階命令是由該抽象層負責建立。程式設計者只需要預先設定常用的通用指令以及如何適配不同硬體設備製造商的轉譯規則,各個抽象層即可以對實際硬體裝置實現控制。
請參考圖7,進一步說明由主控制模組22如何透過各抽象層實現對實體裝置的控制。以光源抽象層30為例,假設主控制模組22發出的通用指令是控制一個12通道的光源(即抽象光源控制器為12通道),該光源抽象層30接獲通用指令後,即根據光源抽象層30本身的設定表決定是否拆分指令。
以圖7上方的狀況為例,若該12通道的抽象光源控制器是根據設定表而藉由組合一個8通道的光源控制器及一個4通道的光源控制器而構成的,當該光源抽象層30接收到來自主控制模組22的通用指令時,該光源抽象層30便
會將該通用指令拆分給兩個軟體子控制器,再分別轉譯出兩組實際硬體指令來分別控制8通道的實體光源控制器及4通道的實體光源控制器。
再以圖7下方的狀況為例,若該12通道的抽象光源控制器是根據設定表,利用一個12通道的實體光源控制器實現,當該光源抽象層30接收到來自主控制模組22的通用指令時,該光源抽象層30便會將該通用指令轉譯出實際硬體指令,以控制該12通道的實體光源控制器。
請參考圖8,由實體裝置向主控制模組22發出回覆的情況只發生於實體相機,因此以該相機抽象層40舉例說明。實體相機在完成取像會輸出一完成信號,對抽象相機群41A而言,因為先前已是設定成對應二個同步的實體相機12A、12B,該抽象相機群41A將會判斷該二個同步的實體相機12A、12B是否均完成拍攝取像,若均完成取像,該抽象相機群41A才會回呼(callback)該主控制模組22,通知該主控制模組已完成取像作業。對另一抽象相機群41B而言,因為是設定成對應一個實體相機12,該抽象相機群41B將會判斷該實體相機12是否完成取像,若完成取像,該抽象相機群41B才會回應該主控制模組22。
再請參考圖9所示,以兩台控制電腦1A、1B為例,每一台控制電腦1A、1B中具有一全域控制模組21A、21B。控制電腦1A設定主控制模組22A負責第一檢測站,該主控制模組22A控制對應第一檢測站的抽象光源控制器31A、抽象相機群41A及抽象觸發器51A。另一控制電腦1B設定主控制模組22B負責第二檢測站,控制對應第二檢測站的抽象光源控制器31B、抽象相機群41B及抽象觸發器51B。
以下進一步說明當AOI系統的硬體配置變動時,本發明根據硬體變動而對應設定的流程:
首先說明相機群的拆分過程,請參考圖10A,假設在一控制電腦1A中原本存在有兩主控制模組22A、22B分別對應兩個檢測站,其中主控制模組22A控制一抽象相機群41A,該抽象相機群41A對應到兩台實體相機121、122。另一主控制模組22B控制另一抽象相機群41B,該抽象相機群41B對應到一台實體相機123。當新增另一控制電腦1B時,使用者將原本連接在控制電腦1A的實體相機123,改為連接到新增的控制電腦1B,完成硬體線路的變動,再於原控制電腦1A的主程式20使用介面,移除抽象相機群41B,並在新的控制電腦1B中透過主程式的使用介面,新增一抽象相機群41B,並且指定該抽象相機群41B的構成成員為該實體相機123。請參考圖10B、10C,原控制電腦1A中主控制模組22B搬移到新的控制電腦1B中,再由該控制電腦1B中的全域控制模組21B設定該主控制模組22B負責控制該抽象相機群41B,如此即完成相機群的拆分過程,將該抽象相機群41B移轉至由新增的控制電腦1B主導。
關於觸發器的拆分流程,請參考圖11A,同樣是在一控制電腦1A中存在有兩個主控制模組22A、22B分別對應兩個檢測站,其中主控制模組22A控制一抽象觸發器51A,此抽象觸發器51A用於控制實體觸發器13A上的第一、第二通道,該第一、第二通道可分別連接一光源或一相機;另一主控制模組22B控制另一抽象觸發器51B,此抽象觸發器51B用於控制實體觸發器13A上的第三通道。參考圖11B,當新增另一控制電腦1B後,將在該控制電腦1B安裝一實體觸發器13B,並將原本第三通道控制的設備(如相機或照明光源)改為連接到在該實體觸發器13B,完成硬體方面的變動。參考圖11C,利用原控制電腦1A的主程式20使用介面移除抽象觸發器51B,原控制電腦1A中主控制模組22B搬移到新的控制電腦1B中,並在新的控制電腦1B中透過主程式的使用介面,新增一抽象觸發器51B。參考圖11D,再由該控制電腦1B中的全域控制模組21B設
定該主控制模組22B負責控制該抽象觸發器51B,如此即完成觸發器的拆分過程,將該抽象觸發器51B移轉至由新增的控制電腦1B主導。
關於光源控制器的拆分流程,請參考圖12A,在一控制電腦1A中存在有兩個主控制模組22A、22B分別對應兩個檢測站,其中主控制模組22A控制一個12通道的抽象光源控制器31A,此抽象光源控制器31A用於控制兩個實體光源控制器11A、11B,另一主控制模組22B控制一個8通道的抽象光源控制器31B,該抽象光源控制器31B用於控制一個實體光源控制器11C。在圖12B中,當新增另一控制電腦1B後,將原本的實體光源控制器11C改為連接到該控制電腦1B,完成硬體方面的變動。參考圖12C,利用原控制電腦1A的主程式20使用介面移除抽象光源控制器31B,並在新的控制電腦1B中透過主程式的使用介面,使用者根據情境設定出所需的光源而新增一抽象光源控制器31B。參考圖12D,原控制電腦1A中的主控制模組22B搬移到新的控制電腦1B中,再由該控制電腦1B中的全域控制模組21B設定該主控制模組22B負責控制該抽象光源控制器31B,如此即完成光源控制器的拆分過程,將該光源抽控制器31B移轉至由新增的控制電腦1B主導。
依據前述關於光源控制器、相機群、觸發控制器的拆分過程中可以看出,本發明因為預先建構出可以在不同控制電腦通用的光源抽象層30、相機抽象層40及觸發抽象層50,因此大幅降低了程式設計師直接編修原始程式碼的需求。上述範例雖然是以新增控制電腦為例,但是本發明亦可將原本利用多台控制電腦分別控制不同檢測站的架構,整合為利用單一台控制電腦控制多個檢測站,使用者只需要根據實際的硬體環境進行設定,控制電腦可透過光源抽象層30、相機抽象層40及觸發抽象層50去控制實際硬體,使得整體系統在設計與維護上更具彈性。
1:控制電腦
11:實體光源控制器
12:實體相機
13:實體觸發器
20:主程式
21:全域控制模組
22:主控制模組
30:光源抽象層
31:抽象光源控制器
40:相機抽象層
41A,41B:抽象相機群
50:觸發抽象層
51:抽象觸發器
Claims (8)
- 一種自動光學檢測設備的控制系統,用於控制自動光學檢測設備的至少一檢測站,各檢測站包含的實際硬體配置包含有實體光源控制器、實體相機及實體觸發器,該控制系統包含:一控制電腦,包含:一主程式,提供一使用介面供使用者輸入設定參數,該主程式中包含一全域控制模組及複數主控制模組,該全域控制模組用以指派由各該主控制模組控制之一對應檢測站;一光源抽象層,依據使用者之設定參數產生至少一抽象光源控制器,該抽象光源控制器由該等主控制模組所控制,該光源抽象層用以控制該實體光源控制器或建立一軟體光源;一相機抽象層,依據使用者之設定參數產生至少一抽象相機群,透過該抽象相機群由該等主控制模組所控制,該相機抽象層用以控制該實體相機或建立一軟體相機,當該相機抽象層判斷該檢測站不存在該實體相機群,該相機抽象層係由一資料庫中取出影像資料以作為軟體相機;一觸發抽象層,依據使用者之設定參數產生至少一抽象觸發器,透過該抽象觸發器由該等主控制模組所控制,該觸發抽象層用以控制該實體觸發器或建立一軟體觸發器;其中,各該主控制模組共用該光源抽象層、該相機抽象層及該觸發抽象層,負責控制對應的檢測站。
- 如請求項1所述自動光學檢測設備的控制系統,各該主控制模組負責處理對應檢測站所產生出的影像資料。
- 如請求項2所述自動光學檢測設備的控制系統,該光源抽象層係控制該抽象光源控制器及實體光源控制器之間的資料轉換。
- 如請求項2所述自動光學檢測備的控制系統,該軟體觸發器為利用該觸發抽象層產生的一觸發信號。
- 如請求項2所述自動光學檢測備的控制系統,該實體觸發器為具有複數個觸發通道的觸發介面卡。
- 如請求項1至5項中任一項所述自動光學檢測設備的控制系統,各該主控制模組中預設有分別對應該光源抽象層、該相機抽象層及該觸發抽象層的不同通用指令;該光源抽象層、該相機抽象層及該觸發抽象層各自預設有將通用指令轉譯為實際硬體指令的轉譯規則。
- 如請求項6所述自動光學檢測設備的控制系統,該光源抽象層、該相機抽象層及該觸發抽象層轉譯出的實際硬體指令,是用以分別控制該實體光源控制器、該實體相機及該實體觸發器;該光源抽象層、該相機抽象層及該觸發抽象層於接收各該主控制模組發出的通用指令後,係比對該檢測站的實際硬體配置,根據比對結果以對應的轉譯規則建立該實際硬體指令。
- 如請求項7所述自動光學檢測設備的控制系統,該光源抽象層、該相機抽象層及該觸發抽象層在比對該檢測站的實際硬體配置,係比對硬體的規格、型號、廠商製造者。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109108426A TWI825289B (zh) | 2020-03-13 | 2020-03-13 | 自動光學檢測設備的控制系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109108426A TWI825289B (zh) | 2020-03-13 | 2020-03-13 | 自動光學檢測設備的控制系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202134948A TW202134948A (zh) | 2021-09-16 |
TWI825289B true TWI825289B (zh) | 2023-12-11 |
Family
ID=78777345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109108426A TWI825289B (zh) | 2020-03-13 | 2020-03-13 | 自動光學檢測設備的控制系統 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI825289B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200928857A (en) * | 2007-12-21 | 2009-07-01 | Weistech Technology Co Ltd | Portable electronic device for controlling controlled devices |
TW201919000A (zh) * | 2017-10-31 | 2019-05-16 | 大陸商武漢精測電子集團股份有限公司 | 基於cpu、gpu及fpga架構的自動光學檢測系統 |
-
2020
- 2020-03-13 TW TW109108426A patent/TWI825289B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200928857A (en) * | 2007-12-21 | 2009-07-01 | Weistech Technology Co Ltd | Portable electronic device for controlling controlled devices |
TW201919000A (zh) * | 2017-10-31 | 2019-05-16 | 大陸商武漢精測電子集團股份有限公司 | 基於cpu、gpu及fpga架構的自動光學檢測系統 |
Also Published As
Publication number | Publication date |
---|---|
TW202134948A (zh) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10025291B2 (en) | Simulator, simulation method, and simulation program | |
JP6867555B2 (ja) | Cpu+gpu+fpgaアーキテクチャに基づく自動光学検査システム | |
TWI693564B (zh) | 機台自動化管理系統及其方法 | |
JP2015204615A (ja) | 機器と移動デバイスとの間でインタラクトする方法及びシステム | |
CN109407544B (zh) | 非侵入式数据提取系统的仿真机台操作画面的系统模块 | |
CN113566864A (zh) | 一种基于5g和边缘计算的分布式机器视觉系统 | |
EP3444080A1 (en) | Actuator control system, actuator control method, information-processing program, and recording medium | |
CN105807730B (zh) | 一种数字装备工业控制方法、装置及系统 | |
TWI825289B (zh) | 自動光學檢測設備的控制系統 | |
CN113495162A (zh) | 自动光学检测设备的控制系统 | |
JP2021534506A (ja) | プログラマブルロジックコントローラベースの人工知能用モジュール式アクセラレーションモジュール | |
JP6915288B2 (ja) | 画像処理システム、画像処理装置、FPGA(Field Programmable Gate Array)における回路の再構成方法、および、FPGAにおける回路の再構成プログラム | |
US20170050319A1 (en) | Programmable Machine Vision Device | |
JP7024679B2 (ja) | 開発支援プログラム、開発支援装置、および開発支援方法 | |
CN113031461A (zh) | 超精密运动台半实物仿真系统及方法 | |
CN112040131B (zh) | 基于EtherCAT工业以太网总线的智能相机及其控制方法 | |
US20230297109A1 (en) | Method for Remote Assistance and Device | |
JP2012160134A (ja) | プラント制御システムの模擬装置及び模擬画面の作成方法 | |
TWI543626B (zh) | 行動裝置遠端影像監控系統及其方法 | |
CN115033503B (zh) | 一种基于增强现实的设备控制方法 | |
US11474496B2 (en) | System and method for creating a human-machine interface | |
JP7067869B2 (ja) | 画像処理システム、情報処理装置、情報処理方法、および情報処理プログラム | |
GB2570193A (en) | Test system and robot arrangement for carrying out a test | |
CN110750069B (zh) | 一种aoi系统的多设备控制装置 | |
CN116430795B (zh) | 基于plc的可视化工业控制器及方法 |