120]一個(gè)好的、高效率的軟件需要全面支持快捷操作,工具欄、快捷鍵等等全部是提高工作效率的好方法。我們不僅提供全方位的快捷操作,而且支持自定義的快捷操作,允許用戶定義新的工具欄,允許編輯快捷鍵。
[0121]全面支持dock
[0122]由于故障設(shè)計(jì)軟件是具有許多的界面元素,將會(huì)存在眾多的子窗口和工具條,因此,全面支持dock,方便用戶按照自己的習(xí)慣來(lái)布置界面,真正人性化設(shè)計(jì),提高用戶的工作效率。
[0123]c電路圖編輯模塊
[0124]我們的整個(gè)仿真操作的基礎(chǔ)就是各類音視頻產(chǎn)品的電子線路圖,因此,在故障設(shè)計(jì)的過(guò)程中,有時(shí)是需要對(duì)電路圖進(jìn)行編輯工作,可能需要將原來(lái)的電路圖中部分器件對(duì)象化,進(jìn)行對(duì)象化的設(shè)置。這些對(duì)象在隨后的仿真過(guò)程中是需要使用的。
[0125]因此,電路圖編輯模塊需要支持AutoCAD的dwg文件格式,同時(shí),除了一般的伸縮、定位、移動(dòng)外,需要能夠進(jìn)行選擇、剪切、對(duì)象化,并能夠進(jìn)行一些定義和設(shè)置工作。
[0126]d電路板編輯模塊
[0127]電路板編輯是針對(duì)仿真系統(tǒng)中電路板顯示中需要電路板圖進(jìn)行編輯。電路板編輯模塊可以對(duì)電路板圖定義對(duì)象,并且設(shè)置測(cè)量點(diǎn)或區(qū)域。我們知道,有些情況下,針對(duì)同一產(chǎn)品不同的故障設(shè)計(jì),可能電路板上的大部分對(duì)象是一致的,因此,電路板圖是公用的,而對(duì)象也分為公有和私有,這樣減少重復(fù)工作量,提高效率。
[0128]e狀態(tài)圖編輯模塊
[0129]我們知道整個(gè)故障腳本的核心是狀態(tài)轉(zhuǎn)換圖,圖形化的狀態(tài)圖編輯可以加快腳本生成速度,減少純粹文字編輯引起的錯(cuò)誤。
[0130]狀態(tài)圖編輯主要功能有:
[0131]?狀態(tài)定義和編輯
[0132]能夠狀態(tài)定義是必須的功能。初始狀態(tài)和終止?fàn)顟B(tài)一般是系統(tǒng)預(yù)定的,不能定義,只能針對(duì)狀態(tài)的屬性、動(dòng)作等進(jìn)行編輯;
[0133]?狀態(tài)連接定義
[0134]允許狀態(tài)間連接,并且允許對(duì)狀態(tài)間的連接進(jìn)行定義和編輯,一般連接都是操作引起的,因此,在狀態(tài)間的連接都是操作(這些操作在數(shù)據(jù)庫(kù)時(shí)有定義的,輔助工具中的有專門(mén)的操作定義工具)。
[0135]?圖形到腳本間的雙向轉(zhuǎn)換
[0136]狀態(tài)圖最終是要保存為腳本的,狀態(tài)圖和腳本存在著雙向轉(zhuǎn)換的關(guān)系,如果發(fā)現(xiàn)腳本無(wú)法轉(zhuǎn)換為狀態(tài)圖,則證明腳本可能已經(jīng)損壞。
[0137]f腳本編輯器
[0138]除了狀態(tài)圖編輯工具,我們也提供腳本編輯器,則主要向那些已經(jīng)非常熟練的操作人員提供,需要完全手動(dòng)編寫(xiě)。
[0139]腳本編輯器支持語(yǔ)法解析,可以對(duì)腳本各種不同的部分用不同顏色和字體進(jìn)行標(biāo)識(shí),為編寫(xiě)腳本提供方便。
[0140]g輔助工具
[0141]僅僅依靠以上的工具是不夠的,要完成腳本還需要諸多的輔助工具,這些輔助工具在進(jìn)行編輯的過(guò)程中提供許多的便利。輔助工具主要有:
[0142]?操作定義
[0143]我們對(duì)于操作的定義主要是基于一些操作模板定義,例如,測(cè)量就是一種操作模板;如果我們定義某操作為測(cè)量操作,那么必然按照測(cè)量模板定義清楚,大概主要包含(測(cè)量?jī)x表,測(cè)量對(duì)象),測(cè)量?jī)x表主要是虛擬儀器,測(cè)量對(duì)象就是電路圖編輯器中定義的對(duì)象;
[0144]?多媒體列表
[0145]數(shù)據(jù)庫(kù)中的多媒體名稱列表,主要包含視頻、音頻等等;在列表中,我們可以進(jìn)行添加、修改、刪除等等操作,允許多媒體導(dǎo)入。
[0146]這個(gè)列表主要幫助定義播放動(dòng)作是輔助用的;
[0147]?部件列表
[0148]包括儀表、虛擬屏幕、電子器件對(duì)象等等都統(tǒng)統(tǒng)列舉在部件列表中,提供在各種場(chǎng)合迅速地應(yīng)用他們。
[0149]h日志記錄
[0150]故障設(shè)計(jì)軟件是可能會(huì)修改數(shù)據(jù)庫(kù)中許多仿真數(shù)據(jù),安全審計(jì)非常重要;對(duì)于一些重大修改數(shù)據(jù)的操作需要進(jìn)行日志記錄,以便今后有案可查。
[0151]i幫助和操作演示
[0152]故障設(shè)計(jì)軟件是非常復(fù)雜,提供許許多多的功能和快捷操作,為了方便使用和提高工作效率,軟件專門(mén)設(shè)計(jì)幫助系統(tǒng),提供全方位實(shí)時(shí)幫助;同時(shí),提供一套操作演示,可供學(xué)習(xí)觀摩。
[0153](3)自動(dòng)升級(jí)系統(tǒng)
[0154]a自動(dòng)升級(jí)客戶端
[0155]仿真系統(tǒng)的最大特點(diǎn)是通用性和可擴(kuò)充性,因此,仿真數(shù)據(jù)的更新是不可避免的。前面關(guān)于數(shù)據(jù)庫(kù)的描述已經(jīng)清楚地表明仿真客戶端是需要經(jīng)常升級(jí)的。
[0156]自動(dòng)升級(jí)客戶端提供此項(xiàng)功能,自動(dòng)升級(jí)客戶端可以自動(dòng)運(yùn)行,也可手動(dòng)運(yùn)行,完全自動(dòng)進(jìn)行升級(jí)檢查,一旦發(fā)現(xiàn)服務(wù)端有新的數(shù)據(jù),立即進(jìn)行更新。
[0157]b自動(dòng)升級(jí)服務(wù)端
[0158]當(dāng)服務(wù)器端更新數(shù)據(jù)或者仿真客戶端軟件更新,都會(huì)提高系統(tǒng)的版本號(hào),自動(dòng)升級(jí)服務(wù)端將判斷客戶端的仿真系統(tǒng)版本和服務(wù)端當(dāng)前系統(tǒng)版本,發(fā)現(xiàn)不一致,立即向自動(dòng)升級(jí)客戶端提供升級(jí)更新服務(wù)。
[0159](4)仿真系統(tǒng)客戶端
[0160]正如前面所述,客戶端分為三種類型:學(xué)員端、教師端和管理員端,教師機(jī)比學(xué)員機(jī)主要多了學(xué)員監(jiān)控和操作評(píng)價(jià)分析兩大功能,而管理員又比教師多了一些系統(tǒng)管理功倉(cāng)泛。
[0161]a硬件控制部分
[0162]硬件控制部分提供軟件到真實(shí)的視頻產(chǎn)品維修實(shí)訓(xùn)鑒定硬件系統(tǒng)或者音頻產(chǎn)品維修實(shí)訓(xùn)鑒定硬件系統(tǒng)的中介。軟件控制視頻、音頻產(chǎn)品故障現(xiàn)象是通過(guò)硬件控制部分來(lái)實(shí)現(xiàn)的。
[0163]音視頻產(chǎn)品的故障仿真的部分是結(jié)合硬件實(shí)物的,經(jīng)過(guò)分析,不難看出大部分的控制主要是進(jìn)行開(kāi)和關(guān)的控制;部分更高級(jí)的控制是對(duì)于電阻、電感、電容等等進(jìn)行可調(diào)節(jié)控制;因此,整個(gè)硬件部分需要能夠提供開(kāi)關(guān)控制和部分器件調(diào)節(jié),同時(shí),硬件控制部分需要向主機(jī)提供通訊接口,方便主機(jī)進(jìn)行控制。
[0164]硬件控制部分主要有RS232串口通信接口,處理芯片,多路執(zhí)行開(kāi)關(guān)控制器和可調(diào)電阻、電感等等。
[0165]整個(gè)硬件控制部分的開(kāi)發(fā)可以分成以下幾個(gè)模塊:
[0166]籲單片機(jī)設(shè)計(jì)
[0167]硬件結(jié)構(gòu)設(shè)計(jì)是整個(gè)硬件控制部分開(kāi)發(fā)的第一步,單片機(jī)的設(shè)計(jì)主要是將整個(gè)硬件系統(tǒng)的功能需求分析清楚,設(shè)計(jì)硬件邏輯結(jié)構(gòu)來(lái)實(shí)現(xiàn)這些功能。
[0168]我們的硬件控制部分涉及到五類產(chǎn)品,涉及的產(chǎn)品非常多,單片機(jī)的設(shè)計(jì)需要針對(duì)各個(gè)產(chǎn)品進(jìn)行設(shè)計(jì),然后進(jìn)行整合。
[0169]?硬件組裝
[0170]單片機(jī)設(shè)計(jì)完成之后,需要進(jìn)行硬件選購(gòu)。選購(gòu)?fù)瓿芍?,根?jù)設(shè)計(jì)進(jìn)行硬件的組裝。
[0171]?嵌入式編程和調(diào)試
[0172]硬件組裝完成之后,需要開(kāi)始嵌入式編程。需要開(kāi)發(fā)出短小精悍而又功能強(qiáng)大的程序,嵌入硬件系統(tǒng)。編寫(xiě)完畢,需要進(jìn)行調(diào)試工作。
[0173]b軟件部分
[0174]仿真軟件部分的客戶端和服務(wù)器端擁有許多的相似性,我們先介紹仿真客戶端的各個(gè)模塊,然后針對(duì)服務(wù)端的專有功能進(jìn)行介紹。
[0175]?用戶處理模塊
[0176]用戶處理模塊主要負(fù)責(zé)用戶登錄、身份認(rèn)證、密碼修改等等。無(wú)論是學(xué)員登錄客戶端,或是教師登錄服務(wù)端,都需要進(jìn)行身份認(rèn)證。登陸成功后,可以修改用戶自己的密碼。
[0177]我們利用標(biāo)準(zhǔn)的MD5加密函數(shù)對(duì)用戶密碼進(jìn)行加密。
[0178]MD5的全稱是message-digest algorithm5 (信息-摘要算法),廣泛用于加密和解密技術(shù)上。比如在unix系統(tǒng)中用戶的密碼就是以md5(或其它類似的算法)經(jīng)加密后存儲(chǔ)在文件系統(tǒng)中。當(dāng)用戶登錄的時(shí)候,系統(tǒng)把用戶輸入的密碼計(jì)算成md5值,然后再去和保存在文件系統(tǒng)中的md5值進(jìn)行比較,進(jìn)而確定輸入的密碼是否正確。通過(guò)這樣的步驟,系統(tǒng)在并不知道用戶密碼的明碼的情況下就可以確定用戶登錄系統(tǒng)的合法性。
[0179]身份認(rèn)證的基本流程如圖4。
[0180]?界面模塊
[0181 ] 界面部分客戶端和服務(wù)端基本上是一致的。
[0182]主界面各個(gè)部分介紹:
[0183]I)菜單顯示區(qū)
[0184]根據(jù)實(shí)際的將系統(tǒng)的各種功能和設(shè)置羅列出來(lái),提供給客戶選擇。
[0185]2)工具欄顯示區(qū)
[0186]主要是一些常用的菜單項(xiàng),另外我們?cè)诠ぞ邫趨^(qū)提供維修中將會(huì)需要的測(cè)試工具,例如,電壓表、示波器等等。用戶在實(shí)際的維修過(guò)程中可以選擇工具,然后,進(jìn)行測(cè)試等。
[0187]3)虛擬屏幕顯示區(qū)
[0188]在這塊區(qū)域提供各種虛擬產(chǎn)品的顯示(例如,各類電視屏幕),在進(jìn)行維修操作中模擬實(shí)際的屏幕。在維修中,用戶設(shè)定好故障后,可以對(duì)虛擬產(chǎn)品進(jìn)行操作,將會(huì)出現(xiàn)故障的表現(xiàn),例如,無(wú)光有聲等。在學(xué)