基于CAN總線的自動光學檢測通信系統(tǒng)設計
在現(xiàn)代工業(yè)自動化生產(chǎn)中,涉及到各種各樣的檢驗、生產(chǎn)監(jiān)控及零件測量、識別應用等環(huán)節(jié),然而通常人眼很難連續(xù)、穩(wěn)定地完成這些帶有高度重復性和智能性的工作,一般物理量傳感器也較難實現(xiàn)這些功能。而利用光電成像系統(tǒng)采集被檢測目標的圖像,并經(jīng)計算機或?qū)S玫膱D像處理模塊進行數(shù)字化處理。與一般圖像處理系統(tǒng)相比,自動光學檢測更強調(diào)精度、速度,以及工業(yè)現(xiàn)場環(huán)境下的可靠性。因此,這里提出一種基于CAN總線的自動光學檢測通信系統(tǒng)設計方案,該系統(tǒng)設計能夠滿足PCB自動光學檢測控制系統(tǒng)的指標要求。
1 自動光學檢測通信系統(tǒng)分析
自動光學檢測系統(tǒng)具有快速準確、可重復性強以及自動化程度高等特點。自動光學檢測技術(shù)的出現(xiàn)極大地減輕了人工檢測的壓力,解決了傳統(tǒng)人工檢測中的許多問題,提高了產(chǎn)品的檢測質(zhì)量和速度,為工業(yè)領域自動檢測提供了革命性的解決方案。
分布式的現(xiàn)場總線能同時滿足過程控制和制造業(yè)自動化的需要,成為了該自動光學檢測系統(tǒng)的最佳選擇。分布式的現(xiàn)場總線控制系統(tǒng)比集散型控制系統(tǒng)更好地體現(xiàn)了 “信息集中、控制分散”的特點。且分布式控制系統(tǒng)在適用范圍、可擴展性、控制速度、系統(tǒng)模塊化、可維護性、抗單點故障等方面具有明顯優(yōu)勢。
控制器局域網(wǎng)(CAN)總線是一種在工業(yè)控制中應用的總線,帶寬利用率高,糾錯能力強,并且廢除了傳統(tǒng)的站地址編碼,采用對通信數(shù)據(jù)塊進行編碼,可以多主方式工作;運用非破壞性仲裁技術(shù),有效避免了總線沖突;短幀結(jié)構(gòu),數(shù)據(jù)傳輸時間短,受干擾的概率低,重新發(fā)送的時間短;每幀數(shù)據(jù)都有CRC校驗及其他檢錯措施,保證了數(shù)據(jù)傳輸?shù)母呖煽啃?,適用于高干擾環(huán)境下;節(jié)點在錯誤嚴重的情況下,具有自動
關閉總線功能,使總線上其他操作不受影響;可以點對點,一對多及廣播集中方式傳送和接收數(shù)據(jù)。因此,CAN總線滿足該控制系統(tǒng)的數(shù)據(jù)總線要求。
本設計采用英飛凌開發(fā)的16位微控制器系列中的XCl64CS為控制器,并成功地將其應用到PCB板面缺陷自動光學檢測儀的控制系統(tǒng)。
2 通信系統(tǒng)總體設計方案
2.1 系統(tǒng)組成原理
自動光學檢測系統(tǒng)由上板部分、掃描正面、掃描反面、分揀1、分揀2以及主機共6部分組成,整個系統(tǒng)使用的電機有5類共19個、氣缸11個以及各類傳感裝置若干。整個系統(tǒng)架構(gòu)如圖1所示。
由于整個控制系統(tǒng)對實時性、穩(wěn)定性以及協(xié)調(diào)性要求很高,整個控制模式分為制作標準板模式、單步運行模式以及檢測模式,對于模式間轉(zhuǎn)換的靈活性要求也很高。而分布式控制系統(tǒng)因其具有高可靠性、開放性、靈活性、協(xié)調(diào)性、控制功能齊全和易于維護等特點,完全滿足本控制系統(tǒng)的要求。
分布式控制系統(tǒng)使用較多的網(wǎng)絡拓撲結(jié)構(gòu)有星型、環(huán)型和總線型3種。其中星型結(jié)構(gòu)(中央控制型)中所有通信都經(jīng)中央控制節(jié)點,若中央控制節(jié)點有故障,則整個系統(tǒng)就會癱瘓;環(huán)型結(jié)構(gòu)中相鄰控制節(jié)點順序連接,形成環(huán)路,信息一般僅以一個方向在環(huán)上從源節(jié)點傳送到目的節(jié)點,發(fā)生故障時可支持雙向傳輸,但環(huán)路一般封閉,不利于節(jié)點的擴充;而總線型結(jié)構(gòu)的所有節(jié)點都共享一個公共的物理通道(即總線),因此網(wǎng)絡上的任意一個節(jié)點均可在任意時刻主動向網(wǎng)絡上的其他節(jié)點發(fā)送信息,且具有延遲小、速度快、易擴展、單個節(jié)點故障影響小的優(yōu)點。因此,該控制系統(tǒng)采用總線型拓撲結(jié)構(gòu),如圖2所示。
2.2 CAN總線硬件電路設計
為了保證控制系統(tǒng)的技術(shù)指標,完成實時數(shù)據(jù)處理和電路保護功能,并考慮到系統(tǒng)的擴展性,采用16位微控制器系列中的XCl64CS。該芯片尺寸小、運算速度高,并集成有TwinCAN模塊,該模塊用于控制幀的自動發(fā)送和接收。該模塊有2個全功能的CAN節(jié)點共享模塊的資源,提供32個報文對象,它們可獨立分配給2個CAN節(jié)點中的任意一個,還可以組合構(gòu)成FIFO結(jié)構(gòu)。每個報文對象分別對應有利于濾波的驗收屏蔽寄存器。
全CAN功能和FIFO結(jié)構(gòu)的靈活組合可滿足復雜嵌入式控制應用的實時要求。CAN總線監(jiān)控功能的增強以及報文對象個數(shù)的增加使得CAN的總線通信處理更加精確和方便。網(wǎng)關功能允許在2個獨立的CAN總線系統(tǒng)之間進行自動數(shù)據(jù)交換,減輕了CPU負載,提高了整個系統(tǒng)的實時性。2個CAN節(jié)點的位定時都從主時鐘得到,可通過編程使數(shù)據(jù)速率達到1 Mb/s,
CAN總線收發(fā)器采用英飛凌公司的TLE6250G,支持傳送速率高達1 Mb/s,具有抗瞬變、抗射頻和抗電磁干擾的特性,并具有寬泛的工作范圍(-40~150℃),以及短路保護和過溫保護功能。具體的CAN總線節(jié)點原理圖設計如圖3所示。
另外,總線連接時兩端各加一只120 Ω的電阻,它們對于匹配總線阻抗起著相當重要的作用,可減少信號反射干擾。
2.3 CAN總線節(jié)點軟件設計
CAN總線節(jié)點軟件設計與整個系統(tǒng)的實時性和可靠性密切聯(lián)系。本系統(tǒng)中各部分間的數(shù)據(jù)交換比較頻繁,CAN總線上傳輸?shù)臄?shù)據(jù)幀包括有:1)主機發(fā)送的控制指令幀,主機控制著整個系統(tǒng)的工作模式,通過PCB板為好板或壞板的信號來控制分揀1和分揀2的運作;2)各控制部分傳給主機的狀態(tài)信息,將正在上板中、正在出板中或者系統(tǒng)故障等消息傳給主機,方便操作人員實時了角整個系統(tǒng)信息;3)各控制部分之間的信息交換,如上板部分檢測到一批PCB板檢測完成,通知分揀部分出板的信號,任何部分檢測到故障通知報警信號等。
根據(jù)系統(tǒng)的實際情況未編寫相應的軟件程序。這里使用的XCl64CS單片機的CAN控制器遵循CAN V2.0B規(guī)范。報文緩存單元最多保存32個報文對象,每個對象的最大數(shù)據(jù)長度為8字節(jié)。每個報文對象有一個標識符和自己的控制和狀態(tài)位集。通過控制相應寄存器來存放通信時發(fā)出或者接收到的數(shù)據(jù)以及報文寄存器組的設置。對報文寄存器進行初始化之后,報文緩存單元無需CPU監(jiān)控就能夠處理數(shù)據(jù)的接收和發(fā)送,簡化了軟件代碼的編寫。而CPU通過訪問CAN控制器狀態(tài)寄存器或者由CAN控制器以中斷的方式通知CPU,即可得到當前通信狀態(tài),從而節(jié)省了CPU的占用時間。
2.3.1 CAN控制器的初始化
要實現(xiàn)CAN通信,首先要對CAN控制器進行正確初始化設置。初始化主要完成下面的工作:節(jié)點控制寄存器ACP/BCR的設定;CCE和 INIT置位;錯誤計數(shù)器最大值的設定;節(jié)點輸出管腳的設定;節(jié)點傳輸速率的設定;給節(jié)點配置發(fā)送、接收消息體。對于XCl64CS,CAN控制器的初始化可以使用DAVE進行配置,來自動生成代碼,也可以用戶自行編寫。初始化流程如圖4所示。
以下為相應的程序代碼:
2.3.2 CAN控制器的發(fā)送和接收程序
CAN模塊初始化成功后,就可以用其來傳送報文。節(jié)點向總線上發(fā)送報文的過程是:將待發(fā)送的數(shù)據(jù)打包成符合CAN協(xié)議的幀格式,寫入發(fā)送緩沖區(qū),并自動發(fā)送。數(shù)據(jù)幀一幀最多只能傳輸8個字節(jié),大于8個字節(jié)的按照每8個字節(jié)為一幀傳送,剩下不足8個字節(jié)的補成8個字節(jié)。可以在程序中直接調(diào)用 CAN_vTransmit函數(shù)即可實現(xiàn)發(fā)送數(shù)據(jù),該函數(shù)定義如下:
接收數(shù)據(jù)有查詢方式或中斷方式。這里采用中斷方式,要實現(xiàn)的功能是:進入中斷接收程序,判斷中斷是否是接受中斷;若是將數(shù)據(jù)讀出緩存器并進行判斷,再進入相應的命令和數(shù)據(jù)處理函數(shù)??刂破鹘邮蘸桶l(fā)送流程如圖5所示。
3 結(jié)束語
該自動光學檢測通信系統(tǒng)已經(jīng)實現(xiàn)且通過了聯(lián)調(diào),數(shù)據(jù)傳送穩(wěn)定,并已應用于PCB板面缺陷自動光學檢測儀的控制系統(tǒng)。該自動光學檢測通信系統(tǒng)滿足可靠性和靈活性的高要求,實現(xiàn)控制系統(tǒng)各單元相對獨立,各單元之間的連線簡潔,使系統(tǒng)操作簡單,使用可靠,取得了良好的使用效果。
評論