新聞中心

EEPW首頁 > 手機與無線通信 > 設(shè)計應用 > 高等院校開放式學生創(chuàng)新實驗室的網(wǎng)絡(luò)化管理系統(tǒng)設(shè)計

高等院校開放式學生創(chuàng)新實驗室的網(wǎng)絡(luò)化管理系統(tǒng)設(shè)計

作者:曾慶杰 莫長江 許棠 梁啟文 龍世瑜 時間:2018-05-30 來源:電子產(chǎn)品世界 收藏
編者按:針對本學院開放實驗室的人力管理上的不足,設(shè)計了網(wǎng)絡(luò)化電源控制的開放實驗室管理系統(tǒng)。該系統(tǒng)主要通過使用Delphi、UniGUI、SQLSERVER相關(guān)技術(shù)建立中心機房服務(wù)器,同時使用Delphi 10 Seattle開發(fā)開放實驗室嵌入式安卓網(wǎng)關(guān),實現(xiàn)和讀卡模塊與Zigbee網(wǎng)絡(luò)的串口通信,從而控制每一個Zigbee終端的交流接觸器動作,最終達到利用學生一卡通實現(xiàn)RFID考勤智能化管理與學生質(zhì)量跟蹤等功能。

作者 曾慶杰 莫長江 許棠 梁啟文 龍世瑜 嶺南師范學院 信息科學與技術(shù)學院(廣東 湛江 524048)

本文引用地址:http://m.butianyuan.cn/article/201805/380763.htm

摘要:針對本學院的人力管理上的不足,設(shè)計了網(wǎng)絡(luò)化電源控制的管理系統(tǒng)。該系統(tǒng)主要通過使用Delphi、UniGUI、SQLSERVER相關(guān)技術(shù)建立中心機房服務(wù)器,同時使用Delphi 10 Seattle開發(fā)嵌入式,實現(xiàn)和讀卡模塊與的串口通信,從而控制每一個Zigbee終端的交流接觸器動作,最終達到利用學生一卡通實現(xiàn)考勤智能化管理與學生質(zhì)量跟蹤等功能。

1 開放實驗室的重要性

  學生作為教學工作的主體,特別是在電子學科的教學實踐中,實踐與工程創(chuàng)新能力的培養(yǎng)與提高對學生而言尤為重要[1]。傳統(tǒng)的實驗教學存在著許多的不足之處,如過多的驗證性實驗,只能在預設(shè)的時間段內(nèi)進行等,雖然普及面廣,但不利于提高部分學有余力的學生進行創(chuàng)新性的實驗,抑制了這部分學生的創(chuàng)造力。因此,建立開放式學生創(chuàng)新實驗室,讓學生能在課余時間繼續(xù)進行實驗與科技制作,實現(xiàn)多方共贏。

2 網(wǎng)絡(luò)化開放實驗室的系統(tǒng)設(shè)計

  網(wǎng)絡(luò)化主要是利用電子信息技術(shù)和網(wǎng)絡(luò)技術(shù)的結(jié)合[2],對電子學科開放實驗室學生遴選、考勤、工程實踐活動做全程監(jiān)控跟蹤。

  2.1 推進網(wǎng)絡(luò)化開放實驗室的初衷

  傳統(tǒng)的開放實驗室較常見的局面是提供一個集中的場所,給部分學生進行課外的學習研究,配備一個兼職的老師進行簡單的協(xié)調(diào)管理。這種情況下,會增大實驗室的管理難度,并可能存在安全隱患。如果疏忽,容易造成儀器丟失或者用電不規(guī)范,也容易造成火災等險情。同時,也存在對于學生的跟蹤培養(yǎng)缺失的問題。一方面,學生的自主學習研究是主要的,另一方面,指導教師的介入不足,不能了解學生各方面的情況,針對性的工作無法得出對策[3]。

  2.2 網(wǎng)絡(luò)化開放實驗室的架構(gòu)與功能

  為了解決以上的幾個突出問題,本文設(shè)計了一套網(wǎng)絡(luò)開放實驗室管理系統(tǒng),圖1為系統(tǒng)的框架結(jié)構(gòu)圖。

  由圖1可知,系統(tǒng)分三層:服務(wù)器層、中間層和[4]執(zhí)行層。WEB服務(wù)器層通過互聯(lián)網(wǎng)與交換信息[5],安卓網(wǎng)關(guān)層則由協(xié)調(diào)器發(fā)送控制命令給每個座位上的終端控制盒(包含Zigbee路由器、核心控制板與交流接觸器等主要部件)去執(zhí)行通斷電動作。

3 服務(wù)器層

  邏輯上有WEB服務(wù)器、SQLSERVER[6]數(shù)據(jù)庫服務(wù)器和DataSnap[7]服務(wù)器,但物理上同在一臺PC上,該服務(wù)器設(shè)置在學校的中心機房中,建立SQLSERVER數(shù)據(jù)庫表,用于保存學生與教師的個人信息,而WEB服務(wù)器則利用Delphi+UniGUI技術(shù)開發(fā),IIS發(fā)布。最后使用DataSnap[8]技術(shù),F(xiàn)ireDAC數(shù)據(jù)庫通信組件開發(fā)服務(wù)器中間件與安卓網(wǎng)關(guān)通信。

  3.1 SQLSERVER數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)

  系統(tǒng)采用SQLSERVER數(shù)據(jù)庫服務(wù)器,通過建立數(shù)據(jù)庫與數(shù)據(jù)表實現(xiàn)系統(tǒng)功能。最主要有學生信息表1,座位使用登錄表2等。

  系統(tǒng)通過建立包含上述兩個核心表與其它更多的關(guān)系表,編寫存儲過程,提供給DELPHI編寫的WEB程序調(diào)用。

  3.2 Delphi+UniGUI開發(fā)WEB服務(wù)器程序

  Delphi是一款優(yōu)秀的可視化編程工具,而UniGUI框架[9]拓展了Delphi的使用范圍,可簡單地按照傳統(tǒng)的桌面程序的思維去實現(xiàn)WEB網(wǎng)站的功能。Delphi結(jié)合UniGUI的特性,可開發(fā)出效率高、使用友好的開放實驗室WEB管理網(wǎng)站。

  WEB服務(wù)器管理系統(tǒng),功能包括:

  (1) 后臺設(shè)置功能;

  (2) 學生刷卡登錄查詢功能;

  (3) 學生工程實踐材料上傳功能;

  (4) 學生報名遴選進入開放實驗室功能。

  這些功能通過IIS提供服務(wù),并且可由處于網(wǎng)絡(luò)中的任何終端計算機進入訪問頁面,完成上述功能。其中學生登陸查詢界面截圖如圖2所示。

4 安卓網(wǎng)關(guān)中間層

  圖1中的安卓嵌入式開發(fā)板有若干串口,用于連接讀卡模塊與Zigbee協(xié)調(diào)器模塊。板上的安卓程序則使用Delphi 10 Seattle開發(fā)Android APP[10],利用網(wǎng)絡(luò)連接WEB服務(wù)器與數(shù)據(jù)庫服務(wù)器,獲取學生的信息后,當學生刷校園一卡通時,串口上傳數(shù)據(jù)到安卓開發(fā)板,可進行綁定操作,完成綁定后,通過串口發(fā)送某座位電源開電信號給Zigbee協(xié)調(diào)器,通過Zigbee網(wǎng)絡(luò)把命令送到指定的桌號上的Zigbee路由器,完成對交流接觸器的閉合操作,而斷電的過程類似。

  4.1 安卓APP串口讀寫

  Delphi 10 Seattle開發(fā)安卓串口,需要利用串口控件“Comport for Android”,執(zhí)行安裝后位于System頁,名為TAcomport[11],系統(tǒng)使用控件版本為1.7,安裝后如圖3所示。

  對串口的操作,以寫名為rfidport(TAComport類)串口控件為例(用于讀寫串口模塊),BaudRate、Databits、Stopbits、DeviceName屬性對應串口波特率、數(shù)據(jù)位、停止位、串口號,需與RFID模塊上的設(shè)置一致方能正常通訊。程序中寫串口的核心代碼如下:

  Var

  bufOut:array of Byte;

  Begin

  setlength(bufOut,5);

  bufout[0]:=$aa;bufout[1]:=$bb;bufout[2]:=$02;bufout[3]:=$20;bufout[4]:=$22;

  rfidport.ClearInput;

  rfidPort.write(bufout,length(bufout),true);

  End;

  數(shù)組bufOut中,$aa、$bb、$02、$20、$22為從RFID模塊獲取卡地址的命令幀,如果成功,將返回卡的32位物理地址,讀取該返回使用“bufin:=rfidport.read”語句,可拆分bufin數(shù)組的具體內(nèi)容獲得卡信息。特別注意的是Read方法是阻塞型函數(shù),如果不加定時控制,一旦串口設(shè)備沒有返回,程序?qū)⑼V惯\行,等待到有返回為止。因此,處理這種情況有兩種方法:用定時器控制或者使用多線程編程[12]。

  在程序部署到安卓開發(fā)板后,因為要調(diào)用開發(fā)板底層硬件串口,還面臨一個root權(quán)限問題,在系統(tǒng)中,調(diào)用“QAndroid.Shell”文件后,加入以下程序段:

  Fshell.Initliaize;

  if FShell.AskForRoot then

  begin

  FShell.Execute('chmod 777 /dev/ttyS3',5000);

  FShell.Execute('chmod 777 /dev/ttyS4',5000);

  end;

  從而取得ttyS3、ttyS4兩個串口的讀寫權(quán)限,完成程序初始化啟動。

  4.2 安卓網(wǎng)關(guān)流程圖

  安卓網(wǎng)關(guān)流程圖如圖4所示。

  安卓網(wǎng)關(guān)采用了帶多串口的Android開發(fā)板,其中一個串口與RFID模塊通訊,另一個串口與Zigbee協(xié)調(diào)器通訊,進行對特定實驗桌進行通電與斷電操作。除此之外,還具備客戶端設(shè)置實驗室功能,另外在網(wǎng)絡(luò)不通的情況下,對實驗桌進行全體開電、全體斷電的功能。圖5為安卓開發(fā)板程序初始化后的主界面。

5 Zigbee網(wǎng)絡(luò)

  協(xié)調(diào)器在通電之后,會進行信道掃描,以便查找附近是否還有別的Zigbee網(wǎng)絡(luò)。如果協(xié)調(diào)器發(fā)現(xiàn)在同一信道中有別的Zigbee網(wǎng)絡(luò)存在(以PAN ID為判斷依據(jù)),則改變自身PAN ID后重新進行掃描,組建新的Zigbee網(wǎng)絡(luò)。協(xié)調(diào)器的這一特性也注定了在一個網(wǎng)絡(luò)之中有且只有一個協(xié)調(diào)器,協(xié)調(diào)器在組建完成網(wǎng)絡(luò)之后便和普通的路由器功能一致了。

  而路由器在網(wǎng)絡(luò)中起著非常關(guān)鍵的作用。Zigbee自組織、自修復、拓撲網(wǎng)絡(luò)結(jié)構(gòu)等無一不是通過路由來實現(xiàn)的。

  終端節(jié)點是Zigbee實現(xiàn)低功耗,它的組網(wǎng)功能和路由是一樣的。不同的是終端并不是時刻都處在接收狀態(tài)的,大部分情況下,它都將處于IDLE或者低功耗休眠模式。它會定時同自己的父節(jié)點進行通信,詢問是否有發(fā)給自己的消息,這個過程被形象地成為“心跳”。

  基于可靠聯(lián)網(wǎng)的考慮,不采用微功耗,因此沒有采用終端節(jié)點模塊,而是采用了有路由功能Zigbee路由模塊,更有利于增強Zigbee自組網(wǎng)網(wǎng)絡(luò)的魯棒性。

  設(shè)置Zigbee協(xié)調(diào)器與路由器的PAN ID為同一個數(shù),使得它們在同一個Zigbee網(wǎng)絡(luò)內(nèi),并針對Zigbee路由器安裝在不同的實驗桌上,對其地址進行相應的編碼,以區(qū)分不同的客戶端。

  每個座位(桌號)都對應一個Zigbee網(wǎng)絡(luò)執(zhí)行層,即控制盒終端,由不同地址的Zigbee路由、交流接觸器、穩(wěn)壓電源等電路構(gòu)成,用于接收Zigbee協(xié)調(diào)器發(fā)來的命令,控制交流接觸器的通斷,達到刷卡開關(guān)對應座位電源的目的。Zigbee網(wǎng)絡(luò)采用如下數(shù)據(jù)幀進行遠程 I/O 控制協(xié)議[13]如表3所示。

  其中,目標地址為FFFF,表示所有節(jié)點廣播,其余特指某一點。

  例如:AA FF FF CC FC 00 00 EA 01 01 FE FE FB 表示將網(wǎng)絡(luò)內(nèi)所有設(shè)備的P0.1 口設(shè)置為高電平,電路圖的連接設(shè)計如圖6所示。

  圖6中,線路從KT2接線柱引入到核心控制板(Core Control Board),核心控制板通過控制接觸器(KM)的通斷,選型為NCH8-20/20,并最終輸出到KT1接線柱,完成對座位電源的控制。特別注意,核心控制板的控制線圈輸出必須接一個電阻電容并聯(lián),用于滅弧,否則,實驗過程中會產(chǎn)生核心控制板中Zigbee單片機的死機現(xiàn)象。

  圖7為核心控制板的原理圖設(shè)計。220 V市電從P1接口接入,經(jīng)過220 V轉(zhuǎn)3.3 V的AC/DC模塊后,供電給Zigbee路由器,并制定P1.0為輸出引腳,接三極管控制中間繼電器,接通或斷開外部交流接觸器的控制線圈,使系統(tǒng)正常工作。

6 結(jié)論

  高等院校開放實驗室可通過該系統(tǒng)可進行學生登入和登出時間記錄,并衍生出了多項附加實用功能,如可進行學生網(wǎng)上報名[14],遴選進入開放實驗室的功能,做到無紙化辦公,資料保存完備。還可對學生的培養(yǎng)質(zhì)量過程進行監(jiān)控,獲得學生的階段性工程實踐成果。

  RFID,Android等網(wǎng)絡(luò)技術(shù)應用日新月異,在各個方面都獲得了大量的應用,而結(jié)合電子開放實驗室,實現(xiàn)網(wǎng)絡(luò)化電源控制管理,可大大提高學生的學習熱情與教師的工作效率,作用比較明顯[15]。實踐證明,既可把實驗技術(shù)人員從繁雜的事務(wù)中解放出來,又可用有效的現(xiàn)代的方法掌控與管理并規(guī)范學生的行為等??蓪M行系統(tǒng)的優(yōu)化升級,惠及更多的實驗室、更多的學生,最終達到培養(yǎng)有競爭力的學生的目的。

  參考文獻:

  [1]梁燁煒,劉彪杜玉豐.開放實驗室資源促進創(chuàng)新能力培養(yǎng)[J].實驗技術(shù)與管理,2013,30(11) :50-52.

  [2]楊慶鳳,顧恒,辛玉紅.實驗室刷卡式常用儀器智能管理系統(tǒng)研究與設(shè)計[J].高校實驗室工作研究,2015(01):80-81.

  [3]羅頻捷,溫荷.開放實驗室管理信息系統(tǒng)的開發(fā)與實現(xiàn)[J].實驗技術(shù)與管理, 2015,32(05):157-160.

  [4]彭龑,何展,鐘文,等.基于ZigBee的實驗室安全監(jiān)控系統(tǒng)[J].實驗室科學,2015,18(01):68-71.

  [5]土屋貴紀.無線射頻識別技術(shù)RFID在物聯(lián)網(wǎng)的應用[J].集成電路應用,2015(01):35-37.

  [6]張福峰,劉振名.利用ADODB實現(xiàn)SQLSERVER數(shù)據(jù)庫訪問[J].農(nóng)業(yè)網(wǎng)絡(luò)信息.,2015(09):102-103.

  [7]江帆.使用Datasnap技術(shù)開發(fā)安卓系統(tǒng)應用程序[J].科技資訊,2013(8)22-22.

  [8]Pawel Glowacki. Unleash the power of Delphi with Delphi Labs – DataSnap [EB/OL]. 2014. http://www.embarcadero.com/cn/rad-in-action/Delphi-labs

  [9]Fmsoft. UniGUI Framework Online documentation [EB/OL]. 2015. http://www.unigui.com/resources/online-documentation

  [10]Embarcadero. Mobile Code Snippets [EB/OL]. 2015. http://docwiki.embarcadero.com/RADStudio/XE5/en/Mobile_Code_Snippets

  [11]Ing.Erik Salaj. Comport for Android Documentation [EB/OL]. 2015. http://www.winsoft.sk/acomport.htm.

  [12]李若重. DELPHI中多線程研究[J].中國新通信.2013,15(04):35-35.

  [13]卓萬科技.低功耗Zigbee 無線網(wǎng)絡(luò)串口透傳解決方案 [EB/OL].2015-05-29.

  [14]王軍,周亞東.基于RFID技術(shù)的針對學生行為分析的研究[J].物聯(lián)網(wǎng)技術(shù),2015,5(02): 69-70,73.

  [15]徐曉燕,毛由冰,黃磊,等.開放實驗室建設(shè)的思考[J].齊齊哈爾醫(yī)學院學報.,2015(03):412-413.

  本文來源于《電子產(chǎn)品世界》2018年第6期第58頁,歡迎您寫論文時引用,并注明出處。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉