王玉麗 王宜懷
1(蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 江蘇 蘇州 2151232(蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 江蘇 蘇州 215006)
基于CAN總線的智能電動(dòng)密集架控制系統(tǒng)的研究
王玉麗1王宜懷2
1(蘇州工業(yè)園區(qū)職業(yè)技術(shù)學(xué)院 江蘇 蘇州 2151232(蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 江蘇 蘇州 215006)
由于智能電動(dòng)密集架控制系統(tǒng)多采用RS485方式控制,實(shí)時(shí)性差,總線利用率低,軟件控制復(fù)雜。針對(duì)這種情況,提出基于CAN總線技術(shù)的智能電動(dòng)密集架控制系統(tǒng)的設(shè)計(jì)。采用內(nèi)嵌CAN控制器MSCAN的8位微控制器MC9S08DZ60作為主控MCU,搭配高性能CAN收發(fā)器TJA1040,組建CAN通信網(wǎng)絡(luò),提供高效數(shù)據(jù)傳輸通道。融合多種傳感器件建立多重保護(hù)機(jī)制,并添加必要的失效保護(hù),應(yīng)對(duì)復(fù)雜現(xiàn)場(chǎng)環(huán)境。充分利用CAN協(xié)議降低軟件設(shè)計(jì)復(fù)雜度,并配合良好的移動(dòng)調(diào)度策略,提升操作速度。實(shí)驗(yàn)結(jié)果表明,該控制系統(tǒng)通信速率高、安全可靠,有效地打破了RS485導(dǎo)致的性能瓶頸,完全滿足密集架控制對(duì)通信的實(shí)時(shí)性、可靠性和互操作性的要求。
智能電動(dòng)密集架 RS485 CAN
CAN是一種有效支持實(shí)時(shí)控制的串行通信網(wǎng)絡(luò),區(qū)別于基于RS485構(gòu)建的系統(tǒng),它具有數(shù)據(jù)通信實(shí)時(shí)性強(qiáng)、傳輸距離遠(yuǎn)、安全性高、開發(fā)周期短等諸多優(yōu)勢(shì)。密集架是多列貨架密集組合,可根據(jù)需要通過專用導(dǎo)軌移動(dòng)、靠攏或分開的裝置[1-3]。智能電動(dòng)密集架系統(tǒng),是現(xiàn)代化倉(cāng)儲(chǔ)的重要標(biāo)志,因其空間利用率高,配置靈活,而被廣泛應(yīng)用于圖書、檔案等管理系統(tǒng)中。目前市面上大部分密集架控制系統(tǒng)均采用RS485方式控制,其實(shí)時(shí)性差、總線利用率低、軟件控制復(fù)雜等缺點(diǎn),已經(jīng)限制了系統(tǒng)性能的提升。針對(duì)這個(gè)問題,本文闡述了一種基于CAN總線實(shí)現(xiàn)的密集架控制系統(tǒng)方案,該方案選取Freescale 的8位微處理器MC9S08DZ60作為主控芯片。該系統(tǒng)能夠簡(jiǎn)化各個(gè)控制單元間的連線、提高通信速率、提升安全保障[4]。本文闡述的設(shè)計(jì)方法與控制策略也可為同類的其他應(yīng)用開發(fā)提供參考。
智能電動(dòng)密集架系統(tǒng)主要包括基于單片機(jī)或PLC的電氣控制系統(tǒng)、機(jī)械系統(tǒng)和用戶終端管理軟件。用戶終端管理軟件負(fù)責(zé)管理數(shù)據(jù)資料以及顯示各種庫(kù)房環(huán)境數(shù)據(jù)。電氣控制系統(tǒng)負(fù)責(zé)控制密集架的架體移動(dòng)。系統(tǒng)的核心是用戶通過PC機(jī)管理軟件或密集架上的觸摸屏查詢出要取/放的資料所在的位置,系統(tǒng)自動(dòng)打開特定的密集架通道,并點(diǎn)亮相應(yīng)位置的指示燈,供用戶取/放資料,操作完畢,密集架架體自動(dòng)歸位,指示燈熄滅。
密集架一般按組劃分,一個(gè)密集架系統(tǒng)包含多個(gè)組。一組密集架,包含1個(gè)主控列和N個(gè)移動(dòng)列。主控列負(fù)責(zé)控制和協(xié)調(diào)組中各列的運(yùn)動(dòng)以及環(huán)境監(jiān)測(cè)等,位置固定不動(dòng),也稱為固定列。移動(dòng)列負(fù)責(zé)本列的電氣控制,允許左右移動(dòng)、強(qiáng)制鎖定、手動(dòng)控制等。圖1所示為一個(gè)初始狀態(tài)為全關(guān),共6列,主控列在右側(cè)的一組密集架,每組密集架底部都裝有一組導(dǎo)軌,用于移動(dòng)。圖1中主控列在最右側(cè),一般主控列編號(hào)為1,最靠近主控列的那一列編號(hào)為2,其余類推。主控列的位置也可能在最左側(cè)或者正中央。
圖1 一組密集架示意圖
基于CAN總線的密集架控制系統(tǒng)結(jié)構(gòu),如圖2所示。
圖2 密集架控制系統(tǒng)結(jié)構(gòu)圖
系統(tǒng)控制采用主從模式控制,主控列控制器作為主控CAN節(jié)點(diǎn),移動(dòng)策略部署在該節(jié)點(diǎn)上,負(fù)責(zé)調(diào)度移動(dòng)列,同時(shí)負(fù)責(zé)信息的中轉(zhuǎn)處理,把終端用戶的指令轉(zhuǎn)發(fā)到CAN通信子網(wǎng)中。移動(dòng)列控制器,作為CAN子節(jié)點(diǎn),負(fù)責(zé)接收并執(zhí)行主控CAN節(jié)點(diǎn)發(fā)送的命令,并反饋結(jié)果到主控CAN節(jié)點(diǎn)。系統(tǒng)中需要處理的信息概括為以下幾種:
(1) 按鍵事件:操作人員主動(dòng)按下移動(dòng)列的左/右鍵,請(qǐng)求移動(dòng),此時(shí)移動(dòng)列向主控列發(fā)送請(qǐng)求移動(dòng)命令。主控列接收移動(dòng)請(qǐng)求幀,判斷是否可以移動(dòng),如果不能移動(dòng),語音播報(bào);如果能移動(dòng),廣播發(fā)送移動(dòng)命令,同時(shí)主控列控制器通過RS232向上位機(jī)發(fā)送移動(dòng)信息。移動(dòng)列接收移動(dòng)命令,根據(jù)傳感器信息和相鄰列的信息進(jìn)行移動(dòng)。操作人員主動(dòng)按下移動(dòng)列的強(qiáng)制鎖定鍵,強(qiáng)制系統(tǒng)硬件鎖定,忽略任何移動(dòng)指令。
(2) 運(yùn)動(dòng)控制:主控列要求移動(dòng)列移動(dòng)/停止移動(dòng)/解鎖等。
(3) 查詢事件:主控列查詢某個(gè)移動(dòng)列的狀態(tài)。
(4) 顯示信息:主控列向移動(dòng)列發(fā)送顯示信息。
(5) 定位燈控制:主控列向移動(dòng)列發(fā)送定位燈亮暗信息。
觀察并對(duì)比兩組的急救時(shí)間與疼痛緩解時(shí)間、護(hù)理滿意度。為患者發(fā)放滿意度調(diào)查表,指導(dǎo)患者如實(shí)填寫,滿分100分,分為非常滿意(85~100分)、滿意(70~84分)與不滿意(<70分)。護(hù)理滿意度=非常滿意度+滿意度的[2] 。
(6) 移動(dòng)列參數(shù)配置:靠近主控列和遠(yuǎn)離主控列對(duì)應(yīng)的正轉(zhuǎn)還是反轉(zhuǎn),人體感應(yīng)時(shí)長(zhǎng)等參數(shù)。
(7) 緊急事件:例如某列檢測(cè)到有物品墜落,發(fā)送廣播幀。
(8) 到位事件:移動(dòng)列發(fā)送的到位信息。
本系統(tǒng)在設(shè)計(jì)過程中,為了保障人員和資料安全,引入了多種傳感器協(xié)同工作提供多重保護(hù)機(jī)制,主要包括:末列密集架上裝有末列到位傳感器用于移動(dòng)過程中檢測(cè)是否移動(dòng)到最末端;任意兩列之間都裝有列間到位傳感器,監(jiān)測(cè)兩列之間是否移動(dòng)到位;每列上都裝有防墜落傳感器,監(jiān)測(cè)物品是否墜落,如果有物品墜落要強(qiáng)制硬件鎖定,密集架不能移動(dòng);每列上都裝有強(qiáng)制鎖定按鍵,人員進(jìn)入時(shí)可按下強(qiáng)制鎖定按鍵,強(qiáng)制硬件鎖定,忽略任何移動(dòng)指令;兩列之間裝有紅外對(duì)射防夾傳感器,人員操作時(shí),進(jìn)行系統(tǒng)鎖定,提供雙重保護(hù);主控列上裝有RFID讀寫器,操作人員刷卡認(rèn)證之后,可以通過主控列上的觸摸屏完成取放操作,為系統(tǒng)提供”脫機(jī)”控制功能,避免因意外的網(wǎng)絡(luò)故障而無法獲取資料。
Freescale公司的MC9S08DZ60內(nèi)部集成了支持CAN2.0A/B協(xié)議的MSCAN模塊。MSCAN模塊包含3個(gè)使用本地優(yōu)先級(jí)的發(fā)送寄存器5個(gè)FIFO的接收寄存器,并提供了64 位的掩碼寄存器用于標(biāo)志符的識(shí)別,可靈活組合為2個(gè)32 位/4個(gè)16位/8個(gè)8 位的寄存器,且支持11 位標(biāo)識(shí)符標(biāo)準(zhǔn)幀和29位標(biāo)識(shí)符擴(kuò)展幀,總線消息尋址十分靈活[5]。同時(shí)DZ60提供了2個(gè)SCI、SPI、IIC、TPM、A/D、BDG等諸多功能模塊,資源豐富,應(yīng)用廣泛,因此本系統(tǒng)選用該芯片作為主控MCU,進(jìn)行硬件設(shè)計(jì)。系統(tǒng)的主控列與移動(dòng)列控制器采用近似的硬件設(shè)計(jì),部署不同的軟件。
MSCAN模塊需要配合CAN收發(fā)器使用,本文選用高速CAN收發(fā)器TJA1040[5],它適用于較高通信速率和干擾環(huán)境下的CAN總線通信,為良好的收發(fā)奠定基礎(chǔ)。CAN總線收發(fā)器的電路連接如圖3所示。為實(shí)現(xiàn)CAN總線各節(jié)點(diǎn)真正的電氣隔離,CAN模塊的RXD/TXD經(jīng)由高速光耦6N137之后再與TJA1040的RXD/TXD相連,且光耦部分的VCCA/VCCB通過帶隔離輸出的開關(guān)電源模塊進(jìn)行隔離,為加強(qiáng)保護(hù)系統(tǒng)中還添加了靜電保護(hù)裝置PESD1CAN。
圖3 CAN總線收發(fā)器電路連接
系統(tǒng)運(yùn)用多種傳感器進(jìn)行狀態(tài)檢測(cè),選用了單總線芯片DS18B20用于溫度采集,電壓式濕度傳感器HIH-5030用于濕度采集,Kingsensor紅外光幕用于人員檢測(cè)和物品墜落檢測(cè),限位開關(guān)和超聲波傳感器用于輔助電機(jī)控制。
CAN協(xié)議規(guī)定標(biāo)準(zhǔn)的數(shù)據(jù)幀有11 位標(biāo)識(shí)符,擴(kuò)展幀有29位標(biāo)識(shí)符[6],但在實(shí)際的軟件開發(fā)過程,開發(fā)人員需要針對(duì)特定的應(yīng)用環(huán)境對(duì)標(biāo)識(shí)符進(jìn)行協(xié)議編制,以提升軟件開發(fā)效率。
本系統(tǒng)中由于每組密集架不超過31列,因此地址碼使用5位二進(jìn)制進(jìn)行編碼,每個(gè)列分配一個(gè)唯一的地址碼,在系統(tǒng)初始化時(shí)通過讀取一組撥碼開關(guān)的狀態(tài)而設(shè)定[7]。為提高通信效率,本系統(tǒng)只使用標(biāo)準(zhǔn)數(shù)據(jù)幀進(jìn)行數(shù)據(jù)傳輸,并將標(biāo)準(zhǔn)幀11位標(biāo)識(shí)符中的ID10作為主從模式設(shè)置位。0代表主控列發(fā)送數(shù)據(jù)到移動(dòng)列,1代表移動(dòng)列發(fā)送數(shù)據(jù)到主控列。將標(biāo)識(shí)符ID4-ID0用作目的地址,ID9-ID5用作源地址,子節(jié)點(diǎn)的目的地址設(shè)為0,表示廣播幀[7]。由于CAN協(xié)議中規(guī)定標(biāo)識(shí)符高7位不能全為隱性位,源地址排除31,而0保留,主控列負(fù)責(zé)調(diào)度優(yōu)先級(jí)較高,地址設(shè)置為1,因此實(shí)際可用的移動(dòng)列地址為2~30。
CAN數(shù)據(jù)幀的發(fā)送需要將數(shù)據(jù)寫入MSCAN數(shù)據(jù)緩沖區(qū),MSCAN緩沖區(qū)結(jié)構(gòu)與應(yīng)用協(xié)議結(jié)構(gòu)如表1所示。
表1 MSCAN緩沖區(qū)結(jié)構(gòu)與應(yīng)用協(xié)議結(jié)構(gòu)
4.2 軟件流程
鑒于CAN總線的數(shù)據(jù)傳播方式為廣播,因此總線上的每個(gè)節(jié)點(diǎn)都需要過濾無關(guān)數(shù)據(jù),以提高數(shù)據(jù)處理效率。MSCAN模塊提供了靈活的數(shù)據(jù)幀過濾功能,通過聯(lián)合設(shè)置標(biāo)識(shí)符驗(yàn)證模式寄存器、標(biāo)識(shí)符寄存器和標(biāo)識(shí)符掩碼寄存器可以滿足各種應(yīng)用需求[8-9]。通過標(biāo)識(shí)符掩碼寄存器指定哪些位參與匹配檢查,哪些位忽略不計(jì),把接收到的數(shù)據(jù)幀標(biāo)識(shí)符和標(biāo)識(shí)符寄存器中的標(biāo)識(shí)符進(jìn)行匹配,如果匹配通過,則把該數(shù)據(jù)幀存入接收緩沖區(qū)中,否則拋棄該幀[10]。本系統(tǒng)中所有CAN模塊均設(shè)置為只接受廣播幀和發(fā)送給自己的幀,根據(jù)協(xié)議規(guī)定,MSCAN模塊可接受的數(shù)據(jù)幀配置如表2所示。
表2 MSCAN模塊可接受的數(shù)據(jù)幀配置
續(xù)表2
MSCAN的幀過濾機(jī)制,不但簡(jiǎn)化了軟件處理的復(fù)雜度,而且為系統(tǒng)擴(kuò)展提供了有利條件。本控制系統(tǒng)軟件分為移動(dòng)列控制部分和主控列控制部分,移動(dòng)列核心為各種CAN命令幀的解析以及運(yùn)動(dòng)控制。主控列軟件的處理流程與移動(dòng)列類似,在此基礎(chǔ)上添加移動(dòng)控制策略和信息轉(zhuǎn)發(fā)策略即可,這樣可以有效提高軟件開發(fā)與調(diào)試的效率。
5.1 運(yùn)動(dòng)控制
(1) 原則上移動(dòng)列在移動(dòng)狀態(tài)下,遵循邊移動(dòng)邊檢測(cè)的原則,一旦到位傳感器檢測(cè)到移動(dòng)到位,則立即停止電機(jī),并向主控列發(fā)送本列到位信息,但僅如此不足以應(yīng)對(duì)復(fù)雜的實(shí)際應(yīng)用場(chǎng)景中。出于安全考慮,系統(tǒng)中還添加了到位傳感器失效保護(hù)功能,當(dāng)傳感器失效時(shí),能在超過預(yù)設(shè)距離時(shí)自動(dòng)停止并自動(dòng)鎖定架體,防止架體沖出軌道、發(fā)生碰撞或側(cè)翻。失效保護(hù)通過使用可編程定時(shí)器模塊TPM作為定時(shí)時(shí)鐘源,啟動(dòng)定時(shí),邊移動(dòng)邊計(jì)時(shí),精確控制時(shí)長(zhǎng),超時(shí)停止。此外移動(dòng)裝置上還裝有阻力檢測(cè)傳感器,通過電流變化反映是否因意外障礙物而受阻。其他類型傳感器也悉數(shù)添加冗余設(shè)計(jì),防止部分傳感器失效造成架體運(yùn)行碰撞、側(cè)翻。
(2) 當(dāng)密集架通道打開時(shí),多列電機(jī)會(huì)同時(shí)運(yùn)動(dòng),即使是同一型號(hào)同一批次的電機(jī),也存在自身速度差異,會(huì)造成列間距不均等的情況,而引發(fā)碰撞;而各個(gè)密集架體負(fù)載的資料數(shù)量不等,架體的重量也不均等,同樣會(huì)導(dǎo)致速度差異。針對(duì)這個(gè)問題,硬件上為每列添加超聲波傳感器檢測(cè),軟件上通過讀取超聲波的反饋,自動(dòng)微調(diào)各個(gè)電機(jī)的速度,以屏蔽速度差異,維持等距。
(3) 由于密集架體較重,所以電機(jī)控制應(yīng)遵循“高速啟動(dòng),勻速前進(jìn),低速無碰撞著落”原則進(jìn)行,速度參數(shù)的調(diào)整需要結(jié)合架體承重、運(yùn)動(dòng)距離等進(jìn)行測(cè)算。
5.2 CAN控制
(1) 組建CAN通信網(wǎng)絡(luò)時(shí),CAN節(jié)點(diǎn)地址在系統(tǒng)初始化時(shí)通過讀入一組外部撥碼開關(guān)的狀態(tài)來設(shè)置,設(shè)置簡(jiǎn)單靈活,方便系統(tǒng)擴(kuò)展。
(2) CAN通信網(wǎng)絡(luò)中所有的節(jié)點(diǎn)都必須使用統(tǒng)一的位速率。位速率大小主要取決于應(yīng)用環(huán)境所需要的通信距離。本系統(tǒng)通信距離限定為兩百米左右,位速率設(shè)定為250 kbit/s。該速率通信高效可靠,可及時(shí)發(fā)現(xiàn)系統(tǒng)隱患,方便故障定位和排查。故障監(jiān)控可充分利用MSCAN模塊的錯(cuò)誤中斷,通過跟蹤錯(cuò)誤計(jì)數(shù),以決定是否需要進(jìn)一步診斷,通過讀取CRFLG寄存器標(biāo)志位,可以判斷錯(cuò)誤/警告的類型[11]。
(3) 為降低系統(tǒng)功耗,當(dāng)系統(tǒng)狀態(tài)機(jī)為Idle時(shí),啟用MSCAN休眠模式,并在總線上有數(shù)據(jù)時(shí)通過中斷喚醒。
(4) 用戶終端管理軟件部署調(diào)度策略,以應(yīng)對(duì)多個(gè)資料統(tǒng)一取/放問題。當(dāng)開架請(qǐng)求涉及多組密集架時(shí),需要首先根據(jù)組信息,按照距離入口由近及遠(yuǎn)的順序加入命令處理隊(duì)列。主控列也部署有移動(dòng)策略,收到一組多列存取指令時(shí),根據(jù)涉及到的列數(shù)、列序號(hào)以及固定列的位置,采用類似電梯調(diào)度的移動(dòng)策略,盡量避免路徑重復(fù),有效提高效率。
針對(duì)密集架控制系統(tǒng),傳統(tǒng)的RS485總線實(shí)現(xiàn)與本系統(tǒng)實(shí)現(xiàn)方式,各方面性能對(duì)比如下:
(1) 實(shí)時(shí)性:RS485是單主從結(jié)構(gòu),通信只能由主機(jī)發(fā)起,多從機(jī)通信必須經(jīng)主機(jī)中轉(zhuǎn),而CAN是多主從結(jié)構(gòu),任意節(jié)點(diǎn)均可發(fā)送數(shù)據(jù),互相通信,這在移動(dòng)列運(yùn)動(dòng)時(shí)檢測(cè)鄰居列是否運(yùn)動(dòng)到位時(shí),尤其重要。且由于系統(tǒng)中使用多種多路傳感器,而傳感器事件屬于隨機(jī)突發(fā)事件,隨時(shí)可能上報(bào)數(shù)據(jù)。針對(duì)隨機(jī)突發(fā)事件,RS485只能通過輪詢來解決,而CAN的多主機(jī)制可直接實(shí)現(xiàn),效率優(yōu)劣顯而易見。
(2) 總線利用率:當(dāng)同時(shí)有多個(gè)節(jié)點(diǎn)同時(shí)需要上報(bào)數(shù)據(jù)時(shí),RS485只能在輪詢發(fā)現(xiàn)后,逐一進(jìn)行通信。而CAN通過它獨(dú)特的逐位仲裁以及重發(fā)機(jī)制,可以自動(dòng)解決問題,總線利用率明顯提升。
(3) 錯(cuò)誤檢測(cè):RS485無法識(shí)別非物理錯(cuò)誤,容易造成總線癱瘓,而CAN控制器擁有完善的錯(cuò)誤檢測(cè)機(jī)制,且如果節(jié)點(diǎn)發(fā)生嚴(yán)重錯(cuò)誤則自動(dòng)閉鎖,脫離總線。
(4) 軟件開發(fā)復(fù)雜度:CAN的廣播與應(yīng)答機(jī)制可以減少交互次數(shù)從而降低軟件開發(fā)復(fù)雜度,系統(tǒng)中需要處理的交互歸納如表3,其中通信方向0為主控列發(fā)送數(shù)據(jù)到移動(dòng)列,1反方向傳輸,N為移動(dòng)列數(shù)量。
表3 軟件開發(fā)交互次數(shù)對(duì)比
從表3可以看出,RS485需要接近N倍于CAN的交互次數(shù),加上需要自定義確認(rèn)重發(fā)機(jī)制,軟件控制比較復(fù)雜。
(5) 通信速率與穩(wěn)定性:主控CAN節(jié)點(diǎn)通過串口連接上位機(jī),每隔50ms查詢各移動(dòng)列的狀態(tài)數(shù)據(jù),并記錄各移動(dòng)列的應(yīng)答編號(hào)、應(yīng)答數(shù)據(jù)與時(shí)間,截取不間斷1小時(shí)測(cè)試數(shù)據(jù),如表4所示,其中t為時(shí)間,v為速率,r為正確幀數(shù),w為錯(cuò)誤幀數(shù)。
表4 測(cè)試數(shù)據(jù)
通過表4可以看出,數(shù)據(jù)幀數(shù)量隨時(shí)間線性增加,沒有出現(xiàn)錯(cuò)誤幀。通過檢查應(yīng)答編號(hào)也沒有發(fā)現(xiàn)丟幀,說明在兩百米范圍內(nèi)可以實(shí)現(xiàn)接近250kbit/s的穩(wěn)定傳輸。在同等環(huán)境下,RS485通信在30分鐘之內(nèi)就出現(xiàn)了錯(cuò)誤幀。
通過以上對(duì)比,不難發(fā)現(xiàn),CAN相較于RS485在多個(gè)方面都更勝一籌。
CAN總線是目前唯一具有國(guó)際標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線,其高可靠性、低功耗、結(jié)構(gòu)簡(jiǎn)單等特點(diǎn),使其具有廣泛的應(yīng)用前景。本文工作受到國(guó)家自然科學(xué)基金項(xiàng)目(項(xiàng)目編號(hào)61202028)的部分資助,屬于該項(xiàng)目中通信方式應(yīng)用研究及現(xiàn)場(chǎng)總線的無線接入研究的一部分,也是該項(xiàng)目的橫向延伸應(yīng)用案例之一,對(duì)基于CAN總線的智能型密集架控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行了研究,闡述了控制系統(tǒng)的軟硬件設(shè)計(jì)方案,并對(duì)系統(tǒng)實(shí)現(xiàn)的核心技術(shù)要點(diǎn)進(jìn)行了詳細(xì)闡釋。最后通過與RS485實(shí)現(xiàn)方式的全面比對(duì),詮釋了本系統(tǒng)在實(shí)時(shí)性、總線利用率、錯(cuò)誤檢測(cè)、軟件復(fù)雜度等方面的絕對(duì)優(yōu)勢(shì)。經(jīng)實(shí)踐測(cè)試,該控制系統(tǒng)實(shí)時(shí)性強(qiáng)、可靠性高,打破了常規(guī)智能電動(dòng)密集架控制系統(tǒng)帶來的性能瓶頸,作為RS485總線應(yīng)用的一種優(yōu)化替代方案,本系統(tǒng)也可為同類的其他應(yīng)用提供借鑒。
[1] 裴春梅,王艷秋,楊秀清,等.基于MODBUS協(xié)議的密集架智能倉(cāng)儲(chǔ)通信系統(tǒng)設(shè)計(jì)[J].物流技術(shù),2015,34(2):127-129,166.
[2] 張國(guó)宇,鄒衛(wèi)軍.基于μC/OS-II和ModbusRTU協(xié)議的密集架控制軟件設(shè)計(jì)[J].無線互聯(lián)科技,2014(2):52-54.
[3] 張芬.基于密集架的智能倉(cāng)儲(chǔ)管理系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)[D].南京:南京理工大學(xué),2014.
[4] 張曉焱,吳士力.基于MC9S08DZ60處理器CAN總線型車身控制系統(tǒng)的設(shè)計(jì)[J].煤炭技術(shù),2010,29(11):162-163.
[5] 袁洪芳,金鑫.基于MC9S08DZ60的CAN總線振動(dòng)傳感器設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009,17(7):23-25.
[6] 饒運(yùn)濤,鄒繼軍,王進(jìn)宏,等.現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)[M].2版.北京:北京航空航天大學(xué)出版社,2007.
[7] 黃敏雄.車載網(wǎng)絡(luò)技術(shù)的應(yīng)用與開發(fā)研究[D].成都:電子科技大學(xué),2011.
[8] 王宜懷,劉曉升.嵌入式技術(shù)基礎(chǔ)與實(shí)踐[M].北京:清華大學(xué)出版社,2007.
[9]FreescaleSemiconductorInc.MC9S08DZ60DataSheet[M].2006.
[10]FreescaleSemiconductorInc.MSCANBlockGuideV02.15[M].2004.
[11]FreescaleSemiconductorInc.Ascalablecontrollerareanetwork(MSCAN)interruptsapplicationnote[M].2002.
RESEARCH ON INTELLIGENT ELECTRICAL SERRIED SHELF CONTROL SYSTEM BASED ON CAN BUS
Wang Yuli1Wang Yihuai2
1(SuzhouIndustrialParkInstituteofVocationalTechnology,Suzhou215123,Jiangsu,China)2(SchoolofComputerScienceandTechnology,SoochowUniversity,Suzhou215006,Jiangsu,China)
Most of the intelligent electric serried shelf control system using RS485 mode control, so it is poor real-time, bus utilization is low, the software control is complex. Aiming at this situation, the design of the intelligent electric serried shelf control system based on CAN bus is proposed. 8-bit microcontroller MC9S08DZ60 with embedded CAN controller MSCAN is used as the master MCU, and the high-performance CAN transceiver TJA1040 is adopted to set up the CAN communication network to provide efficient data transmission channel. It integrates multiple sensor devices to establish multiple protection mechanisms, and add the necessary failure protection to deal with complex on-site environment. It makes full use of CAN protocol to reduce the software design complexity, and with a good mobile scheduling strategy to enhance the operation speed. The experimental results show that the control system has high communication speed, is safe and reliable, and effectively breaks the performance bottleneck caused by RS485, and fully satisfies the real-time, reliability and interoperability requirements of the serried shelf control.
Intelligent electrical serried shelf RS485 CAN
2016-04-04。國(guó)家自然科學(xué)基金項(xiàng)目(61202028)。王玉麗,講師,主研領(lǐng)域:嵌入式系統(tǒng)應(yīng)用。王宜懷,教授。
TP3
A
10.3969/j.issn.1000-386x.2017.04.044