基于CAN總線的智能電表集中器的設計
集中器系統(tǒng)采用數序程序設計,按功能模塊設計程序,由主程序調用各個功能模塊程序實現各個相應功能,各個功能模塊通過調用底層函數完成相應的操作。具體流程見圖4,啟動后,開始初始化系統(tǒng)。系統(tǒng)進入等待命令模式,如果有上位機操作命令或有定時中斷發(fā)生則進入對時程序,對時如果超出一定時間還未成功則向上位機報警。
對時成功后,集中器繼續(xù)等待上位機的讀數命令或等待中斷讀數命令。當收到讀數的命令后,定時讀數使集中器按設置的時間,自動讀取表頭采集來的數據;讀數使集中器讀取當前表頭的數據。
圖4系統(tǒng)軟件流程圖
集中器通過CAN總線可以掛載最多100個表頭,集中器發(fā)出CAN總線設備的ID。每個分系統(tǒng)表接收到對應的ID號后,根據系統(tǒng)發(fā)出的讀表頭命令來反饋數據。如果CAN通訊有故障,CAN控制器通訊將報故障。如系統(tǒng)回路正常,集中器的發(fā)送命令數據包。每幀CAN數據包含8字節(jié),因為每次讀數的數據流量不是很大,所以每次通訊只需要使用一幀CAN數據即可,表頭ID使用幀ID來識別,每個表頭對應獨立的幀ID。
集中器發(fā)送CAN數據命令包到CAN總線,表頭根據各自的ID選擇接收讀表命令后發(fā)送應答數據到CAN總線上。
集中器將接收到的應答數據提取出電表讀數存儲在flash中。CAN數據收發(fā)工作流程如圖5所示。
圖5數據收發(fā)流程圖
4 結束語
智能電表集中器是遠程抄表管理系統(tǒng)的重要組成部分,集中器工作的穩(wěn)定性直接影響到了整個系統(tǒng)的效率。
本文給出了一種基于CAN集中器的詳細設計,分析了主要外圍接口電路,根據CAN總線的數據幀格式對收發(fā)數據流程進行了介紹。本設計作為智能電表抄表系統(tǒng)的一部分,目前成功應用于某些遠程抄表系統(tǒng)中,由于成本適中、性能穩(wěn)定,取得了較好的經濟效益,具有很好的推廣前景,同時經過簡單的修改就可以開發(fā)出其他的遠程抄表系統(tǒng),如燃氣遠程抄表系統(tǒng)等。
摘要:介紹了智能電表集中器的原理,分析了相關的硬件電路,設計了具體的軟件的控制流程。該集中器具有獨立存儲空間、實時性強、穩(wěn)定性高等優(yōu)點,在具體的應用中取得較好的效果。
0 引言
目前,我國城市居民用戶的電表、水表、天然氣表很多是人工抄表,由抄表工作人員每月逐個查抄各種儀表,也有很多地區(qū)已經通過抄表改造工程實現了集中抄表。
通過集中抄表系統(tǒng)節(jié)約了大量的人力、物力,而且采抄數據的周期縮短,準確度提高。隨著中國城市化的發(fā)展,這種改造工程正在全面展開。由于目前已經使用的遠程抄表還面臨一些挑戰(zhàn):比如初期成本較高,同時總線上傳輸的數據是終端用戶所消費的水、電、氣等重要數據,對總線的抗干擾性要求非常高,要具有抵抗容性、感性的偶合干擾的能力,為節(jié)約成本,要采用遠程供電的方式給從設備提供電源,以盡可能減少元器件的使用。
為了解決以上問題,本文設計了一種基于CAN總線的遠程電表抄表系統(tǒng)集中器。基于CAN總線的智能電表系統(tǒng)具有造價較低,可靠性高,組網簡單,管理方便,操作簡捷等優(yōu)點,并且可以通過擴展和升級硬件,利用有線網絡或無線網絡通信,把集中器采集到的實時數據發(fā)送到售電公司的管理系統(tǒng)中統(tǒng)一管理,通過應用線損分析、遠程通斷電、防竊電分析等功能達到更高的智能化。
1 集中器的功能及原理分析
一般的智能電表系統(tǒng)由四部分組成:表頭,集中器,通訊器,上位機系統(tǒng)。具體如圖1所示,其工作原理是通過一體化載波表或安裝在電表表尾的電力計量傳感系統(tǒng)模塊經CAN總線組網,集中器按設定好的時間段接收數據并保存到內部flash中,當上位機發(fā)來讀數據的信號后上位機通過RS232或RS485讀數,讀到的數據通過網絡傳送到用電管理中心。
在遠程抄表表系統(tǒng)中,集中器是一個重要組成部分。
集中器通過CAN總線控制并讀取表頭的數據,數據存儲在集中器的flash中。集中器執(zhí)行從上位機發(fā)送的控制命令:
對時、讀flash、讀表數、限電、增加表頭地址等。
集中器通過CAN控制器發(fā)送讀表命令信號到總線上,每個表頭根據讀表命令將采集的信號通過CAN總線發(fā)送到集中器。集中器將采集的信號存儲在flash芯片中。上位機通過串口發(fā)送讀數據信號到集中器,集中器就把存儲在flash中的數據傳送給上位機。
2 集中器硬件設計
主控芯片采用的是ST公司的STM32系列的STM32F103Tx,該系列單片機是ARM的CortexTM-M3處理器是最新一代的嵌入式ARM處理器,它為實現MCU的需要提供了低成本的平臺、縮減的引腳數目、降低的系統(tǒng)功耗,同時提供卓越的計算性能和先進的中斷系統(tǒng)響應。具有運行速度快(系統(tǒng)時鐘頻率最高可達72MHz)26個復用GPIO;64KB片上RAM;2個12位模數轉換器,1μs轉換時間(多達16個輸入通道);3個SPI,5個USARTs,2個IIC接口;片上256KBFLASH;2個看門狗,11個定時器;芯片具有獨立的實時時鐘,能夠相關資料豐富,提供單片機使用庫函數,用C語言編程十分方便,易于開發(fā)。
由于智能電表控制器需要很準確的實時性,以方便售電公司收取用電費用。因為主控芯片自帶實時時鐘,所以只需要外接獨立的32.768kHz的晶體。實時時鐘既可以通過寄存器設置年月日及具體時間,同時還有鬧鐘功能,定時中斷進行指定操作。
智能電表集中器的硬件部分結構如圖1所示,主要有ARM,Flash,時鐘芯片,接口電路,RS232,RS485,電源等組成。ARM作為控制芯片,有標準設計;ARM接口電路比較簡單,以下重點討論CAN總線接口和Flash接口設計。
圖1智能電表抄表系統(tǒng)結構框圖
評論