<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于USS協(xié)議變頻器Web控制方法的設(shè)計方案

          基于USS協(xié)議變頻器Web控制方法的設(shè)計方案

          作者: 時間:2012-01-23 來源:網(wǎng)絡(luò) 收藏

          本文研究的課題就是利用瀏覽器監(jiān)制。要實現(xiàn)這些功能,就要在硬件上開發(fā)一個小型的服務(wù)器,需要在硬件平臺上完成TCP/IP的裁剪和移植。服務(wù)器完成對網(wǎng)絡(luò)數(shù)據(jù)的處理,根據(jù)用戶提交的命令來對進行相應(yīng)的。在瀏覽器端,如果用戶監(jiān)控網(wǎng)頁的網(wǎng)址,就會向服務(wù)器發(fā)送HTTP請求,服務(wù)器把監(jiān)控網(wǎng)頁的HTML代碼發(fā)送到瀏覽器端。服務(wù)器里有相應(yīng)的程序來接收和發(fā)送報文,實現(xiàn)對西門子。

          本文引用地址:http://www.ex-cimer.com/article/149814.htm

          TCP/IP的以太網(wǎng)已成為工業(yè)標準,隨著以太網(wǎng)的發(fā)展,以及嵌入式Web服務(wù)器發(fā)展為網(wǎng)絡(luò)中的越來越小的網(wǎng)絡(luò)節(jié)點,為嵌人式web在工業(yè)中的應(yīng)用提供了機會。

          1 系統(tǒng)的軟硬件平臺

          1.1 EasyARM8962教學(xué)實驗平臺

          EasyARM8962教學(xué)實驗平臺采用了LuminaryMicro公司生產(chǎn)的Stellaris系列微
          LM3S8962處理器,具有JTAG調(diào)試等功能。該芯片內(nèi)部具有:UART,SSI,I2C,以及256 KB FLASH和64 KBSRAM。該處理器內(nèi)部集成了網(wǎng)絡(luò)控制器,具有強大的網(wǎng)絡(luò)功能。硬件系統(tǒng)結(jié)構(gòu)如圖1所示。



          1.2 μC/OS-Ⅱ的移植與嵌入式TCP/IP

          μC/OS-Ⅱ是近年來發(fā)展迅速的開放源碼實時操作系統(tǒng),具有可移植性好、可裁減、可固化的優(yōu)點。將μC/OS-Ⅱ引入嵌入式網(wǎng)絡(luò)系統(tǒng),既可以實現(xiàn)系統(tǒng)的實時性要求,又可以提高系統(tǒng)的可靠性。周立功公司提供的移植代碼為使用μC/OS-Ⅱ做好了鋪墊工作,與處理器類型有關(guān)的文件OS_CPU.H,OS_CPU_C.C,OS_CPU_A.ASM。本文采用最新版本的μC/OS-ⅡV2.52。

          采用周立功公司的ZLG/IP協(xié)議棧。ZLG/IP協(xié)議棧代碼量小,是面向嵌人式系統(tǒng)開發(fā)的μC/OS-Ⅱ的小型TCP/IP協(xié)議棧,它支持TCP,UCP,IP,ICMP,ARP。

          ZLG/IP“用戶可配置和裁剪”的特點,為了進一步提高代碼的運行速度,根據(jù)實際項目應(yīng)用需要可對ZLG/IP協(xié)議棧進行裁剪。對ZLG/IP協(xié)議棧的配置是通過修改軟件棧下的cfg_net.h來實現(xiàn)的。在此文件里設(shè)置使用的MAC地址、子網(wǎng)掩碼、IP地址和本地網(wǎng)關(guān)。設(shè)置的子網(wǎng)掩碼應(yīng)與客戶機的相同、IP地址要設(shè)置成與客戶機同一網(wǎng)段內(nèi),網(wǎng)關(guān)地址可以設(shè)置為客戶機的IP地址。

          2 USS協(xié)議及MM440變頻器的設(shè)置

          要利用USS協(xié)議實現(xiàn)對西門子MM440變頻器的遠程控制,必須對其進行相應(yīng)的設(shè)置。對本而言,具體設(shè)置如下:

          P0700[0]=5(設(shè)定命令給定源為COM鏈路的USS報文命令);

          P1000[0]=5(設(shè)置頻率給定源為COM鏈路的USS報文);

          P2009[0]=0(USS標稱化);

          P2010[0]=6(設(shè)定USS、通信的波特率為9 600 b/s);

          P2011[0]=0(設(shè)定變頻器的惟一地址,取值范圍為0~31,這里給定地址為0);

          P2012[0]=2(定義USS報文的PZD部分中16位字的數(shù)量,即USS PZD長度);

          P2013[0]=127(定義USS報文的PKW部分中16位字的數(shù)量,即USS PKW長度。127是最有用的設(shè)定,此設(shè)定下PKW應(yīng)答長度視所需的信息量而變);

          P0971=1(在設(shè)定為1時,從RAM向E2PROM傳送參數(shù)值)。

          3 HTTP協(xié)議和嵌入式Web服務(wù)器的實現(xiàn)

          3.1 HTTP協(xié)議

          HTTP協(xié)議是基于請求/響應(yīng)模式的。一個客戶機與服務(wù)器建立連接后,發(fā)送一個請求給服務(wù)器。服務(wù)器接到請求后,給予相應(yīng)的響應(yīng)信息。在Internet上,HTTP通信通常發(fā)生在TCP/IP連接之上,缺省端口是TCP80。

          Web瀏覽器利用HTTP協(xié)議和服務(wù)器進行通信。瀏覽器向服務(wù)器發(fā)送請求之后,服務(wù)器會將所請求的網(wǎng)頁發(fā)送到瀏覽器,服務(wù)器也可以根據(jù)HTTP請求所提交的信息運行相關(guān)程序。要從Web服務(wù)器獲得網(wǎng)頁,必須輸入Web服務(wù)器的IP地址,例如:

          http://210.31.192.70

          瀏覽器定位IP地址然后打開TCP連接的服務(wù)器端口80,之后利用HTTP協(xié)議發(fā)送由GET行組成的請求:GET/HTTP/1.0。GET是獲取Web文檔的一種HTTP。如果服務(wù)器響應(yīng)HTTP/1.0 200OK表示連接成功,然后Web網(wǎng)頁就可以發(fā)送。GET把參數(shù)數(shù)據(jù)隊列加到提交表單的ACTION屬性所指的URL(統(tǒng)一資源定位符)中,值和表單內(nèi)各個字段一一對應(yīng),在URL中可以看到。GET請求的數(shù)據(jù)會附在URL之后,以“?”分割URL和傳輸數(shù)據(jù),參數(shù)之間以“”相連。如果數(shù)據(jù)是英文字母/數(shù)字,原樣發(fā)送,如果是空格,轉(zhuǎn)換為“+”。慮到本系統(tǒng)提交的信息的特點,使用GET方法來Web服務(wù)器。

          3.2 Web服務(wù)器的設(shè)計與實現(xiàn)

          在μCO/S-II操作系統(tǒng)中,根據(jù)盡量減少任務(wù)數(shù)以提高CPU利用率的原則,本設(shè)計建立了四個任務(wù)。這四個任務(wù)是:taskstart(啟動任務(wù))、taskC(接收TCP信號量任務(wù))、taskE(TCP數(shù)據(jù)處理任務(wù))、taskF(接收和發(fā)送USS報文任務(wù))。四個任務(wù)之間的關(guān)系,各自的優(yōu)先級設(shè)置及任務(wù)間的通信機制如圖2所示。



          Web服務(wù)器應(yīng)用任務(wù)完成TCP通信,在此任務(wù)中網(wǎng)頁信息以HTML格式存儲于一個全局變量的Web[]數(shù)組中,這些信息通過HTTP協(xié)議沿TCP連接發(fā)送到瀏覽器,以HTML文本格式定義的全局變量Web[]數(shù)組如下:

          tcp/ip相關(guān)文章:tcp/ip是什么


          p2p機相關(guān)文章:p2p原理



          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();