本發(fā)明涉及數(shù)據(jù)采集技術領域,尤其涉及一種基于光柵的數(shù)據(jù)采集系統(tǒng)。
背景技術:
在高精度伺服系統(tǒng)中,光柵傳感器常用于采集待測目標的位置信息。按運動形式分,光柵傳感器可分為直線型和旋轉型。其中,直線型光柵傳感器主要由光柵尺和讀數(shù)頭構成,旋轉型光柵傳感器主要由碼盤和讀數(shù)頭構成。在實際使用光柵傳感器時,用戶只需按照固定的時鐘頻率向讀數(shù)頭發(fā)送脈沖信號,讀數(shù)頭就會將封裝好的數(shù)據(jù)返回給用戶。但是,如果用戶想要得到待測目標的角度信息,則還需要對讀數(shù)頭的數(shù)據(jù)進行采集。
在現(xiàn)有技術中,運動控制器可以針對光柵進行數(shù)據(jù)采集、并進行高精度的伺服控制。但是,運動控制器價格昂貴,即使便宜的也高達幾萬元。并且在很多情況下,用戶并不需要進行伺服控制,而只需要獲取角度信息,那么將運動控制器作為信息采集的中轉站就會造成極大的浪費。此外,雖然在現(xiàn)有技術中也存在專用于角度信息采集的數(shù)據(jù)采集卡,但是其通用性較差、結構復雜、成本較高。
針對現(xiàn)有技術的缺陷,亟需一種通用性強、結構簡單、成本低,能適用于多種絕對式光柵和增量式光柵的數(shù)據(jù)采集系統(tǒng)。
技術實現(xiàn)要素:
本發(fā)明的目的在于提出一種通用性強、結構簡單、成本低,能適用于多種絕對式光柵和增量式光柵的數(shù)據(jù)采集系統(tǒng)。
本發(fā)明提出的基于光柵的數(shù)據(jù)采集系統(tǒng),包括:第一信號轉換模塊、FPGA模塊、總線模塊、第二信號轉換模塊;
第一信號轉換模塊用于將FPGA模塊發(fā)送的單端時鐘信號轉換為雙端時鐘信號,并將所述雙端時鐘信號發(fā)送至編碼器;
第二信號轉換模塊用于將所述編碼器發(fā)送的差分數(shù)據(jù)信號轉換為單端數(shù)據(jù)信號,并將所述單端數(shù)據(jù)信號發(fā)送至FPGA模塊;
FPGA模塊用于對接收的單端數(shù)據(jù)信號進行解碼、CRC校驗,并將校驗成功的數(shù)據(jù)信號經總線模塊傳送至上位機;
其中,F(xiàn)PGA模塊、總線模塊還用于為數(shù)據(jù)采集系統(tǒng)供電。
優(yōu)選的,F(xiàn)PGA模塊還用于將接收的單端數(shù)據(jù)信號發(fā)送至第一信號轉換模塊,然后,第一信號轉換模塊將所述單端數(shù)據(jù)信號轉換為差分數(shù)據(jù)信號、并將所述差分數(shù)據(jù)信號輸出至外部設備。
優(yōu)選的,所述系統(tǒng)還包括:IO輸入輸出模塊、DA轉換模塊;所述IO輸入輸出模塊包括:IO輸入接口、IO輸出接口、以及用于隔離IO輸入接口與IO輸出接口的光耦;所述DA轉換模塊包括:DA轉換芯片、電壓調節(jié)電路;所述電壓調節(jié)電路與DA轉換芯片相連,用于對DA轉換芯片輸出的模擬信號的電壓幅值進行調節(jié)。
優(yōu)選的,所述FPGA模塊采用最小FPGA系統(tǒng),包括:編碼器信號選擇單元、編碼器數(shù)據(jù)讀取單元、自測試單元、系統(tǒng)監(jiān)控模塊、地址譯碼單元;其中,所述編碼器信號選擇單元與總線模塊、編碼器數(shù)據(jù)讀取單元分別相連,所述編碼器數(shù)據(jù)讀取單元與總線模塊、第一信號轉換模塊分別相連;所述地址譯碼單元與總線模塊、編碼器信號選擇單元、編碼器數(shù)據(jù)讀取單元、自測試單元、系統(tǒng)監(jiān)控單元分別相連;
所述編碼器信號選擇單元用于對待采集的編碼器數(shù)據(jù)信號進行選取,并將選取的編碼器數(shù)據(jù)信號發(fā)送至編碼器數(shù)據(jù)讀取單元;其中,所述編碼器數(shù)據(jù)信號包括外部編碼器數(shù)據(jù)信號、內部模擬編碼器數(shù)據(jù)信號;
所述編碼器數(shù)據(jù)讀取單元用于通過第一信號轉換模塊將時鐘信號發(fā)送至相應的編碼器;以及,所述編碼器數(shù)據(jù)讀取單元還用于對采集的數(shù)據(jù)信號進行解碼、校驗,并將校驗成功的數(shù)據(jù)信號經總線模塊傳送至上位機;
所述自測試單元用于通過總線模塊接收上位機的配置信息,以產生內部模擬編碼器數(shù)據(jù)信號;
所述系統(tǒng)監(jiān)控單元用于對FPGA模塊的狀態(tài)進行監(jiān)控,并在FPGA模塊的狀態(tài)異常時令FPGA模塊復位。
優(yōu)選的,所述FPGA模塊還包括:讀寫測試單元、通用IO單元;所述讀寫測試單元與總線模塊、地址譯碼單元分別相連,所述通用IO單元與總線模塊、地址譯碼單元分別相連;所述讀寫測試單元用于測試上位機與FPGA模塊的通信狀態(tài);所述通用IO單元用于接收上位機的控制指令、并將所述控制指令發(fā)送至外部設備,以及,接收外部設備的狀態(tài)反饋信息,并將所述狀態(tài)反饋信息發(fā)送至上位機。
優(yōu)選的,所述FPGA模塊、總線模塊為數(shù)據(jù)采集系統(tǒng)供電,具體為:所述FPGA模塊提供5V和3.3V的供電信號,所述總線模塊提供12V的供電信號。
優(yōu)選的,第一信號轉換模塊為DS26LS31芯片,第二信號轉換模塊為DS26LS32芯片,所述總線模塊為ISA數(shù)據(jù)總線,所述光耦為4N25光耦,所述DA轉換芯片為AD7545芯片。
從以上技術方案可以看出,本發(fā)明的基于光柵的數(shù)據(jù)采集系統(tǒng),主要包括:第一信號轉換模塊、FPGA模塊、總線模塊、第二信號轉換模塊;第一信號轉換模塊用于將FPGA模塊發(fā)送的單端時鐘信號轉換為雙端時鐘信號,并將所述雙端時鐘信號發(fā)送至編碼器;第二信號轉換模塊用于將所述編碼器發(fā)送的差分數(shù)據(jù)信號轉換為單端數(shù)據(jù)信號,并將所述單端數(shù)據(jù)信號發(fā)送至FPGA模塊;FPGA模塊用于對接收的單端數(shù)據(jù)信號進行解碼、CRC校驗,并將校驗成功的數(shù)據(jù)信號經總線模塊傳送至上位機;其中,F(xiàn)PGA模塊、總線模塊還用于為數(shù)據(jù)采集系統(tǒng)供電。在本發(fā)明中,通過設置第一、二信號轉換模塊,便于采用差分輸入和差分輸出的方式進行數(shù)據(jù)采集,提高了數(shù)據(jù)采集的通用性。另外,本發(fā)明通過由FPGA、總線模塊為系統(tǒng)供電,而不是采用傳統(tǒng)的開關電源為系統(tǒng)供電,大大簡化了系統(tǒng)的結構設計、提高了系統(tǒng)的可靠性。進一步的,本發(fā)明的數(shù)據(jù)采集系統(tǒng)能適用于多種絕對式光柵、增量式光柵,且擴展性強、成本低。
附圖說明
通過以下參照附圖而提供的具體實施方式部分,本發(fā)明的特征和優(yōu)點將變得更加容易理解,在附圖中:
圖1示出了本發(fā)明實施例中的數(shù)據(jù)采集系統(tǒng)的結構示意圖;
圖2示出了本發(fā)明實施例中的FGPA模塊的組成示意圖;
圖3a示出了本發(fā)明實施例中FPGA最小系統(tǒng)的部分結構;
圖3b示出了本發(fā)明實施例中的FPGA最小系統(tǒng)的部分結構電連接示意圖;
圖3c示出了本發(fā)明實施例中的FPGA最小系統(tǒng)的部分結構電連接示意圖;
圖3d示出了本發(fā)明實施例中的FPGA最小系統(tǒng)的部分結構電連接示意圖;
圖4示出了本發(fā)明實施例中的DS26LS32芯片的電連接示意圖;
圖5示出了本發(fā)明實施例中的DS26LS31芯片的電連接示意圖;
圖6示出了本發(fā)明實施例中的IO輸入輸出模塊的結構示意圖;
圖7a示出了本發(fā)明實施例中的AD7545芯片的電連接示意圖;
圖7b示出了本發(fā)明實施例中DA轉換模塊中的電壓調節(jié)電路的結構示意圖;
圖7c示出了本發(fā)明實施例中DA轉換模塊中的電源濾波電路的結構示意圖;
1、第一信號轉換電路;2、第二信號轉換電路;3、FPGA模塊;4、總線模塊;5、編碼器;6、上位機;7、外部設備;8、IO輸入輸出模塊;9、DA轉換模塊;301、編碼器信號選擇單元;302、編碼器數(shù)據(jù)讀取單元;303、地址譯碼單元;304、自測試單元;305、系統(tǒng)監(jiān)控單元;306、讀寫測試單元;307、通用IO單元。
具體實施方式
下面參照附圖對本發(fā)明的示例性實施方式進行詳細描述。對示例性實施方式的描述僅僅是出于示范目的,而絕不是對本發(fā)明及其應用或用法的限制。
現(xiàn)有的基于光柵的數(shù)據(jù)采集設備普遍存在通用性較差、可靠性較低、價格昂貴等問題。鑒于此,本發(fā)明的發(fā)明人提出了一種新的基于光柵的數(shù)據(jù)采集系統(tǒng)。本發(fā)明的數(shù)據(jù)采集系統(tǒng)能夠適用于多種絕對式光柵和增量式光柵,通用性強、可靠性高、結構簡單、成本較低。
下面結合附圖和具體實施例對本發(fā)明的技術方案進行詳細說明。
圖1示出了本發(fā)明實施例中的數(shù)據(jù)采集系統(tǒng)的結構示意圖。從圖1可見,該系統(tǒng)具體包括:第一信號轉換模塊1、FPGA模塊3、總線模塊4、第二信號轉換模塊2。
第一信號轉換模塊1用于將FPGA模塊3發(fā)送的單端時鐘信號轉換為雙端時鐘信號,并將所述雙端時鐘信號發(fā)送至編碼器5。第二信號轉換模塊2用于將編碼器5發(fā)送的差分數(shù)據(jù)信號轉換為單端數(shù)據(jù)信號,并將所述單端數(shù)據(jù)信號發(fā)送至FPGA模塊3。FPGA模塊3用于對接收的單端數(shù)據(jù)信號進行濾波、解碼、CRC校驗,并將校驗成功的數(shù)據(jù)信號經總線模塊4傳送至上位機6。并且,F(xiàn)PGA模塊3、總線模塊4還用于為該數(shù)據(jù)采集系統(tǒng)供電。其中,由FPGA模塊3提供5V和3.3V的供電信號,由總線模塊4提供12V的供電信號。在具體實施時,為了提高FPGA模塊的濾波效率與濾波精度,可優(yōu)先選取以下濾波方法進行濾波:
式中,k、Ts、wn、均為預設的濾波系數(shù),PreIn2代表前前一時刻的輸入、PreIn1代表前一時刻輸入、In代表當前時刻輸入、PreOut2代表前前一時刻輸出、PreOut1代表前一時刻輸出,Out代表當前時刻輸出。該濾波方法相對于現(xiàn)有的算術均值濾波、中位值濾波等濾波方法,能夠顯著提高濾波精度,同時與現(xiàn)有的卡爾曼濾波等濾波方法相比,降低了算法的復雜度,提高了濾波效率,從而間接提高了數(shù)據(jù)采集系統(tǒng)的實時性。
本發(fā)明實施例中,通過設置第一、二信號轉換模塊,便于采用差分輸入和差分輸出的方式進行數(shù)據(jù)采集。具體來說,既可以利用第一信號轉換模塊將FPGA模塊輸出的單端時鐘信號轉換為雙端時鐘信號傳送至編碼器(即光柵讀數(shù)頭);又可以利用第二信號轉換模塊將編碼器(光柵讀數(shù)頭)產生的差分數(shù)據(jù)信號轉換為單端數(shù)據(jù)信號傳送至FPGA模塊。這樣一來,極大提高了數(shù)據(jù)采集系統(tǒng)的通用性。另外,在硬件電路設計中,電源模塊的穩(wěn)定關系到整個硬件電路設計的成敗。本系統(tǒng)需要使用5V、3.3V、±12V等電源,傳統(tǒng)的設計思路是利用開關電源提供5V、±12V的電源,并利用電源轉換芯片如AM1117芯片得到3.3V的電源。但是,在該設計思路下為了得到穩(wěn)定的電源需要加很多濾波電路,從而導致電路結構復雜。并且,基于該傳統(tǒng)設計思路設計的電源容易受外部電壓的影響,從而降低了系統(tǒng)的穩(wěn)定性。而在本發(fā)明中,利用FPGA模塊提供5V、3.3V的供電電壓,利用總線模塊提供±12V的供電電壓,從而大大提高了系統(tǒng)的可靠性、穩(wěn)定性,并大大簡化了電路結構。
進一步的,考慮到用戶除了需要對光柵產生的信號進行采集以外,可能還需要將光柵產生的信號傳到別的設備。但是,如果直接將光柵信號分為兩路,一路輸入FPGA、另一路輸入外部設備,則會大大降低光柵信號的驅動能力,進而很可能導致無法采集到正確的光柵信息。鑒于此,本發(fā)明的發(fā)明人想到,還可利用FPGA模塊3將接收的單端數(shù)據(jù)信號發(fā)送至第一信號轉換模塊1。然后,利用第一信號轉換模塊1將所述單端數(shù)據(jù)信號轉換為差分數(shù)據(jù)信號、并將所述差分數(shù)據(jù)信號輸出至外部設備7。通過將光柵產生的信號輸入FPGA、并將FPGA作為中轉站,使得FPGA將光柵的信息通過第二信號轉換模塊輸出,既滿足了將光柵信息傳到外部設備的需求,又避免了光柵信號驅動能力的降低,從而提高了系統(tǒng)的通用性與可靠性。
進一步的,考慮到系統(tǒng)的擴展性,該實施例中的數(shù)據(jù)采集系統(tǒng)還包括IO輸入輸出模塊8、DA轉換模塊9。其中,IO輸入輸出模塊8包括:IO輸入接口、IO輸出接口、以及用于隔離IO輸入接口與IO輸出接口的光耦。DA轉換模塊9包括:DA轉換芯片、電壓調節(jié)電路。所述電壓調節(jié)電路與DA轉換芯片相連,用于對DA轉換芯片輸出的模擬信號的電壓幅值進行調節(jié)。
圖2示出了本發(fā)明實施例中的FPGA模塊的組成示意圖。從圖2可見,該FPGA模塊采用FPGA最小系統(tǒng),具體包括:編碼器信號選擇單元301、編碼器數(shù)據(jù)讀取單元302、自測試單元304、系統(tǒng)監(jiān)控模塊305、地址譯碼單元303。其中,編碼器信號選擇單元301與總線模塊4、編碼器數(shù)據(jù)讀取單元302分別相連,編碼器數(shù)據(jù)讀取單元302與總線模塊4、第一信號轉換模塊1分別相連;地址譯碼單元303與總線模塊4、編碼器信號選擇單元301、編碼器數(shù)據(jù)讀取單元302、自測試單元304、系統(tǒng)監(jiān)控單元305分別相連。
結合圖2可知,編碼器信號選擇單元301用于對待采集的編碼器信號進行選取,并將選取的編碼器數(shù)據(jù)信號發(fā)送至編碼器數(shù)據(jù)讀取單元302。所述編碼器數(shù)據(jù)信號具體包括外部編碼器數(shù)據(jù)信號、內部模擬編碼器數(shù)據(jù)信號。編碼器數(shù)據(jù)讀取單元302用于通過第一信號轉換模塊1將時鐘信號發(fā)送至與相應的編碼器,以觸發(fā)相應的編碼器發(fā)送光柵信號。比如,當編碼器信號選擇單元選取的是外部編碼器數(shù)據(jù)信號時,所述相應的編碼器為外部編碼器。當編碼器信號選擇單元選取的是內部模擬編碼器數(shù)據(jù)信號時,所述相應的編碼器為內部模擬編碼器。以及,編碼器數(shù)據(jù)讀取單元302還用于對采集的數(shù)據(jù)信號進行解碼、CRC校驗,并將校驗成功的數(shù)據(jù)信號經總線模塊4傳送至上位機6。自測試單元304用于通過總線模塊4接收上位機的配置信息,以產生內部模擬編碼器數(shù)據(jù)信號。系統(tǒng)監(jiān)控單元305用于對FPGA模塊3的狀態(tài)進行監(jiān)控,并在FPGA模塊的狀態(tài)異常時令FPGA模塊3復位。地址譯碼單元303用于在上位機與FPGA模塊中的其他單元通信時,獲取上位機發(fā)送的5位地址信號以及CS(選通)信號,并輸出32位片選信號至指定的單元。
在該實施例中,較佳的,F(xiàn)PGA模塊3還包括:讀寫測試單元306、通用IO單元307。讀寫測試單元306與總線模塊4、地址譯碼單元303分別相連,通用IO單元307與總線模塊4、地址譯碼單元303分別相連。在該實施中,讀寫測試單元306用于測試上位機6與FPGA模塊3的通信狀態(tài)。通用IO單元307用于接收上位機6的控制指令、并將所述控制指令發(fā)送至外部設備7,以及,通用IO單元7還用于接收外部設備7的狀態(tài)反饋信息,并將所述狀態(tài)反饋信息發(fā)送至上位機6。在本發(fā)明實施例中,通過在FPGA模塊設置讀寫測試單元便于對數(shù)據(jù)采集系統(tǒng)與上位機的通信狀態(tài)進行測試。
在進行數(shù)據(jù)采集系統(tǒng)的硬件電路設計時,F(xiàn)PGA最小系統(tǒng)可選用EP2C5T144C8芯片構建,第一信號轉換模塊可選用DS26LS31芯片、第二信號轉換模塊可選用DS26LS32芯、總線模塊可選用ISA數(shù)據(jù)總線或PCI數(shù)據(jù)總線、光耦可選用4N25光耦、DA轉換芯片可選用AD7545芯片。圖3a至圖3d分別示出了本發(fā)明實施例中的FPGA最小系統(tǒng)的結構電連接示意圖。在圖3a至圖3d中,管腳ASDO、nCSO、TMS_F、TCK_F、TDI_F、DATA0、DCLK、nCE與外部的AS(下載和調試)電路相連,主要用于程序的下載。INx管腳主要用于接收外部IO輸入接口輸入的狀態(tài)信號;CHx_OUTA(B)管腳主要用于將接收的編碼器信號按照原來的格式進行輸出,以方便用戶使用;BISSx_MA管腳用于向編碼器發(fā)送時鐘信號;BISSx_IN_SLO管腳主要用于接收外部編碼器的數(shù)據(jù)信號;DADATAx管腳用于FPGA芯片與外部DA芯片之間的連接;OUTx管腳用于FPGA芯片向IO輸出接口輸出狀態(tài)信號。
圖4示出了本發(fā)明實施例中的DS26LS32芯片的電連接示意圖。從圖4可見,DS26LS32芯片可通過管腳1A與1B、管腳2A與2B、管腳3A與管腳3B、管腳4A與4B接收編碼器傳進來的差分數(shù)據(jù)信號BISSx_IN_SLO+和BISSx_IN_SLO-,并將其轉化為單端數(shù)據(jù)信號BISSx_IN_SLO_P,并通過管腳1Y、管腳2Y、管腳3Y、管腳4Y將轉化的單端數(shù)據(jù)信號BISSx_IN_SLO_P傳遞給FPGA,以供其進行解碼。
圖5示出了本發(fā)明實施例中的DS26LS31芯片的電連接示意圖。從圖5可見,DS26LS31芯片可通過管腳INA、INB、INC、IND接收FPGA芯片輸出的單端信號BISSx_MA,并將其轉化為雙端信號BISSx_MA+和BISSx_MA-,并通過管腳OUTA1與OUTA2、OUTB1與OUTB2、OUTC1與OUTC2、OUTD1與OUTD2將雙端信號BISSx_MA+和BISSx_MA-輸出,以供編碼器使用。
圖6示出了本發(fā)明實施例中的IO輸入輸出模塊的結構示意圖。從圖6可見,IO輸入電路和IO輸出電路都采用了光耦進行隔離,這樣就保證了外部信號不會對FPGA芯片造成傷害。
圖7a至圖7c示出了本發(fā)明實施例中的DA轉換模塊的示意圖。其中,圖7a示出了本發(fā)明實施例中的AD7545芯片的電連接示意圖,圖7b示出了本發(fā)明實施例中DA轉換模塊中的電壓調節(jié)電路的結構示意圖,圖7c示出了本發(fā)明實施例中DA轉換模塊中的電源濾波電路的結構示意圖。從圖7a可見,管腳DADATAx與FPGA芯片相連,以將FPGA芯片輸出的數(shù)字信號直接傳遞給AD7545芯片,管腳DAWR和管腳DACS0主要用于FPGA芯片對AD7545芯片進行使能和片選。圖7b中的電壓調節(jié)電路主要用對AD7545芯片輸出的模擬信號的電壓幅值進行調節(jié)。圖7c中的電源濾波電路主要用于電源濾波、穩(wěn)壓。
從以上技術方案可以看出,本發(fā)明實施例中的基于光柵的數(shù)據(jù)采集系統(tǒng)至少具有以下優(yōu)點:一、適用于多種絕對式光柵和增量式光柵,通用性強;二、結構簡單,電路焊接完成后調試成功率非常高;三、制作成本在兩百元左右,大大降低了科研成本;四、集成了多個IO輸入輸出模塊和DA轉換模塊,大大增強了系統(tǒng)的功能;五、以FPGA作為中轉站輸出光柵信息,系統(tǒng)可靠性強。
雖然參照示例性實施方式對本發(fā)明進行了描述,但是應當理解,本發(fā)明并不局限于文中詳細描述和示出的具體實施方式,在不偏離權利要求書所限定的范圍的情況下,本領域技術人員可以對所述示例性實施方式做出各種改變。