登錄  |  注冊
河北華利機械配件有限公司

基于CANI總線的電動搬運車控制手柄設計

2013/7/11 15:43:36

 

  平,尚  偉,孫慧琪

(哈爾濱工業大學控制科學與工程系,哈爾濱1 50001

    摘要:目前大部分電動搬運車的各個控制信號傳輸都使用獨自的信號線,線束復雜且可靠性低。針對這個缺點,該文采用內置CAN控制器的AT90CAN128單片機作為處理器,設計了一種基于CAN總線的控制手柄。該手柄具有運送速度快、升降貨物減速緩沖的特性,并且增加了蝸行、緊急反向等保障搬運車安全行駛的功能。文中根據這些功能以及CAN總線的構成特點,制定了相應的通信協議,并對整個控制手柄的軟硬件設計進行了詳細描述j實驗表明,該CAN總線控制手柄具有線束簡單、安全性好、可靠性高等優點。

    關鍵詞:電動搬運車;控制手柄;CAN總線:AT90CAN128

    中圖分類號:TP336    文獻標志碼:A

    CAN-控制器局域網是一種有效支持分布式控制或實時控制的串行通信網絡。CAN總線最早是為解決現代汽車中眾多的控制與測試儀器之間的數據交換而開發的一種串行數據通信協議,它是一種多主總線,通信介質可以是雙絞線、同軸電纜、光導纖維,通信速率可達lMb/s。CAN總線通信接口中集成了CAN協議的物理層、數據鏈路層功能,可憲成對通信數據的幀處理,包括位填充、數據塊編碼、循環冗余校驗、優先級判別等項工作。

    搬運車在集裝箱等貨物的裝卸過程中起到了非常重要的作用,先前的搬運車沒有發動機引擎,完全靠人力推動,耗費勞動力且效率低,現如今出現了大量的電動搬運車,節約了大量的人力成本,但是目前市場上的控制手柄功能信號都是通過各自的信號線傳輸,可靠性差。CAN總線技術已在汽車電子中有了廣泛的應用,可靠性高。本文將CAN總線技術應用到電動搬運車上,提出了高安全性、高可靠性的設計方法。本文的設計將所有控制信號通過CAN總線傳輸,并通過CAN測試卡測試了控制信號數據,連接電機控制器進行調式,并取得了非常好的效果,為工業生產創造了實踐基礎。

硬件設計

1.1  AT90CAN128ilt概述

    AT90CAN128是基于AVR RISC結構的8位高性能、低功耗CMOS微處理器。它采用了先進的指令集以及單周期指令執行時間,其數據吞吐率高達1MIPS/MHz,其內核具有豐富的指令集和32個通用工作寄存器。所有寄存器都直接與ALU相連接。通過將8RISC CPU與系統內可編程的Flash集成在一個芯片內,為許多嵌入式控制應用提供了靈活而低成本的方案。

    AT90CAN128內置10位精度的逐次逼近型AD轉換模塊。ADC與一個8通道的模擬多路復用器連接,能對來自端口F8路單端輸入電壓進行采樣。單端電壓輸入以OV(GND)為基準。ADC包括一個采樣保持電路,以確保在轉換過程中輸入到ADC的電壓保持恒定。具有0.5LSB的非線性度,+2LSB的絕對精度,13260ys的轉換時間,最高分辨率時采樣率高達15kb/s。

    AT90CAN128內量完全符合CAN2.OA2.OB標準協議的CAN控制器。采用MOb(消息對象)方式進行數據的發送和接收,共有15MOb,數目從014。每個MOb擁有各自獨立的標識符和屏蔽碼,8位數據緩沖,11位標識符(2.OA協議),也可擴展至29位(2.OB協議),有發送、接收、自動回復以及幀緩沖接收模式,在8MHz時最大傳輸速率可達lMb/s。一個MOb處理一個CAN消息幀的所有信息。每個MOb都被安置在一個頁(CANPAGE)中來保存,頁的序號就是MOb的序號。

1.2控制手柄功能設計

    本文設計的電動搬運車控制手柄能夠實現搬運車的前進后退,貨物舉升降落,貨叉前移后移等基本搬運貨物的功能,另外還具有蝸行、喇叭、緊急反向等保障搬運車安全行駛的功能。

    前進后退是搬運車在地面上的正常行駛功能:貨物舉升降落是指將貨物抬升的功能:貨叉的前移后移是指在貨物舉升到合適的位置時將貨物向前送出的功能:喇叭是在行駛過程中用來提醒前方人員注意:蝸行是指搬運車在快速行駛過程中遇到障礙物等情況需要緊急減速時以一個固定的慢速行駛:緊急反向是指搬運車在行駛過程中碰到障礙物需要緊急停車時的反向緩沖功能。緊急反向是由一個按鍵開關實觀的,當碰到障礙物時,由于慣性這個開關就會頂在操作員的腹部,保障了行駛安全,因此又稱肚皮開關。

1.3控制手柄硬件電路組成

    前進后退,舉升降落、前移后移的模擬輸入量由線性霍爾元件SS495A產生,蝸行、喇叭、緊急反向的數字量信號由按鍵開關產生,將這些信號輸入到AT90CAN128處理器進行處理,并按照所設計的通信協議通過CAN總線與電機控制器通信來驅動相應的電機。

    搬運車的前進后退和貨叉的前移后移為模擬量輸入,而舉升降落可選擇為模擬量輸入或者數字量輸入。此設計可使得同一款控制手柄能夠適用于不同類型的搬運車而節省模擬器件的成本,例如托盤車大約只有120mm的舉升高度,一般用數字量輸入,堆高車大約35m的舉升高度,為減輕其承載重物降落時的緩沖,需采用模擬量輸入?;魻栐牟罘蛛妷夯旧虾突魻栐c磁鋼之間的距離成線性關系,并將此信號輸入到AT90CAN128AD轉換模塊進行差分和線性化處理。

1.4通信協議制定

根據上一小節所設計的搬運車的功能信號未定義通信協議中各個字節的作用,如表1所示。   

表中,對于數字量輸入信號:1表示按鍵已按下;0表示按鍵沒有按下。對于模擬量輸入信號:正值表示前進、舉升、前移;負值表示反向;0表示停止。Bit6、Bit7也可以接入霍爾線性開關,所給出的數字信號會根據內部定義的門限在ON/OFF間變化。

軟件設計

2.1  輸入信號檢測處理流程

    考慮到機械安裝的誤差,為了使線性霍爾元件的機械零點與電氣零點相吻合,在程序設計中,每一次上電都自動進行零點搜索,并且根據這一零點來設置一個死區,以取消零點附近的波動。

    在模擬輸入的信號處理后一般采用線性輸出,根據實際的實驗效果,如果舉升的重物質量較大,在降落時會產生較大的沖擊,因此需要在降落的初始時刻有一個慢速的緩沖,相應的,需要將降落的模擬輸入信號在輸出時更改為前段變化較緩慢的指數曲線輸出。

    舉升降落的輸入信號可通過跳線進行模擬量或者數字量的選擇,數字量輸入可采用按鍵形式,也可采用霍爾線性開芙加一個門限來設置,比較簡單。下面以選擇模擬量輸入為例,介紹系統上電后信號循環檢測處理的程序流程,流程圖如圖3所示。

2.2 CAN控制器初始化

    初始化前將CAN通用控制寄存器最高位置1即置為復位模式。主要的初始化工作包括裝載標識符和屏蔽碼,設置波特率。完成后,清零回到操作模式。消息標識符定義為OxlEO,采用CAN2.OA協議標準幀發送,波特率為125kb/s,發送間隔周期為15ms。下面給出了CAN控制器的初始化程序:2.3 CAN消息發送

    消息的發送采用直接發送方式實現。首先通過設置CANPAGE寄存器來指定被發送的MOb,將數據裝載到CANMSG寄存器中,然后由CANCDMOB寄存器來控制發送動作,將消息發送出去,等待發送成功后,清發送成功標志位。將發送模塊添加到15ms的定時中斷中就可以周期發送,以實現手柄的控制功能,進而由電機控制器驅動相應的電機。下面給出了發送程序:

3結語

    與其他同類型的單片機相比較,AT90CAN128在數據采集等設計中都有其明顯的優勢,尤其是內置了CAN控制器,降低了設備成本、簡化了硬件結構、提高了通信效率、安全性以及可靠性。軟件設計上可通過對MOb的配置,實現消息隊列的設定,這種方法更加的靈活、方便。

    該控制手柄增加了蝸行、緊急反向的功能后,使得搬運車運行更加安全高效。貨物舉升降落的指數曲線緩沖設計減小了對貨物的破損,同時也將貨物對貨叉等各個部件的損傷降到了最低,延長了搬運車的使用壽命。該手柄通過CAN總線與Zapi Spa生產的COMBI AC1電機控制器相連接,實驗表明,本文設計的CAN總線控制手柄運行良好,完全可以達到預期的功能。

華利膠木手輪