一種智能電表集中器設(shè)計方案
集中器需要對與之相連的每個電表表頭采集數(shù)據(jù),所以數(shù)據(jù)量較大,從而對存儲有著較高的要求,故選用ST的M25P64-VMF6TP。該芯片為64M串行接口閃存,增強數(shù)據(jù)傳輸時鐘速率為50MHz;讀的吞吐量為50Mbps;接口為簡單的4線SPI(串行外圍設(shè)備接口)接口;深度降功耗模式間斷功耗,電流消耗僅為1uA。
M25P64Flash芯片,通過SPI總線與ARM相連。SPI總線系統(tǒng)是一種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息,一般使用4條線:串行時鐘線(SCL)、主機輸入/從機輸出數(shù)據(jù)線MISO(SDO)、主機輸出/從機輸入數(shù)據(jù)線MOSI(SDI)和低電平有效的從機選擇線CS。SPI以主從方式工作,通常有一個主設(shè)備和一個或多個從設(shè)備。
圖3為ARM與Flash的連接電路圖。以下幾點說明:(1)SCL串行時鐘信號,由主設(shè)備產(chǎn)生;(2)SDO主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入;(3)SDI主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出;(4)CS為片選,從設(shè)備使能信號,由主設(shè)備控制。(5)對7、15、16角外接上拉電阻,提高芯片輸入信號的噪聲容限增強抗干擾能力。
圖3Flash接口硬件電路圖
集中器系統(tǒng)采用數(shù)序程序設(shè)計,按功能模塊設(shè)計程序,由主程序調(diào)用各個功能模塊程序?qū)崿F(xiàn)各個相應(yīng)功能,各個功能模塊通過調(diào)用底層函數(shù)完成相應(yīng)的操作。具體流程見圖4,啟動后,開始初始化系統(tǒng)。系統(tǒng)進(jìn)入等待命令模式,如果有上位機操作命令或有定時中斷發(fā)生則進(jìn)入對時程序,對時如果超出一定時間還未成功則向上位機報警。
對時成功后,集中器繼續(xù)等待上位機的讀數(shù)命令或等待中斷讀數(shù)命令。當(dāng)收到讀數(shù)的命令后,定時讀數(shù)使集中器按設(shè)置的時間,自動讀取表頭采集來的數(shù)據(jù);讀數(shù)使集中器讀取當(dāng)前表頭的數(shù)據(jù)。
圖4系統(tǒng)軟件流程圖
集中器通過CAN總線可以掛載最多100個表頭,集中器發(fā)出CAN總線設(shè)備的ID。每個分系統(tǒng)表接收到對應(yīng)的ID號后,根據(jù)系統(tǒng)發(fā)出的讀表頭命令來反饋數(shù)據(jù)。如果CAN通訊有故障,CAN控制器通訊將報故障。如系統(tǒng)回路正常,集中器的發(fā)送命令數(shù)據(jù)包。每幀CAN數(shù)據(jù)包含8字節(jié),因為每次讀數(shù)的數(shù)據(jù)流量不是很大,所以每次通訊只需要使用一幀CAN數(shù)據(jù)即可,表頭ID使用幀ID來識別,每個表頭對應(yīng)獨立的幀ID。
集中器發(fā)送CAN數(shù)據(jù)命令包到CAN總線,表頭根據(jù)各自的ID選擇接收讀表命令后發(fā)送應(yīng)答數(shù)據(jù)到CAN總線上。
集中器將接收到的應(yīng)答數(shù)據(jù)提取出電表讀數(shù)存儲在flash中。CAN數(shù)據(jù)收發(fā)工作流程如圖5所示。
圖5數(shù)據(jù)收發(fā)流程圖
4 結(jié)束語
本設(shè)計作為智能電表抄表系統(tǒng)的一部分,目前成功應(yīng)用于某些遠(yuǎn)程抄表系統(tǒng)中,由于成本適中、性能穩(wěn)定,取得了較好的經(jīng)濟效益,具有很好的推廣前景,同時經(jīng)過簡單的修改就可以開發(fā)出其他的遠(yuǎn)程抄表系統(tǒng),如燃?xì)膺h(yuǎn)程抄表系統(tǒng)等。
評論