西藏宰位餐饮管理有限公司

河北華利機(jī)械配件有限公司

基于CANI總線的電動(dòng)搬運(yùn)車控制手柄設(shè)計(jì)

2013/7/11 15:43:36

 

  平,尚  偉,孫慧琪

(哈爾濱工業(yè)大學(xué)控制科學(xué)與工程系,哈爾濱1 50001

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

    關(guān)鍵詞:電動(dòng)搬運(yùn)車;控制手柄;CAN總線:AT90CAN128

    中圖分類號(hào):TP336    文獻(xiàn)標(biāo)志碼:A

    CAN-控制器局域網(wǎng)是一種有效支持分布式控制或?qū)崟r(shí)控制的串行通信網(wǎng)絡(luò)。CAN總線最早是為解決現(xiàn)代汽車中眾多的控制與測(cè)試儀器之間的數(shù)據(jù)交換而開發(fā)的一種串行數(shù)據(jù)通信協(xié)議,它是一種多主總線,通信介質(zhì)可以是雙絞線、同軸電纜、光導(dǎo)纖維,通信速率可達(dá)lMb/sCAN總線通信接口中集成了CAN協(xié)議的物理層、數(shù)據(jù)鏈路層功能,可憲成對(duì)通信數(shù)據(jù)的幀處理,包括位填充、數(shù)據(jù)塊編碼、循環(huán)冗余校驗(yàn)、優(yōu)先級(jí)判別等項(xiàng)工作。

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

硬件設(shè)計(jì)

1.1  AT90CAN128ilt概述

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

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

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

1.2控制手柄功能設(shè)計(jì)

    本文設(shè)計(jì)的電動(dòng)搬運(yùn)車控制手柄能夠?qū)崿F(xiàn)搬運(yùn)車的前進(jìn)后退,貨物舉升降落,貨叉前移后移等基本搬運(yùn)貨物的功能,另外還具有蝸行、喇叭、緊急反向等保障搬運(yùn)車安全行駛的功能。

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

1.3控制手柄硬件電路組成

    前進(jìn)后退,舉升降落、前移后移的模擬輸入量由線性霍爾元件SS495A產(chǎn)生,蝸行、喇叭、緊急反向的數(shù)字量信號(hào)由按鍵開關(guān)產(chǎn)生,將這些信號(hào)輸入到AT90CAN128處理器進(jìn)行處理,并按照所設(shè)計(jì)的通信協(xié)議通過CAN總線與電機(jī)控制器通信來驅(qū)動(dòng)相應(yīng)的電機(jī)。

    搬運(yùn)車的前進(jìn)后退和貨叉的前移后移為模擬量輸入,而舉升降落可選擇為模擬量輸入或者數(shù)字量輸入。此設(shè)計(jì)可使得同一款控制手柄能夠適用于不同類型的搬運(yùn)車而節(jié)省模擬器件的成本,例如托盤車大約只有120mm的舉升高度,一般用數(shù)字量輸入,堆高車大約35m的舉升高度,為減輕其承載重物降落時(shí)的緩沖,需采用模擬量輸入。霍爾元件的差分電壓基本上和霍爾元件與磁鋼之間的距離成線性關(guān)系,并將此信號(hào)輸入到AT90CAN128AD轉(zhuǎn)換模塊進(jìn)行差分和線性化處理。

1.4通信協(xié)議制定

根據(jù)上一小節(jié)所設(shè)計(jì)的搬運(yùn)車的功能信號(hào)未定義通信協(xié)議中各個(gè)字節(jié)的作用,如表1所示。   

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

軟件設(shè)計(jì)

2.1  輸入信號(hào)檢測(cè)處理流程

    考慮到機(jī)械安裝的誤差,為了使線性霍爾元件的機(jī)械零點(diǎn)與電氣零點(diǎn)相吻合,在程序設(shè)計(jì)中,每一次上電都自動(dòng)進(jìn)行零點(diǎn)搜索,并且根據(jù)這一零點(diǎn)來設(shè)置一個(gè)死區(qū),以取消零點(diǎn)附近的波動(dòng)。

    在模擬輸入的信號(hào)處理后一般采用線性輸出,根據(jù)實(shí)際的實(shí)驗(yàn)效果,如果舉升的重物質(zhì)量較大,在降落時(shí)會(huì)產(chǎn)生較大的沖擊,因此需要在降落的初始時(shí)刻有一個(gè)慢速的緩沖,相應(yīng)的,需要將降落的模擬輸入信號(hào)在輸出時(shí)更改為前段變化較緩慢的指數(shù)曲線輸出。

    舉升降落的輸入信號(hào)可通過跳線進(jìn)行模擬量或者數(shù)字量的選擇,數(shù)字量輸入可采用按鍵形式,也可采用霍爾線性開芙加一個(gè)門限來設(shè)置,比較簡(jiǎn)單。下面以選擇模擬量輸入為例,介紹系統(tǒng)上電后信號(hào)循環(huán)檢測(cè)處理的程序流程,流程圖如圖3所示。

2.2 CAN控制器初始化

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

    消息的發(fā)送采用直接發(fā)送方式實(shí)現(xiàn)。首先通過設(shè)置CANPAGE寄存器來指定被發(fā)送的MOb,將數(shù)據(jù)裝載到CANMSG寄存器中,然后由CANCDMOB寄存器來控制發(fā)送動(dòng)作,將消息發(fā)送出去,等待發(fā)送成功后,清發(fā)送成功標(biāo)志位。將發(fā)送模塊添加到15ms的定時(shí)中斷中就可以周期發(fā)送,以實(shí)現(xiàn)手柄的控制功能,進(jìn)而由電機(jī)控制器驅(qū)動(dòng)相應(yīng)的電機(jī)。下面給出了發(fā)送程序:

3結(jié)語

    與其他同類型的單片機(jī)相比較,AT90CAN128在數(shù)據(jù)采集等設(shè)計(jì)中都有其明顯的優(yōu)勢(shì),尤其是內(nèi)置了CAN控制器,降低了設(shè)備成本、簡(jiǎn)化了硬件結(jié)構(gòu)、提高了通信效率、安全性以及可靠性。軟件設(shè)計(jì)上可通過對(duì)MOb的配置,實(shí)現(xiàn)消息隊(duì)列的設(shè)定,這種方法更加的靈活、方便。

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

華利膠木手輪
仁布县| 望江县| 永德县| 怀远县| 宁城县| 涞水县| 介休市| 石柱| 尉犁县| 泸溪县| 繁昌县| 华安县| 宁安市| 河池市| 梨树县| 合山市| 左权县| 依兰县| 东乡县| 阿瓦提县| 张家港市| 泸溪县| 巴塘县| 安岳县| 西乡县| 昆明市| 额济纳旗| 富锦市| 遵化市| 石林| 凯里市| 菏泽市| 梨树县| 贡嘎县| 喜德县| 调兵山市| 巫山县| 乌审旗| 吴江市| 丹江口市| 阿克陶县|