專利名稱:在可編程控制器編程中的變數(shù)名稱的輸入支援方法
技術(shù)領(lǐng)域:
本發(fā)明涉及適合安裝到PLC的程序開發(fā)支援裝置等的變數(shù)名稱的輸入支援方法, 特別涉及在作為命令的操作數(shù)而輸入變數(shù)名稱時(shí)使用的變數(shù)名稱的輸入支援方法。
背景技術(shù):
以往,在可編程控制器(以下,稱為PLC)的梯形圖程序(ladder program)中包含 的命令(例如,LD命令、AND命令、MOV命令等)的操作數(shù)(operand),一般由地址(是表示 在程序中處理的數(shù)據(jù)在所存儲(chǔ)的存儲(chǔ)器上的位置,由多個(gè)行的數(shù)字串或者在數(shù)字串的開頭 附加表示數(shù)據(jù)的種類的字符而表現(xiàn))描述。在由地址描述操作數(shù)的情況下,進(jìn)行如下操作, 即通過對(duì)各個(gè)地址賦予注釋(comment),從而容易理解各個(gè)操作數(shù)的含義內(nèi)容。近年來,能夠由任意的字符串構(gòu)成的變數(shù)名稱描述命令的操作數(shù),也普遍地進(jìn)行 如個(gè)人計(jì)算機(jī)的高級(jí)語言那樣基于變數(shù)的編程。在基于變數(shù)的編程中,通過由變數(shù)名稱描 述操作數(shù),能夠直觀地理解對(duì)應(yīng)于操作數(shù)的地址的含義,能夠提供在維護(hù)上優(yōu)越的程序。此外,若由變數(shù)名稱描述操作數(shù),則即使在對(duì)應(yīng)于操作數(shù)的地址的用途上發(fā)生了 變更的情況下,也無需變更程序側(cè),而僅變更分配給變數(shù)名稱的地址(例如,編輯表示變數(shù) 名稱和地址的對(duì)應(yīng)的表),能夠容易再利用程序。在PLC的梯形圖程序中的操作數(shù)的大多數(shù)為比特類型(B00L類型)的情況較多, 并且在比特類型操作數(shù)的情況下,需要在一個(gè)程序中描述數(shù)千個(gè),根據(jù)情況描述數(shù)萬個(gè)操 作數(shù)。這樣的情況下,若在操作數(shù)中使用變數(shù)名稱,則為了不發(fā)生變數(shù)名稱的重復(fù),且能 夠通過變數(shù)名稱理解含義,需要由長的字符串定義變數(shù)。即,若在操作數(shù)中使用地址,則即 使是同樣的情況也需要幾個(gè)字符左右的數(shù)字串,相對(duì)于此,若在操作數(shù)中使用變數(shù)名稱,則 需要數(shù)十字符的字符串(例如,字母串),在字符串的輸入上花費(fèi)時(shí)間,編程的效率差。還已知如下功能,即為了提高編程效率,在每輸入一個(gè)字符時(shí),檢索注冊(cè)有變數(shù)名 稱的變數(shù)表內(nèi),篩選成為對(duì)象的變數(shù)名稱的字符串,并提取從被篩選的變數(shù)名稱中確定的 字符的下一個(gè)字符按字母順序最小的變數(shù)名稱,作為變數(shù)名稱的候選而顯示的功能。這樣 的功能一般稱為自動(dòng)完成(autocomplete)功能(例如,參照專利文獻(xiàn)1)。專利文獻(xiàn)1(日本)特開2006_172445號(hào)公報(bào)自動(dòng)完成功能篩選成為下一個(gè)輸入候選的變數(shù)名稱,并從其中提取一個(gè),指引顯 示給用戶,但在指引顯示的變數(shù)名稱與想要輸入的名稱不同的情況下,需要繼續(xù)輸入接下 來的字符。尤其是,作為變數(shù)名稱的起法,在需要對(duì)多個(gè)不同的地址分別分配相同含義的變 數(shù)名稱的情況下,大多進(jìn)行如在名稱的末尾分配數(shù)字那樣的名稱的起法。此時(shí),若最終不輸 入全部字符串,就不能確定變數(shù)名稱。
發(fā)明內(nèi)容
本發(fā)明涉及上述的問題點(diǎn)而完成,其目的在于,提供一種在PLC編程中的變數(shù)名 稱的輸入支援方法、裝置、以及計(jì)算機(jī)程序,其即使在從雖含義相同但分配給不同的多個(gè)地 址的需要出發(fā),進(jìn)行在名稱的末尾分配數(shù)字那樣的名稱的起法時(shí),也能夠確定設(shè)為目的的 變數(shù)名稱而無需輸入全部字符串。通過參照說明書的以下記載,本領(lǐng)域的技術(shù)人員應(yīng)該容易理解本發(fā)明的其他目的 和作用效果。上述技術(shù)課題可通過如下構(gòu)成的在PLC編程中的變數(shù)名稱的輸入支援方法來解決。在該方法中,為了指定成為在構(gòu)成PLC的用戶程序的一個(gè)命令的操作數(shù)的變數(shù)名 稱,計(jì)算機(jī)支援從變數(shù)表中選擇變數(shù)名稱并輸入,預(yù)定在所述用戶程序中使用的變數(shù)名稱 與其屬性一同預(yù)先注冊(cè)在所述變數(shù)表中。該方法包括第1步驟、第2步驟、第3步驟、第4步驟。在第1步驟,設(shè)為可輸入構(gòu)成應(yīng)成為所述一個(gè)命令的操作數(shù)的變數(shù)名稱的字符串 的一個(gè)字符。
在第2步驟,若輸入所述一個(gè)字符,則從變數(shù)表中提取前面與由目前為止確定的 字符串和該一個(gè)字符構(gòu)成的字符串一致的全部變數(shù)名稱。在第3步驟,在所述提取的變數(shù)名稱為單一的情況下,通過將該變數(shù)名稱確定作 為操作數(shù),從而完成所述一個(gè)命令的操作數(shù)的指定。在第4步驟,在所述提取的變數(shù)名稱為多個(gè)的情況下,對(duì)所述提取的變數(shù)名稱的 全部,將前面相互一致的部分的字符串作為確定字符串之后返回到第1步驟。根據(jù)這樣的方法,在第2步驟中提取的變數(shù)名稱存在多個(gè),并且在這些變數(shù)名稱 中、一個(gè)或者兩個(gè)以上連續(xù)的字符串相互一致時(shí),這些沒有選擇余地的一連串的字符串被 自動(dòng)地選擇設(shè)為目的的變數(shù)名稱的字符串來確定,所以用戶從手動(dòng)輸入這些字符串的麻煩 中解放,能夠僅僅專注于需要本來的選擇的字符串的輸入,將在這種變數(shù)名稱的輸入操作 中的字符輸入次數(shù)限制為必要最小限度,能夠使操作性顯著變好。其結(jié)果,即使在從雖含義 相同但分配給不同的多個(gè)地址的需要出發(fā),進(jìn)行在名稱的末尾分配數(shù)字那樣的名稱的起法 時(shí),也能夠確定設(shè)為目的的變數(shù)名稱而無需輸入全部字符串。作為上述方法的優(yōu)選的實(shí)施方式,也可以在所述第1步驟之前還包括預(yù)備篩選步 驟,該預(yù)備篩選步驟用于將可成為所述提取對(duì)象的變數(shù)名稱篩選為具有可成為所述一個(gè)命 令的操作數(shù)的數(shù)據(jù)類型(例如,BOOL類型、CHANNEL類型等)的變數(shù)名稱。根據(jù)這樣的實(shí)施方式,由于在第2步驟中提取的變數(shù)名稱自動(dòng)地成為具有可成為 該命令的操作數(shù)的數(shù)據(jù)類型的變數(shù)名稱,這樣最終確定的變數(shù)名稱可直接用作命令的操作 數(shù),能夠?qū)⒚詈筒僮鲾?shù)的數(shù)據(jù)類型不一致而在梯形圖程序中發(fā)生錯(cuò)誤防范于未然。作為上述方法的優(yōu)選的實(shí)施方式,也可以還包括顯示步驟,用于將在所述第4步 驟中設(shè)為確定字符串的字符串顯示在規(guī)定的顯示器中。根據(jù)這樣的實(shí)施方式,能夠通過視覺來確認(rèn)到目前為止確定的字符串的同時(shí)進(jìn)行 變數(shù)名稱的輸入操作,所以能夠?qū)⒅貜?fù)輸入字符,或者忘記輸入字符等錯(cuò)誤操作防范于未 然。作為上述方法的更優(yōu)選的實(shí)施方式,所述顯示步驟也可以還包括以下步驟將在所述第2步驟中提取的變數(shù)名稱作為最終的變數(shù)名稱候選而附加地顯示在所述顯示器中。根據(jù)這樣的實(shí)施方式,能夠在從顯示的變數(shù)名稱候選中視覺確認(rèn)設(shè)為目的的變數(shù) 的基礎(chǔ)上,進(jìn)行變數(shù)名稱的輸入操作,所以即使設(shè)為目的的變數(shù)名稱是朦朧記憶,也能夠通 過視覺可靠地輸入正確的變數(shù)名稱。作為上述方法的優(yōu)選的實(shí)施方式,所述顯示步驟也可以還包括以下步驟一連串 地顯示在所述第4步驟中設(shè)為確定字符串的字符串和在所述第2步驟中提取的變數(shù)名稱中 一個(gè)所述確定字符串之后的未確定的字符串,并且以第1顯示方式顯示所述確定字符串, 以第2顯示方式顯示所述未確定字符串。根據(jù)這樣的結(jié)構(gòu),可根據(jù)第1顯示方式和第2顯示方式之間的差異,確認(rèn)將構(gòu)成設(shè) 為目的的變數(shù)名稱的字符串確定到什么程度,并且參考未確定字符串的一個(gè)候選,能夠更 加簡單地進(jìn)行字符串輸入操作。從另一方面來看,上述的技術(shù)課題也可以通過如下構(gòu)成的在PLC編程中的變數(shù)名 稱的輸入支援裝置來解決。在該裝置中,為了指定成為在構(gòu)成PLC的用戶程序的一個(gè)命令的操作數(shù)的變數(shù)名 稱,支援從變數(shù)表中選擇變數(shù)名稱并輸入,預(yù)定在所述用戶程序中使用的變數(shù)名稱與其屬 性一同預(yù)先注冊(cè)在所述變數(shù)表中。該裝置包括第1部件、第2部件、第3部件、第4部件。第1部件,設(shè)為可輸入構(gòu)成應(yīng)成為所述一個(gè)命令的操作數(shù)的變數(shù)名稱的字符串的
一個(gè)字符。第2部件,若輸入所述一個(gè)字符,則從變數(shù)表中提取前面與由目前為止確定的字 符串和該一個(gè)字符構(gòu)成的字符串一致的全部變數(shù)名稱。第3部件,在所述提取的變數(shù)名稱為單一的情況下,通過將該變數(shù)名稱確定作為 操作數(shù),從而完成所述一個(gè)命令的操作數(shù)的指定。第4部件,在所述提取的變數(shù)名稱為多個(gè)的情況下,對(duì)所述提取的變數(shù)名稱的全 部,將前面相互一致的部分的字符串作為確定字符串之后返回到執(zhí)行第1部件。作為上述裝置的優(yōu)選的實(shí)施方式,在所述第1部件的前級(jí)也可以還包括預(yù)備篩選 部件,該預(yù)備篩選部件用于將可成為所述提取對(duì)象的變數(shù)名稱篩選為具有可成為所述一個(gè) 命令的操作數(shù)的數(shù)據(jù)類型的變數(shù)名稱。作為上述裝置的優(yōu)選的實(shí)施方式,也可以還包括顯示部件,用于將在所述第4部 件中設(shè)為確定字符串的字符串顯示在規(guī)定的顯示器中。作為上述裝置的優(yōu)選的實(shí)施方式,所述顯示部件也可以還包括以下部件將在所 述第2部件中提取的變數(shù)名稱作為最終的變數(shù)名稱候選而附加地顯示在所述顯示器中。作為上述裝置的優(yōu)選的實(shí)施方式,所述顯示部件也可以還包括以下部件一連串 地顯示在所述第4部件中設(shè)為確定字符串的字符串和在所述第2部件中提取的變數(shù)名稱中 一個(gè)所述確定字符串之后的未確定的字符串,并且以第1顯示方式顯示所述確定字符串, 以第2顯示方式顯示所述未確定字符串。另外,這些裝置和其實(shí)施方式的作用效果與上述的方法和其實(shí)施方式中的作用效果大致相同,所以省略重復(fù)說明。從另一方面來看,上述的技術(shù)課題也可以通過如以下的結(jié)構(gòu)構(gòu)成的用于實(shí)現(xiàn)在PLC編程中的變數(shù)名稱的輸入支援裝置的計(jì)算機(jī)程序來解決。該程序用于使計(jì)算機(jī)作為在PLC編程中的變數(shù)名稱的輸入支援裝置起作用,該 計(jì)算機(jī)至少包括字符輸入部件,能夠以一個(gè)字符單位輸入字符;顯示器,可顯示字符和圖 像;存儲(chǔ)單元,定義了在運(yùn)算時(shí)使用的工作區(qū)域和存儲(chǔ)有變數(shù)表的變數(shù)表存儲(chǔ)區(qū)域;以及 運(yùn)算單元,用于執(zhí)行各種程序。預(yù)定在所述用戶程序中使用的變數(shù)名稱與其屬性一同預(yù)先 注冊(cè)在所述變數(shù)表中。該計(jì)算機(jī)程序包括第1步驟、第2步驟、第3步驟、第4步驟。在第1步驟,設(shè)為可輸入構(gòu)成應(yīng)成為所述一個(gè)命令的操作數(shù)的變數(shù)名稱的字符串 的一個(gè)字符。在第2步驟,若輸入所述一個(gè)字符,則從變數(shù)表中提取前面與由目前為止確定的 字符串和該一個(gè)字符構(gòu)成的字符串一致的全部變數(shù)名稱。在第3步驟,在所述提取的變數(shù)名稱為單一的情況下,通過將該變數(shù)名稱確定作 為操作數(shù),從而完成所述一個(gè)命令的操作數(shù)的指定。在第4步驟,在所述提取的變數(shù)名稱為多個(gè)的情況下,對(duì)所述提取的變數(shù)名稱的 全部,將前面相互一致的部分的字符串作為確定字符串之后返回到第1步驟。作為上述程序的優(yōu)選的實(shí)施方式,在所述第1步驟之前也可以還包括預(yù)備篩選步 驟,該預(yù)備篩選步驟用于將可成為所述提取對(duì)象的變數(shù)名稱篩選為具有可成為所述一個(gè)命 令的操作數(shù)的數(shù)據(jù)類型的變數(shù)名稱。作為上述程序的優(yōu)選的實(shí)施方式,也可以還包括顯示步驟,用于將在所述第4步 驟中設(shè)為確定字符串的字符串顯示在所述顯示器中。作為上述程序的優(yōu)選的實(shí)施方式,所述顯示步驟也可以還包括以下步驟將在所 述第2步驟中提取的變數(shù)名稱作為最終的變數(shù)名稱候選而附加地顯示在所述顯示器中。作為上述程序的優(yōu)選的實(shí)施方式,所述顯示步驟也可以還包括以下步驟一連串 地顯示在所述第4步驟中設(shè)為確定字符串的字符串和在所述第2步驟中提取的變數(shù)名稱中 一個(gè)所述確定字符串之后的未確定的字符串,并且以第1顯示方式顯示所述確定字符串, 以第2顯示方式顯示所述未確定字符串。另外,這些程序和其實(shí)施方式的作用效果與上述的方法和其實(shí)施方式中的作用效 果大致相同,所以省略重復(fù)說明。根據(jù)本發(fā)明,在第2步驟中提取的變數(shù)名稱存在多個(gè),并且在這些變數(shù)名稱中、一 個(gè)或者兩個(gè)以上連續(xù)的字符串相互一致時(shí),這些沒有選擇余地的一連串的字符串被自動(dòng)地 選擇設(shè)為目的的變數(shù)名稱的字符串來確定,所以用戶從手動(dòng)輸入這些字符串的麻煩中解 放,能夠僅僅專注于需要本來的選擇的字符串的輸入,將在這種變數(shù)名稱的輸入操作中的 字符輸入次數(shù)抑制為必要最小限度,能夠使操作性顯著變好。
圖1是本發(fā)明的裝置的硬件結(jié)構(gòu)圖。圖2是本發(fā)明的裝置的軟件結(jié)構(gòu)圖。圖3是表示變數(shù)表的一例的說明圖。圖4是在預(yù)備篩選步驟中的顯示器顯示狀態(tài)的說明圖。
圖5是在輸入字符“S”時(shí)的顯示器顯示狀態(tài)的說明圖。圖6是在輸入字符“S”時(shí)的顯示器顯示狀態(tài)的說明圖。圖7是在輸入字符“2”時(shí)的顯示器顯示狀態(tài)的說明圖。標(biāo)號(hào)說明1個(gè)人計(jì)算機(jī)(PC)2變數(shù)表3 命令4操作數(shù)11 鍵盤12指示設(shè)備13顯示器14存儲(chǔ)單元14a工作區(qū)域14b變數(shù)表存儲(chǔ)區(qū)域15CPUI6通信接口131輸入數(shù)據(jù)顯示區(qū)域131a輸入位置顯示標(biāo)記132擬決定變數(shù)名稱說明欄133變數(shù)名稱候選列表134接替(relay)號(hào)顯示區(qū)域
具體實(shí)施例方式以下,參照附圖詳細(xì)說明在本發(fā)明的PLC編程中的變數(shù)名稱的輸入支援方法、裝 置、以及計(jì)算機(jī)程序的一個(gè)優(yōu)選的實(shí)施方式。本發(fā)明的方法、裝置、以及程序,能夠安裝到例如在個(gè)人計(jì)算機(jī)(PC)中加載專用 軟件而成的程序開發(fā)支援裝置中。圖1示出作為這樣的程序開發(fā)支援裝置起作用的個(gè)人計(jì) 算機(jī)(PC)的一般的硬件結(jié)構(gòu)圖。如同圖所示那樣,該個(gè)人計(jì)算機(jī)(PC)I包括作為能夠以1個(gè)字符為單位輸入字符 的字符輸入部件的鍵盤11 ;鼠標(biāo)等的指示設(shè)備12 ;可顯示字符和圖像的顯示器13 ;定義了 在運(yùn)算時(shí)使用的工作區(qū)域14a和存儲(chǔ)有變數(shù)表(細(xì)節(jié)參照?qǐng)D3)的變數(shù)表存儲(chǔ)區(qū)域14b的 存儲(chǔ)單元14 ;作為用于執(zhí)行各種程序的運(yùn)算單元起作用的CPU15 ;以及未圖示的、硬盤驅(qū)動(dòng) 器或CD驅(qū)動(dòng)器等的外部存儲(chǔ)裝置和用于展開從外部存儲(chǔ)裝置讀取的各種專用軟件的存儲(chǔ) 器(RAM等)。此外,包括用于與未圖示的PLC等進(jìn)行通信(梯形圖程序的下載、上載、監(jiān)視等)的通信接口 16。在變數(shù)表存儲(chǔ)區(qū)域14b中,存儲(chǔ)有變數(shù)表,將在PLC的梯形圖程序中用作命令的操 作數(shù)的變數(shù)名稱與其屬性(數(shù)據(jù)類型、地址等等)對(duì)應(yīng)地注冊(cè)而形成該變數(shù)表。在圖3中 示出變數(shù)表的一例。
如同圖所示那樣,在該例子中,變數(shù)表2中設(shè)置有名稱欄、數(shù)據(jù)類型欄、地址欄、 注釋欄。并且,在名稱欄中存儲(chǔ)有相當(dāng)于變數(shù)名稱的字符串(包括字母、數(shù)字、符號(hào)), 在數(shù)據(jù)類型欄中存儲(chǔ)有數(shù)據(jù)類型(包括CHANNEL、BOOL),在地址欄中存儲(chǔ)有地址(0.00、
0.01.......0. 05、DO、DU D2),在注釋欄中存儲(chǔ)有注釋(寫入數(shù)據(jù)、系統(tǒng)數(shù)據(jù)1 4、系統(tǒng) 1、2、文本數(shù)據(jù)1、2)。另外,這里,CHANNEL表示以16比特為單位處理數(shù)據(jù)的數(shù)據(jù)類型,BOOL表示以1比 特為單位處理數(shù)據(jù)的數(shù)據(jù)類型。此外,DO、DU D2分別表示存儲(chǔ)有16比特?cái)?shù)據(jù)的地址即第
0通道、第1通道、第2通道,0. 00,0. 01....... 0. 05分別表示存儲(chǔ)有比特?cái)?shù)據(jù)的0通道的
第00比特、第01比特.......第5比特。通過在具有圖1所示的硬件結(jié)構(gòu)的個(gè)人計(jì)算機(jī)1中安裝已加載了本發(fā)明的操作數(shù) 輸入支援程序的程序開發(fā)支援軟件來動(dòng)作,從而實(shí)現(xiàn)本發(fā)明的方法和裝置。以下,參照?qǐng)D2的流程圖,詳細(xì)說明本發(fā)明的操作數(shù)輸入支援程序部分的動(dòng)作。另 夕卜,這種程序開發(fā)支援軟件其本身的結(jié)構(gòu)是用于實(shí)現(xiàn)梯形圖程序的制作、編輯、監(jiān)視等的結(jié) 構(gòu),由于已由處理PLC產(chǎn)品的各個(gè)公司提供各種結(jié)構(gòu)而已知,因此,省略關(guān)于程序開發(fā)支援 軟件其本身的結(jié)構(gòu)的詳細(xì)的說明。假設(shè)在該流程圖中示出的程序的動(dòng)作在1個(gè)梯形圖命令的命令語(例如,LD、AND、 0R、M0V等)的輸入完成之后接著開始。首先,在步驟101中,執(zhí)行變數(shù)名稱的預(yù)備篩選處理。在該預(yù)備篩選處理中,通過 可指定作為在該時(shí)刻想要輸入的命令的操作數(shù)的數(shù)據(jù)類型,對(duì)注冊(cè)在變數(shù)表(參照?qǐng)D3) 的全部變數(shù)名稱進(jìn)行檢索,從而僅篩選符合該數(shù)據(jù)類型的變數(shù)名稱?,F(xiàn)假設(shè)成為對(duì)象的命 令為取比特類型的操作數(shù)的命令即LD,則成為輸入候選的變數(shù)名稱僅篩選為數(shù)據(jù)類型為 BOOL(比特類型)的變數(shù)名稱。重新制作僅由在該預(yù)備篩選處理中篩選的變數(shù)構(gòu)成的變數(shù) 表,在后述的步驟105中使用。在執(zhí)行后述的顯示處理(步驟109、110)的結(jié)果,此時(shí),顯示器的畫面上的顯示狀 態(tài)成為圖4所示。如同圖所示那樣,在畫面上,設(shè)置有輸入數(shù)據(jù)顯示區(qū)域131、下一個(gè)候選變 數(shù)名稱說明欄132、變數(shù)名稱候選列表133、接替(relay)號(hào)顯示區(qū)域134。在輸入數(shù)據(jù)顯示區(qū)域131中,接著已經(jīng)輸入完的命令語“LD”,以表示未確定的顯 示方式(在該例子中反轉(zhuǎn)顯示)顯示成為下一個(gè)候選的變數(shù)名稱“SymbolDatal”。另外, 對(duì)已經(jīng)輸入完的命令語“LD”,以表示已經(jīng)確定完的顯示方式(在該例子中非反轉(zhuǎn)顯示)顯示。下一個(gè)候選變數(shù)名稱說明欄132配置在輸入數(shù)據(jù)顯示欄131的緊接的下方,在下 一個(gè)候選變數(shù)名稱說明欄132中顯示有關(guān)擬決定的變數(shù)名稱“SymbolDatal”的屬性信息 (地址、注釋等)。變數(shù)名稱候選列表133配置在下一個(gè)候選變數(shù)名稱說明欄的緊接的下方,在變數(shù) 名稱候選列表133中一同顯示在所述預(yù)備篩選處理(步驟101)中篩選的一連串的變數(shù)名 稱以及其屬性信息。如比較圖4的變數(shù)名稱候選列表和圖3的變數(shù)表可知那樣,可知在執(zhí) 行預(yù)備篩選處理(步驟101)的結(jié)果,在變數(shù)名稱候選列表133中舉出的變數(shù)名稱中,全部 排除了在變數(shù)表2中存在的CHANNEL類型的變數(shù)名稱。另外,在該例子中,此時(shí),在被篩選的變數(shù)候選列表133中,位于最初的變數(shù)名稱設(shè)為擬決定變數(shù)名稱,并在輸入數(shù)據(jù)顯示區(qū)域131中反轉(zhuǎn)顯示。接著在步驟102中,設(shè)定可經(jīng)由鍵盤輸入相當(dāng)于操作數(shù)的字符(在該例子中,包括 字母、數(shù)字、字符)的狀態(tài)。在該狀態(tài)中,若從鍵盤11輸入1個(gè)字符(步驟103),則接著在 步驟104中,執(zhí)行將這樣輸入的1個(gè)字符(在該例子中是“S”)直接確定作為構(gòu)成操作數(shù)的 字符串的1個(gè)字符(此時(shí),最初的一個(gè)字符)的處理。接著在步驟105中,將這樣確定的字符(在該例子中是“S”)作為檢索字執(zhí)行前方 一致檢索,從而執(zhí)行從在預(yù)備篩選處理(步驟101)中篩選的變數(shù)名稱組(參照?qǐng)D4的變數(shù) 名稱候選列表133)中篩選從字符“S”開始的變數(shù)名稱的處理。重新制作僅由在該篩選處 理中提取的變數(shù)構(gòu)成的變數(shù)表,并在下一次的篩選處理中使用。接著在步驟106中,進(jìn)行這樣篩選的變數(shù)名稱的個(gè)數(shù)是否為多個(gè)(2個(gè)以上)。這 里,在篩選的變數(shù)名稱的個(gè)數(shù)為單個(gè)(1個(gè))的情況下(步驟106 “否”),意味著找到了設(shè) 為目的的變數(shù),能夠立即由篩選為該1個(gè)的變數(shù)名稱的全部字符串來確定設(shè)為目的的變數(shù) 名稱。
相對(duì)于此,在篩選的變數(shù)名稱的個(gè)數(shù)為多個(gè)(2個(gè)以上)的情況下(步驟 106 “是”),在步驟105中篩選的變數(shù)名稱之間,比較在步驟104中新確定的1個(gè)字符(在 該例子中是“S”)的下一個(gè)字符(步驟107),并且在每判定為該下一個(gè)字符在篩選的全部 變數(shù)名稱之間一致時(shí)(步驟108 “是”),重復(fù)將所述下一個(gè)字符前進(jìn)1個(gè)字符而同樣在變 數(shù)名稱之間進(jìn)行比較的動(dòng)作(步驟107),直到?jīng)]有判定為下一個(gè)字符在全部變數(shù)名稱之間 一致的狀態(tài)為止(步驟108 “否”)。在該例子中,在步驟104中確定的1個(gè)字符“S”的下一個(gè)字符對(duì)篩選的全部變數(shù) 成為“y”。因此,在步驟107中的比較結(jié)果判定為一致(步驟108 “是”),進(jìn)而對(duì)下一個(gè)字 符執(zhí)行比較處理(步驟107)。此時(shí),在該例子中,再看下一個(gè)字符,則在篩選的變數(shù)中,上面 4個(gè)變數(shù)是“m”,而下面2個(gè)變數(shù)是“S”,全部的變數(shù)不一致(步驟108 “否”)。于是,轉(zhuǎn)移到步驟109,執(zhí)行將一致的字符串為止統(tǒng)一確定,且將不同的字符之后 設(shè)為表示未確定狀態(tài)的顯示方式(在該例子中是反轉(zhuǎn)顯示)的處理。在圖5中示出此時(shí)的 顯示器的顯示狀態(tài)。如同圖所示那樣,在該例子中,在輸入數(shù)據(jù)顯示區(qū)域131中,只有一致的字符串 "Sy"成為表示確定狀態(tài)的顯示方式(在該例子中是非反轉(zhuǎn)顯示),不一致字符串“mbol_ Datal”成為表示未確定狀態(tài)的顯示方式(在該例子中是反轉(zhuǎn)顯示)。除此之外,在下一個(gè) 輸入字符位置上附加了輸入位置顯示標(biāo)記131a。接著在步驟110中,執(zhí)行以列表顯示變數(shù)候選的處理,這樣,如圖5所示那樣,在顯 示器13的畫面上顯示變數(shù)名稱候選列表133。因此,用戶能夠基于變數(shù)名稱候選列表133, 視覺確定目前要輸入的變數(shù)名稱的字符串,所以即使沒有全部記住長的字符串,也能夠從 該變數(shù)名稱候選列表中容易確認(rèn)期望的變數(shù)名稱的字符串。之后,返回到步驟102,重復(fù)以上的一連串的處理(步驟102 110)。于是,在該 例子中,作為下一個(gè)字符而由用戶輸入“8”且被確定(步驟102、103、104),并將目前確定的 一連串的字符串“Sys”作為檢索字而執(zhí)行前方一致檢索,從而執(zhí)行在通過之前的處理(步 驟105)篩選的變數(shù)名稱組(參照?qǐng)D4的變數(shù)名稱候選列表133)中提取以字符串“Sys”開 始的變數(shù)名稱的處理。其結(jié)果,如圖6的變數(shù)名稱候選列表133可知那樣,成為操作數(shù)的候選的變數(shù)名稱進(jìn)一步篩選至2個(gè)。接著在步驟106中,進(jìn)行這樣篩選的變數(shù)名稱的個(gè)數(shù)是否為多個(gè)(2個(gè)以上)的判 定處理。如之前說明那樣,這里,在篩選的變數(shù)名稱的個(gè)數(shù)為單個(gè)(1個(gè))的情況下(步驟 106 “否”),意味著找到了設(shè)為目的的變數(shù),能夠立即由篩選為該1個(gè)的變數(shù)名稱的全部字 符串來確定設(shè)為目的的變數(shù)名稱。相對(duì)于此,在篩選的變數(shù)名稱的個(gè)數(shù)為多個(gè)(2個(gè)以上)的情況下(步驟 106 “是”),在步驟105中提取的變數(shù)名稱之間,比較在步驟104中新確定的1個(gè)字符(在 該例子中是“s”)的下一個(gè)字符(步驟107),并且在每判定為該下一個(gè)字符在提取的全部 變數(shù)名稱之間一致時(shí)(步驟108 “是”),重復(fù)將所述下一個(gè)字符前進(jìn)1個(gè)字符而同樣在變 數(shù)名稱之間進(jìn)行比較的動(dòng)作(步驟107),直到?jīng)]有判定為下一個(gè)字符在全部變數(shù)名稱之間 一致的狀態(tài)為止(步驟108 “否”)。在該例子中,由于成為操作數(shù)的候選的變數(shù)名稱篩選至2個(gè),所以判定為被篩選 的變數(shù)名稱的個(gè)數(shù)為多個(gè)(步驟106 “是”),進(jìn)行對(duì)在步驟104中確定的1個(gè)字符“S”的 下一個(gè)字符的比較處理(步驟107)。這里,在該例子中,下一個(gè)字符對(duì)全部變數(shù)成為“t”。 因此,在步驟107中的比較結(jié)果判定為一致(步驟108 “是”),進(jìn)而對(duì)下一個(gè)字符執(zhí)行比較 處理(步驟107)。此時(shí) ,在該例子中,之后接著的2個(gè)字符“e”、“m”都對(duì)2個(gè)變數(shù)的全部變 數(shù)一致。因此,進(jìn)一步對(duì)下一個(gè)字符進(jìn)行比較處理(步驟107),但在被篩選的2個(gè)變數(shù)中, 上面的變數(shù)為“1”,而下面的變數(shù)為“2”,所以全部的變數(shù)并不一致(步驟108 “否”)。于是,轉(zhuǎn)移到步驟109,執(zhí)行將一致的字符串為止統(tǒng)一確定,且將不同的字符之后 設(shè)為表示未確定狀態(tài)的顯示方式(在該例子中是反轉(zhuǎn)顯示)的處理。在圖6中示出此時(shí)的 顯示器的顯示狀態(tài)。如同圖所示那樣,在該例子中,在輸入數(shù)據(jù)顯示區(qū)域131中,只有一致的字符串 "System"成為表示確定狀態(tài)的顯示方式(在該例子中是非反轉(zhuǎn)顯示),不一致字符串“1” 成為表示未確定狀態(tài)的顯示方式(在該例子中是反轉(zhuǎn)顯示)。接著在步驟110中,執(zhí)行以列表顯示變數(shù)候選的處理,這樣,如圖6所示那樣,在顯 示器13的畫面上顯示變數(shù)名稱候選列表133。之后,返回到步驟102,重復(fù)以上的一連串的處理(步驟102 110)。于是,在該 例子中,作為下一個(gè)字符而由用戶輸入“2”且被確定(步驟102、103、104),并將目前確定 的一連串的字符串“SyStem2”作為檢索字而執(zhí)行前方一致檢索,從而執(zhí)行在通過之前的處 理(步驟105)篩選的變數(shù)名稱組(參照?qǐng)D6的變數(shù)名稱候選列表133)中篩選以字符串 “SyStem2”開始的變數(shù)名稱的處理。其結(jié)果,如圖7的變數(shù)名稱候選列表133可知那樣,成 為操作數(shù)的候選的變數(shù)名稱進(jìn)一步篩選至1個(gè)。接著,在步驟106中,進(jìn)行這樣篩選的變數(shù)名稱的個(gè)數(shù)是否為多個(gè)(2個(gè)以上)的 判定處理。如在之前說明那樣,這里,在篩選的變數(shù)名稱的個(gè)數(shù)為單個(gè)(1個(gè))的情況下(步 驟106 “否”),意味著找到了設(shè)為目的的變數(shù),能夠立即由篩選為該1個(gè)的變數(shù)名稱的全部 字符串來確定設(shè)為目的的變數(shù)名稱。并且,在該例子中,由于判定被篩選的變數(shù)的個(gè)數(shù)為一個(gè)(步驟106 “否”),所以 進(jìn)至步驟111,由構(gòu)成該1個(gè)變數(shù)的全部字符串“SyStem2”確定成為設(shè)為目的的操作數(shù)的變 數(shù)名稱。
由以上的實(shí)施方式可知,在該例子中,根據(jù)圖3所示的變數(shù)表2,生成連著7個(gè)字符 而成的字符串“SyStem2”時(shí)用戶實(shí)際從鍵盤輸入的字符的個(gè)數(shù)為“S”、“s”、“2”的3個(gè)即 可,所以能夠顯著高效率地進(jìn)行由這種變數(shù)名稱描述操作數(shù)的梯形圖程序的編輯操作。尤其是,在由這種變數(shù)名稱描述操作數(shù)的梯形圖程序的編程中,存在雖然含義相 同但分配給不同的多個(gè)地址的需要的情況下,大多進(jìn)行在名稱的末尾分配數(shù)字那樣的名稱 的起法,但此時(shí),根據(jù)本發(fā)明,能夠盡可能地減輕這樣的變數(shù)名稱的輸入所需的勞力。另外,在以上的實(shí)施方式中,將可用作字符串的字符設(shè)為字母、數(shù)字、符號(hào),但除此 之外,當(dāng)然也可以擴(kuò)展到平假名、片假名、漢字、英語以外的外語字符等任意字符。此外,在以上的實(shí)施方式中,在步驟109中統(tǒng)一進(jìn)行了在步驟107中依次自動(dòng)輸入 的字符的確定,但這當(dāng)然也可以在每次自動(dòng)輸入1個(gè)字符時(shí)確定。此外,在以上的實(shí)施方式中,在處理的開始中設(shè)置了預(yù)備篩選處理(步驟101),但 當(dāng)然也可以省略預(yù)備篩選處理(步驟101)。此外,在以上的實(shí)施方式中,將變數(shù)候選列表133僅利用于視覺確認(rèn),但當(dāng)然也可 以通過設(shè)置適當(dāng)?shù)蘑荌,從而通過鼠標(biāo)操作而從變數(shù)候選列表133中選擇變數(shù)名稱。其中, 一般變數(shù)的個(gè)數(shù)涉及數(shù)100個(gè)至數(shù)1000個(gè)的情況較多,且在這樣的情況下,應(yīng)該會(huì)需要為 了選擇操作而滾動(dòng)畫面等煩雜的操作。此外,在以上的實(shí)施方式中,為了 1個(gè)字符的輸入操作而使用了鍵盤11,但當(dāng)然也 可以通過設(shè)置適當(dāng)?shù)蘑荌,從而觸摸輸入在畫面上顯示的字符,或通過鼠標(biāo)點(diǎn)擊來輸入字符 而不使用鍵盤。此外,在以上的實(shí)施方式中,將本發(fā)明應(yīng)用到用戶程序中的梯形圖程序語言,但本 發(fā)明的應(yīng)用并不限定于梯形圖程序語言,除此之外,當(dāng)然也可以同樣應(yīng)用到在由國際基準(zhǔn) 標(biāo)準(zhǔn)IEC61131-3所規(guī)定的5個(gè)程序語言中、梯形圖程序以外的程序語言中。工業(yè)可利用性本發(fā)明能夠在PLC的程序開發(fā)支援裝置中制作或編輯梯形圖程序 時(shí),由使用了字母的變數(shù)名稱輸入LD、AND、OR、MOV、CTR等梯形圖命令的操作數(shù)的情況下, 將輸入字符數(shù)設(shè)為必要最小限度,從而簡化輸入操作。
權(quán)利要求
一種在PLC編程中的變數(shù)名稱的輸入支援方法,為了指定成為在構(gòu)成PLC的用戶程序的一個(gè)命令的操作數(shù)的變數(shù)名稱,計(jì)算機(jī)支援從變數(shù)表中選擇變數(shù)名稱并輸入,預(yù)定在所述用戶程序中使用的變數(shù)名稱與其屬性一同預(yù)先注冊(cè)在所述變數(shù)表中,其特征在于,所述輸入支援方法包括第1步驟,設(shè)為可輸入構(gòu)成應(yīng)成為所述一個(gè)命令的操作數(shù)的變數(shù)名稱的字符串的一個(gè)字符;第2步驟,若輸入所述一個(gè)字符,則從變數(shù)表中提取前面與由目前為止確定的字符串和該一個(gè)字符構(gòu)成的字符串一致的全部變數(shù)名稱;第3步驟,在所述提取的變數(shù)名稱為單一的情況下,通過將該變數(shù)名稱確定作為操作數(shù),從而完成所述一個(gè)命令的操作數(shù)的指定;以及第4步驟,在所述提取的變數(shù)名稱為多個(gè)的情況下,對(duì)所述提取的變數(shù)名稱的全部,將前面相互一致的部分的字符串作為確定字符串之后返回到第1步驟。
2.如權(quán)利要求1所述的在PLC編程中的變數(shù)名稱的輸入支援方法,其特征在于,在所述第1步驟之前還包括預(yù)備篩選步驟,該預(yù)備篩選步驟用于將可成為所述提取對(duì) 象的變數(shù)名稱篩選為具有可成為所述一個(gè)命令的操作數(shù)的數(shù)據(jù)類型的變數(shù)名稱。
3.如權(quán)利要求1所述的在PLC編程中的變數(shù)名稱的輸入支援方法,其特征在于,還包括顯示步驟,用于將在所述第4步驟中設(shè)為確定字符串的字符串顯示在規(guī)定的顯示器中。
4.如權(quán)利要求3所述的在PLC編程中的變數(shù)名稱的輸入支援方法,其特征在于,所述顯示步驟還包括以下步驟將在所述第2步驟中提取的變數(shù)名稱作為最終的變數(shù) 名稱候選而附加地顯示在所述顯示器中。
5.如權(quán)利要求3所述的在PLC編程中的變數(shù)名稱的輸入支援方法,其特征在于,所述顯示步驟還包括以下步驟一連串地顯示在所述第4步驟中設(shè)為確定字符串的字 符串和在所述第2步驟中提取的變數(shù)名稱中一個(gè)所述確定字符串之后的未確定的字符串, 并且以第1顯示方式顯示所述確定字符串,以第2顯示方式顯示所述未確定字符串。
6.一種在PLC編程中的變數(shù)名稱的輸入支援裝置,為了指定成為在構(gòu)成PLC的用戶程 序的一個(gè)命令的操作數(shù)的變數(shù)名稱,支援從變數(shù)表中選擇變數(shù)名稱并輸入,預(yù)定在所述用 戶程序中使用的變數(shù)名稱與其屬性一同預(yù)先注冊(cè)在所述變數(shù)表中,其特征在于,所述輸入 支援裝置包括第1部件,設(shè)為可輸入構(gòu)成應(yīng)成為所述一個(gè)命令的操作數(shù)的變數(shù)名稱的字符串的一個(gè)字符;第2部件,若輸入所述一個(gè)字符,則從變數(shù)表中提取前面與由目前為止確定的字符串 和該一個(gè)字符構(gòu)成的字符串一致的全部變數(shù)名稱;第3部件,在所述提取的變數(shù)名稱為單一的情況下,通過將該變數(shù)名稱確定作為操作 數(shù),從而完成所述一個(gè)命令的操作數(shù)的指定;以及第4部件,在所述提取的變數(shù)名稱為多個(gè)的情況下,對(duì)所述提取的變數(shù)名稱的全部,將 前面相互一致的部分的字符串作為確定字符串之后返回到執(zhí)行第1部件。
7.如權(quán)利要求6所述的在PLC編程中的變數(shù)名稱的輸入支援裝置,其特征在于,在所述第1部件的前級(jí)還包括預(yù)備篩選部件,該預(yù)備篩選部件用于將可成為所述提取 對(duì)象的變數(shù)名稱篩選為具有可成為所述一個(gè)命令的操作數(shù)的數(shù)據(jù)類型的變數(shù)名稱。
8.如權(quán)利要求6所述的在PLC編程中的變數(shù)名稱的輸入支援裝置,其特征在于,還包括顯示部件,用于將在所述第4部件中設(shè)為確定字符串的字符串顯示在規(guī)定的顯示器中。
9.如權(quán)利要求8所述的在PLC編程中的變數(shù)名稱的輸入支援裝置,其特征在于,所述顯示部件還包括以下部件將在所述第2部件中提取的變數(shù)名稱作為最終的變數(shù) 名稱候選而附加地顯示在所述顯示器中。
10.如權(quán)利要求8所述的在PLC編程中的變數(shù)名稱的輸入支援裝置,其特征在于, 所述顯示部件還包括以下部件一連串地顯示在所述第4部件中設(shè)為確定字符串的字 符串和在所述第2部件中提取的變數(shù)名稱中一個(gè)所述確定字符串之后的未確定的字符串, 并且以第1顯示方式顯示所述確定字符串,以第2顯示方式顯示所述未確定字符串。
全文摘要
提供一種在PLC編程中的變數(shù)名稱的輸入支援方法和輸入支援裝置。即使在從雖含義相同但分配給不同的多個(gè)地址的需要出發(fā),進(jìn)行在名稱的末尾分配數(shù)字那樣的名稱的起法時(shí),也能夠確定設(shè)為目的的變數(shù)名稱而無需輸入全部字符串。在存在多個(gè)被篩選的變數(shù)名稱,并且在這些變數(shù)名稱中、一個(gè)或者兩個(gè)以上連續(xù)的下一個(gè)字符串相互一致時(shí),這些沒有選擇余地的一連串的字符串被自動(dòng)地選擇設(shè)為目的的變數(shù)名稱的字符串來確定,而不等待操作員的輸入。
文檔編號(hào)G06F17/27GK101833548SQ20101012502
公開日2010年9月15日 申請(qǐng)日期2010年3月1日 優(yōu)先權(quán)日2009年3月13日
發(fā)明者藤井裕 申請(qǐng)人:歐姆龍株式會(huì)社