劉曉東,李曉東,費(fèi)繼友,王江波,肖丹
(1.大連交通大學(xué) 動(dòng)車(chē)運(yùn)用與維護(hù)工程學(xué)院,遼寧 大連 116028;2. 松下制冷(大連)有限公司,遼寧 大連 116600)
多聯(lián)式變頻空調(diào)控制策略通信方法與實(shí)現(xiàn)
劉曉東1,2,李曉東2,費(fèi)繼友1,王江波2,肖丹2
(1.大連交通大學(xué) 動(dòng)車(chē)運(yùn)用與維護(hù)工程學(xué)院,遼寧 大連 116028;2. 松下制冷(大連)有限公司,遼寧 大連 116600)
采用S-NET通信協(xié)議,以空調(diào)通信適配器為從站,設(shè)計(jì)開(kāi)發(fā)了基于STM32F407單片機(jī)的空調(diào)通信控制主站.介紹了兩者之間的RS485通信的建立和程序設(shè)計(jì),詳細(xì)描述了單片機(jī)與空調(diào)通信適配器之間的通信調(diào)試,從而實(shí)現(xiàn)了基于S-NET協(xié)議的RS485通信.該系統(tǒng)控制策略和主要控制算法由STM32F407計(jì)算,其應(yīng)用在多聯(lián)式變頻空調(diào)的家庭終端嵌入式網(wǎng)關(guān)系統(tǒng)中,能取得較好的控制效果.
STM32F407單片機(jī);RS485通信;S-NET協(xié)議;多聯(lián)式變頻空調(diào)
多聯(lián)式空調(diào)(熱泵)系統(tǒng)(簡(jiǎn)稱(chēng)多聯(lián)機(jī))采用變?nèi)萘空{(diào)節(jié)以匹配系統(tǒng)負(fù)荷變化的特點(diǎn),在節(jié)能和舒適方面有明顯優(yōu)勢(shì)[1].將物聯(lián)網(wǎng)技術(shù)與多聯(lián)機(jī)相結(jié)合,以智能網(wǎng)絡(luò)化控制新模式實(shí)現(xiàn)空調(diào)遠(yuǎn)程管控的目的,能夠滿(mǎn)足節(jié)能、高效管理、健康、時(shí)尚等需求[2].為此,需要設(shè)計(jì)家庭終端空調(diào)網(wǎng)關(guān)系統(tǒng)實(shí)現(xiàn)家庭內(nèi)部空調(diào)傳感網(wǎng)絡(luò)和廣域網(wǎng)間互聯(lián)互通的使命.
為了更好地進(jìn)行空調(diào)控制,家庭終端空調(diào)網(wǎng)關(guān)系統(tǒng)需要實(shí)時(shí)獲取空調(diào)系統(tǒng)中的一些實(shí)時(shí)狀態(tài)信息和操控系統(tǒng)的某些運(yùn)行參數(shù).本文利用空調(diào)通信適配器,通過(guò)RS485傳輸媒介,設(shè)計(jì)基于單片機(jī)的空調(diào)家庭終端網(wǎng)關(guān)系統(tǒng),可以實(shí)現(xiàn)多聯(lián)式變頻空調(diào)系統(tǒng)的實(shí)時(shí)控制與狀態(tài)監(jiān)測(cè).其中,選用STM32F407單片機(jī)作為家庭終端網(wǎng)關(guān)系統(tǒng)的控制核心,負(fù)責(zé)控制策略算法計(jì)算和相關(guān)參數(shù)處理;空調(diào)通信適配器是多聯(lián)式變頻空調(diào)與外控系統(tǒng)連接的紐帶,通信適配器空調(diào)端直接連接空調(diào)室內(nèi)外控制線(xiàn),負(fù)責(zé)直接獲取空調(diào)參數(shù)和控制空調(diào),另一端通過(guò)RS485連接單片機(jī)系統(tǒng),其負(fù)責(zé)協(xié)議采用一種空調(diào)通信S-NET協(xié)議,該協(xié)議目前廣泛應(yīng)用在空調(diào)系統(tǒng)中.
系統(tǒng)選用STM32F407單片機(jī)作為空調(diào)家庭終端網(wǎng)關(guān)系統(tǒng)控制器.STM32F407嵌入式微處理器具有性能高、功耗低、成本低、運(yùn)行速度快速等設(shè)計(jì)特點(diǎn)[3].其頻率最高可達(dá)168 MHz,擁有1M字節(jié)的片上Flash存儲(chǔ)器、196 K字節(jié)的內(nèi)嵌SRAM、靈活的外部存儲(chǔ)器接口和豐富且高級(jí)的外設(shè),而且是32位市場(chǎng)上功耗最低的產(chǎn)品[4].
為了實(shí)現(xiàn)家庭網(wǎng)關(guān)系統(tǒng)與多聯(lián)式變頻空調(diào)間的通訊,以空調(diào)通信適配器為從站,設(shè)計(jì)開(kāi)發(fā)基于STM32F407單片機(jī)的主站,實(shí)現(xiàn)兩者之間的基于S-NET協(xié)議的RS485通信,其系統(tǒng)硬件連接框圖如圖1所示.
圖1 系統(tǒng)硬件連接框圖
STM32F407作為通信主設(shè)備,其RS485端口連接圖如圖2所示,RS485接口電路主要由+3.3V供電的半雙工收發(fā)器SP3485芯片和單片機(jī)串口2組成.其中,單片機(jī)端通過(guò)將STM32F407的串口2接入RS485總線(xiàn)網(wǎng)絡(luò)中,RS485采用平衡差分電路半雙工方式,A為同相端,B為反向端,半雙工的發(fā)送/接收數(shù)據(jù)選擇通信由PG8高低電平控制.允許并聯(lián)32臺(tái)驅(qū)動(dòng)器,最大傳輸距離為1 200 m,傳輸速率100 Kbps/1 200 m[5].
圖2 RS485端口連接圖
RS485總線(xiàn)定義了網(wǎng)絡(luò)的物理層,網(wǎng)絡(luò)上層的通訊協(xié)議采用S-NET協(xié)議進(jìn)行主設(shè)備和各從設(shè)備之間的通訊.S-NET協(xié)議按主—從方式進(jìn)行網(wǎng)絡(luò)通信,采用主機(jī)查詢(xún)和從機(jī)回復(fù)的消息結(jié)構(gòu),其通信結(jié)構(gòu)構(gòu)成格式如表1所示.
表1 S-NET通信協(xié)議構(gòu)成格式
(1)源地址與目的地址:用來(lái)選擇相應(yīng)的發(fā)送和接收設(shè)備.
(2)控制代碼:確定主機(jī)發(fā)送的控制命令種類(lèi),將執(zhí)行相對(duì)應(yīng)的功能.
(3)字節(jié)數(shù):確定命令和數(shù)據(jù)的純位數(shù).
(4)命令和數(shù)據(jù):主機(jī)與從機(jī)間通信的命令和數(shù)據(jù)域共包含兩部分內(nèi)容:其中第一個(gè)字節(jié)被用作命令代碼或數(shù)據(jù)代碼,用于細(xì)分代碼種類(lèi),后續(xù)字節(jié)描述從機(jī)的狀態(tài)信息或者執(zhí)行動(dòng)作所需要的命令信息.
(5)FCC校驗(yàn):采用奇偶校驗(yàn)方式來(lái)判斷數(shù)據(jù)傳輸?shù)恼_與否.具體方法為判斷所有字節(jié)(不包含校驗(yàn)碼)逐個(gè)異或的計(jì)算結(jié)果與校驗(yàn)碼是否一致.
3.1 STM32F407串口USART配置
利用S-NET空調(diào)通信協(xié)議通訊時(shí),首先需要進(jìn)行串口USART初始化的相關(guān)配置,包括設(shè)置控制特性、數(shù)據(jù)位、停止位、波特率、校驗(yàn)位等.其串口USART初始化部分代碼如下:
USART_InitStructure.U_BaudRate = 9600;//設(shè)置波特率為9600
USART_InitStructure.U_Parity = U_Parity_No;//無(wú)奇偶校驗(yàn)位
USART_InitStructure.U_Mode = U_Mode_Rx | U_Mode_Tx;//設(shè)置成收發(fā)模式
USART_InitStructure.U_WordLength=U_WordLength_8b;//設(shè)置字長(zhǎng)為8位數(shù)據(jù)格式
USART_InitStructure.U_StopBits =U_StopBits_1;//設(shè)置一個(gè)停止位
USART_InitStructure.U_HardwareFlowControl=USART_HardwareFlowControl_None;//無(wú)硬件數(shù)據(jù)流控制
USART_Init(USART2, &USART_InitStructure);
//設(shè)置串口2初始化
3.2 單片機(jī)發(fā)送與接收信息處理程序設(shè)計(jì)
STM32F407單片機(jī)在空調(diào)控制系統(tǒng)中承擔(dān)家庭網(wǎng)關(guān)主控制器作用,負(fù)責(zé)實(shí)時(shí)采集和控制連接到適配器上的多聯(lián)式變頻空調(diào)各室內(nèi)機(jī)的狀態(tài)信息.S-NET協(xié)議采用主機(jī)查詢(xún)和從機(jī)回復(fù)的消息結(jié)構(gòu)進(jìn)行通訊,通訊程序DataSendReceive128A( )流程如圖3所示,通訊時(shí),單片機(jī)發(fā)送和接收S-NET協(xié)議幀,包含了源地址、目的地址、功能代碼、執(zhí)行該功能所需的相關(guān)參數(shù)、校驗(yàn)碼等信息.發(fā)送和接收指令子程序流程如圖4所示,單片機(jī)端通過(guò)中斷方式接收消息,接收到的消息首先進(jìn)入校驗(yàn)子程序CheckReceivedData().
圖3 通訊程序流程圖
圖4 發(fā)送和接收指令程序流程圖
圖5 校驗(yàn)子程序流程圖
以市面銷(xiāo)售的一款空調(diào)適配器為例進(jìn)行通訊實(shí)驗(yàn)測(cè)試,該空調(diào)適配器一臺(tái)最大可實(shí)現(xiàn)128臺(tái)室內(nèi)機(jī)及60臺(tái)室外機(jī)的集中監(jiān)控,極大地滿(mǎn)足家庭用多聯(lián)式變頻空調(diào)系統(tǒng)最大需求.
調(diào)試環(huán)境下,單片機(jī)與一臺(tái)空調(diào)適配器進(jìn)行RS485通信即可,一臺(tái)空調(diào)適配器空調(diào)端連接2臺(tái)室外主機(jī)及4臺(tái)室內(nèi)機(jī)組,實(shí)現(xiàn)家庭多聯(lián)式變頻空調(diào)的狀態(tài)集中監(jiān)控.在通訊過(guò)程中,單片機(jī)計(jì)算從機(jī)(適配器)地址和構(gòu)造通訊指令,編寫(xiě)相應(yīng)的控制程序,與從機(jī)進(jìn)行發(fā)送和接收通信.通信指令的類(lèi)型包括服務(wù)類(lèi)型(其命令種類(lèi)包含“設(shè)定,操作”、“請(qǐng)求”、“應(yīng)答”、“狀態(tài)更改”等)、相應(yīng)模式等.根據(jù)不同的通信需求,實(shí)現(xiàn)分類(lèi)通信,程序流程如圖6所示,通信類(lèi)別對(duì)應(yīng)“空調(diào)構(gòu)成確認(rèn)”、“室內(nèi)機(jī)狀態(tài)通信”、“實(shí)時(shí)操作通信”、“定時(shí)操作通信”.
圖6 分類(lèi)控制子程序流程圖
系統(tǒng)選用S-NET空調(diào)通信協(xié)議,以空調(diào)適配器為橋梁,研究了基于STM32F407的多聯(lián)式變頻空調(diào)家庭網(wǎng)關(guān)系統(tǒng)通信策略.在設(shè)計(jì)過(guò)程中,實(shí)現(xiàn)了S-NET空調(diào)通信協(xié)議的正常發(fā)送與響應(yīng),單片機(jī)主機(jī)實(shí)現(xiàn)了控制策略算法與控制參數(shù)的處理,通過(guò)運(yùn)行測(cè)試,通信良好.后續(xù)的研究重點(diǎn)是不同的空調(diào)控制需求分解,以實(shí)現(xiàn)單片機(jī)對(duì)空調(diào)狀態(tài)的實(shí)時(shí)監(jiān)控.
[1]邵雙全,高玉平,陳剛,等.基于計(jì)算機(jī)仿真的多聯(lián)式空調(diào)系統(tǒng)控制策略?xún)?yōu)化設(shè)計(jì)[J].制冷技術(shù),2015(2):17-20.
[2]張朋,賀煥林,王艷霞,等.基于物聯(lián)網(wǎng)的中央空調(diào)SCADA系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)儀表與自動(dòng)化裝置,2014(6):24-29.
[3]嚴(yán)良文,賴(lài)雪峰,韓濤,等.基于STM32的中央空調(diào)控制策略通信方法與實(shí)現(xiàn)[J].機(jī)械與電子,2014(9):63-65,80.
[4]陳少華,沈巍,徐金鈺,等.基于STM32的災(zāi)難現(xiàn)場(chǎng)搜救機(jī)器人研制[J].大連交通大學(xué)學(xué)報(bào),2016,37(5):113-115.
[5]李麗,劉沖,苗中華,等.基于RS485總線(xiàn)的多變頻器與工控機(jī)互聯(lián)測(cè)試系統(tǒng)[J].測(cè)控技術(shù),2016(7):64-67.
?程序Check
Data( ) 流程如圖5所示,消息接收完成后先進(jìn)行FCC校驗(yàn),若校驗(yàn)結(jié)果不通過(guò)則生成錯(cuò)誤代碼-3,將代碼返回并請(qǐng)求從機(jī)重發(fā)信息.如果FCC校驗(yàn)結(jié)果正確,則進(jìn)一步判斷接收字節(jié)數(shù)BC是否正確,如果接收字節(jié)數(shù)錯(cuò)誤同樣生成錯(cuò)誤代碼-3,并直接拋棄該消息并返回主程序,如果接收字節(jié)數(shù)正確則進(jìn)一步判斷接收目的地址是否與本機(jī)相符,全部通過(guò)才將接收到的數(shù)據(jù)裝入結(jié)構(gòu)體RcvStr1SlinkStr( )中,進(jìn)而對(duì)數(shù)據(jù)進(jìn)行分解,通過(guò)判斷控制功能代碼,從中提取出執(zhí)行功能代碼和數(shù)據(jù),存入結(jié)構(gòu)體RcvStr2SlinkStr()中,以便后續(xù)根據(jù)其控制功能分類(lèi)進(jìn)入相應(yīng)的功能程序.
Method and Realization of VRF Air Conditioning Control Strategy Communication
LIU Xiaodong1,2, LI Xiaodong2, FEI Jiyou1, WANG Jiangbo2, XIAO Dan2
(1.School of EMU Application and Maintenance Engineering, Dalian Jiaotong University, Dalian 116028, China; 2.Panasonic Appliances Air-Conditioning and Refrigeration (Dalian) Co., Ltd, Dalian 116028, China)
With the VRF air conditioning communication adapter being the slave station, a master station of STM32F407 microcontroller is developed based on S-NET protocol. The establishment and program design of communication protocol using RS485 between master and slave are introduced, and the process of debugging between the microcontroller and air conditioning communication adapter is elaborated. Thus the RS485 communication is implemented based on the S-NET protocol. The system will be applied in the embedded home control gateway system of VRF air conditioning. A good control effect will be obtained as the controlling strategy, and main algorithm can be computed in the STM32F407 slave station.
STM32F407 microcontroller; RS485 communication; S-NET protocol; VRF air conditioning
1673- 9590(2017)04- 0169- 04
2016-10-01
遼寧省教育廳高等學(xué)校科學(xué)研究計(jì)劃資助項(xiàng)目(JDL2016026)
劉曉東(1982-),女,工程師,博士研究生,主要從事智能測(cè)控技術(shù)方面的研究E- mail:lxd@djtu.edu.cn.
A