劉艷茹
(吉林工業職業技術學院,吉林 吉林 132013)
近些年,在計算機技術發展的同時網絡通信技術也得到相應的提升,而在此影響下,如果仍是沿用常規的串口服務器,就無法滿足信息自動化管理的要求[1]。目前,國家網絡使用中應用的IP網絡服務器無法同時考慮傳統的串行通信設備,由于網絡技術中已經取消了常規的通信方式,導致傳統設備的浪費,部分設備停用,而市場上各種IP網絡通信技術下的普通簡單服務器兼容性差,局限性高,功能單一。現有的串行服務器存在一些不足之處,如果仍然沿用這種模式就會影響整體效果。基于此,本文主要設計了一種基于MFC的網絡串行服務器,這種服務器可以用作串行通信服務器以及網絡通信服務器。網絡串行服務器可以隨時接受來自下層計算機的連接請求或斷開連接請求,并且能夠直接與下層計算機進行有效通信溝通,同時能夠進行一對一數據信息處理,且這種服務器具有更強的兼容性與實用性,拓展性更高[2]。
MFC是微軟公司提供的一個類庫,是完全包括了程序框架應用的一種形式,可以有效減少程序人員在開發中的工作[3]。該系統使用MFC作為開發平臺,使用C ++語言編程,建立MFC項目,承載串行網絡服務器,接收下位計算機發起的連接請求,接收數據推送,分析和處理接收到的數據,并處理信息[4]。
串口通信主要指的是通過此模式進行數據的發送與接收,這樣的通信模式比以往按字節的通信慢得多,而串行通信則可以將兩行數據直接發送至同一線路上,并將數據接收至另一條線路,這樣可以實現簡單的遠距離通信模式。串口通信主要是采用波特參數進行設置,所有這些參數都需要與端口匹配才能正常通信[5]。
TCP/IP網絡服務是基于MFC平臺開發的Windows軟件,主要可以在局域網的使用中對客戶端用戶進行監控,實時監控客戶端應用情況,并與客戶端實現直接通信,與串行服務器相比,這種系統模式的最大特點是其靈活的傳輸格式和高傳輸效率,具有應用意義。同時,該系統基于客戶端和服務器模型,由兩部分組成:服務器和客戶端。服務器能夠直接連接到數據庫,服務器的應用不僅可以接收下位服務器所發送的數據信息,還可以完成客戶端所提出的各種請求,再將處理意見直接發送至下位的計算機主機上。而客戶端則通過服務器的IP地址和端口號連接到服務器后,再移交給服務器[6]。
服務器和客戶端通過套接字進行通信,具體分為3個步驟:首先,第一個步驟是利用服務器做好套接對象的準備,其中一個是Listen Socket,主要位于偵聽臺下的Socketzhuyao,具體應用意識就是用于接收客戶端連接請求,另一個是Server Socket,主要作用就是在服務器與客戶端之間做好數據通信作用,為了在客戶端和服務器之間進行通信,必須建立ClientSocket類[7]。其次,客戶端在創建輸入和輸出流的時候,可以將輸入和輸出流量與Socket連接。最后,主要是實現服務器網絡時間,從而及時響應客戶端所發送的請求,直到雙方成功連接后,服務器需要接收客戶端發送的數據,結束后,客戶端和服務器將斷開連接,并基于一個或多個設備終端發送信息。
本系統的功能設定為3部分:串口通信服務器功能設定、網絡通信服務器功能設定、103協議應用功能設置。其中,串行通信服務器和網絡通信服務器的兩個服務器對話框被合并到串行網絡服務器中;當更改網絡服務器的IP地址時,可以通過串行通信來修改綁定到客戶端的服務器IP。
2.3.1 串口服務器功能
串口服務器有兩種運行模式:輪詢模式和手動發送指令模式。當打開輪詢模式后,軟件將開始在地址范圍內巡視較低端的計算機,此模式適用于測試多臺低端計算機的網絡性能;另一種是手動發送指令,單擊不同的指令按鈕,軟件將發送相應的消息,此模式測試來自一臺較低計算機的單個消息。
2.3.2 Web服務器功能
在Web服務器端要實現的主要功能是:
(1)實時顯示功能。服務器中的實時顯示功能,主要是通過有效獲取客戶端或嵌入式下位機的狀態,然后直接將獲取后的顯示狀態發送給控件,內容中所指的顯示內容不僅包括客戶端是否在線,還包括客戶端的IP地址以及設備名稱的信息。
(2)信息收集功能。本服務器的信息收集功能則是接收從客戶端下位計算機發送的傳感器信息數據,然后將收集到的數據信息直接連接到數據庫。
(3)通信功能。該服務器通信功能的靈活性表現,主要體現在用戶可以隨意進行選擇,通過選擇任何在線客戶端來完成通信。只要單擊要通信的客戶端,就可以將客戶端添加到通信鏈接,這次進行通信的對象也可以通過單擊右鍵的模式進行查看,查看內容包括設備的狀態和相關歷史信息。
(4)改變服務器IP地址改變客戶服務器使用IP地址的模式主要在嵌入式下位機設備中。這種模式在應用中,一旦需要更改相關服務器主機,就可以有效使用此功能,迅速更改綁定到客戶端的服務器。
該系統的實現需要串行端口服務器,Web服務器和103協議應用程序功能[8]。
串行端口服務器單擊串行端口連接按鈕,以開始串行端口服務器和下層計算機之間的通信為第一步,當通信完成之后就可以啟動軟件,啟動之后就可以進行初始化串口數據,再通過選擇模式的應用,進入相應的工作過程,從而提高整個工作效率。
3.1.1 輪詢模式
輪詢模式在啟動前應嚴格設置其輪詢參數,在整個輪詢過程中,會從第一個地址連續查詢設備數據,直到查到數據為止。
3.1.2 手動模式
采用手動的方式利用軟件將消息發送到固定地址設備,其中默認地址為0,通過手動設置選擇命令后,消息被添加到發送緩沖區中,傳輸前無法加載新命令,成功防止了多個消息的混淆。
與串行服務器相比,網絡服務器的通信功能更加靈活,更加完善。右側是網絡IP地址,服務器啟動和關閉以及服務器IP地址更改,該程序使用該結構在相應的結構中存儲設備名稱、設備狀態、歷史信息以及下位計算機的IP地址[9]。
綜上所述,本文研究的串口服務器的網絡控制系統所有功能均正常,可以正常投入使用。串行端口服務器和網絡服務器正常連接到下部計算機后,它們可以及時與下部計算機傳輸消息,并且將響應結果顯示到窗口并加以保存。串口服務器還能輪詢下位機,并通過鏈表管理多個下位機,進行靈活通信。