HENGSTLER基于CAN總線的編碼器檢測模塊設(shè)計
隨著工業(yè)生產(chǎn)自動化水平的提高,各種傳感器的使用也在增加。作為一種速度和位移反饋傳感器,HENGSTLER旋轉(zhuǎn)編碼器主要用于需要運動速度和位移信息反饋的自動控制場合,例如CNC機床、高精度閉環(huán)速度控制系統(tǒng)、伺服電機、異步電機、步進電機、電梯曳引機、,電梯門電機,甚至機械軸,確保機器的高精度和穩(wěn)定運行,提高生產(chǎn)效率,確保安全運行。
針對亨士樂編碼器在工業(yè)領(lǐng)域的應(yīng)用,本文基于LPCI768硬件平臺,設(shè)計了一種具有高精度分析、形成和解碼電路的編碼器采集模塊,可以同時對兩個編碼器的輸入信號進行分析和解碼。處理后的旋轉(zhuǎn)信號由高性能處理器捕獲并進行數(shù)字濾波。編碼器還計算兩個編碼器信號的角速度,末端模塊通過CAN總線將獲取的旋轉(zhuǎn)位置和角速度值傳輸?shù)紻PU(分布式處理單元),以供工業(yè)部門使用。
1、HENGSTLER旋轉(zhuǎn)編碼器
HENGSTLER旋轉(zhuǎn)編碼器是用于測量旋轉(zhuǎn)部件運動的傳感器。這是一種傳感器,它將旋轉(zhuǎn)的機械位移轉(zhuǎn)換為電信號,并在處理信號后顯示位置、速度等。所謂的編碼實際上是將旋轉(zhuǎn)角度的信息轉(zhuǎn)換成可由單片機讀取的電信號的過程。根據(jù)工作原理,旋轉(zhuǎn)編碼器可分為三種類型:接觸式、光電式和電磁式。}根據(jù)輸出信號的形狀,它可以分為兩種類型:增量型和絕對值型。其中,增量式編碼器是業(yè)內(nèi)最常用的旋轉(zhuǎn)編碼器。
增量編碼器包括碼盤、發(fā)光元件、接收元件和信號處理部分。當(dāng)軸旋轉(zhuǎn)時,它驅(qū)動碼盤旋轉(zhuǎn),從而使光柵線透明,間隙不透明。發(fā)射的光被接收元件接收并輸入到信號處理部分以產(chǎn)生脈沖信號輸出。輸出信號通常包括A相和B相(相差90°)。一些編碼器還輸出每轉(zhuǎn)零脈沖Z作為機械參考零點。當(dāng)主軸順時針旋轉(zhuǎn)時,通道A是通道B之前的信號;當(dāng)主軸逆時針旋轉(zhuǎn)時,通道A的信號位于通道B之后,可用于確定主軸是向前旋轉(zhuǎn)還是向后旋轉(zhuǎn)。
2、CAN總線
CAN總線(控制器局域網(wǎng))是世界上使用最廣泛的現(xiàn)場總線之一。CAN總線最初由德國博世公司于1983年為汽車應(yīng)用開發(fā),屬于現(xiàn)場總線類別。隨著CAN總線的不斷改進和發(fā)展,它已被國際標準化組織采納為國際標準。
CAN總線是一種串行多主通信總線?;驹O(shè)計規(guī)范要求高比特率和高干擾安全性,并且可以檢測發(fā)生的錯誤。當(dāng)信號傳輸距離達到10km時,它仍然可以提供高達5kb/s的數(shù)據(jù)傳輸速率。根據(jù)iSO標準,CAN協(xié)議有兩種類型:IS011898標準和IS011519標準。它們之間的區(qū)別在于物理層的定義不同。ISOll898是一種CAN高速通信標準,通信速度為125kb/s--1Mb/s,而ISOll519是一種通信速度低于125kb/s的CAN低速通信標準。
3、硬件設(shè)計
HENGSTLER編碼器根據(jù)系統(tǒng)的功能要求,本文選用了NXP公司生產(chǎn)的LPCI768處理器。該處理器是基于ARMCortex-M3內(nèi)核的32位處理器。它具有3條流水線和哈佛結(jié)構(gòu),具有獨立的本地指令和數(shù)據(jù)總線,以及用于外圍設(shè)備的功率稍低的第三條總線。同時,它還包括一個支持隨機翻譯的內(nèi)部預(yù)取單元,其工作頻率可達100MHz。LPCI768處理器的外圍組件包括高達512 kB的閃存、64 kB的數(shù)據(jù)存儲器、4個通用定時器、8通道12位ADC、10位DAC、電機控制PWM、4個UART、2個CAN通道、具有獨立電池電源的超低功耗RTC和多達70個通用I/O引腳。圖1顯示了編碼器檢測模塊的完整框圖。
圖1編碼器檢測模塊總框圖
3.1 CPU
根據(jù)芯片手冊,LPCI768可以選擇內(nèi)部RC振蕩器或主振蕩器作為系統(tǒng)的時鐘源。由于內(nèi)部RC振蕩器的精度不能滿足CAN總線通信的要求,并且主振蕩器的頻率范圍可以在1MHz到25MHz之間工作,因此選擇12MHz晶體振蕩器和22pF電容器以形成皮爾斯振蕩器作為主振蕩器的時鐘源。由于系統(tǒng)不使用芯片的A/D模塊,VDDA可以與VDD一起連接到3.3V。每對VDD和GND引腳之間應(yīng)連接一個0.1uF的去耦電容器。同時,JTAG和通信引腳通過10k上拉電阻連接到VDD,以提高信號傳輸?shù)姆€(wěn)定性。
3.2編碼器部分采集
當(dāng)HENGSTLER旋轉(zhuǎn)編碼器用于角度定位或測量時,搖動旋轉(zhuǎn)軸會導(dǎo)致旋轉(zhuǎn)編碼器輸出軸形狀的抖動,從而導(dǎo)致錯誤計數(shù)的現(xiàn)象。在這種情況下,波形無法正確計數(shù)。該系統(tǒng)使用單穩(wěn)態(tài)觸發(fā)器來消除編碼器輸出脈沖信號的抖動。圖2顯示了一個編碼器傳感電路。
圖2編碼器檢測電路中的電路
根據(jù)電路分析,如果旋轉(zhuǎn)編碼器正向旋轉(zhuǎn),則F1輸出脈沖序列,如果旋轉(zhuǎn)解碼器反向旋轉(zhuǎn),則R1輸出脈沖序列。
圖3編碼器檢測電路仿真波形
CAN總線3.3的通信部分
LPC1768處理器支持CAN 2.0B規(guī)范,并與IS011898-1標準兼容。在此基礎(chǔ)上,本文選擇飛利浦半導(dǎo)體公司生產(chǎn)的PCA82C250芯片作為CAN總線收發(fā)器。通信匹配電阻為120,i1,CAN收發(fā)器電路如圖4所示。
圖4 CAN收發(fā)器
3.4電源
LPC1768的工作電壓為3.3V,而CAN收發(fā)器和編碼器檢測電路的電壓為5V。因此,首先使用MC33063將相關(guān)電路的輸入電壓降至5V,然后使用LM1117-3.3V將5V電壓降至3.3V作為處理器的工作電壓。電路見圖5。
圖5電路
4、軟件設(shè)計
系統(tǒng)采用RealView MDK-ARM V4.10作為開發(fā)平臺,C語言作為主要開發(fā)語言。程序主要分為三部分:亨士樂編碼器檢測部分采用中斷模式,通過LPC1768的時間記錄單元對輸入脈沖信號進行計數(shù);CAN通信部分還使用中斷模式來接收來自DPU或其他控制主機的命令,然后執(zhí)行相應(yīng)的數(shù)據(jù)傳輸任務(wù);主程序通過特定的調(diào)度算法完成編碼器旋轉(zhuǎn)方向的評估、角速度的計算、相應(yīng)指示器狀態(tài)的設(shè)置、CAN通信過程中異常情況的處理以及狗的喂食。主程序流程圖見圖6。
圖6主程序流程圖
5、結(jié)論
本文設(shè)計的HENGSTLER編碼器檢測模塊適用于各種工業(yè)控制場所,具有廣闊的應(yīng)用前景。經(jīng)過實驗室初步測試和工業(yè)現(xiàn)場測試應(yīng)用,該模塊能夠滿足用戶對旋轉(zhuǎn)編碼器輸入信號處理結(jié)果的要求,能夠與現(xiàn)場控制系統(tǒng)可靠通信,工作性能穩(wěn)定,抗干擾能力強,安全性高。
了解更多編碼器相關(guān)知識,敬請關(guān)注
亨士樂編碼器國內(nèi)正規(guī)授權(quán)代理西安德伍拓自動化傳動系統(tǒng)有限公司網(wǎng)站。公司技術(shù)團隊為您免費提供HENGSTLER編碼器的選型、安裝、調(diào)試、保養(yǎng)等技術(shù)指導(dǎo)服務(wù),盡量避免企業(yè)因為編碼器技術(shù)人員的短缺帶來的損失,采取“線上+線下”服務(wù)的服務(wù)形式,幫助企業(yè)解決技術(shù)難題。