已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
題目 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集上位機(jī)軟 件設(shè)計(jì) 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集上位機(jī)軟件設(shè)計(jì) 摘 要 隨著網(wǎng)絡(luò)技術(shù)的快速發(fā)展 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集系統(tǒng)得到了大量應(yīng)用 本文在 查閱文獻(xiàn)的基礎(chǔ)上提出了基于網(wǎng)絡(luò)通信的單片機(jī)數(shù)據(jù)采集系統(tǒng) 通過網(wǎng)卡終端以及 TCP IP 協(xié)議實(shí)現(xiàn)了單片機(jī)與 PC 機(jī)之間的網(wǎng)絡(luò)通信 本文研究具有較強(qiáng)的工程背景和實(shí)際價(jià)值 本文在主要工作如下 1 進(jìn)行了基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集系統(tǒng)理論研究 主要包括數(shù)據(jù)采集的基本原理和 基本方法 并提出了兩種單片機(jī)連接網(wǎng)絡(luò)的實(shí)現(xiàn)方法 2 研究了網(wǎng)絡(luò)通信的數(shù)據(jù)采集實(shí)現(xiàn)過程 對(duì)單片機(jī)數(shù)據(jù)采集到網(wǎng)絡(luò)傳輸進(jìn)行了模式 設(shè)計(jì) 并設(shè)計(jì)了單片機(jī)發(fā)送程序以及網(wǎng)卡芯片配置 以實(shí)現(xiàn)單片機(jī)網(wǎng)絡(luò)連接 3 設(shè)計(jì)了網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)上位機(jī)軟件 基于 TCP IP 協(xié)議以及 Windows Socket 方法 在 Visual Studio 平臺(tái)上開發(fā)出了單片機(jī)網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)上位機(jī)軟件 實(shí)現(xiàn)了 數(shù)據(jù)采集和顯示 4 對(duì)數(shù)據(jù)采集系統(tǒng)進(jìn)行了實(shí)驗(yàn)和調(diào)試 并提出了期間遇到的各種問題 最后對(duì)全文 的內(nèi)容進(jìn)行了總結(jié)和工作展望 關(guān)鍵詞關(guān)鍵詞 數(shù)據(jù)采集系統(tǒng) 網(wǎng)絡(luò)通信 TCP IP 協(xié)議 上位機(jī) Data Acquisition Host Computer System Software Design Based on Network Communication ABSTRACT With the rapid development of network technology data acquisition system based on network communication is to get a large number of applications is proposed in this article refer to the literature on the basis of the single chip microcomputer data acquisition system based on network communication through the network card in the end and the TCP IP protocol realized the network communication between MCU and PC this paper has strong engineering background and the actual value based on the main work is as follows 1 the data acquisition system based on network communication theory research mainly including the basic principle of data acquisition and basic methods and puts forward the method to realize the two single chip computer to connect to the Internet 2 studies the data acquisition network communication realization process single chip microcomputer data acquisition to network transmission for the pattern design and design the single chip computer router chip configuration and the network card in order to realize the single chip microcomputer network connection 3 designed the network traffic data collection system of upper machine software Method based on TCP IP protocol and Windows sockets in Visual Studio platform developed by single chip microcomputer PC software network communication data acquisition system has realized the data acquisition and display 4 the data acquisition system for the experiment and debugging and put forward the problems encountered during the period of finally the full text is summarized and the content of the work Key words data acquisition system network communication TCP IP protocol the upper machine 目 錄 1 引 言 1 1 1 課題研究背景和研究意義 1 1 2 數(shù)據(jù)采集系統(tǒng)發(fā)展現(xiàn)狀 1 1 3 論文主要研究?jī)?nèi)容 2 2 基于網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)基本原理和方法 4 2 1 基于網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)基本原理 4 2 2 基于網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)基本方法 4 3 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集實(shí)現(xiàn) 6 3 1 數(shù)據(jù)采集工作模式 6 3 2 單片機(jī)發(fā)送端程序設(shè)計(jì) 6 3 3 網(wǎng)卡芯片模塊 7 3 4 網(wǎng)卡芯片軟件配置 10 4 上位機(jī)軟件設(shè)計(jì) 11 4 1 TCP IP 協(xié)議 11 4 2 數(shù)據(jù)傳輸程序設(shè)計(jì) 11 4 3 上位機(jī) PC 界面 17 5 實(shí)驗(yàn)與調(diào)試 18 5 1 網(wǎng)絡(luò)通信測(cè)試 18 5 2 系統(tǒng)調(diào)試 18 5 3 遇到的問題討論 19 6 總結(jié)與展望 21 6 1 全文總結(jié) 21 6 2 工作展望 21 參考文獻(xiàn) 22 致 謝 23 附 錄 24 0 1 引 言 1 1 課題研究背景和研究意義 數(shù)據(jù)采集是通過查看數(shù)據(jù)庫(kù)中存儲(chǔ)的大量數(shù)據(jù)來發(fā)現(xiàn)有意義的數(shù)據(jù)以及新的數(shù)據(jù)關(guān) 系 模式以及趨勢(shì)等 使用模式識(shí)別技術(shù) 實(shí)現(xiàn)精確的統(tǒng)計(jì)過程 數(shù)據(jù)采集系統(tǒng)是結(jié)合 基于計(jì)算機(jī)測(cè)量軟硬件產(chǎn)品來實(shí)現(xiàn)靈活的 用戶自定義的測(cè)量系統(tǒng) 隨著網(wǎng)絡(luò) Internet 技術(shù)的快速發(fā)展 網(wǎng)絡(luò)通信傳輸在數(shù)據(jù)采集方面也起到了重要作用 目前 Internet 技術(shù)主要用于信息交流 比如說 E mail 購(gòu)物 聊天 Web 瀏覽等 以及進(jìn)一步發(fā)展的電子商務(wù)等等 這些技術(shù)方式僅僅只是停留在了企業(yè)與企業(yè)或者企業(yè) 與個(gè)人或個(gè)人之間的信息交換上 而我們對(duì)于網(wǎng)絡(luò)的理解也因此不夠充分 實(shí)際上 網(wǎng) 絡(luò)技術(shù)已經(jīng)在很大程度上應(yīng)用到了公園控制等領(lǐng)域 時(shí)刻影響著我們的生活和環(huán)境 12 生活中很多數(shù)據(jù)經(jīng)過現(xiàn)場(chǎng)采集后一定的方式傳輸?shù)竭h(yuǎn)程端 比如通過接收衛(wèi)星云圖數(shù)據(jù) 我們可以預(yù)測(cè)未來幾天的天氣情況 而衛(wèi)星數(shù)據(jù)經(jīng)過獲取后是通過了一定的方式和協(xié)議 傳輸?shù)搅说厍蛏?然后經(jīng)過處理才得以顯示出來 這也可以說是一種網(wǎng)絡(luò)傳輸 在工廠 車間 很多情況下 數(shù)據(jù)采集都能通過各種傳感器檢測(cè)得到 然后經(jīng)過單片機(jī)處理得到 實(shí)際數(shù)據(jù) 若是將單片機(jī)系統(tǒng)連接上網(wǎng)絡(luò) Internet 則可以在遠(yuǎn)程位置獲得信息數(shù)據(jù) 而如何讓這些電子設(shè)備和 Internet 連接起來 以便于人們能夠遠(yuǎn)程獲得這些電子設(shè)備的 信息并控制它們運(yùn)行 已成為了目前國(guó)內(nèi)外共同關(guān)注的焦點(diǎn) 1 隨著電子和信息技術(shù)的高速發(fā)展 通過軟件方式或者硬件方式將 TCP UDP IP 協(xié)議 嵌入到單片機(jī)系統(tǒng)已經(jīng)成為可能 網(wǎng)絡(luò)化的智能單片機(jī)以及智能化的傳感器等研究 是 國(guó)內(nèi)外競(jìng)相搶占制高點(diǎn)的前沿技術(shù)之一 本文針對(duì)基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集技術(shù)進(jìn)行研 究 包括工作原理 工作方法以及具體的發(fā)送接收方式實(shí)現(xiàn) 對(duì)于電子設(shè)備網(wǎng)絡(luò)化 實(shí) 現(xiàn)遠(yuǎn)程監(jiān)測(cè)和控制設(shè)備儀器的運(yùn)行等方面具有重要意義 1 2 數(shù)據(jù)采集系統(tǒng)發(fā)展現(xiàn)狀 數(shù)據(jù)采集系統(tǒng)始于 20 世紀(jì) 50 年代 美國(guó)為了實(shí)現(xiàn)在軍事測(cè)試中不依靠相關(guān)的測(cè)試 文件 由非熟悉人員進(jìn)行操作 并且測(cè)試任務(wù)由測(cè)試設(shè)備高速自動(dòng)完成 而研發(fā)了用于軍 事上的數(shù)據(jù)采集系統(tǒng) 大約在 60 年代后期 國(guó)外用于專用系統(tǒng)的成套數(shù)據(jù)采集設(shè)備進(jìn)入 市場(chǎng) 70 年代中后期 誕生了以采集器同計(jì)算機(jī)融為一體為代表的數(shù)據(jù)采集系統(tǒng) 該系 統(tǒng)超過了傳統(tǒng)的自動(dòng)檢測(cè)儀器和專用數(shù)據(jù)釆集系統(tǒng) 20 世紀(jì) 80 年代隨著計(jì)算機(jī)的普及和 發(fā)展 數(shù)據(jù)采集系統(tǒng)空前發(fā)展 工業(yè)計(jì)算機(jī) 單片機(jī)和大規(guī)模集成電路的組合 使系統(tǒng) 的成本 體積減小 功能成倍增加 數(shù)據(jù)處理能力逐步加強(qiáng) 15 該時(shí)期己開始出現(xiàn)通用 的數(shù)據(jù)釆集與自動(dòng)檢測(cè)系統(tǒng) 一般來說 數(shù)據(jù)采集系統(tǒng)分為兩類 一類是由通用接口總 線和計(jì)算機(jī) 儀器儀表和采集器等構(gòu)成 如國(guó)際標(biāo)準(zhǔn) ICE625 GPIB 接口總線系統(tǒng) 另一 類由標(biāo)準(zhǔn)總線和計(jì)算機(jī) 數(shù)據(jù)采集卡構(gòu)成 如 ETD 總線系統(tǒng) 20 世紀(jì) 90 年代以來 國(guó)際 上一些技術(shù)先進(jìn)的國(guó)家 數(shù)據(jù)采集系統(tǒng)已在井下作業(yè) 石油開采 現(xiàn)場(chǎng)實(shí)時(shí)監(jiān)控和航空 1 技術(shù)等領(lǐng)域被廣泛應(yīng)用 出現(xiàn)了高性能 高可靠性的單片機(jī)數(shù)據(jù)采集系統(tǒng) 如有的 DAS 產(chǎn)品精度可以達(dá)到 24 位 甚至有的 DAS 產(chǎn)品速度可以達(dá)到每秒幾億次以上 14 現(xiàn)階段的數(shù)據(jù)采集系統(tǒng)采用更先進(jìn)的模塊化結(jié)構(gòu) 根據(jù)不同的應(yīng)用需求 運(yùn)用簡(jiǎn)單 的增加和更改模塊的方法 與系統(tǒng)編程相結(jié)合就可擴(kuò)展或修改系統(tǒng) 最終迅速組建成一 個(gè)新的系統(tǒng) 由于屏蔽性 高密度 針孔式的連接器和卡式模塊的應(yīng)用 使其穩(wěn)定性及 可靠性得到充分保障 但其昂貴的價(jià)格阻礙了它在自動(dòng)化領(lǐng)域的普及 目前 以 Internet 為代表的計(jì)算機(jī)網(wǎng)絡(luò)通信的發(fā)展和應(yīng)用取得了空前的突破 網(wǎng)絡(luò) 化采集和控制技術(shù)也隨著網(wǎng)絡(luò)技術(shù)的發(fā)展而迅速成長(zhǎng) 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集系統(tǒng)應(yīng) 運(yùn)而生 且在計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)發(fā)展背景下 表現(xiàn)出了空前的發(fā)展勢(shì)頭 具有采集效率高 采集實(shí)時(shí)性高 便于收集和整理數(shù)據(jù)等特點(diǎn) 對(duì)于各行工業(yè)領(lǐng)域的數(shù)據(jù)采集都具有非常 重要的意義 隨著 IT 技術(shù)和互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展 為保障用戶的投資 適應(yīng)未來技術(shù)發(fā)展的趨 勢(shì) 施耐德電氣公司第一個(gè)推出了應(yīng)用于工業(yè)控制領(lǐng)域的 開放的 TCP IP 以太網(wǎng) Modbus TCP IP 協(xié)議 該技術(shù)采用了 IT 行業(yè)廣泛應(yīng)用的 TCP IP 協(xié)議 底層協(xié)議釆用開 放的 Modbus 第一次真正地的實(shí)現(xiàn)了 IT 網(wǎng)絡(luò)和工業(yè)數(shù)據(jù)采集與控制網(wǎng)絡(luò)的融為一體 使用戶徹底擺脫了各種行業(yè)的工業(yè)數(shù)據(jù)采集與控制網(wǎng)絡(luò)的限制和束縛 從而進(jìn)入了工業(yè) 控制領(lǐng)域的一種新境界 3 電子信息技術(shù)的高速發(fā)展 通過軟件或硬件方式可以將 TCP UDP IP 協(xié)議嵌入到 單片機(jī) 目前網(wǎng)絡(luò)智能化單片機(jī)在國(guó)內(nèi)外占據(jù)前沿地位 而近幾年交換式以太網(wǎng)技術(shù)的 出現(xiàn)更大程度的提高了以太網(wǎng)的確定性 利用交換技術(shù) 將一個(gè)較大的網(wǎng)絡(luò)分隔成為各 個(gè)相對(duì)獨(dú)立的沖突域 使沖突只能在一個(gè)相對(duì)較小的區(qū)域內(nèi)發(fā)生 這樣就大大地減小了 沖突發(fā)生的概率 從而提高了網(wǎng)絡(luò)的實(shí)時(shí)性和確定性 2 以太網(wǎng)所顯示的優(yōu)勢(shì) 使其能 夠滿足數(shù)據(jù)采集及控制對(duì)實(shí)時(shí)性 抗干擾性 可靠性的嚴(yán)格要求 它己經(jīng)被證明是未來 數(shù)據(jù)采集與控制網(wǎng)絡(luò)的最佳解決方案 其應(yīng)用于現(xiàn)場(chǎng)設(shè)備監(jiān)控也是控制網(wǎng)絡(luò)發(fā)展的趨勢(shì) 1 3 論文主要研究?jī)?nèi)容 本文通過查閱文獻(xiàn)資料 在現(xiàn)有條件的基礎(chǔ)上 開發(fā)設(shè)計(jì)出了單片機(jī)的網(wǎng)絡(luò)通信數(shù) 據(jù)采集系統(tǒng) 并實(shí)現(xiàn)了上位機(jī)界面設(shè)計(jì) 本文研究具有較強(qiáng)的工程背景和應(yīng)用價(jià)值 具 體研究?jī)?nèi)容包括 1 基于網(wǎng)絡(luò)通信的單片機(jī)數(shù)據(jù)采集系統(tǒng)基本原理和基本方法研究 隨著網(wǎng)絡(luò)技術(shù)的 發(fā)展 單片機(jī)的網(wǎng)絡(luò)智能化得到大量的應(yīng)用 本文單片機(jī)連接網(wǎng)絡(luò) Internet 的基本原理 進(jìn)行了研究 并提出了具體的連接方法 2 基于網(wǎng)絡(luò)通信的單片機(jī)數(shù)據(jù)采集系統(tǒng)實(shí)現(xiàn) 主要包括單片機(jī)數(shù)據(jù)采集的工作模式 單片機(jī)發(fā)送程序設(shè)計(jì) 中間傳輸媒介網(wǎng)卡芯片模塊的配置與設(shè)計(jì)等 2 3 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集系統(tǒng)上位機(jī)軟件設(shè)計(jì) 單片機(jī)與上位機(jī)之間通過 TCP IP 協(xié)議實(shí)現(xiàn)了網(wǎng)絡(luò)通信 本部分對(duì) TCP IP 協(xié)議進(jìn)行了研究 并在此基礎(chǔ)上通過 windows socket 套接字實(shí)現(xiàn)了網(wǎng)絡(luò)通信 設(shè)計(jì)了上位機(jī)數(shù)據(jù)采集軟件 4 對(duì)數(shù)據(jù)采集系統(tǒng)進(jìn)行了試驗(yàn)調(diào)試 并分析了過程中遇到的各種問題以及解決方法 對(duì)全文工作內(nèi)容進(jìn)行了總結(jié)和展望 3 2 基于網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)基本原理和方法 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集系統(tǒng)分為硬件部分和軟件部分 硬件部分實(shí)現(xiàn)模擬量數(shù)據(jù) 采集 包括數(shù)據(jù)采集終端 網(wǎng)絡(luò)傳輸通道 上位機(jī)等構(gòu)成 本文對(duì)于具體的硬件采集電 路不做具體研究 以單片機(jī)作為媒介 實(shí)現(xiàn)單片機(jī)與計(jì)算機(jī)之間的網(wǎng)絡(luò)通信 本章將具 體分析數(shù)據(jù)采集系統(tǒng)的基本原理和基本方法 為第三章數(shù)據(jù)采集系統(tǒng)工作模式做好鋪墊 2 1 基于網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)基本原理 實(shí)現(xiàn)單片機(jī)系統(tǒng)接入網(wǎng)絡(luò) Internet 這種方式并不復(fù)雜 現(xiàn)有的互聯(lián)網(wǎng)設(shè)施已為我們 提供了現(xiàn)成的中間傳輸媒介 我們只需要將單片機(jī)與這些中間的傳輸媒介連接上就可以 使系統(tǒng)介入 Internet 了 11 但是 要將單片機(jī)系統(tǒng)接入到 Internet 中必須從以下兩方面進(jìn)行工作 一是在硬件 上 給數(shù)據(jù)采集系統(tǒng)的主控制器即單片機(jī)加上一個(gè)網(wǎng)絡(luò)接口 二是在軟件上提供單片機(jī) 與遠(yuǎn)程計(jì)算機(jī)通信的通信協(xié)議 當(dāng)給一個(gè)系統(tǒng)配上一個(gè)以太網(wǎng)網(wǎng)卡芯片 并提供相應(yīng)的 TCP IP 協(xié)議和 IEEE802 3 協(xié)議時(shí) 這個(gè)系統(tǒng)就可以通過以太網(wǎng)連接上 Internet 當(dāng)給一 個(gè)系統(tǒng)配上一個(gè) DTE DCE 接口設(shè)備 并提供相應(yīng)的 TCP IP 協(xié)議和 PPP 協(xié)議 那么這個(gè)系 統(tǒng)就可以通過 Modem 連接 Internet 當(dāng)給一個(gè)系統(tǒng)配上具有無線收發(fā)功能的網(wǎng)絡(luò)接口 RF 并提供相應(yīng)的 TCP IP 協(xié)議和 IEEE802 11 協(xié)議 那么這個(gè)系統(tǒng)就可以通過無線方式 連接 Internet 由此可知 如果要想讓單片機(jī)系統(tǒng)連接上 Internet 其關(guān)鍵是實(shí)現(xiàn)網(wǎng)絡(luò) 通信接口并提供相應(yīng)的網(wǎng)絡(luò)協(xié)議 9 2 2 基于網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)基本方法 目前來說 有兩種方法可以實(shí)現(xiàn)單片機(jī)系統(tǒng)連接網(wǎng)絡(luò) 具體分別敘述如下 1 利用網(wǎng)絡(luò)控制器 網(wǎng)卡 NIC 實(shí)現(xiàn)網(wǎng)絡(luò)接口 然后由單片機(jī)來提供相應(yīng)的通信協(xié)議 比如 將單片機(jī)與網(wǎng)卡 ZNE 100 模塊組合在一起 ZNE 100 模塊內(nèi)部集成了 TCP IP 協(xié)議 棧 這樣就可以輕松實(shí)現(xiàn)嵌入式設(shè)備的網(wǎng)絡(luò)通信和傳輸功能 采用這種方法的成本非常 低廉 但是其軟件設(shè)計(jì)比較復(fù)雜 然而 對(duì)于 ZNE 100 網(wǎng)卡模塊接口 并不需要像計(jì)算 機(jī)那樣提供全套的網(wǎng)絡(luò)通信協(xié)議 只需要根據(jù)特定的應(yīng)用要求 提供一個(gè) TCP IP 協(xié)議族 的子協(xié)議集即可 7 2 利用具有協(xié)議棧結(jié)構(gòu)的芯片和 PHY phyceiver 物理層的接收器 來實(shí)現(xiàn)網(wǎng)絡(luò)接口 主控器只負(fù)責(zé)向協(xié)議棧結(jié)構(gòu)芯片的某個(gè)寄存器里存放適當(dāng)?shù)臄?shù)據(jù) 在這種方法中 網(wǎng)絡(luò) 協(xié)議是根據(jù)協(xié)議棧結(jié)構(gòu)的芯片硬件實(shí)現(xiàn)的 目前這種芯片有美國(guó) Seiko Instruments 公 司生產(chǎn)的 ichip S7600A 芯片 韓國(guó) WIZnet 公司生產(chǎn)的 i2chip W3100A 芯片等 在這里 我們以 i2chip W3100 為例來說明這類芯片的硬件結(jié)構(gòu)是如何實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議的 4 圖 2 1 W3100 芯片硬件結(jié)構(gòu) W3100 芯片結(jié)構(gòu)示意圖如圖 2 1 所示 其中分為四個(gè)部分 與單片機(jī)接口部分 MCU interface 協(xié)議引擎 protocol engine 存儲(chǔ)器 DPRAM 和 MII 接口部分 其中 MII 接口部分接 PHY 實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議的部分主要是靠其協(xié)議引擎 在其內(nèi)部結(jié)構(gòu)中具有以下一 些與網(wǎng)絡(luò)協(xié)議相關(guān)的寄存器 命令寄存器 C CR 它的各位分別表示系統(tǒng)初始化 通道 socket 初始化 建立連接 偵聽 接收 發(fā)送 關(guān)閉等命令 具體地 將某一位置 1 就 可以發(fā)出相應(yīng)的命令 C DIR 為目的 IP 地址寄存器 C DPR 為目的端口地址寄存器 C TOSR 為服務(wù)類型寄存器 對(duì)應(yīng)于 IP 報(bào)頭的 TOS 字段 C IPR 為 IP 協(xié)議寄存器 對(duì)應(yīng)于 IP 報(bào)頭的協(xié)議字段 CSPR 為源端口寄存器 C SSR socket 為狀態(tài)寄存器 GAR 為網(wǎng)關(guān)地 址寄存器 SMR 為子網(wǎng)屏蔽寄存器 SHAR 為源硬件地址寄存器 SIPR 為源 IP 地址寄存器 等 在這些硬件寄存器上 程序開發(fā)人員只需要將相應(yīng)的數(shù)據(jù)存入這些寄存器中 并按 照一定的順序開啟相應(yīng)的命令 那么就可以按照標(biāo)準(zhǔn)協(xié)議連接上網(wǎng)絡(luò)了 而且芯片開發(fā) 商還提供了芯片的軟件開發(fā)包 設(shè)計(jì)者只需要調(diào)用其中的函數(shù)即可實(shí)現(xiàn)網(wǎng)絡(luò)通信 由此 可見 這種方法設(shè)計(jì)簡(jiǎn)單 使用方便 但是其價(jià)格一般都比較昂貴 4 本文將根據(jù)第一種方法 將單片機(jī)與網(wǎng)卡芯片 ZNE 100 模塊進(jìn)行組合 然后建立相 應(yīng)的通信協(xié)議 實(shí)現(xiàn)單片機(jī)網(wǎng)絡(luò)智能化 與 PC 機(jī)遠(yuǎn)程通信 5 3 基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集實(shí)現(xiàn) 3 1 數(shù)據(jù)采集工作模式 數(shù)據(jù)采集系統(tǒng)主要分為兩個(gè)部分 一是單片機(jī)終端數(shù)據(jù)發(fā)送部分 完成數(shù)據(jù)的發(fā)送 功能 二是 PC 機(jī)端數(shù)據(jù)的接收部分 實(shí)現(xiàn)通過網(wǎng)絡(luò)連接接收單片機(jī)終端發(fā)送的數(shù)據(jù) 并 在 PC 機(jī)上顯示數(shù)據(jù) 處理數(shù)據(jù) 以監(jiān)測(cè)和控制相應(yīng)的執(zhí)行機(jī)構(gòu) 5 數(shù)據(jù)采集系統(tǒng)工作模 式如圖 3 1 所示 圖 3 1 數(shù)據(jù)采集系統(tǒng)工作模式 由圖可知 單片機(jī)發(fā)送數(shù)據(jù)后 經(jīng)過網(wǎng)卡芯片以及相應(yīng)的網(wǎng)絡(luò)協(xié)議 通過網(wǎng)絡(luò)方式 被 PC 機(jī)端結(jié)構(gòu) 然后顯示在 PC 機(jī)上 經(jīng)過數(shù)據(jù)處理后作為參考 以監(jiān)測(cè)和控制遠(yuǎn)程部 分 3 2 單片機(jī)發(fā)送端程序設(shè)計(jì) 1 MCS 51 單片機(jī)串行通信工作方式 MCS 51 單片機(jī)共有四種串行通信工作方式 分別成為方式 0 1 2 3 其中方式 0 是把串行口作為同步移位寄存器使用 這時(shí)以 RXD P3 0 端作為數(shù)據(jù)移入的入口和出口 而由 TXD P3 1 作為提供移位脈沖的端口 13 方式 1 是 10 位為一幀的異位串行通信方式 方式 2 是 11 位為一幀的串行通信方式 方式 3 通信方式也是 11 位為一幀的串行通信 其過程與方式 2 相同 但不同的是其波特率 2 單片機(jī)發(fā)送端程序 發(fā)送主程序 ORG 0023H AJMP ACINT ORG 8030H MOV TMOD 20H MOV TL1 0F3H 單片機(jī)終端網(wǎng)卡芯片PC 機(jī)接收數(shù)據(jù)并顯示 Internet 網(wǎng)絡(luò) 6 MOV TH1 0F3H SETB EA CLR ES MOV PCON 00H SETB TR1 MOV SCON 40H 置串行口工作與方式 2 允許接收 MOV SBUF 40H SOUT1 JNB T1 CLR T1 T1 清零 MOV SBUF 00H SOUT2 JNB T1 CLR T1 T1 清零 MOV SBUF 40H SOUT3 JNB T1 CLR T1 T1 清零 MOV SBUF 1FH 啟動(dòng)發(fā)送 MOV DPTR 4000H MOV R7 20H SETB ES 啟動(dòng) ES AHALT AJMP 中斷服務(wù)程序 ORG 8100H ACINT MOVX A DPTR CLR T1 T1 清零 MOV SBUF A 啟動(dòng)發(fā)送 DJNZ R7 AEND CLR ES 禁止串行中斷 CLR TR1 啟動(dòng) T1 AEND INC DPTR RET1 3 3 網(wǎng)卡芯片模塊 1 ZNE 100 網(wǎng)卡芯片介紹 ZNE 100 是廣州致遠(yuǎn)電子有限公司開發(fā)的一款工業(yè)級(jí)嵌入式網(wǎng)絡(luò)模塊 它內(nèi)部集成了 7 TCP IP 協(xié)議棧 用戶利用它可以輕松實(shí)現(xiàn)嵌入式設(shè)備的網(wǎng)絡(luò)功能 不需要了解復(fù)雜的網(wǎng) 絡(luò)知識(shí)以及 TCP IP 協(xié)議 節(jié)省人力物力和開發(fā)時(shí)間 使產(chǎn)品更快的投入市場(chǎng) 增強(qiáng)競(jìng)爭(zhēng) 力 該產(chǎn)品用于串口與以太網(wǎng)之間的數(shù)據(jù)傳輸 可方便的為串口設(shè)備增加以太網(wǎng)接口 可用于串口設(shè)備與 PC 機(jī)之間 或者多個(gè)串口設(shè)備之間的遠(yuǎn)程通信 具有以下產(chǎn)品特性 Serial TTL 接口轉(zhuǎn) 10M Ethernet 接口 Serial 最大波特率為 bps 可利用 Web browser 和 Windows utility 輕松進(jìn)行設(shè)定 TCP Server UDP Server 作業(yè)模式 支持 動(dòng)態(tài) DHCP 或靜態(tài)獲取 IP 地址 尺寸小 44 31 5mm 具有 32 位 ARM7 CPU 16KB RAM 128KB FLASH 10M 以太網(wǎng)接口 使用排針方式引出 1 5KV 電磁隔離 串口 TTL 電 平方式 波特率 300 bps 串口任意校驗(yàn) 串口數(shù)據(jù)位 5 6 7 8 可設(shè)定 串口停止位 1 2 位可設(shè)定 支持 TCP IP 協(xié)議包括 ETHERNET ARP IP ICMP UDP TCP HTTP DHCP 工作方式可選擇為 TCP Server 或 UDP Server 工作端口可設(shè)定 可使用配置工具 ZnetCom Utility for Windows98 me NT 2000 XP 進(jìn)行配置 輸入電壓 5V DC 功耗低 最大工作電流 90 mA 等 2 ZNE 100 模塊硬件電路 如圖 3 2 所示為 ZNE 100 的模塊硬件電路 可知其具有兩排外引管腳 左邊一排是 12 針 右邊是 11 針 分別編號(hào) 1 23 此外 ZNE 100 模塊上具有三個(gè)孔 用于恢復(fù)出廠 設(shè)置和升級(jí)固件 圖 3 2 ZNE 100 模塊電路圖 8 表 3 1 ZNE 100 模塊管腳定義 引腳意義引腳意義 1Ethernet TX 2Ethernet TX 23保留 3Ethernet RX 22保留 4Ethernet RX 21保留 5連接顯示 LED20保留 6TXD19EHTER TXD LED 7RXD18保留 8485 TXD EN17保留 9保留16保留 10nRST 模塊復(fù)位15EHTER RXD LED 11GND14VCC 5V DC 12GND13VCC 5V DC 表 3 1 所示為 ZNE 100 網(wǎng)卡芯片模塊的具體引腳定義 其中 Ethernet TX Ethernet TX Ethernet RX Ethernet RX 管腳是以太網(wǎng)信號(hào)端口 TXD RXD 是 串口信號(hào)端口 管腳 5 16 19 為 LED 信號(hào)口 方向?yàn)檩敵?485 TXD EN 是 RS485 發(fā)送 控制端 方向?yàn)檩敵?保證 RS485 半雙工傳輸 發(fā)送數(shù)據(jù)時(shí)為高電平 接收數(shù)據(jù)時(shí)為低 電平 nRST 為模塊復(fù)位腳 低電平有效 在該引腳輸入一個(gè)大于 20us 的負(fù)脈沖即可實(shí)現(xiàn) 模塊復(fù)位 其中模塊內(nèi)部有上電復(fù)位電路 該管腳可以懸空 9 3 ZNE 100 模塊評(píng)估板 ZNE 100 模塊評(píng)估板如圖 3 3 所示 其中指示了各個(gè)按鈕的功能和作用 模塊評(píng)估板 可以直接用作網(wǎng)卡芯片 連接到單片機(jī)上實(shí)現(xiàn)網(wǎng)絡(luò)通信 圖 3 3 ZNE 100 模塊評(píng)估板 3 4 網(wǎng)卡芯片軟件配置 在對(duì) ZNE 100 進(jìn)行模塊軟件配置之前 需要保證用戶的 PC 機(jī)內(nèi)具有以太網(wǎng)卡 而 且 PC 機(jī)與 ZNE 100 模塊需要在同一個(gè)網(wǎng)段內(nèi) ZNE 100 模塊在生產(chǎn)廠家出廠時(shí)設(shè)定了 一個(gè)默認(rèn)的 IP 地址 192 168 0 178 和網(wǎng)絡(luò)掩碼 255 255 255 0 用戶需要計(jì)算判斷 PC 機(jī)是 否與模塊在同一網(wǎng)段 判斷公式為 用戶 PC 機(jī) IP 地址比上 PC 機(jī)網(wǎng)絡(luò)掩碼 看其是否等 于 ZNE 100 模塊的 IP 地址比上模塊的網(wǎng)絡(luò)掩碼 如果不想等 則需要修改 PC 機(jī) IP 地址 方法是 首先進(jìn)入操作系統(tǒng) 然后使用鼠標(biāo)點(diǎn)擊任務(wù)欄的 開始 設(shè)置 控制面板 或在 我的電腦 里面直接打開 控制面板 雙擊 網(wǎng)絡(luò)和撥號(hào)連接 或 網(wǎng)絡(luò)連接 圖標(biāo) 然后單 擊選擇連接 ZNE 100 模塊的網(wǎng)卡對(duì)應(yīng)的 本地連接 單擊右鍵選擇 屬性 在彈出的 常規(guī) 頁(yè)面選擇 internet 協(xié)議 TCP IP 查看其 屬性 選擇 使用下面的 IP 地址 并填入 IP 地址 192 168 0 55 子網(wǎng)掩碼 255 255 255 0 默認(rèn)網(wǎng)關(guān) 192 168 0 1 DNS 部分可以不填 點(diǎn)擊該頁(yè)面的 確定 及 本地連接屬性 頁(yè)面的確定 等待系統(tǒng)配置完畢 16 此后 配置了 PC 網(wǎng)關(guān) 即可對(duì)其進(jìn)行模塊軟件配置 首先安裝廠家給的配置軟件 然后根據(jù)安裝好的配置軟件進(jìn)行配置 具體過程可以查閱 ZNE 100 使用手冊(cè) 此處不予 詳述 10 4 上位機(jī)軟件設(shè)計(jì) 4 1 TCP IP 協(xié)議 TCP IP 協(xié)議是 Transmission Control Protocol Internet Protocol 的簡(jiǎn)寫 中譯名為傳輸 控制協(xié)議 因特網(wǎng)互聯(lián)協(xié)議 又名網(wǎng)絡(luò)通訊協(xié)議 是 Internet 最基本的協(xié)議 Internet 國(guó)際 互聯(lián)網(wǎng)絡(luò)的基礎(chǔ) 由網(wǎng)絡(luò)層的 IP 協(xié)議和傳輸層的 TCP 協(xié)議組成 TCP IP 定義了電子設(shè) 備如何連入因特網(wǎng) 以及數(shù)據(jù)如何在它們之間傳輸?shù)臉?biāo)準(zhǔn) 協(xié)議采用了 4 層的層級(jí)結(jié)構(gòu) 每一層都呼叫它的下一層所提供的網(wǎng)絡(luò)來完成自己的需求 通俗而言 TCP 負(fù)責(zé)發(fā)現(xiàn)傳 輸?shù)膯栴} 一有問題就發(fā)出信號(hào) 要求重新傳輸 直到所有數(shù)據(jù)安全正確地傳輸?shù)侥康?地 而 IP 是給因特網(wǎng)的每一臺(tái)電腦規(guī)定一個(gè)地址 TCP IP 協(xié)議有底層和上層之分 底層協(xié)議規(guī)定了計(jì)算機(jī)硬件的接口規(guī)范 上層協(xié)議 規(guī)定了軟件程式必須共同遵守的一些規(guī)則以及程序員在寫程式時(shí)使用的統(tǒng)一標(biāo)準(zhǔn) TCP IP 共有 100 多個(gè)協(xié)議 其中用得最多的包括 SMTP 電子郵件協(xié)議 FTP 文件傳輸協(xié) 議 TELNET 遠(yuǎn)程登陸協(xié)議 等 TCP IP 網(wǎng)絡(luò)層協(xié)議的核心是 IP 協(xié)議 IP 協(xié)議具有兩個(gè) 重要特點(diǎn) 一是提供五連接的數(shù)據(jù)報(bào)傳輸機(jī)制 雖然不能保證傳輸?shù)目煽啃詤s簡(jiǎn)單有效 二是提供在同一物理網(wǎng)絡(luò)中的對(duì)點(diǎn)通信 決定一條從信源機(jī)到信宿機(jī)的傳輸路徑 IP 協(xié) 議的主要功能是 IP 數(shù)據(jù)報(bào)傳送以及 IP 路由選擇 交換的數(shù)據(jù)被封裝在若干個(gè) IP 包中 在每一個(gè) IP 包的報(bào)文件中都包含有源機(jī)器 IP 地址 目的機(jī)器 IP 地址 校驗(yàn)和以及其他 的一些信息 校驗(yàn)和是根據(jù) IP 報(bào)文中的數(shù)據(jù)計(jì)算出來的 IP 包的接收方可以根據(jù)它來判 斷報(bào)文在傳輸過程中是否由于傳輸線路噪音等原因而受到破壞 8 TCP 是一種面向連接的傳輸層協(xié)議 它可以提供可靠性高的服務(wù) 通過使用序列號(hào) 和確認(rèn)信息 TCP 協(xié)議能夠向發(fā)送方提供到達(dá)接收方數(shù)據(jù)包的傳送信息 當(dāng)傳送過程中 出現(xiàn)數(shù)據(jù)包丟失的情況時(shí) TCP 協(xié)議可以重新發(fā)送丟失的數(shù)據(jù)包直到數(shù)據(jù)成功到達(dá)接收 方 當(dāng)出現(xiàn)網(wǎng)絡(luò)超時(shí)時(shí) TCP 協(xié)議還可以識(shí)別重復(fù)信息 丟棄不需要的多余信息 使網(wǎng) 絡(luò)環(huán)境得到優(yōu)化 如果發(fā)送方傳送數(shù)據(jù)的速度大大超過了接收方接收數(shù)據(jù)的速度 那么 TCP 協(xié)議又可以采用數(shù)據(jù)流控制機(jī)制來減慢數(shù)據(jù)的傳送速度 協(xié)調(diào)發(fā)送和接收方的數(shù)據(jù) 響應(yīng) 而與其并列的 UDP 協(xié)議 User Datagram Protocol 用戶數(shù)據(jù)報(bào)協(xié)議 是五連接的 但它傳輸速度快 傳輸效率高 特別適合一次傳輸少量報(bào)文 UDP 直接建立在 IP 協(xié)議之 上 相對(duì)于 TCP 協(xié)議來說簡(jiǎn)單得多 10 總之 IP 的工作就是把原始數(shù)據(jù)從一地傳送到另一地 TCP 的工作就是管理這種流 動(dòng)并確保其數(shù)據(jù)是正確的 4 2 數(shù)據(jù)傳輸程序設(shè)計(jì) 本文利用 VC 程序的 MFC 框架建立數(shù)據(jù)傳輸協(xié)議 采用客戶端 服務(wù)器模式建立通 信 其中服務(wù)器端和客戶端程序基本相同 不同的是選擇的通信套接字 6 PC 機(jī)的程序 11 流程圖如圖 4 1 所示 初始化 PC 機(jī)后 創(chuàng)建網(wǎng)絡(luò)連接 查看網(wǎng)絡(luò)是否正常 當(dāng)網(wǎng)絡(luò)處于 正常工作狀態(tài)時(shí) PC 機(jī)向網(wǎng)絡(luò)數(shù)據(jù)釆集終端單片機(jī)發(fā)送 指令 當(dāng)單片機(jī)接收到該 指令后 讀取 A D 轉(zhuǎn)換的結(jié)果 通過網(wǎng)絡(luò)傳輸給 PC 機(jī) PC 機(jī)接收該數(shù)據(jù)后 讀取并顯 示接收到得數(shù)據(jù) 查看數(shù)據(jù)是否接收完 若接收完 再次等待接收網(wǎng)絡(luò)傳輸來的數(shù)據(jù) 如此循環(huán)的接收并顯示數(shù)據(jù) N Y N NNnNN Y 圖 4 1 PC 機(jī)程序設(shè)計(jì)流程 下面講述客戶端的具體建立過程 1 基于 Visual Studio 平臺(tái) 建立基于對(duì)話框和 WINDOWS SOCKETS 的通信工程 Socket 函數(shù)采用客戶 服務(wù)器的通信機(jī)制來實(shí)現(xiàn)網(wǎng)絡(luò)之間的連接和數(shù)據(jù)交換 在 TCP UDP 測(cè)試環(huán)境下進(jìn)行客戶端通信程序設(shè)計(jì) Socket 函數(shù)建立指定的地址格式 數(shù)據(jù)類型和協(xié)議 下的套接口 地址格式為 AF INFT 唯一支持的格式 數(shù)據(jù)類型 SOCKET STREAM 表 開始 初始化 創(chuàng)建網(wǎng)絡(luò)連接 網(wǎng)絡(luò)是否正常 發(fā)送 指令 PC 機(jī)接收數(shù)據(jù) 讀取并顯示接收到 的數(shù)據(jù) 數(shù)據(jù)是否接收完 12 示建立流式套接口 Socket 的通信流程圖如圖 4 2 所示所示 a 服務(wù)器端 網(wǎng)絡(luò)采集終端 b 客戶機(jī)端 PC 機(jī) 圖 4 2 Socket 套接字通信流程 2 在生成的對(duì)話框中選擇一些適當(dāng)?shù)目臻g如按鈕 文本框 IP 工具等 做好數(shù)據(jù)接 收界面 3 利用 Class Wizard 為對(duì)話框中各個(gè)控件添加好相應(yīng)的控件變量 4 打開 Class Wizard 對(duì)話框 確定 Class Name 為 CTalkDlg OBJECT IDS 是 IDC COMBO TYPEM 選擇 MESSAGE 為 CBN SELCHANGE 5 為了應(yīng)用程序能夠獲得并響應(yīng) Socket 事件 應(yīng)該創(chuàng)建用戶從 Casyncsocket 類繼承 的派生類 選擇 Insert New Class 創(chuàng)建新類 CMySocket 選擇基類為 Casyncsocket 6 向派生類中添加成員變量 用作指向父對(duì)話框的指針 類型為 CTalkDlg 變量名 為 m pDlg 并添加成員函數(shù) SetParent CTalkDlg pDlg 7 對(duì)套接字添加處理函數(shù) 在其成員函數(shù) SetParent 中添加代碼如下 Y N 開始 創(chuàng)建 Socket 連接 接受 分析命令 是否開始采集 啟動(dòng)數(shù)據(jù)采集 發(fā)送數(shù)據(jù) 開始 發(fā)送控制命令 創(chuàng)建 Socket 連接 處理數(shù)據(jù) 接收數(shù)據(jù) Y N 13 Void SetParent CTalkDlg pDlg m pDlg pDlg 8 在 CMySocket 類中添加 OnConnect OnClose OnReceive 函數(shù) 添加如下代碼 m pDlg OnConnect m pDlg OnClose m pDlg OnReceive 9 將程序頭文件添加到套接字類中 代碼為 include TalkDlg h 10 向 CTalkDlg 中添加套接字的變量對(duì)象 對(duì)話框需要一個(gè)用于連接套接字 向 CTalkDlg 類中添加變量 m sConnectSocket 類型為 CMySocket 對(duì)對(duì)話框進(jìn)行初始化 即在 OninitDialog 中加入以下代碼 m cmbType SetCurSel 1 初始為 192 168 1 25 m strServName 192 168 1 25 初始化端口為 4000 m nServPort 4000 UpdateData False m sConnectSocket SetParent this 11 開始建立發(fā)送端和接收端的連接 雙擊對(duì)話框的 連接 對(duì)于單機(jī)連接按鈕事 件添加如下代碼 UpdateData True m sConnectSocket Create 連接服務(wù)器 m sConnectSocket Connect m strServName m nServPort 12 為了完成連接 需要添加套接字事件處理函數(shù) 如下為具體代碼 Void CTalkDlg OnConnect GetDlgItem IDC EDIT MSG EnableWindow True GetDlgItem IDOK EnableWindow True GetDlgItem IDC STATIC MSG EnableWindow True GetDlgItem IDC BTN CLOSE EnableWindow True 13 現(xiàn)在已經(jīng)連接好了 但不能實(shí)現(xiàn)通訊 把相應(yīng)的消息添加到相應(yīng)的列表框中 雙 擊 發(fā)送 按鈕 添加如下代碼 Int nLen Int nSent 14 UpdateData True If m strMsg IsEmpty nLen m strMsg GetLength nSent m sConnectSocket Send LPCTSTR m strMsg nLen if nSent SOCKET ERROR M listSent AddString m strMsg UpdateData False Else AfxMessageBox 消息發(fā)送錯(cuò)誤 MB OK MB ICONSTOP m strMsg Empty UpdateData False 14 當(dāng)套接字的 OnReceive 事件被觸發(fā) 表明一個(gè)消息已經(jīng)能夠收到 在 OnReceive 函數(shù)中添加如下代碼 Char pBuf new char 1025 Int nBufSize 1024 Int nReceived CString strReceived nReceived m sConnectSocket Receive pBuf nBufSize if nReceived SOCKET ERROR pBuf nReceived NULL strReceived pBuf m listReceived AddString strReceived UpdateData False Else AfxMessageBox 消息發(fā)送錯(cuò)誤 MB OK MB ICONSTOP 15 15 發(fā)送 接收都實(shí)現(xiàn) 在 CTalkDlg 類中添加函數(shù) OnClose 函數(shù) 添加如下代碼 M sConnectSocket Close GetDlgItem IDC EDIT MSG EnableWindow Flase GetDlgItem IDOK EnableWindow Flase GetDlgItem IDC STATIC MSG EnableWindow Flase GetDlgItem IDC BTN CONNECT EnableWindow Flase GetDlgItem IDC BTN CLOSE EnableWindow Flase While m listSent GetCount 0 M listSent DeleteString 0 While m listReceived GetCount 0 M listReceived DeleteString 0 If m cmbType GetCurSel 1 GetDlgItem IDC BTN CONNECT EnableWindow True GetDlgItem IDC EDIT SERVNAME EnableWindow True GetDlgItem IDC EDIT SERVPORT EnableWindow True GetDlgItem IDC STATIC SERVNAME EnableWindow True GetDlgItem IDC STATIC SERVPORT EnableWindow True GetDlgItem IDC COMBO TYPE EnableWindow True 16 雙擊 斷開 按鈕 添加如下代碼 Void CTalkDlg OnBtnClose OnClose 17 編譯運(yùn)行調(diào)試程序 16 4 3 上位機(jī) PC 界面 上位機(jī) PC 端界面如圖 4 3 所示 顯示了連接 斷開 數(shù)據(jù)采集等按鈕功能 并顯示 了服務(wù)器 IP 地址 端口號(hào)等 采集到的數(shù)據(jù)將會(huì)顯示在信息文本框中 圖 4 3 PC 上位機(jī)客戶端界面 17 5 實(shí)驗(yàn)與調(diào)試 5 1 網(wǎng)絡(luò)通信測(cè)試 利用 Windows 自帶的 Ping 命令 來檢測(cè)網(wǎng)絡(luò)是否連通 驗(yàn)證與 PC 機(jī)的連接情況 在安裝了 TCP IP 協(xié)議的前提下 運(yùn)用 Ping 命令來測(cè)試系統(tǒng)在以太網(wǎng)中的通信情況 在程 序中 把網(wǎng)絡(luò)數(shù)據(jù)采集終端單片機(jī)系統(tǒng)網(wǎng)卡的 IP 地址設(shè)置為 192 168 1 25 待系統(tǒng)運(yùn)行 正常后 在 PC 機(jī)上打開命令提示符 運(yùn)行 pingl92 168 1 25 5 2 系統(tǒng)調(diào)試 通過Ping命令顯示了網(wǎng)絡(luò)數(shù)據(jù)采集終端與上位機(jī)之間建立了一條正常的通信路徑 實(shí) 現(xiàn)了網(wǎng)絡(luò)通信要求 上位機(jī)程序通過界面上的開始采集按鈕發(fā)送控制命令 網(wǎng)絡(luò)數(shù)據(jù)采 集終端單片機(jī)系統(tǒng)收到命令后就啟動(dòng)數(shù)據(jù)的采集與上傳 首先 利用2個(gè)交換機(jī)和網(wǎng)線將網(wǎng) 絡(luò)數(shù)據(jù)采集終端和PC機(jī)相連接 輸入IP地址192 168 1 25 端口號(hào)4000 點(diǎn)擊 連接 按 鈕 系統(tǒng)信息窗口會(huì)有提示信息出現(xiàn) 如果連接服務(wù)器成功 斷幵 按鈕由無效變?yōu)橛?效 PC機(jī)上的用戶界面顯示如圖5 1所示的信息 連接成功后點(diǎn)擊 幵始釆集 按鈕并發(fā) 送 命令到單片機(jī)終端 終端幵始釆集數(shù)據(jù)并通過以太網(wǎng)將數(shù)據(jù)上傳到上位機(jī) 在用 戶界面中顯示如圖5 2所示的信息 圖 5 1 客戶端連接服務(wù)器 18 圖 5 2 客戶端數(shù)據(jù)采集結(jié)果 5 3 遇到的問題討論 在進(jìn)行系統(tǒng)調(diào)試過程中 由于受到各方面條件限制以及因素影響 遇到了一些問題 在此予以討論 1 網(wǎng)絡(luò)通信剛開始建立成功比較難 經(jīng)過多次嘗試后才找到問題原因 并通過各方 面的幫助 最終解決了通信問題 2 客戶端的設(shè)計(jì)實(shí)際上就是一個(gè)Windows Socket通信的過程 但由于對(duì)套接字不是很 熟悉 因此建立通信過程花了很長(zhǎng)時(shí)間 3 數(shù)據(jù)來源于傳感器 其他外部電路的設(shè)計(jì)此處沒有作介紹 4 單片機(jī)網(wǎng)絡(luò)通信的其他方式值得繼續(xù)研究 以比較通信的準(zhǔn)確度和穩(wěn)定性等 19 6 總結(jié)與展望 6 1 全文總結(jié) 本文通過對(duì)查閱文獻(xiàn)和相關(guān)資料 在老師的指導(dǎo)下完成了基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集 和上位機(jī)軟件設(shè)計(jì) 并以單片機(jī) 網(wǎng)卡芯片 PC機(jī)為硬件條件 實(shí)現(xiàn)了數(shù)據(jù)采集和網(wǎng)絡(luò) 傳輸及PC機(jī)顯示 本文研究具有重要的實(shí)踐意義 總結(jié)全文 主要完成了以下工作 1 對(duì)基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集系統(tǒng)進(jìn)行了理論研究 主要包括其國(guó)內(nèi)外研究現(xiàn)狀 基本原理以及基本方法 本文提出了單片機(jī)網(wǎng)絡(luò)智能化的兩種連接方法 并介紹了兩種 方法的簡(jiǎn)單實(shí)現(xiàn)過程 2 對(duì)基于網(wǎng)絡(luò)通信的數(shù)據(jù)采集系統(tǒng)進(jìn)行了設(shè)計(jì)實(shí)現(xiàn) 針對(duì)第一種連接方法 加入網(wǎng) 卡芯片 實(shí)現(xiàn)單片機(jī)網(wǎng)絡(luò)連接 本文介紹了單片機(jī)數(shù)據(jù)采集工作模式 發(fā)送端程序設(shè)計(jì)以 及網(wǎng)卡芯片模塊ZNE 100的介紹與使用 并對(duì)其進(jìn)行軟件配置 實(shí)現(xiàn)與PC機(jī)網(wǎng)絡(luò)通信的 中間傳輸媒介 3 設(shè)計(jì)了網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)的上位機(jī)軟件 上位機(jī)與單片機(jī)之間的通信采用 TCP IP協(xié)議 并以ZNE 100為傳輸媒介 本部分內(nèi)容介紹了TCP IP協(xié)議核心 并設(shè)計(jì)開發(fā) 了上位機(jī)數(shù)據(jù)監(jiān)控和顯示應(yīng)用程序軟件 能夠通過發(fā)送和接收數(shù)據(jù)實(shí)現(xiàn)對(duì)單片機(jī)系統(tǒng)的 智能化監(jiān)測(cè)和控制 真正實(shí)現(xiàn)了單片機(jī)連接網(wǎng)絡(luò) 4 對(duì)網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)進(jìn)行了實(shí)驗(yàn)調(diào)試 并給出了實(shí)驗(yàn)結(jié)果 上位機(jī)軟件顯示 了接收到的數(shù)據(jù) 并對(duì)調(diào)試以及程序設(shè)計(jì)中遇到的各種問題進(jìn)行了討論 6 2 工作展望 本文的研究工作取得了一定的成績(jī)和結(jié)果 但是在實(shí)驗(yàn)后發(fā)現(xiàn)本文還具有很多不足 之處需要不斷改進(jìn)和完善 具體地 可從以下幾方面對(duì)網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)進(jìn)行研究 1 對(duì)網(wǎng)絡(luò)通信數(shù)據(jù)采集系統(tǒng)進(jìn)行更深一步的理論研 基于網(wǎng)路的數(shù)據(jù)采集方法很多 本文只是涉及到了其中的一種 還有很多更高效穩(wěn)定的方法需要進(jìn)一步研究和實(shí)驗(yàn) 2 對(duì)數(shù)據(jù)采集系統(tǒng)進(jìn)行硬件部分設(shè)計(jì) 主要是指采用其他更加智能化的嵌入式系統(tǒng) 設(shè)備 比如以單片機(jī)LM3S6938位控制器核心 設(shè)計(jì)具體硬件電路 包括A D轉(zhuǎn)換 網(wǎng)絡(luò) 接口電路等 而不是直接采用ZNE 100智能化網(wǎng)卡模塊 3 對(duì)上位機(jī)監(jiān)控程序和軟件進(jìn)一步完善和優(yōu)化 上位機(jī)程序的設(shè)計(jì)相對(duì)比較簡(jiǎn)單 關(guān)鍵在于根據(jù)相應(yīng)協(xié)議實(shí)現(xiàn)通信 上位機(jī)軟件可以增加數(shù)據(jù)處理模塊 實(shí)現(xiàn)對(duì)數(shù)據(jù)進(jìn)行 統(tǒng)計(jì) 自動(dòng)操作 輸出打印等功能 進(jìn)而實(shí)現(xiàn)比較完美的上位機(jī)顯示和監(jiān)控 20 參考文獻(xiàn) 1 徐輝 基于Internet技術(shù)的嵌入式數(shù)據(jù)采集與控制系統(tǒng)的研究 J 現(xiàn)在電子技術(shù) 2008 26 32 2 周斌 李文印 利用E Link擴(kuò)展單片機(jī)的網(wǎng)絡(luò)接口功能 J 吉林大學(xué)學(xué)報(bào) 2003 35 38 3 伯英 于海勛 現(xiàn)代控制工程 M 電子工業(yè)出版社 2000 5 14 15 4 張雄偉 陳亮 徐光輝 DSP芯片的原理與開發(fā)應(yīng)用第三版 M 電子工業(yè)出版社 2003 2 8 10 5 田應(yīng)軍 劉昌玉 數(shù)據(jù)采集系統(tǒng)的開發(fā)與設(shè)計(jì) J 華中科技大學(xué) 2007 6 4 6 6 調(diào)林 數(shù)據(jù)采集與分析技術(shù) M 西安電子科技大學(xué)出版社 2005 7 16 18 7 李運(yùn)濤 王庸貴 一種實(shí)時(shí)數(shù)據(jù)采集系統(tǒng)網(wǎng)絡(luò)接口設(shè)計(jì) J 計(jì)算機(jī)測(cè)量與控制 2005 12 7 10 8 任泰明 TCP IP協(xié)議與網(wǎng)絡(luò)編程 J 西安電子科技大學(xué)出版社 2004 4 22 23 9 何軒 夏應(yīng)清 李祥 一種嵌入式系統(tǒng)以太網(wǎng)接口的設(shè)計(jì)與實(shí)現(xiàn) J 微型與應(yīng)用 2009 1 12 13 10 吳勝昔 路東聽 趙霞 基于嵌入式TCP IP協(xié)議的數(shù)據(jù)采集器 J 微型電腦應(yīng)用 2006 22 1 28 31 11 王蘭 王景存 楊君 單片機(jī)系統(tǒng)接入Internet方法的探討 J 電子技術(shù) 2002 8 32 34 12 夢(mèng)濤 單片機(jī)上的Internet網(wǎng) M 長(zhǎng)江大學(xué)學(xué)報(bào) 2001 5 19 21 13 潭浩強(qiáng) C程序設(shè)計(jì)第二版 M 清華大學(xué)出版社 2005 11 13 14 周康 基于網(wǎng)絡(luò)的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì) D 長(zhǎng)江大學(xué) 2010 6 9 15 梁海波 基于網(wǎng)絡(luò)通信的嵌入式數(shù)據(jù)采集系統(tǒng)的研究 D 哈爾濱 哈爾濱工程大學(xué) 2008 4 5 16 楊蘇飛 基于DSP的微機(jī)保護(hù)實(shí)驗(yàn)教學(xué)系統(tǒng)的上位機(jī)軟件設(shè)計(jì)與實(shí)現(xiàn) D 成都 西南交通大學(xué) 2010 26 28 21 附 錄 單片機(jī)發(fā)送端程序 發(fā)送主程序 ORG 0023H AJMP ACINT ORG 8030H MOV TMOD 20H MOV TL1 0F3H MOV TH1 0F3H SETB EA CLR ES MOV PCON 00H SETB TR1 MOV SCON 40H MOV SBUF 40H SOUT1 JNB T1 CLR T1 MOV SBUF 00H SOUT2 JNB T1 CLR T1 MOV SBUF 40H SOUT3 JNB T1 CLR T1 MOV SBUF 1FH MOV DPTR 4000H MOV R7 20H SETB ES AHALT AJMP 中斷服務(wù)程序 ORG 8100H ACINT MOVX A DPTR CLR T1 MOV SBUF A DJNZ R7 AEND 22 CLR ES CLR TR1 AEND INC DPTR RET1 上位機(jī)軟件設(shè)計(jì) 對(duì)套接字添加處理函數(shù) 在其成員函數(shù) SetParent 中添加代碼如下 Void SetParent CTalkDlg pDlg m pDlg pDlg 在 CMySocket 類中添加 OnConnect
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 腹瀉患者的家庭護(hù)理技巧
- 胸腔閉式引流護(hù)理
- 2025年辦公家具定制合同(企業(yè))
- 地質(zhì)災(zāi)害風(fēng)險(xiǎn)評(píng)估-第3篇
- 2025年金融服務(wù)場(chǎng)景智能音箱多輪對(duì)話設(shè)計(jì)
- 城市農(nóng)業(yè)食品安全
- 2026 年中職酒店管理(酒店語(yǔ)言學(xué))試題及答案
- 海南文綜試題及答案
- 培訓(xùn)效果評(píng)估-第1篇
- 崇州市氣候條件
- 2025陜西西安市工會(huì)系統(tǒng)開招聘工會(huì)社會(huì)工作者61人歷年題庫(kù)帶答案解析
- 外賣平臺(tái)2025年商家協(xié)議
- 2025年高職(鐵道車輛技術(shù))鐵道車輛制動(dòng)試題及答案
- (新教材)2026年人教版八年級(jí)下冊(cè)數(shù)學(xué) 24.4 數(shù)據(jù)的分組 課件
- 2025陜西榆林市榆陽(yáng)區(qū)部分區(qū)屬國(guó)有企業(yè)招聘20人考試筆試模擬試題及答案解析
- 老年慢性病管理及康復(fù)護(hù)理
- 2026年海南經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院?jiǎn)握校ㄓ?jì)算機(jī))考試參考題庫(kù)及答案1套
- 綜合樓裝飾裝修維修改造投標(biāo)方案(完整技術(shù)標(biāo))
- 中藥現(xiàn)代化生產(chǎn)技術(shù)課件
- 醫(yī)學(xué)專家談靈芝孢子粉課件
- 商業(yè)廣場(chǎng)經(jīng)營(yíng)管理及物業(yè)管理服務(wù)方案
評(píng)論
0/150
提交評(píng)論