USS協(xié)議變頻器Web控制方法的研究與實(shí)現(xiàn)
在μCO/S-II操作系統(tǒng)中,根據(jù)盡量減少任務(wù)數(shù)以提高CPU利用率的原則,本設(shè)計(jì)建立了四個(gè)任務(wù)。這四個(gè)任務(wù)是:taskstart(啟動(dòng)任務(wù))、taskC(接收TCP信號量任務(wù))、taskE(TCP數(shù)據(jù)處理任務(wù))、taskF(接收和發(fā)送USS報(bào)文任務(wù))。四個(gè)任務(wù)之間的關(guān)系,各自的優(yōu)先級設(shè)置及任務(wù)間的通信機(jī)制如圖2所示。
Web服務(wù)器應(yīng)用任務(wù)完成TCP通信,在此任務(wù)中網(wǎng)頁信息以HTML格式存儲于一個(gè)全局變量的Web[]數(shù)組中,這些信息通過HTTP協(xié)議沿TCP連接發(fā)送到瀏覽器,以HTML文本格式定義的全局變量Web[]數(shù)組如下:
在主監(jiān)控網(wǎng)頁中,可以任意設(shè)置變頻器的工作頻率,也可以實(shí)時(shí)監(jiān)控其工作狀態(tài)。圖3就是本系統(tǒng)的Web監(jiān)控網(wǎng)頁。
在監(jiān)控網(wǎng)頁,放置的頻率設(shè)定按鈕。它的方法都被設(shè)置為“GET”。GET將表單中提交的數(shù)據(jù)添加到URL中。如果填寫頻率值“45”然后提交,Web服務(wù)器從瀏覽器接收到的URL如下:
GET/9? text1=45B3=%CC%E1%BD%BBHTTP/1.1
在Web服務(wù)器中,建立一個(gè)接收數(shù)據(jù)緩沖區(qū)數(shù)組tempdata[400],用它來存儲從瀏覽器發(fā)來的數(shù)據(jù)。根據(jù)URL的格式,能從URL中獲得表單中提交的數(shù)據(jù)。它們被相關(guān)程序處理后會按照USS協(xié)議保存到數(shù)組SndData[12]中。參數(shù)P2009[0]=0對USS進(jìn)行了標(biāo)稱化,頻率的計(jì)算就要按照規(guī)格化進(jìn)行。這個(gè)數(shù)組通過串口發(fā)送到變頻器之后,就可以使變頻器按照要求頻率工作了。
服務(wù)器會把查詢到的MM440變頻器的當(dāng)前工作頻率發(fā)送到監(jiān)控頁面上。向變頻器發(fā)送查詢工作頻率的USS指令是{02 08 00 10 15 00 00 00 00 0F}。此指令查詢的是r0021的參數(shù)值,即變頻器工作的實(shí)際值。變頻器會返回一個(gè)相應(yīng)的報(bào)文,如:
{02 0E 00 20 15 00 00 42 48 00 00 FF B4 40 00 38}
這里包含了要查詢的工作頻率,服務(wù)器在收到這個(gè)報(bào)文之后,會調(diào)用相應(yīng)的程序?qū)ζ溥M(jìn)行處理,最終將工作頻率以十進(jìn)制形式顯示在網(wǎng)頁上。為了實(shí)時(shí)查看變頻器的工作頻率,實(shí)現(xiàn)監(jiān)視網(wǎng)頁的實(shí)時(shí)刷新,就要在網(wǎng)頁信息里加入網(wǎng)頁更新語句:
實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁。網(wǎng)頁刷新速率為10 s/次,但由于數(shù)據(jù)處理速度的原因,刷新有一定的時(shí)延。
4 結(jié) 語
本文介紹的μC/OS-Ⅱ內(nèi)核裁剪、TCP協(xié)議應(yīng)用編程方法以及Web服務(wù)器的設(shè)計(jì)思想等內(nèi)容具有廣泛的應(yīng)用性。USS協(xié)議變頻器的Web監(jiān)控設(shè)計(jì)已經(jīng)調(diào)試通過,實(shí)現(xiàn)了遠(yuǎn)程監(jiān)控,初步達(dá)到了設(shè)計(jì)要求?,F(xiàn)在,隨著嵌入式網(wǎng)絡(luò)應(yīng)用的發(fā)展,USS協(xié)議變頻器的Web控制方法有著廣闊的應(yīng)用前景。
tcp/ip相關(guān)文章:tcp/ip是什么
評論