本發(fā)明涉及數(shù)據(jù)處理,特別涉及一種基于配置驅(qū)動的實驗?zāi)_本生成方法和裝置。
背景技術(shù):
1、在自動化實驗領(lǐng)域,傳統(tǒng)實驗?zāi)_本開發(fā)模式存在以下問題:1)直接調(diào)用底層硬件驅(qū)動進行腳本開發(fā),這需要工作人員具備電子工程、計算機科學等專業(yè)背景,技術(shù)門檻偏高;2)實驗人員在沒有全面掌握儀器連接狀況的前提下無法完成腳本編寫,這使得腳本的編寫效率難以提高;3)腳本編寫質(zhì)量與人工經(jīng)驗掛鉤,語法錯誤、邏輯漏洞等問題難以系統(tǒng)化規(guī)避。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的,就是針對現(xiàn)有技術(shù)的缺陷,提供一種基于配置驅(qū)動的實驗?zāi)_本生成方法、裝置、電子設(shè)備及計算機可讀存儲介質(zhì)。本發(fā)明預(yù)先基于實驗場景內(nèi)所有操作設(shè)備的設(shè)備驅(qū)動構(gòu)建一個基礎(chǔ)函數(shù)庫,并為當前實驗場景定制了可視化的實驗任務(wù)配置模板(設(shè)備連接配置模板、任務(wù)流配置模板);用戶在沒有腳本開發(fā)經(jīng)驗的情況下也可通過交互式的模板操作快速生成設(shè)備連接配置和任務(wù)流配置;在獲得設(shè)備連接配置后基于該配置自動生成實驗有向圖,并通過該有向圖對當前場景中的設(shè)備連接關(guān)系和設(shè)備初始狀態(tài)進行記錄;繼而再根據(jù)實驗有向圖和基礎(chǔ)函數(shù)庫自動生成任務(wù)流配置對應(yīng)的實驗?zāi)_本。通過本發(fā)明,一方面可以降低腳本編寫的技術(shù)門檻,另一方面可以提高腳本的生成效率,再一方面還能降低錯誤率、提高腳本質(zhì)量。
2、為實現(xiàn)上述目的,本發(fā)明實施例第一方面提供了一種基于配置驅(qū)動的實驗?zāi)_本生成方法,所述方法包括:
3、基于指定實驗場景中所有操作設(shè)備的設(shè)備驅(qū)動構(gòu)建一個基礎(chǔ)函數(shù)庫;并為所述基礎(chǔ)函數(shù)庫的各函數(shù)給出對應(yīng)的調(diào)用接口;
4、為所述指定實驗場景設(shè)計實驗任務(wù)配置模板;所述實驗任務(wù)配置模板包括設(shè)備連接配置模板和任務(wù)流配置模板;
5、從用戶基于所述實驗任務(wù)配置模板配置生成的實驗任務(wù)配置中提取出對應(yīng)的設(shè)備連接配置和任務(wù)流配置;
6、基于所述設(shè)備連接配置進行有向圖構(gòu)建得到對應(yīng)的實驗有向圖;
7、根據(jù)所述實驗有向圖、所述任務(wù)流配置和所述基礎(chǔ)函數(shù)庫的所有函數(shù)調(diào)用接口進行逐任務(wù)腳本生成處理得到對應(yīng)的實驗?zāi)_本;
8、由所述實驗有向圖和所述實驗?zāi)_本組成對應(yīng)的腳本執(zhí)行配置并保存。
9、優(yōu)選的,所述指定實驗場景的每個實驗設(shè)備的設(shè)備名稱唯一;
10、所述指定實驗場景的實驗設(shè)備種類包括容器、注射泵、單向電磁閥、真空泵、氣源設(shè)備;
11、所述容器包括四個進出端口,分別為進液、出液、抽真空和注氣端口;
12、所述注射泵包括進液、出液閥門端口和運動活塞;所述進、出液閥門端口的通/斷狀態(tài)各由一個自控裝置控制,所述運動活塞的上下位移運動狀態(tài)由另一個自控裝置控制;所述運動活塞的運動范圍為活塞位置范圍[0,pmax],pmax為對應(yīng)的最大活塞位置,活塞位置的單位與液體體積單位對應(yīng);
13、所述單向電磁閥包括進、出氣端口,所述進、出氣端口的連通氣道的通/斷狀態(tài)由一個自控裝置控制;
14、所述真空泵包括抽氣端口,所述真空泵由一個自控裝置對設(shè)備的啟/停狀態(tài)進行控制;
15、所述氣源設(shè)備包括放氣端口,所述氣源設(shè)備用于存儲一類惰性氣體并由一個自控裝置對設(shè)備的啟/停狀態(tài)進行控制;
16、所述注射泵、所述單向電磁閥、所述真空泵和所述氣源設(shè)備屬于所述操作設(shè)備;各個所述操作設(shè)備的設(shè)備驅(qū)動用于對當前設(shè)備的各個自控裝置進行單步操作驅(qū)動;
17、所述基礎(chǔ)函數(shù)庫包括第一閥門控制函數(shù)、活塞控制函數(shù)、第二閥門控制函數(shù)、真空泵控制函數(shù)、氣源控制函數(shù)和系統(tǒng)等待函數(shù);各函數(shù)的調(diào)用接口分別為對應(yīng)的第一閥門控制接口、活塞控制接口、第二閥門控制接口、真空泵控制接口、氣源控制接口和系統(tǒng)等待接口;
18、所述實驗?zāi)_本的執(zhí)行環(huán)境與所述基礎(chǔ)函數(shù)庫的運行環(huán)境保持一致;所述實驗?zāi)_本的執(zhí)行環(huán)境用于加載所述腳本執(zhí)行配置進行自動化實驗處理;并在處理過程中先根據(jù)當前的所述實驗有向圖對所述指定實驗場景的設(shè)備狀態(tài)進行初始化、再通過執(zhí)行當前的所述實驗?zāi)_本完成本輪實驗操作過程;并在執(zhí)行當前實驗?zāi)_本時將其視為一個子任務(wù)腳本序列,并對當前序列中順序排列的子任務(wù)腳本進行順序執(zhí)行;并在執(zhí)行每個子任務(wù)腳本時將其視為一個腳本序列,并對當前序列中順序排列的同步腳本塊、單步操作腳本進行順序執(zhí)行;并在執(zhí)行每個同步腳本塊時,對當前塊內(nèi)的所有單步操作腳本進行同步執(zhí)行;并在執(zhí)行每個單步操作腳本時,通過當前腳本函數(shù)調(diào)用接口對應(yīng)的設(shè)備驅(qū)動對指定設(shè)備進行單步操控,并通過當前設(shè)備驅(qū)動獲得本次單步操控的反饋狀態(tài),并在當前反饋狀態(tài)不為異常狀態(tài)時繼續(xù)執(zhí)行下一個同步腳本塊或下一個單步操作腳本。
19、優(yōu)選的,所述第一閥門控制接口的接口參數(shù)包括第一設(shè)備標識參數(shù)、閥門端口參數(shù)和第一閥門控制參數(shù);所述第一設(shè)備標識參數(shù)為一個所述注射泵的所述設(shè)備名稱;所述閥門端口參數(shù)包括端口標識ptb,1、ptb,2;所述端口標識ptb,1、ptb,2分別為所述注射泵的所述進、出液閥門端口的預(yù)設(shè)端口標識;所述第一閥門控制參數(shù)包括連通和關(guān)斷;
20、所述第一閥門控制函數(shù)用于根據(jù)所述第一閥門控制參數(shù),對所述第一設(shè)備標識參數(shù)和所述閥門端口參數(shù)對應(yīng)的所述注射泵的進液或出液閥門端口的通/斷狀態(tài)進行控制;
21、所述活塞控制接口的接口參數(shù)包括第二設(shè)備標識參數(shù)、目標位置參數(shù)和最大流速參數(shù);所述第二設(shè)備標識參數(shù)為一個所述注射泵的所述設(shè)備名稱;所述目標位置參數(shù)為一個在所述活塞位置范圍[0,pmax]內(nèi)的活塞位置;所述最大流速參數(shù)為所述運動活塞在抽取或推送液體時進/出泵液體的最大流速;
22、所述活塞控制函數(shù)用于以所述最大流速參數(shù)為上限速度約束、以當前活塞位置為起始位置、以所述目標位置參數(shù)為結(jié)束位置,對所述第二設(shè)備標識參數(shù)對應(yīng)的所述注射泵的所述運動活塞進行一次單向位移控制;
23、所述第二閥門控制接口的接口參數(shù)包括第三設(shè)備標識參數(shù)和第二閥門控制參數(shù);所述第三設(shè)備標識參數(shù)為一個所述單向電磁閥的所述設(shè)備名稱;所述第二閥門控制參數(shù)包括連通和關(guān)斷;
24、所述第二閥門控制函數(shù)用于根據(jù)所述第二閥門控制參數(shù),對所述第三設(shè)備標識參數(shù)對應(yīng)的所述單向電磁閥的通/斷狀態(tài)進行控制;
25、所述真空泵控制接口的接口參數(shù)包括第四設(shè)備標識參數(shù)和第一狀態(tài)控制參數(shù);所述第四設(shè)備標識參數(shù)為一個所述真空泵的所述設(shè)備名稱;所述第一狀態(tài)控制參數(shù)包括啟動和停止;
26、所述真空泵控制函數(shù)用于根據(jù)所述第一狀態(tài)控制參數(shù),對所述第四設(shè)備標識參數(shù)對應(yīng)的所述真空泵進行啟/??刂疲?/p>
27、所述氣源設(shè)備控制接口的接口參數(shù)包括第五設(shè)備標識參數(shù)和第二狀態(tài)控制參數(shù);所述第五設(shè)備標識參數(shù)為一個所述氣源設(shè)備的所述設(shè)備名稱;所述第二狀態(tài)控制參數(shù)包括啟動和停止;
28、所述氣源設(shè)備控制函數(shù)用于根據(jù)所述第二狀態(tài)控制參數(shù),對所述第五設(shè)備標識參數(shù)對應(yīng)的所述氣源設(shè)備進行啟/??刂?;
29、所述系統(tǒng)等待接口的接口參數(shù)包括等待時長參數(shù);所述等待時長參數(shù)的時間單位為秒;
30、所述系統(tǒng)等待函數(shù)用于暫停實驗?zāi)_本執(zhí)行環(huán)境當前執(zhí)行的腳本處理流程,并在暫停時長超過所述等待時長參數(shù)之后再繼續(xù)執(zhí)行當前的腳本處理流程。
31、優(yōu)選的,所述設(shè)備連接配置模板的基礎(chǔ)配置元素為一個設(shè)備配置元素;所述設(shè)備連接配置模板為基礎(chǔ)配置元素提供元素添加、元素刪除、元素設(shè)置/修改、元素集合存儲/導(dǎo)出功能;
32、所述設(shè)備配置元素提供至少四個配置接口,分別為前一設(shè)備名配置接口、當前設(shè)備名配置接口、后一設(shè)備名配置接口、當前設(shè)備參數(shù)配置接口;所述前一、當前、后一設(shè)備名配置接口分別為用戶提供所述指定實驗場景中的可用設(shè)備清單進行設(shè)備名稱選擇;所述當前設(shè)備參數(shù)配置接口為用戶提供所述指定實驗場景中的設(shè)備類型清單對當前設(shè)備的和設(shè)備類型進行設(shè)置,并在當前設(shè)備類型被設(shè)為所述注射泵時進一步為用戶提供注射泵的最大活塞位置參數(shù)設(shè)置接口,并在當前設(shè)備類型被設(shè)為所述氣源設(shè)備時進一步為用戶提供可用惰性氣體清單進行氣體類型參數(shù)設(shè)置;
33、所述任務(wù)流配置模板的基礎(chǔ)配置元素至少包括抽真空-復(fù)注入任務(wù)配置元素、基礎(chǔ)移液任務(wù)配置元素、系統(tǒng)等待任務(wù)配置元素;所述任務(wù)流配置模板為基礎(chǔ)配置元素提供元素添加、元素刪除、元素設(shè)置/修改、元素排序、元素序列存儲/導(dǎo)出功能;
34、所述抽真空-復(fù)注入任務(wù)配置元素提供第一容器配置接口、第一注入氣體配置接口和第一重復(fù)次數(shù)配置接口;所述第一容器配置接口為用戶提供所述指定實驗場景中的可用容器清單進行設(shè)備名稱選擇;所述第一注入氣體配置接口為用戶提供可用惰性氣體清單進行注入氣體類型選擇;所述第一重復(fù)次數(shù)配置接口為用戶提供重復(fù)次數(shù)設(shè)置接口;
35、所述基礎(chǔ)移液任務(wù)配置元素提供第一源容器配置接口、第一目標容器配置接口、第一移液體積與流量配置接口;所述第一源容器配置接口、所述第一目標容器配置接口為用戶提供所述指定實驗場景中的可用容器清單進行設(shè)備名稱選擇;所述第一移液體積與流量配置接口為用戶提供移液體積與移液流量的數(shù)據(jù)設(shè)置接口;
36、所述系統(tǒng)等待任務(wù)配置元素提供等待時長配置接口;所述等待時長配置接口為用戶提供等待時長設(shè)置接口。
37、優(yōu)選的,所述設(shè)備連接配置由所述設(shè)備連接配置模板生成,具體為一個設(shè)備配置集合、由多個第一設(shè)備配置組成;每個所述第一設(shè)備配置由所述設(shè)備連接配置模板的設(shè)備配置元素生成,并與所述指定實驗場景中的一個實驗設(shè)備對應(yīng);
38、所述第一設(shè)備配置包括前一設(shè)備名稱、當前設(shè)備名稱、后一設(shè)備名稱和當前設(shè)備參數(shù);所述當前設(shè)備名稱為當前實驗設(shè)備的所述設(shè)備名稱;所述前一設(shè)備名稱不為空時,為所述指定實驗場景中與所述當前實驗設(shè)備連接的上一個實驗設(shè)備的所述設(shè)備名稱;所述后一設(shè)備名稱不為空時,為所述指定實驗場景中與所述當前實驗設(shè)備連接的下一個實驗設(shè)備的所述設(shè)備名稱;所述當前設(shè)備參數(shù)包括當前設(shè)備類型;所述當前設(shè)備類型包括所述容器、所述注射泵、所述單向電磁閥、所述真空泵、所述氣源設(shè)備;所述當前設(shè)備參數(shù)在所述當前設(shè)備類型為所述注射泵時,還包括最大活塞位置參數(shù);所述當前設(shè)備參數(shù)在所述當前設(shè)備類型為所述氣源設(shè)備時,還包括氣體類型參數(shù);
39、所述任務(wù)流配置由所述任務(wù)流配置模板生成,具體為一個任務(wù)聲明序列、由多個任務(wù)聲明排序而成;所述任務(wù)聲明的種類至少包括抽真空-復(fù)注入任務(wù)聲明、基礎(chǔ)移液任務(wù)聲明、系統(tǒng)等待任務(wù)聲明;各類任務(wù)聲明分別由所述任務(wù)流配置模板中對應(yīng)的真空-復(fù)注入任務(wù)配置元素、基礎(chǔ)移液任務(wù)配置元素或系統(tǒng)等待任務(wù)配置元素生成;
40、所述抽真空-復(fù)注入任務(wù)聲明包括第一容器名稱,第一氣體類型和第一重復(fù)次數(shù);所述第一容器名稱為一個所述容器的所述設(shè)備名稱;所述第一氣體類型為一類惰性氣體類型;所述第一重復(fù)次數(shù)為一個正整數(shù);
41、所述基礎(chǔ)移液任務(wù)聲明包括第一源容器名稱、第一目標容器名稱、第一移液體積、第一移液流量;所述第一源容器名稱和所述第一目標容器名稱各為一個所述容器的所述設(shè)備名稱;
42、所述系統(tǒng)等待任務(wù)聲明包括第一等待時長。
43、優(yōu)選的,所述實驗有向圖包括第一節(jié)點集合和第一邊集合;
44、所述第一節(jié)點集合包多個第一節(jié)點ni,2≤索引i≤nnode,nnode為節(jié)點總數(shù);每個所述第一節(jié)點ni與所述指定實驗場景中的一個實驗設(shè)備對應(yīng);所述第一節(jié)點ni的節(jié)點屬性包括設(shè)備名稱、設(shè)備類型、設(shè)備端口標識和設(shè)備狀態(tài);
45、所述設(shè)備類型包括所述容器、所述注射泵、所述單向電磁閥、所述真空泵、所述氣源設(shè)備;
46、所述設(shè)備類型為所述容器時,所述設(shè)備端口標識為一個標識集合、由四個預(yù)設(shè)端口標識pta,1、pta,2、pta,3、pta,4組成,所述四個預(yù)設(shè)端口標識分別與所述容器的所述進液、出液、抽真空和注氣端口一一對應(yīng);所述設(shè)備狀態(tài)由對應(yīng)的四個端口狀態(tài)sa,1、sa,2、sa,3、sa,4組成;所述端口狀態(tài)sa,1、sa,2、sa,3、sa,4都為0或1的二值狀態(tài),為0說明當前狀態(tài)對應(yīng)端口處于封閉未使用狀態(tài)、為1說明當前狀態(tài)對應(yīng)端口處于封閉未使用狀態(tài);
47、所述設(shè)備類型為所述注射泵時,所述節(jié)點屬性還包括所述最大活塞位置pmax和當前活塞位置p;所述設(shè)備端口標識為一個標識集合、由兩個預(yù)設(shè)端口標識ptb,1、ptb,2組成,所述預(yù)設(shè)端口標識ptb,1、ptb,2分別與所述注射泵的所述進、出液閥門端口一一對應(yīng);所述設(shè)備狀態(tài)由對應(yīng)的兩個端口狀態(tài)sb,1、sb,2組成;所述端口狀態(tài)sb,1、sb,2都為0或1的二值狀態(tài),為0說明當前狀態(tài)對應(yīng)端口處于關(guān)斷狀態(tài)、為1說明當前狀態(tài)對應(yīng)端口處于連通狀態(tài);
48、所述設(shè)備類型為所述單向電磁閥時,所述設(shè)備端口標識為一個標識集合、由兩個預(yù)設(shè)端口標識ptc,1、ptc,2組成,所述預(yù)設(shè)端口標識ptc,1、ptc,2分別與所述單向電磁閥的所述進、出氣端口一一對應(yīng);所述設(shè)備狀態(tài)為0或1的二值狀態(tài),為0說明當前電磁閥處于關(guān)斷狀態(tài)、為1說明當前電磁閥處于連通狀態(tài);
49、所述設(shè)備類型為所述真空泵時,所述設(shè)備端口標識為預(yù)設(shè)端口標識ptd,與所述真空泵的所述抽氣端口對應(yīng);所述設(shè)備狀態(tài)為0或1的二值狀態(tài),為0說明當前真空泵處于關(guān)停狀態(tài)、為1說明當前真空泵處于啟動狀態(tài);
50、所述設(shè)備類型為所述氣源設(shè)備時,所述節(jié)點屬性還包括氣體類型,所述氣體類型為一類惰性氣體;所述設(shè)備端口標識為預(yù)設(shè)端口標識pte,與所述氣源設(shè)備的所述放氣端口對應(yīng);所述設(shè)備狀態(tài)為0或1的二值狀態(tài),為0說明當前氣源設(shè)備處于關(guān)停狀態(tài)、為1說明當前氣源設(shè)備處于啟動狀態(tài);
51、所述第一邊集合包括多個第一邊ej,1≤索引j≤nedge,nedge為邊總數(shù);所述第一邊ej的邊屬性包括起始節(jié)點和結(jié)束節(jié)點;所述起始、結(jié)束節(jié)點各自與一個所述第一節(jié)點對應(yīng);所述起始/結(jié)束節(jié)點包括前/后點設(shè)備名稱和前/后點端口標識,所述前/后點設(shè)備名稱為對應(yīng)節(jié)點的所述設(shè)備名稱,所述前/后點端口標識為對應(yīng)節(jié)點的一個設(shè)備端口標識。
52、優(yōu)選的,所述基于所述設(shè)備連接配置進行有向圖構(gòu)建得到對應(yīng)的實驗有向圖,具體包括:
53、基于所述設(shè)備連接配置的所有所述第一設(shè)備配置的設(shè)備參數(shù)初始化對應(yīng)的所述第一節(jié)點集合;并根據(jù)所有所述第一設(shè)備配置的前后設(shè)備連接關(guān)系和所述第一節(jié)點集合初始化對應(yīng)的所述第一邊集合;并由最新的所述第一節(jié)點集合和所述第一邊集合組成初始化的所述實驗有向圖。
54、進一步的,所述基于所述設(shè)備連接配置的所有所述第一設(shè)備配置的設(shè)備參數(shù)初始化對應(yīng)的所述第一節(jié)點集合,具體包括:
55、將所述設(shè)備連接配置的各個所述第一設(shè)備配置作為對應(yīng)的當前設(shè)備配置;并將所述當前設(shè)備配置的所述當前設(shè)備名稱和所述當前設(shè)備參數(shù)作為對應(yīng)的第一名稱和第一設(shè)備參數(shù);并將當前所述第一設(shè)備參數(shù)的所述當前設(shè)備類型作為對應(yīng)的第一類型;
56、并為所述當前設(shè)備配置創(chuàng)建一個對應(yīng)的所述第一節(jié)點ni作為對應(yīng)的當前節(jié)點;
57、并將所述當前節(jié)點的所述設(shè)備名稱和所述設(shè)備類型設(shè)為對應(yīng)的所述第一名稱和所述第一類型;
58、并對當前的所述第一類型進行識別;
59、若所述第一類型為所述容器,則將所述當前節(jié)點的所述設(shè)備端口標識設(shè)為由所述預(yù)設(shè)端口標識pta,1、pta,2、pta,3、pta,4組成的標識集合;并將所述當前節(jié)點的所述設(shè)備狀態(tài)設(shè)為由所述端口狀態(tài)sa,1、sa,2、sa,3、sa,4組成的狀態(tài)集合,并將當前狀態(tài)集合中的四個端口狀態(tài)全部初始化為0;
60、若所述第一類型為所述注射泵,則從當前的所述第一設(shè)備參數(shù)中提取出所述最大活塞位置參數(shù)作為對應(yīng)的第一位置參數(shù);并將所述當前節(jié)點的所述設(shè)備端口標識設(shè)為由所述預(yù)設(shè)端口標識ptb,1、ptb,2組成的標識集合;并將所述當前節(jié)點的所述設(shè)備狀態(tài)設(shè)為由所述端口狀態(tài)sb,1、sb,2組成的狀態(tài)集合,并將當前狀態(tài)集合中的兩個端口狀態(tài)全部初始化為0;并將所述當前節(jié)點的所述最大活塞位置pmax設(shè)為對應(yīng)的所述第一位置參數(shù);并將所述當前節(jié)點的所述當前活塞位置p設(shè)為0;
61、若所述第一類型為所述單向電磁閥,則將所述當前節(jié)點的所述設(shè)備端口標識設(shè)為由所述預(yù)設(shè)端口標識ptc,1、ptc,2組成的標識集合;并將所述當前節(jié)點的所述設(shè)備狀態(tài)初始化為0;
62、若所述第一類型為所述真空泵,則將所述當前節(jié)點的所述設(shè)備端口標識設(shè)為所述預(yù)設(shè)端口標識ptd;并將所述當前節(jié)點的所述設(shè)備狀態(tài)初始化為0;
63、若所述第一類型為所述氣源設(shè)備,則從當前的所述第一設(shè)備參數(shù)中提取出所述氣體類型參數(shù)作為對應(yīng)的第一氣體參數(shù);并將所述當前節(jié)點的所述設(shè)備端口標識設(shè)為所述預(yù)設(shè)端口標識pte;并將所述當前節(jié)點的所述設(shè)備狀態(tài)初始化為0;并將所述當前節(jié)點的所述氣體類型設(shè)為對應(yīng)的所述第一氣體參數(shù);
64、并對所述設(shè)備連接配置的所述第一設(shè)備配置的總數(shù)進行識別,并基于識別結(jié)果設(shè)置對應(yīng)的所述節(jié)點總數(shù)nnode;并由得到的nnode個所述第一節(jié)點ni組成初始化的所述第一節(jié)點集合。
65、進一步的,所述根據(jù)所有所述第一設(shè)備配置的前后設(shè)備連接關(guān)系和所述第一節(jié)點集合初始化對應(yīng)的所述第一邊集合,具體包括:
66、將所述設(shè)備連接配置的各個所述第一設(shè)備配置的所述前一設(shè)備名稱和所述當前設(shè)備名稱組成一個對應(yīng)的第一前后設(shè)備對,所述當前設(shè)備名稱和所述后一設(shè)備名稱組成一個對應(yīng)的所述第一前后設(shè)備對;并對得到的所有所述第一前后設(shè)備對進行去重處理;所述第一前后設(shè)備對包括前設(shè)備名稱、后設(shè)備名稱;所述第一前后設(shè)備對由一對所述前一設(shè)備名稱和所述當前設(shè)備名稱組成時,所述前、后設(shè)備名稱分別與所述前一、當前設(shè)備名稱對應(yīng);所述第一前后設(shè)備對由一對所述當前設(shè)備名稱和所述后一設(shè)備名稱組成時,所述前、后設(shè)備名稱分別與所述當前、后一設(shè)備名稱對應(yīng);
67、將去重后的各個所述第一前后設(shè)備對作為對應(yīng)的當前設(shè)備對;并將所述當前設(shè)備對的所述前、后設(shè)備名稱作為對應(yīng)的所述前、后點設(shè)備名稱;并將所述第一節(jié)點集合中與所述前、后設(shè)備名稱對應(yīng)的所述第一節(jié)點記為對應(yīng)的前、后節(jié)點;并將所述前、后節(jié)點的所述設(shè)備類型作為對應(yīng)的前、后點設(shè)備類型;并基于預(yù)設(shè)的設(shè)備端口連接規(guī)則和所述前、后點設(shè)備類型設(shè)置對應(yīng)的所述前、后點端口標識;并由所述前點設(shè)備名稱和所述前點端口標識組成一個的所述起始節(jié)點,由所述后點設(shè)備名稱和所述后點端口標識組成一個的所述結(jié)束節(jié)點;并由所述起始、結(jié)束節(jié)點組成一個對應(yīng)的第一邊屬性;并為所述當前設(shè)備對設(shè)置一個對應(yīng)的所述第一邊ej作為當前邊,并基于所述第一邊屬性對所述當前邊的邊屬性進行設(shè)置;并在所述前點設(shè)備類型為所述容器或所述注射泵時,將所述前節(jié)點的所述設(shè)備狀態(tài)中與所述前點端口標識對應(yīng)的端口狀態(tài)重置為1;并在所述后點設(shè)備類型為所述容器或所述注射泵時,將所述后節(jié)點的所述設(shè)備狀態(tài)中與所述后點端口標識對應(yīng)的端口狀態(tài)重置為1;
68、并對去重后的所述第一前后設(shè)備對的總數(shù)進行識別,并基于識別結(jié)果設(shè)置對應(yīng)的所述邊總數(shù)nedge;并由得到的nedge個所述第一邊ej組成初始化的所述第一邊集合。
69、進一步優(yōu)選的,所述設(shè)備端口連接規(guī)則包括:
70、所述容器不能與所述真空泵和所述氣源設(shè)備直連;所述注射泵不能與所述單向電磁閥、所述真空泵和所述氣源設(shè)備連接;所述真空泵不能與所述氣源設(shè)備連接;
71、所述容器與所述注射泵連接時,所述容器的所述進液端口只能與一個所述注射泵的所述出液閥門端口連接、所述容器的所述出液端口只能與另一所述注射泵的所述進液閥門端口連接;反映在所述前、后點端口標識的配置上:若所述前、后點設(shè)備類型為所述容器和所述注射泵,則對應(yīng)的所述前、后點端口標識為對應(yīng)的所述端口標識pta,2和所述端口標識ptb,1;若所述前、后點設(shè)備類型為所述注射泵和所述容器,則對應(yīng)的所述前、后點端口標識為對應(yīng)的所述端口標識ptb,2和所述端口標識pta,1;
72、所述注射泵與所述注射泵連接時,前一個所述注射泵的所述出液閥門端口與后一個所述注射泵的所述進液閥門端口連接;反映在所述前、后點端口標識的配置上:若所述前、后點設(shè)備類型均為所述注射泵,則對應(yīng)的所述前、后點端口標識為對應(yīng)的所述端口標識ptb,2和所述端口標識ptb,1;
73、所述容器與所述單向電磁閥連接時,若當前所述單向電磁閥還與一個所述真空泵連接則所述容器的所述抽真空端口與當前所述單向電磁閥的所述進氣端口連接,若當前所述單向電磁閥還與一個所述氣源設(shè)備連接則所述容器的所述注氣端口與當前所述單向電磁閥的所述出氣端口連接;反映在所述前、后點端口標識的配置上:若所述前、后點設(shè)備類型為所述容器和所述單向電磁閥、且當前所述單向電磁閥還與一個所述真空泵連接,則所述前、后點端口標識為所述端口標識pta,3和所述端口標識ptc,1;若所述前、后點設(shè)備類型為所述單向電磁閥和所述容器、且當前所述單向電磁閥還與一個所述氣源設(shè)備連接,則所述前、后點端口標識為對應(yīng)的所述端口標識ptc,2和所述端口標識pta,4;
74、所述單向電磁閥與所述真空泵連接時,所述單向電磁閥的所述出氣端口與所述真空泵的所述抽氣端口連接;反映在所述前、后點端口標識的配置上:若所述前、后點設(shè)備類型為所述單向電磁閥和所述真空泵,則所述前、后點端口標識為所述端口標識ptc,2和所述端口標識ptd;若所述前、后點設(shè)備類型為所述真空泵和所述單向電磁閥,則所述前、后點端口標識為所述端口標識ptd和所述端口標識ptc,2;
75、所述單向電磁閥與所述氣源設(shè)備連接時,所述單向電磁閥的所述進氣端口與所述氣源設(shè)備的所述放氣端口連接;反映在所述前、后點端口標識的配置上:若所述前、后點設(shè)備類型為所述單向電磁閥和所述氣源設(shè)備,則所述前、后點端口標識為所述端口標識ptc,1和所述端口標識pte;若所述前、后點設(shè)備類型為所述氣源設(shè)備和所述單向電磁閥,則所述前、后點端口標識為所述端口標識pte和所述端口標識ptc,1。
76、優(yōu)選的,所述根據(jù)所述實驗有向圖、所述任務(wù)流配置和所述基礎(chǔ)函數(shù)庫的所有函數(shù)調(diào)用接口進行逐任務(wù)腳本生成處理得到對應(yīng)的實驗?zāi)_本,具體包括:
77、步驟111,將所述任務(wù)流配置的第一個所述任務(wù)聲明作為對應(yīng)的當前任務(wù)聲明;并初始化所述實驗?zāi)_本為空;
78、步驟112,對所述當前任務(wù)聲明進行識別;若所述當前任務(wù)聲明為一個所述抽真空-復(fù)注入任務(wù)聲明,則轉(zhuǎn)至步驟113;若所述當前任務(wù)聲明為一個所述基礎(chǔ)移液任務(wù)聲明,則轉(zhuǎn)至步驟114;若所述當前任務(wù)聲明為一個所述系統(tǒng)等待任務(wù)聲明,則轉(zhuǎn)至步驟115;
79、步驟113,從所述當前任務(wù)聲明中提取出對應(yīng)的所述第一容器名稱、所述第一氣體類型和所述第一重復(fù)次數(shù)組成對應(yīng)的第一參數(shù)組;并根據(jù)當前的所述第一參數(shù)組、所述實驗有向圖和所述基礎(chǔ)函數(shù)庫進行抽真空-復(fù)注入子任務(wù)腳本生成處理得到對應(yīng)的第一子任務(wù)腳本;并轉(zhuǎn)至步驟116;
80、其中,所述第一子任務(wù)腳本由一個或多個單步操作腳本組成;
81、步驟114,從所述當前任務(wù)聲明中提取出對應(yīng)的所述第一源容器名稱、所述第一目標容器名稱、所述第一移液體積、所述第一移液流量組成對應(yīng)的第二參數(shù)組;并根據(jù)當前的所述第二參數(shù)組、所述實驗有向圖和所述基礎(chǔ)函數(shù)庫進行基礎(chǔ)移液子任務(wù)腳本生成處理得到對應(yīng)的所述第一子任務(wù)腳本;并轉(zhuǎn)至步驟116;
82、步驟115,從所述當前任務(wù)聲明中提取出對應(yīng)的所述第一等待時長;并將所述系統(tǒng)等待接口的所述等待時長參數(shù)設(shè)為所述第一等待時長得到一個對應(yīng)的單步操作腳本組成對應(yīng)的所述第一子任務(wù)腳本;并轉(zhuǎn)至步驟116;
83、步驟116,將當前最新的所述第一子任務(wù)腳本向所述實驗?zāi)_本中添加;并對所述當前任務(wù)聲明是否為所述任務(wù)流配置的最后一個所述任務(wù)聲明進行識別;若否,則將所述任務(wù)流配置的下一個所述任務(wù)聲明作為新的所述當前任務(wù)聲明并返回步驟112;若是,則將最新的所述實驗?zāi)_本作為本次腳本生成處理結(jié)果輸出。
84、進一步的,所述根據(jù)當前的所述第一參數(shù)組、所述實驗有向圖和所述基礎(chǔ)函數(shù)庫進行抽真空-復(fù)注入子任務(wù)腳本生成處理得到對應(yīng)的第一子任務(wù)腳本,具體包括:
85、步驟1201,從所述第一參數(shù)組中提取出對應(yīng)的所述第一容器名稱、所述第一氣體類型和所述第一重復(fù)次數(shù);并將所述第一重復(fù)次數(shù)記為次數(shù)n1;
86、步驟1202,將所述實驗有向圖中所述設(shè)備名稱與所述第一容器名稱匹配的所述第一節(jié)點作為對應(yīng)的當前容器節(jié)點;并將所述實驗有向圖中所述設(shè)備類型為所述單向電磁閥、所述真空泵、所述氣源設(shè)備的所述第一節(jié)點記為對應(yīng)的電磁閥節(jié)點、真空泵節(jié)點、氣源節(jié)點;
87、步驟1203,在確認所述當前容器節(jié)點通過兩個所述電磁閥節(jié)點分別與一個所述真空泵節(jié)點和另一個所述氣源節(jié)點連接時,將當前的兩個所述電磁閥節(jié)點的所述設(shè)備名稱分別記為對應(yīng)的抽氣、注氣閥門名稱,將當前連接的所述真空泵節(jié)點和所述氣源節(jié)點的所述設(shè)備名稱分別記為對應(yīng)的抽氣、注氣設(shè)備名稱;
88、步驟1204,將所述第二閥門控制接口的所述第三設(shè)備標識參數(shù)設(shè)為所述抽氣閥門名稱、所述第二閥門控制參數(shù)設(shè)為連通得到一個對應(yīng)的單步操作腳本s1;并將所述第二閥門控制接口的所述第三設(shè)備標識參數(shù)設(shè)為所述注氣閥門名稱、所述第二閥門控制參數(shù)設(shè)為關(guān)斷得到一個對應(yīng)的所述單步操作腳本s2;并按預(yù)設(shè)的同步腳本塊嵌套方式,由所述單步操作腳本s1、s2組成一個同步腳本塊記為腳本塊b1;
89、其中,所述實驗?zāi)_本的執(zhí)行環(huán)境在執(zhí)行同步腳本塊時會同步執(zhí)行塊中的所有單步操作腳本;
90、步驟1205,將所述氣源設(shè)備控制接口的所述第五設(shè)備標識參數(shù)設(shè)為所述注氣設(shè)備名稱、所述第二狀態(tài)控制參數(shù)設(shè)為停止得到一個對應(yīng)的單步操作腳本s3;并將所述真空泵控制接口的所述第四設(shè)備標識參數(shù)設(shè)為所述抽氣設(shè)備名稱、所述第一狀態(tài)控制參數(shù)設(shè)為啟動得到一個對應(yīng)的單步操作腳本s4;并按所述同步腳本塊嵌套方式,由所述單步操作腳本s3、s4組成一個同步腳本塊記為腳本塊b2;
91、步驟1206,將所述系統(tǒng)等待接口的所述等待時長參數(shù)設(shè)為預(yù)設(shè)的抽真空時長閾值得到一個對應(yīng)的單步操作腳本s5;
92、步驟1207,將所述第二閥門控制接口的所述第三設(shè)備標識參數(shù)設(shè)為所述抽氣閥門名稱、所述第二閥門控制參數(shù)設(shè)為關(guān)斷得到一個對應(yīng)的單步操作腳本s6;并將所述第二閥門控制接口的所述第三設(shè)備標識參數(shù)設(shè)為所述注氣閥門名稱、所述第二閥門控制參數(shù)設(shè)為連通得到一個對應(yīng)的單步操作腳本s7;并按所述同步腳本塊嵌套方式,由所述單步操作腳本s6、s7組成一個同步腳本塊記為腳本塊b3;
93、步驟1208,將所述氣源設(shè)備控制接口的所述第五設(shè)備標識參數(shù)設(shè)為所述注氣設(shè)備名稱、所述第二狀態(tài)控制參數(shù)設(shè)為啟動得到一個對應(yīng)的單步操作腳本s8;并將所述真空泵控制接口的所述第四設(shè)備標識參數(shù)設(shè)為所述抽氣設(shè)備名稱、所述第一狀態(tài)控制參數(shù)設(shè)為停止得到一個對應(yīng)的單步操作腳本s9;并按所述同步腳本塊嵌套方式,由所述單步操作腳本s8、s9組成一個同步腳本塊記為腳本塊b4;
94、步驟1209,將所述系統(tǒng)等待接口的所述等待時長參數(shù)設(shè)為預(yù)設(shè)的注氣時長閾值得到一個對應(yīng)的單步操作腳本s10;
95、步驟1210,將所述氣源設(shè)備控制接口的所述第五設(shè)備標識參數(shù)設(shè)為所述注氣設(shè)備名稱、所述第二狀態(tài)控制參數(shù)設(shè)為停止得到一個對應(yīng)的單步操作腳本s11;
96、步驟1211,將所述第二閥門控制接口的所述第三設(shè)備標識參數(shù)設(shè)為所述注氣閥門名稱、所述第二閥門控制參數(shù)設(shè)為關(guān)斷得到一個對應(yīng)的單步操作腳本s12;
97、步驟1212,由所述腳本塊b1、b2、b3、b4以及所述單步操作腳本s5、s10、s11、s12組成一個順序執(zhí)行的腳本序列s1{b1,b2,s5,b3,b4,s10,s11,s12};并通過復(fù)制n1次所述腳本序列s1{b1,b2,s5,b3,b4,s10,s11,s12}得到一個順序執(zhí)行的腳本序列s2{s1,i};
98、其中,1≤索引i≤n1,每個腳本序列s1,i都與所述腳本序列s1{b1,b2,s5,b3,b4,s10,s11,s12}保持一致;
99、步驟1213,將所述腳本序列s2{s1,i}作為本次抽真空-復(fù)注入子任務(wù)腳本生成處理的所述第一子任務(wù)腳本輸出。
100、進一步的,所述根據(jù)當前的所述第二參數(shù)組、所述實驗有向圖和所述基礎(chǔ)函數(shù)庫進行基礎(chǔ)移液子任務(wù)腳本生成處理得到對應(yīng)的所述第一子任務(wù)腳本,具體包括:
101、步驟1301,從所述第二參數(shù)組中提取出對應(yīng)的所述第一源容器名稱、所述第一目標容器名稱、所述第一移液體積、所述第一移液流量;
102、步驟1302,將所述實驗有向圖中所述設(shè)備名稱與所述第一源容器名稱、所述第一目標容器名稱匹配的所述第一節(jié)點作為對應(yīng)的當前源節(jié)點、當前目標節(jié)點;并將所述實驗有向圖中所述設(shè)備類型為所述注射泵的所述第一節(jié)點記為對應(yīng)的泵節(jié)點;并將所述實驗有向圖中各條從所述當前源節(jié)點到所述當前目標節(jié)點的節(jié)點路徑記為對應(yīng)的第一路徑;并將各條除了所述當前源節(jié)點和所述當前目標節(jié)點之外路徑途經(jīng)節(jié)點都為所述泵節(jié)點的所述第一路徑記為對應(yīng)的第二路徑;并將其中最短的所述第二路徑作為當前泵鏈路徑;并將所述當前泵鏈路徑上最小的所述最大活塞位置pmax作為對應(yīng)的單次移液體積;并基于所述第一移液體積和所述單次移液體積計算對應(yīng)的當前重復(fù)次數(shù)n2=ceil(第一移液體積/單次移液體積),ceil()為向上取整函數(shù);并將所述當前泵鏈路徑的節(jié)點總數(shù)減1作為對應(yīng)的移液次數(shù)n3;
103、步驟1303,將所述當前源節(jié)點作為對應(yīng)的第一設(shè)備節(jié)點、所述當前泵鏈路徑上的第一個所述泵節(jié)點作為對應(yīng)的第二設(shè)備節(jié)點;并初始化索引j為1;
104、步驟1304,將所述第一、第二設(shè)備節(jié)點的所述設(shè)備名稱作為對應(yīng)的第一、第二設(shè)備名稱;
105、步驟1305,對所述第一、第二設(shè)備節(jié)點進行識別;若所述第一、第二設(shè)備節(jié)點為所述當前源節(jié)點和所述泵節(jié)點,則轉(zhuǎn)至步驟1306;若所述第一、第二設(shè)備節(jié)點為兩個所述泵節(jié)點,則轉(zhuǎn)至步驟1307;若所述第一、第二設(shè)備節(jié)點為所述泵節(jié)點和所述當前目標節(jié)點,則轉(zhuǎn)至步驟1308;
106、步驟1306,按預(yù)設(shè)的流量-最大流速換算規(guī)則,根據(jù)所述第一移液流量和所述第二設(shè)備節(jié)點的進液端口橫截面積計算對應(yīng)的第一最大流速;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第二設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,1、所述第一閥門控制參數(shù)設(shè)為連通得到一個對應(yīng)的單步操作腳本s13;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第二設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,2、所述第一閥門控制參數(shù)設(shè)為關(guān)斷得到一個對應(yīng)的單步操作腳本s14;并將所述活塞控制接口的所述第二設(shè)備標識參數(shù)設(shè)為所述第二設(shè)備名稱、所述目標位置參數(shù)設(shè)為所述單次移液體積、所述最大流速參數(shù)設(shè)為所述第一最大流速得到一個對應(yīng)的單步操作腳本s15;并按所述同步腳本塊嵌套方式,由所述單步操作腳本s13、s14組成一個同步腳本塊記為腳本塊b5;并由所述腳本塊b5和所述單步操作腳本s15組成一個順序執(zhí)行的腳本序列sj{b5,s15};并轉(zhuǎn)至步驟1309;
107、步驟1307,按所述流量-最大流速換算規(guī)則,根據(jù)所述第一移液流量和所述第一設(shè)備節(jié)點的出液端口橫截面積計算對應(yīng)的第二最大流速,根據(jù)所述第一移液流量和所述第二設(shè)備節(jié)點的進液端口橫截面積計算對應(yīng)的第三最大流速;并將所述第二、第三最大流速中的較小值作為對應(yīng)的第四最大流速;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第一設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,1、所述第一閥門控制參數(shù)設(shè)為關(guān)斷得到一個對應(yīng)的單步操作腳本s16;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第一設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,2、所述第一閥門控制參數(shù)設(shè)為連通得到一個對應(yīng)的單步操作腳本s17;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第二設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,1、所述第一閥門控制參數(shù)設(shè)為連通得到一個對應(yīng)的單步操作腳本s18;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第二設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,2、所述第一閥門控制參數(shù)設(shè)為關(guān)斷得到一個對應(yīng)的單步操作腳本s19;并將所述活塞控制接口的所述第二設(shè)備標識參數(shù)設(shè)為所述第一設(shè)備名稱、所述目標位置參數(shù)設(shè)為0、所述最大流速參數(shù)設(shè)為所述第四最大流速得到一個對應(yīng)的單步操作腳本s20;并將所述活塞控制接口的所述第二設(shè)備標識參數(shù)設(shè)為所述第二設(shè)備名稱、所述目標位置參數(shù)設(shè)為所述單次移液體積、所述最大流速參數(shù)設(shè)為所述第四最大流速得到一個對應(yīng)的單步操作腳本s21;并按所述同步腳本塊嵌套方式,由所述單步操作腳本s16、s17、s18、s19組成一個同步腳本塊記為腳本塊b6;并按所述同步腳本塊嵌套方式,由所述單步操作腳本s20、s21組成一個同步腳本塊記為腳本塊b7;并由所述腳本塊b6、b7組成一個順序執(zhí)行的腳本序列sj{b6,b7};并轉(zhuǎn)至步驟1309;
108、步驟1308,按所述流量-最大流速換算規(guī)則,根據(jù)所述第一移液流量和所述第一設(shè)備節(jié)點的出液端口橫截面積計算對應(yīng)的第五最大流速;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第一設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,1、所述第一閥門控制參數(shù)設(shè)為關(guān)斷得到一個對應(yīng)的單步操作腳本s22;并將所述第一閥門控制接口的所述第一設(shè)備標識參數(shù)設(shè)為所述第一設(shè)備名稱、所述閥門端口參數(shù)設(shè)為所述端口標識ptb,2、所述第一閥門控制參數(shù)設(shè)為連通得到一個對應(yīng)的單步操作腳本s23;并將所述活塞控制接口的所述第二設(shè)備標識參數(shù)設(shè)為所述第一設(shè)備名稱、所述目標位置參數(shù)設(shè)為0、所述最大流速參數(shù)設(shè)為所述第五最大流速得到一個對應(yīng)的單步操作腳本s24;并按所述同步腳本塊嵌套方式,由所述單步操作腳本s22、s23組成一個同步腳本塊記為腳本塊b8;并由所述腳本塊b8和所述單步操作腳本s24組成一個順序執(zhí)行的腳本序列sj{b8,s24};并轉(zhuǎn)至步驟1309;
109、步驟1309,對所述索引j加1;并對加1后的所述索引j是否大于所述移液次數(shù)n3進行識別;若是,則轉(zhuǎn)至步驟1310;若否,則將當前的所述第二設(shè)備節(jié)點作為新的所述第一設(shè)備節(jié)點,并將所述當前泵鏈路徑上當前所述第一設(shè)備節(jié)點的下一節(jié)點作為新的所述第二設(shè)備節(jié)點,并返回步驟1304;
110、步驟1310,由得到的n3個所述腳本序列sj按所述索引j從小到大的順序組成一個順序執(zhí)行的腳本序列s3{sj};并通過復(fù)制n2次所述腳本序列s3{sj}得到一個順序執(zhí)行的腳本序列s4{s3,k};1≤索引k≤n2,每個腳本序列s3,k都與所述腳本序列s3{sj}保持一致;
111、步驟1311,將所述腳本序列s4{s3,k}作為本次生成的所述第一子任務(wù)腳本。
112、本發(fā)明實施例第二方面提供了一種用于實現(xiàn)上述第一方面所述的基于配置驅(qū)動的實驗?zāi)_本生成方法的裝置,所述裝置包括:函數(shù)庫準備模塊、配置模板準備模塊、任務(wù)配置識別模塊、有向圖構(gòu)建模塊、腳本生成模塊、數(shù)據(jù)保存模塊;
113、所述函數(shù)庫準備模塊用于基于指定實驗場景中所有操作設(shè)備的設(shè)備驅(qū)動構(gòu)建一個基礎(chǔ)函數(shù)庫;并為所述基礎(chǔ)函數(shù)庫的各函數(shù)給出對應(yīng)的調(diào)用接口;
114、所述配置模板準備模塊用于為所述指定實驗場景設(shè)計實驗任務(wù)配置模板;所述實驗任務(wù)配置模板包括設(shè)備連接配置模板和任務(wù)流配置模板;
115、所述任務(wù)配置識別模塊用于從用戶基于所述實驗任務(wù)配置模板配置生成的實驗任務(wù)配置中提取出對應(yīng)的設(shè)備連接配置和任務(wù)流配置;
116、所述有向圖構(gòu)建模塊用于基于所述設(shè)備連接配置進行有向圖構(gòu)建得到對應(yīng)的實驗有向圖;
117、所述腳本生成模塊用于根據(jù)所述實驗有向圖、所述任務(wù)流配置和所述基礎(chǔ)函數(shù)庫的所有函數(shù)調(diào)用接口進行逐任務(wù)腳本生成處理得到對應(yīng)的實驗?zāi)_本;
118、所述數(shù)據(jù)保存模塊用于由所述實驗有向圖和所述實驗?zāi)_本組成對應(yīng)的腳本執(zhí)行配置并保存。
119、本發(fā)明實施例第三方面提供了一種電子設(shè)備,包括:存儲器、處理器和收發(fā)器;
120、所述處理器用于與所述存儲器耦合,讀取并執(zhí)行所述存儲器中的指令,以實現(xiàn)上述第一方面所述的方法步驟;
121、所述收發(fā)器與所述處理器耦合,由所述處理器控制所述收發(fā)器進行消息收發(fā)。
122、本發(fā)明實施例第四方面提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有計算機指令,當所述計算機指令被計算機執(zhí)行時,使得所述計算機執(zhí)行上述第一方面所述的方法的指令。
123、本發(fā)明實施例提供了一種基于配置驅(qū)動的實驗?zāi)_本生成方法、裝置、電子設(shè)備及計算機可讀存儲介質(zhì)。由上述內(nèi)容可知,本發(fā)明實施例預(yù)先基于實驗場景內(nèi)所有操作設(shè)備的設(shè)備驅(qū)動構(gòu)建一個基礎(chǔ)函數(shù)庫,并為當前實驗場景定制了可視化的實驗任務(wù)配置模板(設(shè)備連接配置模板、任務(wù)流配置模板);用戶在沒有腳本開發(fā)經(jīng)驗的情況下也可通過交互式的模板操作快速生成設(shè)備連接配置和任務(wù)流配置;在獲得設(shè)備連接配置后基于該配置自動生成實驗有向圖,并通過該有向圖對當前場景中的設(shè)備連接關(guān)系和設(shè)備初始狀態(tài)進行記錄;繼而再根據(jù)實驗有向圖和基礎(chǔ)函數(shù)庫自動生成任務(wù)流配置對應(yīng)的實驗?zāi)_本。通過本發(fā)明實施例,既降低了腳本編寫的技術(shù)門檻,又提高了腳本生成效率,還降低了編寫錯誤率、提高了腳本質(zhì)量。