掃描二維碼
隨時隨地手機看文章
整個系統(tǒng)由監(jiān)控計算機、PC-CAN適配卡、智能監(jiān)控節(jié)點(n<110)、CAN總線網(wǎng)絡(luò)組成,其系統(tǒng)結(jié)構(gòu)如圖1所示。分布在現(xiàn)場的監(jiān)控節(jié)點可以獨立對電機進行智能控制和保護;監(jiān)控計算機可以通過CAN總線網(wǎng)和各個控制節(jié)點之間進行實時通信,從而實現(xiàn)潛水電泵機組的分散控制和集中監(jiān)管。
監(jiān)控系統(tǒng)中的控制節(jié)點由CAN控制器、CAN收發(fā)器和外圍電路(如:光耦隔離、I2C、LED顯示等)組成。監(jiān)控計算機可以選用普通PC或工控機IPC。PC-CAN適配卡用來完成CAN總線和監(jiān)控計算機之間的協(xié)議轉(zhuǎn)換,可以選用PCI總線適配卡、ISA總線適配卡或RS232串行通信適配器。各個控制節(jié)點之間通過屏蔽雙絞線互聯(lián)構(gòu)成CAN總線網(wǎng)絡(luò),總線兩端連接120Ω的阻抗匹配電阻,用來提高系統(tǒng)的穩(wěn)定性、增強系統(tǒng)的抗干擾能力。
3監(jiān)控節(jié)點的硬件設(shè)計
目前,市場上有兩種CAN總線器件可以選擇:一種是片內(nèi)集成CAN的微控制器,如P8XC591/2、87C196CA/CB、MC68376等;另一種是獨立的CAN控制器,如控制Philips公司的SJA1000、82C200、,Intel公司的82526、以及Microchip公司的MCP2510等,但是獨立的CAN控制芯片需要外接一個微處理器才能運行。本文設(shè)計中選用的是Philips公司的帶有在片CAN控制器的P87C591微型控制器,這樣大大簡化了節(jié)點的硬件電路設(shè)計,減少了程序的復(fù)雜程度,提高系統(tǒng)的可靠性。
3.1監(jiān)控節(jié)點的構(gòu)成
監(jiān)控節(jié)點硬件電路設(shè)計上采用了模塊化結(jié)構(gòu),由微控制器、CAN通信模塊、傳感器組件、數(shù)據(jù)采集模塊、電機控制模塊、LED顯示模塊、現(xiàn)場設(shè)置模塊組成,其整體結(jié)構(gòu)如圖2所示。根據(jù)具體情況可以只選用其中的部分模塊。例如:可以去掉顯示模塊和現(xiàn)場設(shè)置模塊,利用監(jiān)控計算機實現(xiàn)數(shù)據(jù)顯示和參數(shù)設(shè)置的功能。在單機運行時,可以不使用CAN通信模塊。
3.2監(jiān)控節(jié)點的功能
監(jiān)控節(jié)點各個組成部分的功能如下:
?。?)傳感器組件:用來檢測潛水電機的運行狀況,包括:溫度傳感器、電流互感器、液位傳感器。分別用來檢測電機三相定子的溫度、三相主電流、和電泵腔內(nèi)的水位,可以有效的監(jiān)測潛水電機的過流、過熱、缺相、短路、滲漏等異?,F(xiàn)象。
?。?)數(shù)據(jù)采集模塊:將傳感器采集到的模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號并通過多路模擬開關(guān)送入微控制器,CPU得到電機定子溫度、電流、液位信息做出相應(yīng)的判斷,并送至不同的子程序進行相應(yīng)的處理。
?。?)電機控制模塊:CPU判斷電機定子溫度、電流、液位中的任一項值超出正常值范圍時,都會通過SSR(過零觸發(fā)型交流固態(tài)繼電器)觸發(fā)相應(yīng)的異常處理電路,使電機得到保護。
(4)LED顯示模塊:采用基于I2C總線的顯示技術(shù),通過LED數(shù)碼管實時顯示電機運行過程中定子的溫度和電流值。并可以在設(shè)置模式下顯示待定置參數(shù)的當(dāng)前值。當(dāng)電機出現(xiàn)非正常停機時發(fā)光二極管可以指示出故障的類型,方便檢查處理。
?。?)CAN通信模塊:CAN總線通信接口電路主要由P87C591的片內(nèi)CAN驅(qū)動器SJA1000、6N137高速光隔、CAN收發(fā)器PCA82C250組成。P87C591完成CAN協(xié)議的應(yīng)用層功能,SJA1000完成物理層和數(shù)據(jù)鏈路層的功能。PCA82C250提供了對總線差動發(fā)送和接受數(shù)據(jù)的功能,有效的提高了總線的抗干擾能力,實現(xiàn)了保護總線、降低射頻干擾等功能。6N137隔離控制電路和收發(fā)器電路,能夠有效地抑制由總線引入的干擾,進一步提高了系統(tǒng)的可靠性。
(6)現(xiàn)場設(shè)置模塊:采用基于8255的鍵盤和基于X25045的E2PROM,實現(xiàn)節(jié)點工作參數(shù)現(xiàn)場設(shè)定能。X25045存儲報警電流、停機電流、報警溫度、停機溫度、節(jié)點地址、波特率等信息。這些參數(shù)都可以通過按鍵進行設(shè)置。除了節(jié)點地址外,其它的參數(shù)也可以通過監(jiān)控計算機設(shè)置。
4監(jiān)控節(jié)點的軟件設(shè)計
4.1軟件設(shè)計的總體結(jié)構(gòu)
與節(jié)點硬件設(shè)計相一致,軟件設(shè)計也遵循模塊化的設(shè)計原則,使控制軟件具有易讀、易擴展和易維護的優(yōu)點。通過C51語言編寫相應(yīng)的軟件模塊實現(xiàn)上述監(jiān)控節(jié)點的各種功能。軟件的各功能模塊之間通過入口和出口參數(shù)相互聯(lián)系,組合靈活且方便,減少了調(diào)試時間,縮短了開發(fā)周期。監(jiān)控節(jié)點的軟件設(shè)計流程如圖3所示。
4.2監(jiān)控節(jié)點通信程序設(shè)計
監(jiān)控節(jié)點的通信采用CAN總線2.0A協(xié)議,通信模塊的軟件設(shè)計主要由初始化程序、發(fā)送程序、接收程序三部分組成。其中初始化程序是實現(xiàn)通信的關(guān)鍵,它主要用來完成CAN控制器工作方式的選擇,即對P87C591中CAN控制器控制段中的寄存器進行設(shè)置,包括:總線定時寄存器和輸出控制寄存器設(shè)置;接收驗收濾波寄存器和濾波屏蔽寄存器設(shè)置;設(shè)置發(fā)送數(shù)據(jù)幀類型(標(biāo)準(zhǔn)幀或擴展幀)、標(biāo)識符、數(shù)據(jù)長度。初始化過程是在CAN控制器復(fù)位模式下完成的,監(jiān)控節(jié)點通信的初始化程序流程如圖4所示。
監(jiān)控節(jié)點與CAN總線之間的數(shù)據(jù)交換是通過發(fā)送程序和接收程序?qū)崿F(xiàn)的。發(fā)送程序流程如圖5所示,從圖5中可以看出系統(tǒng)的每個節(jié)點采用定時中斷的方式主動向監(jiān)控計算機發(fā)送數(shù)據(jù)。這是利用了CAN總線可以采用多主機方式通信的特點。由于實時監(jiān)控功能是由各個控制節(jié)點完成,而監(jiān)控計算機主要用來實現(xiàn)管理功能,所以采用了定時上傳數(shù)據(jù)的方法,而沒有實時上傳所有傳感器采集到的數(shù)據(jù),從而減輕了總線負擔(dān)。這也是分布式控制方法相對于集中控制方法的一個優(yōu)點。圖6為接收程序流程圖,接收緩沖區(qū)用來存放CAN總線上發(fā)來的數(shù)據(jù),CPU讀取數(shù)據(jù)后接收緩沖區(qū)將被清空,等待接收新的數(shù)據(jù)。
5結(jié)束語
本文設(shè)計的基于CAN總線的分布式監(jiān)控系統(tǒng)智能節(jié)點經(jīng)過現(xiàn)場調(diào)試,可以對潛水電機運行過程中出現(xiàn)的過流、過熱、短路、滲漏情況做出處理,對電機起到了保護作用;節(jié)點與上位計算機之間的數(shù)據(jù)通信穩(wěn)定可靠;可以通過現(xiàn)場設(shè)置模塊修改節(jié)點的參數(shù)。實驗表明了節(jié)點的適用性和可靠性,開發(fā)過程中所提出的技術(shù)方案和實現(xiàn)方法可以在分布式監(jiān)控系統(tǒng)及工業(yè)底層監(jiān)控網(wǎng)絡(luò)的現(xiàn)場智能節(jié)點設(shè)計中推廣應(yīng)用。
本文作者創(chuàng)新點:設(shè)計了一種基于P87C591的智能監(jiān)控節(jié)點,在軟/硬件設(shè)計中均采用了模塊化的結(jié)構(gòu),具有高度的靈活性和廣泛的適用性。
大家好,我是小麥。最近在調(diào)試一個CAN總線的設(shè)備遇到一些問題,簡單總結(jié)一下。本文會對CAN總線進行簡單介紹,CAN的硬件鏈路層,協(xié)議層,以及調(diào)試的一些心得。目錄什么是CAN總線?物理層差分信號連接方式CAN節(jié)點CAN協(xié)議...
關(guān)鍵字: CAN總線大家好,我是小麥。最近在調(diào)試一個CAN總線的設(shè)備時遇到了一些問題,在此簡單總結(jié)一下。本文將對CAN總線進行簡單介紹,包括CAN的硬件鏈路層、協(xié)議層,以及調(diào)試的一些心得。目錄什么是CAN總線?物理層差分信號連接方式CAN節(jié)...
關(guān)鍵字: CAN總線摘要:介紹了基于STC12C5A60S2單片機、SJA1000型CAN接口控制器以及PCA82C250串行收發(fā)器構(gòu)成的總線通信網(wǎng)絡(luò)。該網(wǎng)絡(luò)中遠端的CAN節(jié)點可監(jiān)測現(xiàn)場環(huán)境,并實現(xiàn)數(shù)據(jù)收發(fā)和串行通信,上位PC機利用VB6....
關(guān)鍵字: 單片機 CAN總線 VB6.0 環(huán)境參數(shù)關(guān)注、星標(biāo)公眾號,直達精彩內(nèi)容來源:整理與網(wǎng)絡(luò)素材最近在搞一個can協(xié)議,本文爭對一些can底層細節(jié)很到位,分享一下。1.簡介CAN總線由德國BOSCH公司開發(fā),最高速率可達到1Mbps。CAN的容錯能力特別強,CAN控...
關(guān)鍵字: CAN總線