日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 通信技術 > 通信技術
[導讀] 摘 要:在小型或零星的多媒體教室實現(xiàn)對投影機的網(wǎng)絡遠程控制,仍然值得進一步研究。在此闡述Windows服務的 基本特性,分析服務器端網(wǎng)絡數(shù)據(jù)幀與串口數(shù)據(jù)幀通信協(xié)議的轉(zhuǎn)換,論述基于Windows服務的軟件設計流程。進

 摘 要:在小型或零星的多媒體教室實現(xiàn)對投影機的網(wǎng)絡遠程控制,仍然值得進一步研究。在此闡述Windows服務的
基本特性,分析服務器端網(wǎng)絡數(shù)據(jù)幀與串口數(shù)據(jù)幀通信協(xié)議的轉(zhuǎn)換,論述基于Windows服務的軟件設計流程。進而提出在
無網(wǎng)絡中控的情況下,對投影機實現(xiàn)遠程控制的“零成本”解決方案,并介紹投影機遠程冷啟動開機和延時關機的方法?;?br />于Windows服務的數(shù)據(jù)通信有著在特殊應用中的優(yōu)勢。
關鍵詞:Windows服務;網(wǎng)絡;串口;遠程控制;投影機


0 引 言
    在小型、零星或分散的多媒體教室里,如果吊裝投影機后,再配置一套多媒體教室設備網(wǎng)絡集成中央控制系統(tǒng)(簡稱網(wǎng)絡中控)顯得有些多余。因為網(wǎng)絡中控的主要控制對象是投影機,是圍繞投影機服務而實現(xiàn)多媒體教室設備的集成控制。不過投影機已經(jīng)具備了信號源的切換功能,與其連接的計算機又有網(wǎng)絡和串口資源,而且網(wǎng)絡中控還必須占用一個目前網(wǎng)絡資源緊張的IP地址。
    為了充分利用投影機和計算機自有的硬件軟件資源,這里使用Microsoft Visual Studio 2005集成開發(fā)工具和.NET 2.O框架,采用C#編程語言,提出一種既能在運行時不需用戶交戶的窗口界面、不與其它應用進程發(fā)生沖突,又能實現(xiàn)投影機的遠程冷啟動開機和延時關機,基于網(wǎng)絡、Windows服務和串口的投影機遠程控制“零成本”解決方案。

l 關鍵技術的實現(xiàn)
1.1 計算機Windows服務技術特征
    一個計算機 Windows服務程序是沒有Win-dows窗口界面的后臺運行程序,是在Windows操作系統(tǒng)下不要求用戶交互而能在后臺運行特定功能的可執(zhí)行應用程序。對于自動啟動的Windows服務程序,在Windows啟動或是重啟之后,用戶登錄之前就開始執(zhí)行,隨Windows系統(tǒng)關閉而最后停止。 Windows服務程序的應用范圍很廣,典型的Windows服務程序包含硬件控制、應用程序監(jiān)視、系統(tǒng)級應用、診斷、報告、Web和文件系統(tǒng)服務等功能。
    Windows服務應用程序的啟動由Windows服務控制管理器(Service Control Manager,SCM)完成,而SCM通過維護數(shù)據(jù)庫對已經(jīng)安裝到系統(tǒng)的所有服務和驅(qū)動程序進行統(tǒng)一而安全的控制和管理,是一個遠程進程調(diào)用服務器,在 Windows操作系統(tǒng)導人時自動啟動。Windows服務分為服務應用程序啟動、服務程序監(jiān)控及運行和服務程序安裝三個部分。這三部分通過安裝程序組合為一個完整的.exe文件。
    實現(xiàn)投影機的遠程控制,開發(fā)用戶主要精力放在網(wǎng)絡與串口通信協(xié)議及程序設計上。與投影機連接的計算機設置為服務器端,由服務器端的網(wǎng)絡與串口通信程序轉(zhuǎn)發(fā)客戶端發(fā)送的控制信號實現(xiàn)對投影機控制,或作為返回投影機的應答信號。顯然,計算機只是數(shù)據(jù)信號轉(zhuǎn)發(fā)的硬件軟件中介,網(wǎng)絡與串口通信軟件只能在計算機的 Windows操作系統(tǒng)后臺進行,即Windows服務承擔此特殊任務。這是實現(xiàn)硬件控制和應用程序監(jiān)視,并以軟件設計為主的解決方案。.NET框架簡化了Win-dows服務程序的創(chuàng)建和控制過程,其中啟動函數(shù)On-Start()和關閉函數(shù)OnClose()都是Windows服務開發(fā)重點。
1.2 網(wǎng)絡數(shù)據(jù)幀與串口幀的通信協(xié)議設計
    為了在計算機啟動后立即監(jiān)聽網(wǎng)絡,及時轉(zhuǎn)發(fā)客戶端發(fā)來的控制信號到投影機,使投影機實現(xiàn)相應的動作,則計算機首先必須實現(xiàn)基于Windows服務的網(wǎng)絡和串口的轉(zhuǎn)換協(xié)議,定義圖1所示網(wǎng)絡數(shù)據(jù)幀和串口數(shù)據(jù)幀格式。服務器和客戶端都以網(wǎng)絡數(shù)據(jù)幀來通信,網(wǎng)絡數(shù)據(jù)幀包含IP頭、TCP頭和若干串口數(shù)據(jù)幀。由于服務器端的計算機可能要使用多個串口控制嵌入式設備,同時因不同廠家生產(chǎn)投影機的串口波特率、效驗位、數(shù)據(jù)位、停止位等都不一致。無法確定所有投影機的串口設置,串口幀除了串口數(shù)據(jù)(N位)外,還需要在串口數(shù)據(jù)前加串口號(1位)、串口設置(1位)。為了編程方便,設定統(tǒng)一串口幀長度,對于不夠長度的,以填充位(為O)來補齊。在允許網(wǎng)絡數(shù)據(jù)幀最大長度的情況下,可以一個網(wǎng)絡數(shù)據(jù)幀包含若干個串口數(shù)據(jù)幀,各個串口數(shù)據(jù)幀以串口幀頭和串口幀尾區(qū)分開。

1.3 網(wǎng)絡與串口通信軟件設計
    由上面論述可知,與投影機連接的計算機設置為服務器端。其軟件設計采用客戶機/服務器(C/S)模型,與遠程客戶端實現(xiàn)網(wǎng)絡通信,都要建立通信網(wǎng)絡套接字 Socket.對象,以后服務器端和客戶端通過這個套接字進行網(wǎng)絡通信。.NET 2.O提供了SerialPort串口組件,以完成與投影機或其他嵌入式設備的串口數(shù)據(jù)信號轉(zhuǎn)發(fā)。
    在服務器端,基于計算機Windows服務的關鍵程序是網(wǎng)絡與串口通信程序設計,網(wǎng)絡與串口通信主程序流程圖如圖2所示。服務控制管理器SCM在Win- dows系統(tǒng)啟動后就調(diào)用網(wǎng)絡與串口通信程序的On-Start()函數(shù)。在OnStart()函數(shù)里建立新的線程,并建立新的Socket對象,使用 bind()函數(shù)綁定本地計算機的IP地址和協(xié)議端口,通過。listen()函數(shù)監(jiān)聽該協(xié)議端口。為了提高計算機的運行效率,采用非阻塞異步 Socket編程。

    網(wǎng)絡偵聽到新的連接后,就建立新線程并生成新的Socket對象,原線程繼續(xù)偵聽網(wǎng)絡,新的Socket對象與客戶端的Socket對象建立連接,并接收客戶端發(fā)來的網(wǎng)絡數(shù)據(jù)幀。服務器端Socket對象收到網(wǎng)絡數(shù)據(jù)幀后,解析出串口數(shù)據(jù)幀,并讀出串口號和串口設置,根據(jù)串口號初始化本地計算機的 SerialPort串口組件,如波特率、停止位、數(shù)據(jù)長度、握手連接等。以SerialPort組件的Open()方法打開相應的串口;把從網(wǎng)絡數(shù)據(jù)幀解析出的串口數(shù)據(jù),用SerialPort組件的Write()方法發(fā)送出去,以控制投影機的相應動作;然后偵聽正使用的串口資源,并通過 SerialPort組件的異步方式.Read()方法讀入返回的應答信號。等待規(guī)定毫秒時間延時后,讀入串口接收緩存器,如有返回的串口數(shù)據(jù),就把返回的串口數(shù)據(jù)加上IP頭,與TCP封裝成網(wǎng)絡數(shù)據(jù)幀,按接收到的客戶端IP地址發(fā)送出去。如在規(guī)定時間里沒有返回串口數(shù)據(jù),表明外界嵌入式設備的串口資源有故障,就生成失敗串口數(shù)據(jù)封裝網(wǎng)絡數(shù)據(jù)幀發(fā)回到原先連接的客戶端。最后關閉正使用的Socket對象和串口資源,原Socket,對象同時繼續(xù)網(wǎng)絡偵聽等待新的客戶端連接。Windows系統(tǒng)關閉時,Windows服務控制管理SCM就關閉網(wǎng)絡與串口的通信程序,從而退出Win-dows服務系統(tǒng)后臺運行。

2 投影機遠程控制案例
2.1 “零成本”解決方案
    根據(jù)上述的網(wǎng)絡、Windows服務和串口遠程控制開發(fā)流程,可以使設計不再使用網(wǎng)絡中控硬件,但具備網(wǎng)絡中控的網(wǎng)絡與串口通信協(xié)議功能,以“零成本”方式實現(xiàn)投影機遠程控制。設計如圖3所示的基于網(wǎng)絡、Windows服務與串口通信應用。

    整個項目系統(tǒng)中有4個信號源:計算機數(shù)據(jù)信號、便攜機數(shù)據(jù)信號、影碟機視頻信號、錄像機視頻信號,全部由投影機實現(xiàn)信號切換。控制投影機開機關機及信號源切換控制,由其串口與計算機的串口一連接。根據(jù)投影機不同的串口設置,客戶端發(fā)送的串口數(shù)據(jù)幀設置與計算機、投影機的串口設置相一致。計算機的串口二與電動屏幕的串口連接(電動屏幕通過一個小型AVR單片機控制的兩個繼電器來實現(xiàn)電動屏幕的升、降和停止,AVR單片機有一個全雙工串口),同樣串口數(shù)據(jù)幀設置也與電動屏幕的串口設置相一致。客戶端以網(wǎng)絡套接字Socket對象發(fā)送或接收網(wǎng)絡數(shù)據(jù)幀,根據(jù)遠程投影機或電動屏幕的串口設置發(fā)送串口號和相應串口設置,并由若干串口控制數(shù)據(jù)代碼組成符合規(guī)定的串口數(shù)據(jù)幀,再按TCP/IP協(xié)議組成網(wǎng)絡數(shù)據(jù)幀,實現(xiàn)基于網(wǎng)絡、Windows服務和串口的投影機遠程控制。
2.2 投影機遠程冷啟動開機和延時關機
    在沒有網(wǎng)絡中控的情況下,如果要實現(xiàn)投影機的遠程冷啟動開機和延時關機控制。首先要實現(xiàn)對投影機所連接的計算機進行遠程冷啟動開機(喚醒功能),并能通過計算機的串口資源控制投影機的冷啟動開機和延時關機。計算機的硬件如主板、網(wǎng)卡等都要符合網(wǎng)絡開機喚醒功能設置;計算機的軟件采用開機后即可自動運行的Windows服務,以實現(xiàn)網(wǎng)絡與串口的數(shù)據(jù)協(xié)議轉(zhuǎn)換。
    在主控客戶端確定需要喚醒遠程投影機所連接計算機時,客戶端通過Socket廣播發(fā)送相應含有網(wǎng)絡喚醒數(shù)據(jù)幀的數(shù)據(jù)包給網(wǎng)絡中的計算機。當需要喚醒的計算機控制芯片發(fā)現(xiàn)數(shù)據(jù)包內(nèi)包含本網(wǎng)卡的媒體訪問控制(Media Access Control,MAC)地址信息的網(wǎng)絡喚醒數(shù)據(jù)幀后,就立刻通過網(wǎng)絡喚醒(Wake on Lan,WoL)連接線向計算機發(fā)出開機信號,通知主板開機。在網(wǎng)絡中,當計算機處于關機狀態(tài)時,IP地址和計算機名字都不能識別機器的身份,惟一能識別其身份的只有它所帶網(wǎng)卡的物理地址,即MAC地址。每塊網(wǎng)卡的地址是惟一的,也就是說網(wǎng)卡的MAc地址可以用來惟一地標識網(wǎng)絡上的某臺計算機。
    網(wǎng)絡喚醒數(shù)據(jù)幀的格式為連續(xù)6 B的FF和連續(xù)重復16次的MAC地址。若要喚醒電腦網(wǎng)卡的MAC地址00-DF-IE-32-E7-CD,則其對應的網(wǎng)絡喚醒數(shù)據(jù)幀如圖4所示。

    對于實現(xiàn)投影機的遠程關機,客戶端只需被控計算機的管理員賬號和密碼,就能控制或者進入被控計算機的操作系統(tǒng)。其實現(xiàn)原理是視窗管理規(guī)范 (WindowsManagement Instrumentation,WMI)。通過WMI為客戶端用戶提供通用訪問管理信息,設置客戶端在其本地計算機讀取/寫入/執(zhí)行的權限,也包括關機設置。當客戶端發(fā)出遠程關機命令時,被控計算機通過WMI確認客戶端用戶使用權限,使用上面所述的Windows服務,實現(xiàn)網(wǎng)絡數(shù)據(jù)幀到串口數(shù)據(jù)幀的協(xié)議轉(zhuǎn)換,并通過計算機串口向投影機發(fā)送延時關機信號。投影機延時關機完成后,根據(jù)客戶端的要求,被控計算機也可隨即關閉Windows服務,并自動關機,最后整個系統(tǒng)進入遠程冷啟動開機的功能。

3 結(jié) 語
    利用基于網(wǎng)絡、Windows服務和串口的數(shù)據(jù)通信技術,通過計算機作為中介,實現(xiàn)了對投影機遠程冷啟動開機和延時關機;并使用計算機網(wǎng)絡套接字 Socket和SeriallPort串口控件,完成了在無網(wǎng)絡中控硬件支持的情況下,利用本地計算機網(wǎng)絡資源和串口資源,以及投影機本身信號源切換資源,實現(xiàn)對投影機的“零成本”遠程控制。同時基于網(wǎng)絡、Windows服務和串口的數(shù)據(jù)通信有更多的用途,在只有計算機而又要實現(xiàn)對被控設備進行網(wǎng)絡遠程控制時,就要應用到這種技術。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

串口作為單片機開發(fā)的一個常用的外設,應用范圍非常廣。大部分時候,串口需要接收處理的數(shù)據(jù)長度是不定的。那么怎么才能判斷一幀數(shù)據(jù)是否結(jié)束呢,今天就以STM32單片機為例,介紹幾種接收不定長數(shù)據(jù)的方法。

關鍵字: 單片機 串口 STM32

近日,一個存在于Windows Mark of the Web (MotW)中的零日漏洞被發(fā)現(xiàn),并正在被攻擊者積極利用。但有趣的是,在微軟官方還沒有對該漏洞做出修復之前,第三方平臺0patch就提供了該漏洞的修復補丁。據(jù)...

關鍵字: PATCH Windows 微軟 APP

(全球TMT2022年9月22日訊)Granite River Labs(簡稱"GRL")日前宣布,其位于中國東莞的實驗室已獲英特爾公司(Intel? Corporation)授權,可為Windows系統(tǒng)平臺開展Thu...

關鍵字: Windows THUNDERBOLT ST OS

這是FPGA之旅設計的第十例啦,在上一例中,已經(jīng)成功驅(qū)動了OLED屏幕,本例將結(jié)合上一例,以及第四例多bytes串口通信做一個有趣的例程。

關鍵字: FPGA OLED屏 串口

GRL東莞實驗室將與上海和臺北實驗室一同,提供Windows Host認證服務 加利福尼亞州圣克拉拉市2022年9月22日 /美通社/ -- 高速信號和充電技術測...

關鍵字: Windows THUNDERBOLT USB OS

接下來測試燒寫功能,本次采用串口和USB燒寫方式。使用ISP串口燒寫這是51單片機常用的方案,本次測試比較順利,沒有遇到什么問題。但是USB燒寫沒有測試成功,USB燒寫方式不需要任何的驅(qū)動和硬件支持,直接將USB線和ST...

關鍵字: PCB控制板 USB 串口

摘要:簡單介紹了建設水源地遠程控制系統(tǒng)的必要性,詳細介紹了基于手機APP技術的水源地控制系統(tǒng)的系統(tǒng)架構和主要功能。該項目的實施,提高了工作效率,降低了職工勞動強度,提高了水源地管理水平。

關鍵字: 遠程控制 系統(tǒng)架構 主要功能

摘要:隨著城市經(jīng)濟的發(fā)展,電力電纜線路建設需求逐步擴大,為適應城市規(guī)劃及城市電網(wǎng)電纜線路的建設發(fā)展,電纜隧道將逐步取代傳統(tǒng)電纜敷設方式。由于地下電纜隧道的封閉性、距離長、管線多、環(huán)境復雜等特點,綜合監(jiān)控系統(tǒng)在電纜隧道中的...

關鍵字: 電纜隧道 綜合監(jiān)控 遠程控制

摘要:通過對某自來水廠加氯系統(tǒng)的改造設計,詳細分析了施耐德Premium系列PLC與Genesis64組態(tài)軟件在自來水廠加氯系統(tǒng)中的具體運用情況。實踐表明,改造后加氯系統(tǒng)運行穩(wěn)定,加氯效果良好,消除了設備安全隱患,加大了...

關鍵字: 加氯系統(tǒng) PLC 遠程控制

摘要:遠程控制的交流接觸器控制回路常見于火力發(fā)電廠燃料系統(tǒng)、脫硫脫硝系統(tǒng)及灰水化學水處理等諸多需要電機驅(qū)動的設備就地控制箱的控制回路中。當電機控制箱安裝在設備就地,并需要對其進行遠控操作時,由于控制電纜過長或使用不合理、...

關鍵字: 遠程控制 接觸器 電機控制

通信技術

120766 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉