本發(fā)明涉及進行可編程邏輯控制器的輸入輸出控制的輸入輸出控制裝置、輸入輸出控制方法、以及執(zhí)行輸入輸出控制的程序。
背景技術:
通常的可編程邏輯控制器中會內(nèi)置微處理器,該可編程邏輯控制器與各種致動器、顯示儀器等電子負載連接,對應于來自操作開關、各種傳感器等的輸入信號所示出的電子負載的動作狀態(tài)和儲存于存儲器的定序程序而進行電子負載的驅(qū)動控制。
以往的可編程邏輯控制器還一并使用了特殊單元,該特殊單元搭載有用于進行高速輸入輸出處理的集成電路元件和輸入輸出接口電路。該特殊單元作為輸入輸出控制裝置而動作,搭載于該特殊單元的集成電路元件具有根據(jù)程序存儲器內(nèi)的特殊命令的內(nèi)容來決定動作規(guī)格的參數(shù)存儲器和邏輯電路部,構成該邏輯電路部的可逆計數(shù)器兼用于高速輸入處理和高速輸出處理(例如,參照專利文獻1)。
專利文獻1:日本特開2009-069864號公報(第0013、0050、0051、0121段以及圖4)
技術實現(xiàn)要素:
就以往的可編程邏輯控制器而言,特殊單元(下面,記為輸入輸出控制裝置)執(zhí)行能夠由可編程邏輯控制器實現(xiàn)的多種功能中的任意功能,因此用戶能夠容易地使用規(guī)定的功能,能夠有效地執(zhí)行該功能,但另一方面,存在下述問題,即,不能對該特殊單元的功能進行修正,不能追加未設定的功能。
本發(fā)明就是鑒于上述問題而提出的,目的在于得到操作容易且能夠?qū)崿F(xiàn)各種功能的可編程邏輯控制器的輸入輸出控制裝置、輸入輸出控制方法以及程序。
本發(fā)明涉及的輸入輸出控制裝置具有:總線,其與從外部輸入信號的輸入接口連接;多個電路選擇器,它們與總線連接,被作出動作的有效或者無效的設定,在有效的情況下將總線的信號輸出,在無效的情況下,不將總線的信號輸出;多個邏輯電路,它們是對應于每個電路選擇器而設置的,如果從電路選擇器輸入了信號,則進行邏輯運算,將表示運算結果的信號向總線輸出;輸出選擇器,其與總線連接,被作出動作的有效或者無效的設定,在有效的情況下,將總線的信號向輸出接口輸出,在無效的情況下,不將總線的信號向輸出接口輸出;以及運算部,其基于多個電路選擇器和輸出選擇器的動作的順序,將多個電路選擇器或者輸出選擇器設為有效或者無效。
本發(fā)明涉及的輸入輸出控制方法具有:輸入步驟,其接收向總線的信號的輸入,該總線與從外部輸入信號的輸入接口連接;電路選擇步驟,其將與總線連接的多個電路選擇器中的任意的電路選擇器設為有效,使該電路選擇器輸出總線的信號;運算步驟,其使對應于每個電路選擇器而設置的多個邏輯電路中的、從電路選擇器輸入了信號的邏輯電路進行邏輯運算,向總線輸出信號;以及輸出步驟,其將與總線連接的輸出選擇器設為有效,使該輸出選擇器將總線的信號向輸出接口輸出。
本發(fā)明涉及的程序安裝于輸入輸出控制裝置,該輸入輸出控制裝置根據(jù)從輸入接口輸入的信號來執(zhí)行規(guī)定的動作,從輸出接口將信號輸出,程序的特征在于,使輸入輸出控制裝置的運算部執(zhí)行下述步驟:電路選擇步驟,其在向與輸入接口連接的總線輸入了信號的情況下,將與總線連接的多個電路選擇器中的任意的電路選擇器設為有效,使該電路選擇器輸出總線的信號;運算步驟,其使對應于每個電路選擇器而設置的多個邏輯電路中的、從電路選擇器輸入了信號的邏輯電路進行邏輯運算,向總線輸出信號;以及輸出步驟,其將與總線連接的輸出選擇器設為有效,使該輸出選擇器將總線的信號向輸出接口輸出。
發(fā)明的效果
根據(jù)本發(fā)明,能夠提供操作容易且能夠?qū)崿F(xiàn)各種功能的可編程邏輯控制器的輸入輸出控制裝置、輸入輸出控制方法以及程序。
附圖說明
圖1是表示實施方式1中的可編程邏輯控制器的結構的框圖。
圖2是表示實施方式1的輸入輸出控制裝置的通用邏輯部中的信號線的連接狀態(tài)的框圖。
圖3是表示實施方式1中的輸入輸出控制裝置的存儲部的結構的概念圖。
圖4是表示實施方式1中的可編程邏輯控制器執(zhí)行用戶程序時的動作的流程的流程圖。
圖5是表示在實施方式1中用戶預先對通用邏輯部的動作進行設定的流程的流程圖。
具體實施方式
實施方式1.
圖1是表示實施方式1中的可編程邏輯控制器的結構的框圖。使用圖1對實施方式1中的具有輸入輸出控制裝置的可編程邏輯控制器進行說明。此外,本發(fā)明并不限定于本實施方式1。
[可編程邏輯控制器1的結構]
在實施方式1中,可編程邏輯控制器1經(jīng)由連接線纜2與外圍裝置3連接。另外,可編程邏輯控制器1與開閉傳感器4以及電子負載5連接。
開閉傳感器4例如是安裝于電動機而對電動機的旋轉(zhuǎn)角度進行檢測的旋轉(zhuǎn)編碼器等編碼器。電子負載5例如是電磁閥等閥、電動機等。
另外,可編程邏輯控制器1具有輸入輸出控制裝置10和CPU裝置20。
[輸入輸出控制裝置10的結構]
輸入輸出控制裝置10具有通用邏輯部11、運算部12、存儲部13、通信接口部14、外部輸入接口部15以及外部輸出接口部16。
通用邏輯部11如后述那樣具有多個電路選擇器和多個電路元件,該通用邏輯部11提供用于與用戶自創(chuàng)的動作設定對應的各種功能。
運算部12是對輸入輸出控制裝置10的整體的動作進行控制的中央處理裝置(CPU)。另外,運算部12如后述那樣,基于表示各選擇器的動作順序的動作數(shù)據(jù),將各選擇器的動作設定設為有效或者無效,并且使各電路元件進行與表示各電路元件的動作的設定參數(shù)相應的邏輯運算。各選擇器的動作數(shù)據(jù)和各電路元件的設定參數(shù)如后述那樣是預先設定的。
存儲部13是RAM等存儲器,存儲用于由運算部12對通用邏輯部11的動作進行控制的數(shù)據(jù)。存儲部13如后述那樣,對表示各選擇器的動作順序的動作數(shù)據(jù)、表示各電路元件的動作的設定參數(shù)、動作狀態(tài)標志和測定數(shù)據(jù)進行存儲。
通信接口部14是用于與CPU裝置20之間進行通信的接口。
外部輸入接口部15與通用邏輯部11和開閉傳感器4連接,從開閉傳感器4接收信號,并且將與來自開閉傳感器4的信號相對應的信號輸出至通用邏輯部11。外部輸出接口部16與通用邏輯部11、電子負載5連接,接收來自通用邏輯部11的信號,并且將與來自通用邏輯部11的信號相對應的信號輸出至電子負載5。
輸入輸出控制裝置10的通用邏輯部11具有電路切換總線111、電路選擇器112a、112b、112c、112d、112e、112f、濾波器113、邏輯門114、計數(shù)器115、比較器116、運算器117、時鐘118、輸出選擇器119以及動作設定總線120。
此外,在下面還將電路選擇器112a、112b、112c、112d、112e、112f統(tǒng)稱為電路選擇器112。另外,還將濾波器113、邏輯門114、計數(shù)器115、比較器116、運算器117、以及時鐘118統(tǒng)稱為電路元件。另外,邏輯電路在實施方式1中是電路元件。
外部輸入接口部15、電路選擇器112、電路元件以及輸出選擇器119與電路切換總線111連接。
電路選擇器112被設定參數(shù),根據(jù)所設定的參數(shù)而對信號能否輸出進行控制。即,電路選擇器112在設定有表示動作設定為有效的參數(shù)的情況下,將電路切換總線111的信號向電路元件輸出。在設定有表示動作設定為無效的參數(shù)的情況下,不將電路切換總線111的信號向電路元件輸出。
各電路元件是對應于每個電路選擇器112而設置的,如果從電路選擇器112輸入了信號,則進行與預先設定的參數(shù)相應的邏輯運算,向電路切換總線111輸出信號。
輸出選擇器119被設定參數(shù),根據(jù)所設定的參數(shù)而對信號能否輸出進行控制。即,輸出選擇器119在設定有表示動作設定為有效的參數(shù)的情況下,將電路切換總線111的信號向外部輸出接口部16輸出。在設定有表示動作設定為無效的參數(shù)的情況下,不將電路切換總線111的信號向外部輸出接口部16輸出。
此外,還將針對每個電路元件而設置的電路選擇器112以及輸出選擇器119統(tǒng)稱為各選擇器。
運算部12、存儲部13、通信接口部14、電路選擇器112、各電路元件以及輸出選擇器119與動作設定總線120連接。運算部12將存儲于存儲部13的各選擇器的動作數(shù)據(jù)經(jīng)由動作設定總線120向電路選擇器112以及輸出選擇器119發(fā)送,對各選擇器的參數(shù)進行設定或者變更。另外,運算部12將存儲于存儲部13的各電路元件的設定參數(shù)經(jīng)由動作設定總線120向各電路元件發(fā)送,對各電路元件的參數(shù)進行設定或者變更。
通用邏輯部11如果從開閉傳感器4經(jīng)由外部輸入接口部15輸入了信號,則以上述方式對電路選擇器112、各電路元件、輸出選擇器119進行控制而進行邏輯運算,經(jīng)由外部輸出接口部16向電子負載5輸出信號。
[CPU裝置20的結構]
CPU裝置20具有運算部21、存儲部22、外圍裝置接口部23和通信接口部24。
運算部21是對CPU裝置20的整體的動作進行控制的中央處理裝置(CPU)。另外,運算部21基于用戶程序和在用戶程序的執(zhí)行中使用的數(shù)據(jù),對與可編程邏輯控制器1連接的電子負載5進行控制。這里,用戶程序是指用于由可編程邏輯控制器1對作為控制對象的電子負載5進行控制的程序,例如是梯形圖程序、C語言程序等。
存儲部22例如是ROM等存儲器,存儲用于由運算部21對電子負載5進行控制的數(shù)據(jù)。存儲部22如后述那樣,對用戶程序、在用戶程序的執(zhí)行中使用的數(shù)據(jù)、和用戶程序的執(zhí)行結果的數(shù)據(jù)進行存儲。
外圍裝置接口部23是用于與外圍裝置3之間進行通信的接口。通信接口部24是用于與輸入輸出控制裝置10之間進行通信的接口。
裝置間總線25對輸入輸出控制裝置10的通信接口部14和CPU裝置20的通信接口部24進行連接。輸入輸出控制裝置10和CPU裝置20經(jīng)由通信接口部14、裝置間總線25以及通信接口部24而連接。
運算部21將存儲于存儲部22的用戶程序讀出、執(zhí)行。另外,運算部21使所讀出的用戶程序的內(nèi)容經(jīng)由通信接口部24以及通信接口部14而存儲于輸入輸出控制裝置10的存儲部13。輸入輸出控制裝置10的運算部12基于所展開的用戶程序的內(nèi)容,對存儲于存儲部13的表示各電路元件的動作的設定參數(shù)進行設定或者變更,以使得輸入輸出控制裝置10執(zhí)行由該用戶程序所指示的動作。
運算部21以規(guī)定的控制周期反復進行存儲于存儲部22的用戶程序的執(zhí)行、在用戶程序的執(zhí)行中使用的數(shù)據(jù)從存儲部22的讀出、以及用戶程序的執(zhí)行結果向存儲部22的寫入。CPU裝置20的運算部21在讀出在用戶程序的執(zhí)行中使用的數(shù)據(jù)時,從輸入輸出控制裝置10的存儲部13獲取各電路元件的動作的設定、和通用邏輯部11的控制結果的數(shù)據(jù)。各電路元件的動作的設定例如是計數(shù)器115的計數(shù)許可指令、計數(shù)值的重置指令等,控制結果的數(shù)據(jù)是計數(shù)器115的計數(shù)值等。
此外,可編程邏輯控制器1也可以是除了輸入輸出控制裝置10和CPU裝置20以外,為了對功能進行擴展而具有追加的裝置。作為該裝置的例子,例如是通過對伺服放大器進行控制而實現(xiàn)多軸的位置控制的動作控制器裝置、基于來自CPU裝置20的指令而輸出溫度控制信號的溫度控制器裝置等。上述各裝置也經(jīng)由裝置間總線25而相互連接。
[外圍裝置3的結構]
外圍裝置3具有程序設定部31、動作數(shù)據(jù)設定部32和外部通信接口部33。
程序設定部31是接收用戶的操作的圖形用戶接口(GUI)。程序設定部31根據(jù)用戶的操作而創(chuàng)建針對可編程邏輯控制器1的用戶程序。程序設定部31將所創(chuàng)建的用戶程序經(jīng)由外部通信接口部33以及連接線纜2向可編程邏輯控制器1輸出,存儲于CPU裝置20的存儲部22。
另外,程序設定部31將從可編程邏輯控制器1輸出的各種數(shù)據(jù)顯示于顯示畫面而進行監(jiān)視。
動作數(shù)據(jù)設定部32是接收用戶的操作的圖形用戶接口(GUI)。動作數(shù)據(jù)設定部32根據(jù)用戶的操作而對表示通用邏輯部11的各電路元件的參數(shù)的設定參數(shù)進行設定。另外,動作數(shù)據(jù)設定部32根據(jù)用戶的操作而對表示通用邏輯部11的各選擇器的動作順序的動作數(shù)據(jù)進行設定。
動作數(shù)據(jù)設定部32將通用邏輯部11的各電路元件的設定參數(shù)和各選擇器的動作數(shù)據(jù)經(jīng)由外部通信接口部33以及連接線纜2向可編程邏輯控制器1輸出,經(jīng)由外圍裝置接口部23、通信接口部24、裝置間總線25以及通信接口部14而存儲于輸入輸出控制裝置10的存儲部13。另外,動作數(shù)據(jù)設定部32具有用于對通用邏輯部11的動作進行模擬的功能。
程序設定部31和動作數(shù)據(jù)設定部32通過將儲存有編程工具、通用電路模塊設定工具的程序安裝于外圍裝置3而設置于外圍裝置3內(nèi)。此外,程序設定部31和動作數(shù)據(jù)設定部32也可以通過在外圍裝置3內(nèi)設置運算部、存儲部等而以硬件方式實現(xiàn)。
[通用邏輯部11的結構]
圖2是表示實施方式1的輸入輸出控制裝置的通用邏輯部11中的信號線的連接狀態(tài)的框圖。此外,在圖2中,為了便于說明,示出的是通用邏輯部11具有濾波器113、邏輯門114和計數(shù)器115作為電路元件的結構,但也可以具有圖1所示的比較器116、運算器117、時鐘118、其他電路元件。
外部輸入接口部15具有2個輸入端口151a、151b,外部輸出接口部16具有2個輸出端口161a、161b。此外,在圖2中,為了便于說明,將來自外部的輸入設為輸入端口151a、151b這2個,將向外部的輸出設為輸出端口161a、161b這2個,但輸入端口或者輸出端口也可以為大于或等于3個。
此外,對于圖2的輸出選擇器119a、119b,在圖1中匯總而記為輸出選擇器119。
外部輸入接口部15將從外部輸入至輸入端口151a的信號、或者從外部輸入至輸入端口151b的信號中的任一方輸入至電路切換總線111。輸入至電路切換總線111的信號的輸出目標由電路選擇器112a、112b、112c決定。即,電路切換總線111的信號在電路選擇器112a為有效的情況下被輸出至濾波器113,在電路選擇器112b為有效的情況下被輸出至邏輯門114,在電路選擇器112c為有效的情況下被輸出至計數(shù)器115。
各電路元件如果從電路選擇器112輸入了信號,則在執(zhí)行與預先設定的各電路元件的參數(shù)相應的運算之后,將信號輸出至電路切換總線111。另外,被輸出至電路切換總線111的信號經(jīng)由電路切換總線111再次被輸出至電路選擇器112a、112b、112c。此時,通過切換選擇器112a、112b、112c的有效和無效,從而能夠再次將信號輸出至任意的電路元件。
在任意的電路元件執(zhí)行了規(guī)定的運算之后,通過將輸出選擇器119a或者輸出選擇器119b設為有效,從而外部輸出接口部16經(jīng)由輸出端口161a或者輸出端口161b將信號輸出至外部。
在實施方式1的通用邏輯部11中,外部輸入接口部15、電路選擇器112、各電路元件以及輸出選擇器119與電路切換總線111連接。而且,通過任意地變更電路選擇器112以及輸出選擇器119的有效和無效,從而能夠使各電路元件以任意的順序執(zhí)行邏輯運算。此時,還能夠在不變更電路選擇器112以及輸出選擇器119的有效和無效的狀態(tài)下將信號再次輸入至相同的電路元件,再次執(zhí)行邏輯運算。另外,還能夠通過任意地變更電路選擇器112以及輸出選擇器119的有效和無效,從而在一個電路元件執(zhí)行邏輯運算、其他電路元件執(zhí)行了邏輯運算之后,再次使一個電路元件執(zhí)行邏輯運算。
[存儲部13的結構]
圖3是表示實施方式1中的輸入輸出控制裝置的存儲部的結構的概念圖。使用圖3對實施方式1中的輸入輸出控制裝置10的存儲部13的結構進行說明。
動作狀態(tài)標志是表示動作開始、動作變更等輸入輸出控制裝置10的狀態(tài)的標志。存儲部13在從參數(shù)設定部31或者CPU裝置20輸入了動作開始指令、動作變更指令的情況下,將表示動作開始、動作變更的標志作為動作狀態(tài)標志而存儲。另外,存儲部13在從運算部12輸入了輸入輸出控制裝置10的動作的完畢通知、動作的設定變更完畢通知等的情況下,將表示動作的完畢、設定變更完畢的標志作為動作狀態(tài)標志而存儲。運算部12基于存儲于存儲部13的動作狀態(tài)標志,將動作的完畢、設定變更完畢向CPU裝置20通知。CPU裝置20將所通知的動作的完畢、設定變更完畢等輸入輸出控制裝置10的狀態(tài)存儲于存儲部22。
測定數(shù)據(jù)是在可編程邏輯控制器1執(zhí)行了用戶程序時由輸入輸出控制裝置10獲取的、或者進行運算而得到的數(shù)據(jù),例如是從電子負載5輸入的信號的頻率、作為電子負載5而連接的電動機的轉(zhuǎn)速等。存儲部13將由輸入輸出控制裝置10獲取的、或進行運算而得到的數(shù)據(jù)作為測定數(shù)據(jù)進行存儲。運算部12基于存儲于存儲部13的測定數(shù)據(jù),將由輸入輸出控制裝置10獲取或者運算得到的數(shù)據(jù)向CPU裝置20通知,存儲于存儲部22。外圍裝置3的參數(shù)設定部31能夠?qū)Υ鎯Σ?2所存儲的由輸入輸出控制裝置10獲取或者運算得到的數(shù)據(jù)進行監(jiān)視。
設定參數(shù)表示各電路元件的參數(shù),例如是通用邏輯部11的濾波器113的特性數(shù)據(jù)、計數(shù)器115的動作模式等。運算部12將存儲于存儲部13的各電路元件的參數(shù)向CPU裝置20通知,存儲于CPU裝置20的存儲部22。CPU裝置20對存儲部22所存儲的各電路元件的參數(shù)進行監(jiān)視、變更。另外,外圍裝置3的參數(shù)設定部31或者動作數(shù)據(jù)設定部32也能夠?qū)Υ鎯Σ?2所存儲的各電路元件的參數(shù)進行監(jiān)視或者變更。
動作數(shù)據(jù)是用于使通用邏輯部11執(zhí)行規(guī)定的邏輯運算的數(shù)據(jù),即,是針對電路選擇器112以及輸出選擇器119的動作設定,示出對有效和無效進行切換的順序的數(shù)據(jù)。在用戶向動作數(shù)據(jù)設定部32輸入了各選擇器的動作數(shù)據(jù)的情況下,動作數(shù)據(jù)設定部32將各選擇器的動作數(shù)據(jù)輸出,作為動作數(shù)據(jù)存儲于存儲部13。運算部12將存儲于存儲部13的動作數(shù)據(jù)向電路選擇器112以及輸出選擇器119發(fā)送,對表示各選擇器的動作設定的內(nèi)容的參數(shù)進行設定或者變更。各選擇器被設定出表示動作設定為有效的參數(shù)或者表示動作設定為無效的參數(shù)。由此,用戶能夠容易地使通用邏輯部11進行輸入輸出控制裝置10執(zhí)行高速輸入輸出控制所需的各種功能。
[通用邏輯部11的動作的設定流程]
圖4是表示在實施方式1中用戶對通用邏輯部的動作進行預先設定的流程的流程圖。使用圖4說明對通用邏輯部11的動作進行設定而實現(xiàn)用戶所要求的各種功能的方法。
在步驟S1中,外圍裝置3的動作數(shù)據(jù)設定部32判斷是否被輸入了對電路選擇器112或者輸出選擇器119的動作數(shù)據(jù)進行設定的指令。在由用戶輸入了對選擇器的動作數(shù)據(jù)進行設定的指令的情況下,動作數(shù)據(jù)設定部32在步驟S2中,按照輸入內(nèi)容而對選擇器的動作數(shù)據(jù)進行設定或者變更。另外,外圍裝置3將設定或者變更后的選擇器的動作數(shù)據(jù)從外部通信接口部33輸出,經(jīng)由連接線纜2、外圍裝置接口部23、通信接口部24、裝置間總線25以及通信接口部14而存儲于輸入輸出控制裝置10的存儲部13。
在步驟S1中,在未由用戶輸入對選擇器的動作數(shù)據(jù)進行設定的指令的情況下,進入步驟S3。
在步驟S3中,外圍裝置3的動作數(shù)據(jù)設定部32判斷是否被輸入了對電路元件的參數(shù)進行設定的指令。在由用戶輸入了對電路元件的參數(shù)進行設定的指令的情況下,動作數(shù)據(jù)設定部32在步驟S4中,按照輸入內(nèi)容對電路元件的參數(shù)進行設定或者變更。另外,外圍裝置3將設定或者變更后的電路元件的參數(shù)從外部通信接口部33輸出,經(jīng)由連接線纜2、外圍裝置接口部23、通信接口部24、裝置間總線25以及通信接口部14而存儲于輸入輸出控制裝置10的存儲部13。
在步驟S3中,在未由用戶輸入對電路元件的參數(shù)進行設定的指令的情況下,進入步驟S5。
在步驟S5中,外圍裝置3的動作數(shù)據(jù)設定部32判斷是否被輸入了將通用邏輯部11的動作的設定結束的指令。在未輸入將通用邏輯部11的動作的設定結束的指令的情況下,返回至步驟S1。在輸入了將通用邏輯部11的動作的設定結束的指令的情況下,結束設定。
[用戶程序的執(zhí)行流程]
圖5是表示實施方式1中的在可編程邏輯控制器執(zhí)行用戶程序時的動作的流程的流程圖。使用圖5說明可編程邏輯控制器1在執(zhí)行用戶程序時的動作。
在步驟S11中,外圍裝置3將由程序設定部31創(chuàng)建的用戶程序從外部通信接口部33輸出,經(jīng)由連接線纜2、外圍裝置接口部23而儲存于CPU裝置20的存儲部22。CPU裝置20的運算部21執(zhí)行存儲于存儲部22的用戶程序,使輸入輸出控制裝置10進行規(guī)定的動作,由此對與輸入輸出控制裝置10連接的電子負載5進行控制。此時,輸入輸出控制裝置10的運算部12使通用邏輯部11執(zhí)行規(guī)定的邏輯運算,以執(zhí)行從CPU裝置20的運算部21指示的規(guī)定的動作。
對于用于使通用邏輯部11執(zhí)行規(guī)定的邏輯運算的動作,使用圖1、圖2進行說明。例如,在圖2中,對以下情況進行說明,即,將從輸入端口151a輸入的信號,以濾波器113、邏輯門114、計數(shù)器115的順序進行輸入,從輸出端口161b輸出。
在圖5的步驟S12中,輸入輸出控制裝置10的運算部12判斷是否從外部的開閉傳感器4等輸入了信號。在判斷為從外部的開閉傳感器4等輸入了信號的情況下,運算部12使通用邏輯部11針對輸入來的信號執(zhí)行規(guī)定的邏輯運算。在上述例子的情況下,在從開閉傳感器4輸入了信號之后,圖2所示的輸入端口151a將從開閉傳感器4輸入的信號向電路切換總線111輸出。
在圖5的步驟S13中,輸入輸出控制裝置10的運算部12按照存儲于存儲部13的動作數(shù)據(jù),對電路選擇器112的參數(shù)進行變更。在上述例子的情況下,運算部12基于存儲于存儲部13的動作數(shù)據(jù),經(jīng)由圖1所示的動作設定總線120對通用邏輯部10的電路選擇器112a的參數(shù)的設定進行變更。由此,電路選擇器112a被設定為有效,將信號輸出。
在圖5的步驟S14中,輸入輸出控制裝置10的運算部12按照存儲于存儲部13的設定參數(shù),對各電路元件的參數(shù)進行變更。在上述例子的情況下,運算部12基于存儲于存儲部13的設定參數(shù),經(jīng)由圖1所示的動作設定總線120對通用邏輯部10的濾波器113的參數(shù)進行設定。濾波器113基于該參數(shù),針對輸入來的信號執(zhí)行邏輯運算,將運算結果作為信號而輸出。
在圖5的步驟S15中,輸入輸出控制裝置10的運算部12判斷存儲于存儲部13的動作數(shù)據(jù)的下一個指令是否是將輸出選擇器119的動作設定設為有效的指令。將輸出選擇器119的動作設定設為有效的指令代表著是將通用邏輯部11的電路元件的運算結果輸出至外部的指令。在上述例子的情況下,通用邏輯部11的計數(shù)器115沒有執(zhí)行規(guī)定的邏輯運算,尚未將信號輸出至外部,因此判斷為No,返回至步驟S13。
在圖5的步驟S13中,運算部12基于存儲于存儲部13的動作數(shù)據(jù),經(jīng)由圖1所示的動作設定總線120對通用邏輯部10的電路選擇器112a和電路選擇器112b的參數(shù)的設定進行變更。由此,電路選擇器112a被設定為無效,不將電路切換總線111的信號輸出至濾波器113,電路選擇器112b被設定為有效,將電路切換總線111的信號輸出至邏輯門114。
在圖5的步驟S14中,運算部12基于存儲于存儲部13的設定參數(shù),經(jīng)由圖1所示的動作設定總線120對通用邏輯部10的邏輯門114的參數(shù)進行設定。邏輯門114基于該參數(shù),針對輸入來的信號而執(zhí)行邏輯運算,將運算結果作為信號而輸出。
在再次的步驟S15中,通用邏輯部11的計數(shù)器115沒有執(zhí)行規(guī)定的邏輯運算,尚未將信號輸出至外部,因此再次判斷為No,返回至步驟S13。
在圖5的步驟S13中,運算部12基于存儲于存儲部13的動作數(shù)據(jù),經(jīng)由圖1所示的動作設定總線120對通用邏輯部10的電路選擇器112b和電路選擇器112c的參數(shù)的設定進行變更。由此,電路選擇器112b被設定為無效,不將電路切換總線111的信號輸出至邏輯門114,電路選擇器112c被設定為有效,將電路切換總線111的信號輸出至計數(shù)器115。
在圖5的步驟S14中,運算部12基于存儲于存儲部13的設定參數(shù),經(jīng)由圖1所示的動作設定總線120對通用邏輯部10的計數(shù)器115的參數(shù)進行設定。計數(shù)器115基于該參數(shù),針對輸入來的信號而執(zhí)行邏輯運算,將運算結果作為信號而輸出至電路切換總線111。
在圖5的步驟S15中,在存儲于存儲部13的動作數(shù)據(jù)的下一個指令是將輸出選擇器119的動作設定設為有效的指令的情況下,運算部12判斷為是將通用邏輯部11的電路元件的運算結果輸出至外部的指令,進入步驟S16。
在圖5的步驟S16中,輸入輸出控制裝置10的運算部12按照存儲于存儲部13的動作數(shù)據(jù),對輸出選擇器119的參數(shù)進行變更。在上述例子的情況下,運算部12基于存儲于存儲部13的動作數(shù)據(jù),經(jīng)由圖1所示的動作設定總線120對通用邏輯部10的電路選擇器112c和輸出選擇器119b的參數(shù)的設定進行變更。由此,電路選擇器112c被設定為無效,不將電路切換總線111的信號輸出至計數(shù)器115,輸出選擇器119b被設定為有效,將電路切換總線111的信號輸出至輸出端口161b。圖2所示的輸出端口161b將從輸出選擇器119b接收到的信號輸出至外部。
在圖5的步驟S17中,CPU裝置20的運算部21判斷用戶程序的執(zhí)行是否完畢。在用戶程序的執(zhí)行尚未完畢的情況下,返回至步驟S12。在用戶程序的執(zhí)行已完畢的情況下,可編程邏輯控制器1結束動作。
這樣,通用邏輯部11能夠針對從輸入端口151a輸入的信號而以濾波器113、邏輯門114、計數(shù)器115的順序執(zhí)行邏輯運算,從輸出端口161b進行輸出。
此外,對于實施方式1中的通用邏輯部11,在圖2中僅示出了濾波器113、邏輯門114、以及計數(shù)器115作為電路元件,但也可以具有圖1所示的比較器116、運算器117、時鐘118中的任意者或者全部。在該情況下,經(jīng)由與上述電路元件相對應的電路選擇器112和該電路選擇器112所附帶的電路切換總線111而將信號輸入,由此能夠追加上述電路元件的邏輯運算。
另外,還具有與其他電路元件相對應的電路選擇器112、電路切換總線111,通過自由組合地使用各電路元件,由此實施方式1的通用邏輯部11能夠應對多種用戶自創(chuàng)的單元動作模式。
如以上所說明,實施方式1中的可編程邏輯控制器1的輸入輸出控制裝置10通過任意地變更電路選擇器112以及輸出選擇器119的有效和無效,從而能夠使各電路元件以任意的順序執(zhí)行邏輯運算,因此用戶能夠容易地使通用邏輯部11進行輸入輸出控制裝置10執(zhí)行高速輸入輸出控制所需的各種功能。實施方式1的通用邏輯部11能夠?qū)崿F(xiàn)脈沖計數(shù)、頻率測定、高精度計時器、PWM輸出、定時生成等高速輸入輸出控制所要求的各種功能。
另外,僅通過對通用邏輯部11的各選擇器的動作數(shù)據(jù)和各電路元件的參數(shù)進行變更就實現(xiàn)多種控制,因此能夠削減用戶的設定工時,無需改寫電路元件的內(nèi)部電路來改變電路元件的功能。由于使用對各選擇器的動作數(shù)據(jù)和各電路元件的參數(shù)進行變更而對各種功能進行了驗證之后的通用邏輯部11,因此能夠保證制造商的產(chǎn)品品質(zhì)。
并且,由于能夠?qū)崿F(xiàn)梯形圖程序等軟件邏輯無法應對的μs數(shù)量級的高速且控制定時穩(wěn)定的輸入輸出控制,因此能夠利用通用的可編程邏輯控制器,容易地實現(xiàn)以往只有安裝了專用的硬件邏輯的微型計算機板等才能夠?qū)崿F(xiàn)的高速輸入輸出控制。
此外,在實施方式1中,動作數(shù)據(jù)設為針對電路選擇器112以及輸出選擇器119的動作設定,示出對有效和無效進行切換的順序的數(shù)據(jù)。另外,實施方式1中的輸入輸出控制裝置10的運算部12在圖5的步驟S15中,判斷存儲于存儲部13的動作數(shù)據(jù)的下一個指令是否是將輸出選擇器119的動作設定設為有效的指令,在是將輸出選擇器119的動作設定設為有效的指令的情況下,在圖5的步驟S16中,按照存儲于存儲部13的動作數(shù)據(jù),對輸出選擇器119的參數(shù)進行變更,但并不限定于此。
例如,也可以是在存儲于存儲部13的動作數(shù)據(jù)僅記載有對電路選擇器112的動作設定進行變更的順序,運算部12基于存儲于存儲部13的動作數(shù)據(jù),對電路選擇器112的參數(shù)進行變更。在該情況下,運算部12在圖5的步驟S15中,如果基于存儲于存儲部13的動作數(shù)據(jù)判斷為通用邏輯部11的電路元件執(zhí)行了規(guī)定的邏輯運算,則在圖5的步驟S16中,對輸出選擇器119的參數(shù)進行變更,向電子負載5輸出信號。在這種情況下,也能夠?qū)崿F(xiàn)實施方式1的上述效果。
另外,在實施方式1中,電路選擇器112在被設定了表示動作設定為有效的參數(shù)的情況下,將電路切換總線111的信號向電路元件輸出,在被設定了表示動作設定為無效的參數(shù)的情況下,不將電路切換總線111的信號向電路元件輸出。同樣地,輸出選擇器119在被設定了表示動作設定為有效的參數(shù)的情況下,將電路切換總線111的信號向外部輸出接口部16輸出,在被設定了表示動作設定為無效的參數(shù)的情況下,不將電路切換總線111的信號向外部輸出接口部16輸出。但是,實施方式1中的電路選擇器112和輸出選擇器119并不限定于此。
例如,電路選擇器112和輸出選擇器119也可以僅被設定表示動作設定為有效的參數(shù)。在該情況下,電路選擇器112如果被設定了表示動作設定為有效的參數(shù),則將電路切換總線111的信號向電路元件輸出,如果輸出選擇器119被設定了表示動作設定為有效的參數(shù),則將電路切換總線111的信號向外部輸出接口部16輸出。
另一方面,如果未被設定表示動作設定為有效的參數(shù),即如果未進行任何設定,則動作設定為無效,電路選擇器112不將電路切換總線111的信號向電路元件輸出。同樣地,如果未被設定表示動作設定為有效的參數(shù),即如果未進行任何設定,則動作設定為無效,輸出選擇器119不將電路切換總線111的信號向外部輸出接口部16輸出。在這種情況下,也能夠?qū)崿F(xiàn)實施方式1的上述效果。
標號的說明
1可編程邏輯控制器,10輸入輸出控制裝置,11通用邏輯部,12運算部,13存儲部,15外部輸入接口部,16外部輸出接口部,111電路切換總線,112、112a、112b、112c、112d、112e、112f電路選擇器,113濾波器,114邏輯門,115計數(shù)器,116比較器,117運算器,118時鐘,119、119a、119b輸出選擇器,20CPU裝置,3外圍裝置,31參數(shù)設定部,32動作數(shù)據(jù)設定部。