《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > STM32和CAN總線在溫度監(jiān)控系統(tǒng)中的應(yīng)用
STM32和CAN總線在溫度監(jiān)控系統(tǒng)中的應(yīng)用
摘要: 本文介紹了基于STM32和CAN總線的溫度監(jiān)控系統(tǒng)的設(shè)計(jì),,通過(guò)上位機(jī)與下位機(jī)的通信,,實(shí)現(xiàn)對(duì)溫度數(shù)據(jù)的監(jiān)控,,并經(jīng)初步實(shí)驗(yàn)達(dá)到了設(shè)計(jì)的要求
Abstract:
Key words :

     引言

  現(xiàn)代工業(yè)控制領(lǐng)域通常要測(cè)量很多信號(hào),將其轉(zhuǎn)化為計(jì)算機(jī)可以識(shí)別的二進(jìn)制信號(hào),,并利用計(jì)算機(jī)監(jiān)視和記錄各種測(cè)量的信號(hào)。這個(gè)過(guò)程就要涉及到信號(hào)的采集和處理,。CAN總線是一種串行多主總線,,它卓越的特性、極高的可靠性和獨(dú)特的設(shè)計(jì),,特別適合工業(yè)過(guò)程監(jiān)控設(shè)備的互連,,因此,,越來(lái)越受到工業(yè)界的重視,并已公認(rèn)為最有前途的現(xiàn)場(chǎng)總線之一,。本文介紹了基于STM32和CAN總線的溫度監(jiān)控系統(tǒng)的設(shè)計(jì),,通過(guò)上位機(jī)與下位機(jī)的通信,實(shí)現(xiàn)對(duì)溫度數(shù)據(jù)的監(jiān)控,,并經(jīng)初步實(shí)驗(yàn)達(dá)到了設(shè)計(jì)的要求,。

  1 系統(tǒng)總體方案概述

  系統(tǒng)總體框圖如圖1所示,本系統(tǒng)采用主站+從站的結(jié)構(gòu),,CAN主站主要實(shí)現(xiàn)溫度數(shù)據(jù)的存儲(chǔ)以及CAN總線協(xié)議和串口協(xié)議之間的橋接,,CAN 從站主要實(shí)現(xiàn)溫度的采集。CAN從站采集的溫度,,經(jīng)過(guò)CAN總線傳送到CAN主站,,主站將各從站的溫度值傳送到系統(tǒng)上位機(jī)中。上位機(jī)對(duì)各點(diǎn)的數(shù)據(jù)進(jìn)行實(shí)時(shí)曲線顯示并進(jìn)行存儲(chǔ),,上位機(jī)可以設(shè)定報(bào)警值,,當(dāng)節(jié)點(diǎn)溫度超過(guò)設(shè)定值的時(shí)候,上位機(jī)發(fā)出報(bào)警聲,。在沒(méi)有上位機(jī)的場(chǎng)合,,主站將數(shù)據(jù)以文本文檔的形式存儲(chǔ)在主站的SD卡中。

系統(tǒng)總體框圖

圖1 系統(tǒng)總體框圖

  2 系統(tǒng)硬件設(shè)計(jì)

  2.1 CAN主站硬件設(shè)計(jì)

  主站電路如圖2所示,,主要有電源模塊,、STM32模塊、CAN收發(fā)器模塊,、RS232串口模塊和SD卡模塊,。

  其中STM32模塊由STM32F103RBT6和周邊時(shí)鐘、復(fù)位,、調(diào)試等組成,。電源模塊由外部輸入+5V電壓,經(jīng)線性壓降A(chǔ)MS1117-3.3V后供 STM32使用,。CAN收發(fā)器模塊采甩NXP的高速收發(fā)器TJA1040,,TJA1040是PCA82C250的替代品,它完全符合ISO 11898標(biāo)準(zhǔn),,具有高速,、低功耗、低電磁輻射的優(yōu)點(diǎn),。RS232電平轉(zhuǎn)換芯片采用MAX3232,,它具有低功耗、高數(shù)據(jù)速率以及增強(qiáng)型ESD保護(hù)等特性,。采用專有的低壓差發(fā)送輸出級(jí),,+3.0 V至+5.5V供電時(shí)利用內(nèi)部雙電荷泵保證RS-232性能,。工作時(shí),電荷泵僅需要四個(gè)100 nF的小電容,。SD卡模塊采用四線制SPI總線與SD卡相連接,。

  2.2 CAN從站硬件設(shè)計(jì)

  從站電路如圖3所示,主要有電源模塊,、STM32模塊,,CAN收發(fā)器模塊,PT100模塊和從站地址選擇模塊,。

CAN主站,、從站電路框圖

圖2 CAN主站電路框圖                                                        圖3 CAN從站電路框圖

  其中電源模塊、STM32模塊和CAN收發(fā)器模塊與CAN主站相同,。PT100模塊,,采用傳感器測(cè)量電橋,為了保證電橋輸出電壓信號(hào)的穩(wěn)定性,,電橋的輸入電壓通過(guò)TL431穩(wěn)至2.5V,。從電橋獲取的差分信號(hào)通過(guò)兩級(jí)運(yùn)放放大后輸入STM32的AD輸入口。從站地址選擇模塊由8位撥碼開(kāi)關(guān)組成,,連接到 STM32 I/O的PC6-PC13,。

  3 系統(tǒng)軟件設(shè)計(jì)

  本系統(tǒng)軟件由CAN主站軟件、從站軟件以及Delphi上位機(jī)軟件構(gòu)成,。其中CAN主站和從站程序用C語(yǔ)言編寫,,上位機(jī)程序用Obieet Pascal編寫。

  3.1 CAN主站軟件設(shè)計(jì)

  CAN主站的功能是發(fā)送遠(yuǎn)程幀向從站查詢數(shù)據(jù),、通過(guò)AD的轉(zhuǎn)換結(jié)果計(jì)算芯片內(nèi)部溫度傳感器的溫度值,、接收從站發(fā)送的數(shù)據(jù)幀、發(fā)送溫度數(shù)據(jù)到上位機(jī)或存儲(chǔ)數(shù)據(jù)到SD卡,。CAN主站程序如圖4所示。

CAN主站,、寫SD卡程序流程圖

圖4 CAN主站程序流程圖                                               圖5 寫SD卡程序流程圖

  寫SD卡部分程序流程圖如圖5所示,,SD卡部分主要用到了移植的FATFS文件系統(tǒng)提供的訪問(wèn)FAT卷的應(yīng)用接口(Application Interface)。主要用到了以下函數(shù):

  ·f_mount-注冊(cè)/注銷一個(gè)工作區(qū)域

  ·f_open-打開(kāi)/創(chuàng)建一個(gè)文件

  ·f_close-關(guān)閉一個(gè)文件

  ·f_lseek-移動(dòng)/寫指針,,擴(kuò)展文件大小

  ·f_puts-寫字符串

  ·f_printf-寫一個(gè)格式化字符串

  3.2 CAN從站軟件設(shè)計(jì)

  CAN從站的主要功能是通過(guò)AD轉(zhuǎn)換器檢測(cè)PT100電橋的差分輸出電壓,,然后計(jì)算得出此節(jié)點(diǎn)的溫度值,最后通過(guò)CAN總線傳送給CAN主站,。其中只有在 CAN從站收到與自己節(jié)點(diǎn)號(hào)相同的主站發(fā)送的遠(yuǎn)程幀的時(shí)候,,從站CAN控制器才發(fā)出一個(gè)數(shù)據(jù)幀。CAN從站程序流程圖如圖6所示,。


 

圖6 CAN從站程序流程圖                                     圖7 Delphi實(shí)時(shí)曲線部分流程圖

  3.3 Delphi上位機(jī)軟件設(shè)計(jì)

  本上位機(jī)軟件主要實(shí)現(xiàn)了五個(gè)功能:實(shí)時(shí)曲線顯示當(dāng)前各從節(jié)點(diǎn)的溫度,;打印實(shí)時(shí)曲線,;將實(shí)時(shí)曲線保存為圖片;將實(shí)時(shí)曲線的數(shù)據(jù)保存為TXT文檔以及實(shí)時(shí)溫度超過(guò)報(bào)警值時(shí)報(bào)警,。

  本系統(tǒng)上位機(jī)串口通訊控件采用SPCOMM,,該控件具有豐富的與串口通信密切相關(guān)的屬性及事件,支持多線程,;提供了對(duì)串口的各種操作,。圖形控件采用TChart,TCharc是Delphi里面一個(gè)標(biāo)準(zhǔn)的圖形顯示控件,。它可以靜態(tài)設(shè)計(jì)(At Design Time)也可以動(dòng)態(tài)生成,。該系統(tǒng)設(shè)計(jì)采用的版本為TeeChart 7;實(shí)時(shí)曲線部分流程圖如圖7所示,。上位機(jī)程序完成后界面如圖8所示,。

上位機(jī)界面

圖8 上位機(jī)界面

  4 結(jié)束語(yǔ)

  本文介紹了基于STM32和CAN總線的溫度監(jiān)控系統(tǒng)的設(shè)計(jì),初步實(shí)驗(yàn)證明,,上述的硬件及軟件設(shè)計(jì)基本達(dá)到了設(shè)計(jì)要求,。本系統(tǒng)適用于多節(jié)點(diǎn)、遠(yuǎn)距離的場(chǎng)合,,并具有實(shí)時(shí)性好,、可靠性高的特點(diǎn),具有一定的應(yīng)用價(jià)值,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。