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