范強
【摘 要】 本論文針對云臺故障點檢測效率低、檢測方法盲目的現狀,通過深入研究云臺控制信號協議,實現了一個快速檢測云臺故障的系統。該系統包括信號接收、信號整理、信號解析、信號記錄的保存以及清空接收區功能。該系統通過在控制鏈路上的節點收集信號、整理信號、解析信號,將解析出來的動作與測試操作動作對比,判斷出云臺的故障點。該系統在實際運行中提高云臺故障檢測效率、規范化云臺檢測方法、提升視頻維修水平,具有很強的實用性和針對性。
【關鍵詞】 云臺故障 快速檢測 研究 系統實現
1 前言
目前,視頻監控系統在鐵路上有廣泛的應用,并且應用的范圍還在擴大。云臺控制作為視頻監控系統的一個重要子系統在視頻監控中起著非常重要的作用。在視頻監控系統維修過程中,云臺控制的故障率非常高,并且故障起因也很復雜。傳統的憑經驗通過更換設備的做法已經遠遠不能滿足目前維修效率。因此,有必要對云臺故障快速檢測系統進行研究并實現,以快速查找故障點,提高維修效率。
2 檢測系統研究
云臺是一種安裝在攝像機和支撐物之間的工作臺,具有水平和垂直運動的功能。云臺內部解碼器可根據外部控制信號,完成指定速度的水平、垂直運動,光圈、焦距調節,攝像機關閉、開啟等功能。外部的控制信號是由云臺控制協議確定的。不同的廠家,云臺控制協議也不盡相同。目前比較通用的控制協議是PELCO-D協議。
PELCO-D協議一般采用RS-485接口進行傳輸,波特率一般在1200~9600bps之間。
數據格式:1位起始位,1位停止位,8位數據位,無校驗位。其數據傳輸格式如表1所示。
命令格式:見表1、表2。
(1)該協議中所有數值都為十六進制數,同步字節始終為FFH;
(2)地址碼為攝像機的邏輯地址號,地址范圍:00H FFH;
(3)數據碼1、2分別表示水平、垂直方向速度(00-3FH);
(4)校驗碼=MOD[(字節2+字節3+字節4+字節5+字節6/100H];
(5){0xff,0x01,0x00,0x00,0x00,0x00,0x01}//停命令
(6)Sence碼與Bit4和Bit3有關。在Bit4和Bit3為1的情況下,如果Sence碼為1,則命令就是自動掃描和和攝像機打開;如果Sence碼為0,則命令就是手動掃描和攝像機關閉。如果Bit4或Bit3為0的話那命令就無效了。
在確定控制信號協議后,可以考慮在控制鏈路上收集控制信號并且解析為相應的控制動作,這個動作和操作動作進行對比,可以判斷信號傳輸是否正常,在控制鏈路的節點上依次檢測對比,就可以確定云臺故障點。云臺信號收集和解析可以通過連接筆記本電腦來實現,檢測系統也就可以通過編寫電腦軟件來實現。此系統軟件開發環境為Visual Studio工具,開發語言為C#。
3 檢測系統實現
系統功能包括信號接收、信號整理、信號解析、信號記錄的保存以及清空接收區。系統運行截圖如圖1所示。
3.1 信號接收功能實現
信號接收包括正確設置串口號、串口波特率,打開串口后,系統開始接收信號。信號接收核心代碼如下所示:
void comm_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
//初始化代碼省略
this.Invoke((EventHandler)(delegate
{
//判斷是否是顯示為16進制
if (checkBoxHexView.Checked)
{
//依次的拼接出16進制字符串
foreach (byte b in buf)
{
builder.Append(b.ToString("X2") + " ");
}
}
else
{
//直接按ASCII規則轉換成字符串
builder.Append(Encoding.ASCII.GetString(buf));
}
//后續處理代碼省略
}));
}
3.2 信號整理功能實現
信號整理是將采集到的信號,根據信號協議規定的每條指令的個數整理為每條指令為一行,方便觀察。
3.3 信號解析功能實現
信號解析功能是將整理好的信號數據,根據信號協議規定的內容解析為相應的操作指示。核心代碼如下:
private void jieXiByPelcod()
{
//初始化代碼省略
foreach (string xinHao in xinHaos)
{
string[] byteStrings = xinHao.Split(new Char[1] { ' ' });
//接收數據有效性驗證和校驗和驗證省略,驗證不通過退出
//以下是動作解析
if ("0008".Equals(byteStrings[2]+byteStrings[3]))
{
jieXiJieGuo += "向上";
}
// 解析其他動作的部分與此類似,在此省略
//速度解析
int shuiPingSuDu =int.Parse(byteStrings[4], NumberStyles.AllowHexSpecifier);endprint
jieXiJieGuo += ",水平速度" + shuiPingSuDu;
int chuiZhiSuDu = int.Parse(byteStrings[5], NumberStyles.AllowHexSpecifier);
jieXiJieGuo += ",垂直速度" + chuiZhiSuDu;
txGet.Text += xinHao + jieXiJieGuo + "\r\n";
}
}
3.4 信號保存記錄功能實現
信號保存記錄是將解析過的信號內容存儲為文本文件,以備后續查詢。文本文件存儲在當前系統運行的目錄,命名按照日期加時間命名精確到秒。
3.5 清空接收區功能
清空接收區功能用于清空之前采集到的信號,重新采集信號。
4 檢測系統對故障點判斷方法
系統開發的主要目標是快速查找云臺控制的故障點。一般監控系統中云臺控制主要由硬盤錄像機、485分配器、線路、前端云臺構成。將控制線路中,靠近硬盤錄像機的連接點定義為節點1,485分配器的進口接線點定義為節點2,485分配器的出口接線點定義為節點3,云臺相機的接線點定義為節點4。
故障點判斷方法:
節點1連接測試電腦,運行云臺信號解析系統,通過DVR操作云臺,觀察解析系統解析的內容是否與操作相同。如果不相同DVR出現故障,如果相同,測試節點2。在節點2觀察解析內容與操作是否一致,如果不一致說明這段線路有問題,如果一致說明這段線路沒問題,測試節點3,依次類推。
在實際云臺控制中,中間設備可能還要很多,有些設備的控制不是使用硬盤錄像機而是使用工控機進行控制。但是不管結構圖怎樣,檢測方法如同上述,一個節點一個節點測試,直到找到故障點。
5 云臺檢測方法對比
在沒有使用此系統之前,云臺出現故障后,只能根據經驗猜測某個地方出現問題,然后更換某個設備,觀察是否解決故障,這就存在幾個方面的問題:
(1)云臺出現故障時,需要攜帶大量的備品,給維修人員帶來了很大的負擔;
(2)有些設備安裝空間非常小,隨意更換設備,可能導致設備出問題,增加新的故障點;
(3)由于故障的排查是通過猜測和更換大量設備來完成的,現場維修人員維修強度大。
由此可見傳統的云臺故障的檢測沒有固定的方法,具有很大的盲目性。使用本系統和本系統的檢測方法不僅能夠解決上述問題,而且能夠使云臺故障排查更加規范化。因此本系統能夠大大提高云臺故障檢測效率、規范化云臺檢測方法、提升視頻維修水平,具有很強的實用性和針對性。
6 結語
云臺控制信號解析系統就是要在云臺控制線路節點上采集云臺控制信號,根據相關的協議將接收到信號解析為動作指示,判斷實際操作與動作指示是否一致,進而能找到故障點。與傳統的云臺故障檢測方法相比,本系統能夠大大提高云臺故障檢測效率、規范化云臺檢測方法、提升視頻維修水平,具有很強的實用性和針對性。
隨著視頻監控系統的不斷應用、視頻維修工作的進一步深入,云臺故障快速檢測系統將在視頻維修中產生積極的影響,并在鐵路安全運輸生產中發揮重要的作用,具有良好的社會和經濟效益。endprint
jieXiJieGuo += ",水平速度" + shuiPingSuDu;
int chuiZhiSuDu = int.Parse(byteStrings[5], NumberStyles.AllowHexSpecifier);
jieXiJieGuo += ",垂直速度" + chuiZhiSuDu;
txGet.Text += xinHao + jieXiJieGuo + "\r\n";
}
}
3.4 信號保存記錄功能實現
信號保存記錄是將解析過的信號內容存儲為文本文件,以備后續查詢。文本文件存儲在當前系統運行的目錄,命名按照日期加時間命名精確到秒。
3.5 清空接收區功能
清空接收區功能用于清空之前采集到的信號,重新采集信號。
4 檢測系統對故障點判斷方法
系統開發的主要目標是快速查找云臺控制的故障點。一般監控系統中云臺控制主要由硬盤錄像機、485分配器、線路、前端云臺構成。將控制線路中,靠近硬盤錄像機的連接點定義為節點1,485分配器的進口接線點定義為節點2,485分配器的出口接線點定義為節點3,云臺相機的接線點定義為節點4。
故障點判斷方法:
節點1連接測試電腦,運行云臺信號解析系統,通過DVR操作云臺,觀察解析系統解析的內容是否與操作相同。如果不相同DVR出現故障,如果相同,測試節點2。在節點2觀察解析內容與操作是否一致,如果不一致說明這段線路有問題,如果一致說明這段線路沒問題,測試節點3,依次類推。
在實際云臺控制中,中間設備可能還要很多,有些設備的控制不是使用硬盤錄像機而是使用工控機進行控制。但是不管結構圖怎樣,檢測方法如同上述,一個節點一個節點測試,直到找到故障點。
5 云臺檢測方法對比
在沒有使用此系統之前,云臺出現故障后,只能根據經驗猜測某個地方出現問題,然后更換某個設備,觀察是否解決故障,這就存在幾個方面的問題:
(1)云臺出現故障時,需要攜帶大量的備品,給維修人員帶來了很大的負擔;
(2)有些設備安裝空間非常小,隨意更換設備,可能導致設備出問題,增加新的故障點;
(3)由于故障的排查是通過猜測和更換大量設備來完成的,現場維修人員維修強度大。
由此可見傳統的云臺故障的檢測沒有固定的方法,具有很大的盲目性。使用本系統和本系統的檢測方法不僅能夠解決上述問題,而且能夠使云臺故障排查更加規范化。因此本系統能夠大大提高云臺故障檢測效率、規范化云臺檢測方法、提升視頻維修水平,具有很強的實用性和針對性。
6 結語
云臺控制信號解析系統就是要在云臺控制線路節點上采集云臺控制信號,根據相關的協議將接收到信號解析為動作指示,判斷實際操作與動作指示是否一致,進而能找到故障點。與傳統的云臺故障檢測方法相比,本系統能夠大大提高云臺故障檢測效率、規范化云臺檢測方法、提升視頻維修水平,具有很強的實用性和針對性。
隨著視頻監控系統的不斷應用、視頻維修工作的進一步深入,云臺故障快速檢測系統將在視頻維修中產生積極的影響,并在鐵路安全運輸生產中發揮重要的作用,具有良好的社會和經濟效益。endprint
jieXiJieGuo += ",水平速度" + shuiPingSuDu;
int chuiZhiSuDu = int.Parse(byteStrings[5], NumberStyles.AllowHexSpecifier);
jieXiJieGuo += ",垂直速度" + chuiZhiSuDu;
txGet.Text += xinHao + jieXiJieGuo + "\r\n";
}
}
3.4 信號保存記錄功能實現
信號保存記錄是將解析過的信號內容存儲為文本文件,以備后續查詢。文本文件存儲在當前系統運行的目錄,命名按照日期加時間命名精確到秒。
3.5 清空接收區功能
清空接收區功能用于清空之前采集到的信號,重新采集信號。
4 檢測系統對故障點判斷方法
系統開發的主要目標是快速查找云臺控制的故障點。一般監控系統中云臺控制主要由硬盤錄像機、485分配器、線路、前端云臺構成。將控制線路中,靠近硬盤錄像機的連接點定義為節點1,485分配器的進口接線點定義為節點2,485分配器的出口接線點定義為節點3,云臺相機的接線點定義為節點4。
故障點判斷方法:
節點1連接測試電腦,運行云臺信號解析系統,通過DVR操作云臺,觀察解析系統解析的內容是否與操作相同。如果不相同DVR出現故障,如果相同,測試節點2。在節點2觀察解析內容與操作是否一致,如果不一致說明這段線路有問題,如果一致說明這段線路沒問題,測試節點3,依次類推。
在實際云臺控制中,中間設備可能還要很多,有些設備的控制不是使用硬盤錄像機而是使用工控機進行控制。但是不管結構圖怎樣,檢測方法如同上述,一個節點一個節點測試,直到找到故障點。
5 云臺檢測方法對比
在沒有使用此系統之前,云臺出現故障后,只能根據經驗猜測某個地方出現問題,然后更換某個設備,觀察是否解決故障,這就存在幾個方面的問題:
(1)云臺出現故障時,需要攜帶大量的備品,給維修人員帶來了很大的負擔;
(2)有些設備安裝空間非常小,隨意更換設備,可能導致設備出問題,增加新的故障點;
(3)由于故障的排查是通過猜測和更換大量設備來完成的,現場維修人員維修強度大。
由此可見傳統的云臺故障的檢測沒有固定的方法,具有很大的盲目性。使用本系統和本系統的檢測方法不僅能夠解決上述問題,而且能夠使云臺故障排查更加規范化。因此本系統能夠大大提高云臺故障檢測效率、規范化云臺檢測方法、提升視頻維修水平,具有很強的實用性和針對性。
6 結語
云臺控制信號解析系統就是要在云臺控制線路節點上采集云臺控制信號,根據相關的協議將接收到信號解析為動作指示,判斷實際操作與動作指示是否一致,進而能找到故障點。與傳統的云臺故障檢測方法相比,本系統能夠大大提高云臺故障檢測效率、規范化云臺檢測方法、提升視頻維修水平,具有很強的實用性和針對性。
隨著視頻監控系統的不斷應用、視頻維修工作的進一步深入,云臺故障快速檢測系統將在視頻維修中產生積極的影響,并在鐵路安全運輸生產中發揮重要的作用,具有良好的社會和經濟效益。endprint