基于LonWorks和iButton技術(shù)的新型電子考勤裝置
摘要:闡述一種新型的基于LonWorks和iButton技術(shù)的電子考勤裝置的特點(diǎn),著(zhù)重介紹其硬件組成、軟件設計及系統工作原理,最后講述具體的應用場(chǎng)合。
本文引用地址:http://dyxdggzs.com/article/255619.htm關(guān)鍵詞:LonWorks iButton 電子考勤
目前,在數字識別領(lǐng)域,尤其在電子考勤系統中所采用的的介質(zhì)多為磁卡和IC卡。這些介質(zhì)存在攜帶不便、易受損壞、不能適應惡劣環(huán)境的不足;而電子考勤系統所選介質(zhì)必須能較好地解決這些問(wèn)題。美國DALLAS半導體公司推出的新型智能化信息載體iButton,采用不銹鋼外殼封裝,具有抗撞擊、防水漬、耐腐蝕、抗磁擾、防折疊的特點(diǎn),滿(mǎn)足了電子考勤系統的要求。
除了信息載體應滿(mǎn)足一定的要求外,電子考勤系統還必須依靠可靠的網(wǎng)絡(luò )支持。LonWorks網(wǎng)絡(luò )是一種新型的現場(chǎng)總線(xiàn)網(wǎng)絡(luò ),由美國ECHELON公司和MOTOROLA公司共同研制開(kāi)發(fā)。其支持OSI 7層協(xié)議架構,網(wǎng)絡(luò )拓撲結構靈活,系統可靠性、可維護性好,并采用先進(jìn)的糾錯技術(shù),抗干擾性強。而且,LonWorks和iButton器件提供通信接口支持。因而,采用iButton和LonWorks技術(shù)構建電子考勤系統成為可能。
基于iButton技術(shù)及LonWorks技術(shù)所設計的智能電子考勤系統,能較好地解決傳輸IC卡、磁卡考勤系統存在的不足,同時(shí)又滿(mǎn)足了分布式系統在可靠性、可維護性、穩定性方面的要求。
1 系統基本組成
圖1為本系統的基本結構,由三部分構成:一為內置有LonWorks通信卡的微機;二為智能考勤節點(diǎn);三為考勤觸頭及iButton。微機處于主導地閏,具有網(wǎng)絡(luò )監測、網(wǎng)絡(luò )控制和網(wǎng)絡(luò )管理功能。智能考勤節點(diǎn)為數字量輸入的LonWorks節點(diǎn)模塊,主要將考勤觸頭送來(lái)的數據發(fā)往微機??记谟|頭及iButton,主要負責數據采集,并將采集到的數據送入考勤節點(diǎn)。
1.1 智能通信卡
智能通信卡是LonWorks與監控微機連接的橋梁,是實(shí)現分布式系統信息收集、數據處理、現場(chǎng)控制等功能的樞紐,在通信過(guò)程中起關(guān)鍵作用。通信卡作為L(cháng)onWorks網(wǎng)絡(luò )上的一種特殊的網(wǎng)絡(luò )節點(diǎn),可以與其上所有分布式節點(diǎn)進(jìn)行對等的數據通信。對微機而言,通信卡為一智能外設,可快速實(shí)現與微機的數據交換。
圖2為智能通信卡的功能框爐膛,主要包括Neuron神經(jīng)元芯處、收發(fā)器、EEPROM、雙口RAM、譯碼電路和Service電路等。通信卡遵循LonTalk協(xié)議,通過(guò)以Neuron為核心芯片的網(wǎng)絡(luò )接口,與LonWorks網(wǎng)的智能節點(diǎn)進(jìn)行通信,并通過(guò)對雙口RAM訪(fǎng)問(wèn)實(shí)現與微機的數據交換。雙口RAM存儲單元的地址分配,在微機和Neuron芯片兩側有所不同。Neuron芯片和微機之間的通信,綜合采用了標志查詢(xún)、定時(shí)中斷和事件驅動(dòng)等多種方式。
1.2 智能考勤節點(diǎn)
智能考勤節點(diǎn)實(shí)現為數字量輸入的LonWorks節點(diǎn)模塊。Neuron芯片提供有IO_0~IO_10共11個(gè)I/O引腳,通過(guò)對其進(jìn)行編程,可配置成多種不同的I/O對象。其中Touch I/O對象類(lèi)型用于與DALLAS半導體公司開(kāi)發(fā)的1-Wire協(xié)議接口,因而LonWorks可方便地支持iButton等1-Wire器件。
Neuron C語(yǔ)言支持Touch I/O對象的函數主要有:
Int touch_reset(io_object_name); //系統復位
Unsigned touch_byte(io_object_name,unsigned write-data);
//在1-Wire總線(xiàn)上讀寫(xiě)字節數據
unsigned touch_bit(io_object_name,unsigned write-data);
//在1-Wire總線(xiàn)上讀寫(xiě)位數據
int touch_first(io_object_name,search_data *sd);
//執行ROM搜索算法
int touch_next(io_object_name,search_data *sd);
//執行ROM搜索算法
unsigned crc8(unsigned crc,unsigned new-data);
//執行CRC校驗
在Neuron C程序中可直接調用以上函數訪(fǎng)問(wèn)iButton等器件,進(jìn)行數據讀寫(xiě)操作。
1.3 iButton及考勤觸頭
iButton采用紐扣狀不銹鋼外殼封裝,內部由I/O處理器和存儲器兩個(gè)基本部分組成,以1-Wire規范作為通信協(xié)議,與外界進(jìn)行信息交換。1根數據線(xiàn)和1根地線(xiàn)構成了iButton的電氣接口。采用獨特的主從式、位同步、半雙串行方式與外界通信,信號同步由內部定時(shí)邏輯解決,而數據通信的能量則由數據線(xiàn)提供。
本系統中的iButton采用DS1990A,其帶有64位全球唯一的標識號,作為考勤人員的身份標識??记谟|頭直接采用DALLAS公司的DS9092GT觸頭。
2 系統軟件設計
軟件設計亦由三部分組成,如圖3所示。一是管理信息數據庫系統,操作界面用VB6.0或VC6.0開(kāi)發(fā),數據庫采用Access或Oracle、SQL Server。二為通信卡上的通信程序。三為考勤節點(diǎn)的數據采集程序。這兩部分程序用Neuron C(語(yǔ)言開(kāi)發(fā))。管理信息數據庫系統與通信程序間基于雙口RAM技術(shù)實(shí)現數據交換,而通信程序與數據采集程序間采用Neuron C顯式報文技術(shù)實(shí)現數據交換。
人們隨身攜帶iButton,當進(jìn)入單位或其他需作考勤的場(chǎng)所時(shí),將iButton與考勤觸頭接獨。IButton的標識號通過(guò)考勤節點(diǎn)進(jìn)入微機,加上時(shí)間標簽存于管理信息數據庫中。根據不同的物理位置,設置考勤節點(diǎn),每個(gè)考勤節點(diǎn)又可以連接若干個(gè)考勤獨頭。根據應用系統的大小選用關(guān)系數據庫。若系統較小,采用Access即能滿(mǎn)足要求;否則,采用Oracle或SQL Server。
以下為數采程序中的一段核心代碼,用Neuron C語(yǔ)言編寫(xiě)。
#pragma enable_io_pullups
……
IO_4 input leveldetect io_twire_pres;
IO_4 touch io_twire;
unsigned int id_data[8];
msg_tag mess_out;
……
when (io_in(io_twire_pres)= =1)
{unsigned int i,crc_data;
if(touch_reset (io_twire)) //系統復位
{id_data[0]=51; //發(fā)送讀取ROM區ID數據的命令
io_out(io_twire,id_data,1);
io_in(io_twire,data,8); //讀取8位ID,放在id_data中
crc_data=0;
for(i=0;i7;i++) //CRC校驗
{crc_data=crc8(crc_data,id_data[i]);
}
if(crc_data= =id_data[7])
{for(i=0;i8;i++) //將采集到的數據打包
{msg_out.data[i]=id_data[i];
}
msg_out.service=UNACKD_RPT;
msg_out.tag=mess_out;
msg_out.dest_addr.no_address=BROADCAST;
msg_send();
}
}
(void)io_in(io_twire_pres);
}
3 系統應用
本套系統融合當今世界最新的iButton與LonWorks技術(shù),設計思路新穎獨特。IButton技術(shù)較好地解決了目前電子考勤系統普遍存在的攜帶不便、易受磁擾電擾、易受腐蝕、容易折損、不能適用于惡劣環(huán)境的不足;而采用LonWorks網(wǎng)絡(luò )技術(shù),使之成為一分布式的系統,有效作用范圍高達數公里,并且穩定性、可靠性和抗干擾性大大提高,可以滿(mǎn)足大型企業(yè)尤其是化工、煤礦、冶金等企業(yè)的人員考勤。
本套系統實(shí)現簡(jiǎn)單,成本低廉,網(wǎng)絡(luò )維護方便,有望生產(chǎn)較好的經(jīng)濟效益和社會(huì )效益,具有廣闊的應用前景。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論