翁健紅 劉幗暉
(湖南鐵道職業技術學院,湖南 株洲 412001)
塔吊使用過程中,塔吊的相關管理人員,如塔吊租賃用戶、安監站管理員、塔吊產權單位需要了解塔吊的使用與運行情況,因此需要開發一個B/S模式的塔吊遠程監控系統,該系統能實獲取遠程塔吊的實時運行數據與報警信息,在WEB網頁上實時顯示,實現了塔吊的遠程監控。
塔吊遠程監控系統的功能框圖如圖1所示。

圖1 塔吊遠程監控系統功能結構圖
本系統采用了ASP.NET技術,數據庫選用SQLSERVER2005,為了實時顯示數據,采用了Ajax進行局部刷新;為了模擬塔吊運行情況,采用SilverLight技術。
系統使用了工地信息表、監管部門表、監理單位表、角色表、即時數據表、報警表等十多個表;其中即時數據表、報警表的設計如圖2、圖3所示。

圖2 報警表

圖3 即時數據表
在本系統中,采用基于角色的訪問控制 (Role Based Access Control,RBAC),它可以減少授權管理的復雜性,降低管理開銷。RBAC在用戶和權限之間引入了角色的概念,根據實際需要定義各種角色,并設置和角色相對應的訪問權限,而用戶根據其職責被指派為不同的角色。這樣,訪問權限和角色相關聯,角色再與用戶關聯,從而實現了用戶與訪問權限的邏輯分離。RBAC的基本思想如圖4所示。
本系統的角色有系統管理員、區域、工地、租賃公司建設單位、監管部門、施工單位、監理單位;權限為系統的各功能模塊,如備案管理模塊的增加、刪除、修改等。

圖4 RBAC的基本思想
系統需要實時顯示遠程數據,如總共臺數、在線臺數、今日報警等(如圖5所示),采用Ajax進行局部刷新。

圖5 實時統計信息
部分實現代碼如下:
$(function(){
setCount();
})
function setCount(){
jQuery.ajax({
url:"myAjax.ashx",
async:false,
//dataType:"json",
data:{
type:"tongji",
rand:Math.random()
},
success:function(data){
var str=data.split(",");
$('#<%=lblAll.ClientID%>').
text(str[0]);
$('#<%=lblOn.ClientID%>').text(str[1]);
$('#<%=HyperLink1.ClientID%>').text(str[2]);
}
});
setTimeout('setCount()',1000);
}
B/S塔吊遠程監控系統獲取GPRS系統傳輸的遠程塔吊的運行數據與報警信息,在WEB網頁上實時顯示,實現了塔吊的遠程監控。目前該系統已投入使用,運行穩定,滿足了管理員、區域、工地、租賃公司、建設單位、監管部門、施工單位、監理單位等多種類型用戶對塔吊監控的需要。
[1]馬軍.精通ASP.NET2.0網絡應用系統開發[M].北京:人民郵電出版社,2007.
[2]陳冠軍.精通ASP.NET2.0企業級項目開發[M].北京:人民郵電出版社,2007.