国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

CAN總線單片機PIC18F4580在動平衡機測量系統(tǒng)中的應用

2013-12-29 00:00:00張凱
電腦知識與技術 2013年4期

摘要:以集成CAN控制器的PIC18F4580單片機為測量系統(tǒng)中的控制單元,介紹了基于CAN總線的控制智能節(jié)點的設計方法,給出了系統(tǒng)主要硬件和軟件設計流程。該電路能夠與主節(jié)點測量單元正常通信,能夠實現(xiàn)啟動測量、新轉子加入等功能,具有可靠性高、實時性強等特點,為基于PIC18F4580微處理器的CAN總線通信電子控制單元的開發(fā)提供了一定的科學依據(jù)。

關鍵詞:PIC18F4580;CAN總線;動平衡機

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2013)04-0934-04

Application of CAN Bus in Measuring System for Dynamic Balancing Machines with PIC18F4580 Microcontroller

ZHANG Kai

(College of Software, Tongji University, Shanghai 201804, China)

Abstract: The PIC18F4580 microcontroller with integrated CAN controller is used as the control unit for measuring system of dynamic balancing machine. The paper introduced the design method of intelligent nodes based on CAN bus, giving the main design process of the hardware and software. The node with high reliability can communicate with the master node normally and be provided with the function of starting the measurement, adding new rotor and so on.

Key words: PIC18F4580; CAN bus; ECU; dynamic balancing machine

1 概述

控制器局域網(Controller Area Network, CAN)是一種有效支持分布式控制或實時控制的串行通信網絡,由于其高性能、高可靠性及獨特的設計,CAN總線越來越受到工業(yè)界的重視,并被公認為幾種最有前途的現(xiàn)場總線之一,成為一種國際標準(ISO 11898)[1]。CAN總線硬件連接簡單,有良好的可靠性、實時性和性價比,簡單實用,網絡成本低,特別適合于電磁輻射強、震動大、干擾強的場合。眾所周知,其已經廣泛的應用在解決汽車中眾多的控制和數(shù)據(jù)交換問題[2],在動平衡機的測量系統(tǒng)中,控制單元與測量單元的數(shù)據(jù)交換也同樣存在著高實時性與高可靠性的要求。

本文以Microchip公司的內部集成CAN控制器的PIC18F4580單片機為核心,分析了動平衡機測量系統(tǒng)的整體架構以及測量單元與控制單元的通信原理,并著重介紹了基于CAN總線的動平衡機測量系統(tǒng)中控制單元的硬件電路設計以及軟件程序設計流程。

2 動平衡機測量系統(tǒng)的總體設計方案

該測量系統(tǒng)以一個主節(jié)點與一個分節(jié)點通信為例,其原理結構如圖1所示。

控制柜通過控制按鈕發(fā)出控制指令,通過繼電器來控制調速電機,轉子在電機的帶動下,一點的速度轉動,旋轉產生的振動通過測振傳感器檢測出來,振動信號通過濾波電路放大,進入測量單元,在測量單元中進行A/D轉換并進行數(shù)值計算,將得到的結果顯示到液晶顯示器,并同時發(fā)出反饋信號給控制單元。

3 測量單元軟硬件設計

3.1 硬件設計

測量單元采用雙CUP協(xié)同工作、共享SRAM的方式進行設計:SIMENSE公司的具有高性能數(shù)據(jù)處理能力的C167SR處理器對采集到的振動信號進行運算處理,并將其顯示到人機界面;采用Lattice公司的注重數(shù)據(jù)流傳與總線控制功能的im4A3-64/64微控制器對其外部接口電路進行處理。其主要功能結構如圖2。

im4A3-64/64微控制器通過CAN控制器與CAN總線連接,同CAN總線上的其他節(jié)點進行通信。

3.2 軟件設計

測量單元的軟件設計主要包括振動信號測量的算法設計、CPU間的通信原理設計等。關于動平衡的算法研究,國內外已經有很多成熟的算法[3]。這里主要介紹CPU間的通信過程與原理,以開始測量轉子的不平衡量這一功能為例,其軟件流程框圖如圖3。

4 控制單元軟件設計

4.1 硬件設計

在該單元的設計中,利用Microchip公司的PIC18F4580作為微處理器,由于其內部集成了CAN控制器功能,因此,結合CAN總線收發(fā)器即可完成CAN總線的接收和發(fā)送任務。這里考慮到工業(yè)現(xiàn)場可能存在較大的干擾,所以選用帶有信號隔離功能的CTM1050T作為收發(fā)器[4]。共模扼流圈起著EMI增強的功能,用于提高設備的EMI能力。電源芯片采用LM2595來進行24V轉5V,該芯片最大可以提供1A的電流,經過計算,滿足電路設計要求??刂瓢粹o所發(fā)出的是24V的電平或觸發(fā)信號,由于PIC18F4580在5V時判斷為高電位,因此,電路采用二極管反接5V電源將電壓鉗為于5V,并進行了防熱插拔等保護措施。單片機輸出接ULN2003來驅動繼電器,ULN2003工作電壓高,灌電流可達500MA,并且能夠在關態(tài)時承受50V的電壓。總體硬件設計結構如圖4。

4.2 軟件設計

軟件設計是系統(tǒng)設計的關鍵。使用開發(fā)軟件MAPLAB IDE,仿真器KIT3,以及靈活簡便的C語言。為了提高可理解性與可維護性,內部軟件設計采用了模塊結構,主要包括中斷優(yōu)先級設置,CAN初始化子函數(shù)void InitCAN(void),PIC18F4580端口初始化子函數(shù)void InitiaIIO(void),定時/計數(shù)器初始化子函數(shù)void InitTMR0(void)以及實現(xiàn)功能子函數(shù)等。程序流程圖如圖5所示。

其中,較為重要的是內置CAN控制器的初始化設置,主要包括發(fā)送寄存器、發(fā)送緩沖器、接收寄存器、接收緩沖器、波特率參數(shù)、標識符的設置等。每個節(jié)點都有自己獨一無二的標示符,在CAN2.0A協(xié)議中,PIC18F4580使用寄存器TXBSIDH和TXBSIDL來存放標識符。為了保證節(jié)點間能夠正常通信,各節(jié)點的波特率必須設置一致[5]。

5 實驗

采用本文設計的動平衡機測量系統(tǒng)的控制單元ECU與其測量單元通過CAN總線進行通信,并進行電機控制,可以實現(xiàn)開始測量、新轉子加入等功能。采用CAN分析儀(USB to CAN)對CAN總線進行監(jiān)控,利用計算機與CAN分析儀連接,并通過CAN總線采集控制單元與測量單元通信交互的數(shù)據(jù),CAN總線的通信波特率設置為100KBPS。實驗中采集到部分數(shù)據(jù)如圖6,這里以能夠正常通信的初始化的部分數(shù)據(jù)為例。

根據(jù)實際測量結果可以看出,總線沒有接收到錯誤幀,控制單元與測量單元可以正常通信,工作狀態(tài)正常。從接收到的數(shù)據(jù)表明,節(jié)點發(fā)送的標識符和數(shù)據(jù)與預定義的標識符與數(shù)據(jù)一致,節(jié)點接收到的數(shù)據(jù)的標識符也與預接收的數(shù)據(jù)標識符一致。

6 結論

CAN總線以其高可靠性、高性能以及獨特的設計,已經在工業(yè)總線領域得到了廣泛應用。該文設計了基于PIC18F4580單片機的動平衡機測量系統(tǒng)的控制單元,該控制單元具有集成度高、性能穩(wěn)定、抗電磁干擾能力強的特點。實驗表明,該控制單元運行穩(wěn)定,并能與測量單元進行可靠通信。

參考文獻:

[1] 于海生.CAN總線工業(yè)測控網絡系統(tǒng)的設計與實現(xiàn)[J].儀器儀表學報,2001(1).

[2] 曾銳利,肖云魁.CAN總線技術的汽車ECU設計[J].儀器儀表學報,2008(4).

[3] 李頂根.新式立式動平衡機的研制與工件不平衡量的測量[D].武漢:華中科技大學博士論文,2004.

[4] 周立功.iCAN現(xiàn)場總線原理與應用[M].北京:北京航空航天大學出版社,2007.

[5] 王義.CAN總線單片機PIC18F258在汽車電子控制單元中的應用[J].貴州師范大學學報:自然科學版,2012,28(1).

福鼎市| 托里县| 康马县| 雅江县| 辉南县| 富宁县| 贵港市| 怀安县| 保靖县| 宜兰县| 左权县| 泰和县| 嘉禾县| 开江县| 陆良县| 阳原县| 车致| 察雅县| 林芝县| 花莲市| 容城县| 邮箱| 宜良县| 元阳县| 永新县| 曲沃县| 乌什县| 得荣县| 滁州市| 绵阳市| 吉首市| 凤冈县| 寻甸| 安达市| 石首市| 蒙山县| 福海县| 包头市| 唐海县| 同德县| 锡林郭勒盟|