TWI764300B - 可程式控制器系統及模組 - Google Patents

可程式控制器系統及模組

Info

Publication number
TWI764300B
TWI764300B TW109133454A TW109133454A TWI764300B TW I764300 B TWI764300 B TW I764300B TW 109133454 A TW109133454 A TW 109133454A TW 109133454 A TW109133454 A TW 109133454A TW I764300 B TWI764300 B TW I764300B
Authority
TW
Taiwan
Prior art keywords
synchronization
correction
module
cycle
self
Prior art date
Application number
TW109133454A
Other languages
English (en)
Other versions
TW202121084A (zh
Inventor
久保隅創
Original Assignee
日商富士電機股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日商富士電機股份有限公司 filed Critical 日商富士電機股份有限公司
Publication of TW202121084A publication Critical patent/TW202121084A/zh
Application granted granted Critical
Publication of TWI764300B publication Critical patent/TWI764300B/zh

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/12Plc mp multi processor system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15049Timer, counter, clock-calendar, flip-flop as peripheral

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Programmable Controllers (AREA)

Abstract

本發明的課題在於提供可以使構成可程式控制器系統的各模組之自模組週期同步的可程式控制器系統。 解決手段係於具備基板(B1)及被連接於前述基板的複數模組(M1~M6)之可程式控制器系統(SYS);複數模組分別具備:產生個別時脈的個別時脈產生部(CL1~CL6),由藉由個別時脈產生部產生的個別時脈產生自模組週期之計數部(Co1~Co6),以及根據:基於由同步控制部輸出的同步開始訊號之同步基準點,以及自模組週期,算出自模組週期的偏離量,根據算出的偏離量,補正自模組週期之同步補正部(SY1~SY6)。

Description

可程式控制器系統及模組
本發明係關於可程式控制器系統及模組。
近年來,可程式控制器(亦稱為「PLC」)系統,伴隨著高性能化、高機能化其適用領域也越來越廣,使用者也有各種各樣的需求。為了對應於可程式控制器系統以及使用了可程式控制器系統的裝置之高性能化、高機能化,作為使用PLC的控制方法,採用著根據預測控制等高階的控制理論之控制方法。此外,還根據進行可程式控制器系統的控制演算的中央處理單元(CPU, Central Processing Unit)模組之演算性能提高來進行對應。
作為這樣的可程式控制器系統在以複數模組(單元)構成的控制裝置之單元間同步成為控制計時的根本之時刻,而提高可程式控制器系統全體的性能之技術廣為人知(例如,參照專利文獻1)。記載於專利文獻1之各模組,根據藉由時脈生成部生成的脈衝實行掃描。原本,以同等的構成、同等的性能進行動作的機器,掃描動作也變成同樣。
然而,由於打開電源的時間差異或是CPU模組的初始化內容的不同等,有在掃描計時產生偏差的可能性。不論時脈生成部所生成的時脈是哪一種時脈,通常都是藉由水晶振盪器等供給的安定的訊號,在以下的說明都記載為時脈脈衝。
在此,於記載在專利文獻1的可程式控制器系統,被連接於基板的各模組的基準時脈,藉由被配置在基板的同步控制電路使基準時脈被同步。於記載在專利文獻1的可程式控制器系統,各模組開始啟動後,進行所有的模組的基準時刻的同步。 [先前技術文獻] [專利文獻]
[專利文獻1] 國際公開第2012/081115號公報
[發明所欲解決之課題]
然而,各模組的一部分為不同的整數倍的週期且一部分模組的啟動開始時刻發生延遲的場合,或者是使一部分模組稍後起動而要使其同步的場合,於一開始就以所存在不同的整數倍的週期來運用的模組,與稍後啟動的模組之間的關係,會有發生基準時刻的起點不一致的狀況。
本發明係有鑑於這點而完成的發明,目的之一在於提供可以使構成可程式控制器系統的各模組之自模組週期同步的可程式控制器系統。 [供解決課題之手段]
本實施型態之可程式控制器系統,在其一態樣,特徵為具備基板及被連接於前述基板的複數模組;前述基板,具備控制前述複數模組的同步之同步控制部;前述複數模組分別具備:產生個別時脈的個別時脈產生部,由藉由前述個別時脈產生部產生的前述個別時脈產生自模組週期之計數部,以及根據:基於由前述同步控制部輸出的同步開始訊號之同步基準點,以及前述自模組週期,算出前述自模組週期的偏離量,根據前述算出的偏離量,補正前述自模組週期之同步補正部。 [發明之效果]
根據本發明,可提供可以使構成可程式控制器系統的各模組之自模組週期同步的可程式控制器系統。
以下,詳細說明本發明之一實施形態(以下,簡稱為「實施型態」)。又,本發明並不僅限定於以下的實施型態,在其要旨的範圍內,可以進行種種變形而實施。
圖1係顯示本實施型態之可程式控制器系統的構成之圖。可程式控制器(以下稱為「PLC」)系統SYS,被構成為包含第1CPU模組M1~第6CPU模組M6、連接器K1~K6、基板B1。
第1CPU模組M1~第6CPU模組M6,通過連接器K1~K6通過基板B1上的匯流排(未圖示)而連接。在不特地區別第1CPU模組M1~第6CPU模組M6而說明的場合,以下稱為「模組M」。
圖2係顯示PLC系統的機能構成之一例之圖。第1CPU模組M1~第6CPU模組M6分別具備處理器P1~P6、中斷控制部W1~W6、個別時脈產生部CL1~CL6、計數部Co1~Co6、電源控制部Pa1~Pa6、同步補正部SY1~SY6。基板B1,具備同步控制部BSY1及基準時脈產生部BCL1。
第1CPU模組M1及第2CPU模組M2,具備實行使用者的應用程式之應用程式實行機能。第3CPU模組M3及第4CPU模組M4,也被稱為內藏IO匯流排的CPU模組,具備IO匯流排機能及應用程式實行機能。IO匯流排機能,在自身具有的遠程網路之間以一定的週期進行通訊。第5CPU模組M5及第6CPU模組M6,也被稱為IO匯流排主模組,具備IO匯流排機能。各模組M,亦可把其他輸入模組或輸出模組等,種種模組作為同步對象。
個別時脈產生部CL1~CL6,產生在各第1CPU模組M1~第6CPU模組M6實行的自模組週期的個別時脈。計數部Co1~Co6,由藉由個別時脈產生部CL1~CL6產生的個別時脈來產生自模組週期。此外,計數部Co1~Co6,計算由藉由個別時脈產生部CL1~CL6產生的個別時脈值,保持為計數值。於本實施型態,個別時脈產生部CL1~CL6,使用特定的頻率的水晶產生任意周期的脈衝而輸出。各個個別時脈產生部CL1~CL6的水晶的水晶振盪器誤差(PPM誤差)是有散佈(dispersion)的,會隨溫度改變時脈頻率而不是一定值,所以各個模組M的自模組週期,會徐徐偏離。個別時脈產生部CL1~CL6產生的個別時刻的自模組週期之個別時脈,可以是任意的值,但於本實施型態,個別時脈產生部CL1~CL6,使用1MHz的水晶產生100μs週期的脈衝。
處理器P1~P6,以一定的週期分別實行第1CPU模組M1~第6CPU模組M6各個具備的個別的機能。處理器P1~P6,亦可實行:取得PLC系統SYS的輸入訊號,作為輸入資料進行通知的輸入機能,或接受這些輸入資料演算而把演算結果作為輸出資料進行通知的應用程式實行機能,或接受輸出資料,作為數位或類比訊號進行輸出的輸出機能等。處理器P1~P6,亦可因應需要而同時具備連接模組間的匯流排機能或者是外部記憶體或輸入電路或者輸出電路等。
電源控制部Pa1~Pa6,將各第1CPU模組M1~第6CPU模組M6的電源狀態(SY_P1~SY_P6)通知至被配置在基板B1上的同步控制部BSY1。電源狀態(SY_P1~SY_P6),係將自身的模組M的電源狀態對基板B1的同步控制部BSY1通知的資訊,在各第1CPU模組M1~第6CPU模組M6的同步補正部SY1~SY6打開電源時被通知。電源狀態(SY_P1~SY_P6),例如係以1位元構成的資訊,於初始狀態為「0」(關閉),電源控制部Pa1~Pa6在自身的模組M的電源被打開的場合送出通知「1」(打開)。
處理器P1~P6,因應於是否要同步而對同步補正部SY1~SY6使用同步開始要求暫存器以及同步設定暫存器來進行顯示是否為同步對象之同步設定,在模組個別的啟動完成時等時間點進行同步開始要求。
同步補正部SY1~SY6,將各第1CPU模組M1~第6CPU模組M6的同步設定狀態(SY_EN1~SY_EN6)使用同步設定暫存器通知至被配置在基板B1上的同步控制部BSY1。
同步設定狀態暫存器,係對基板B1的同步控制部BSY1通知自身的模組M是否為同步對象之資訊,在自身的模組M打開電源時被通知。同步設定狀態暫存器,例如係以1位元構成的資訊。同步補正部SY1~SY6,在自身的模組M不是同步對象的場合,對同步設定狀態暫存器設定「0」(關閉)而通知,是同步對象的場合則對同步設定狀態暫存器設定「1」(打開)而通知。
同步補正部SY1~SY6,將各第1CPU模組M1~第6CPU模組M6的同步開始要求(SY_RQ1~SY_RQ6)使用同步開始要求暫存器通知至被配置在基板B1上的同步控制部BSY1。
同步開始要求暫存器,係對基板B1上的同步控制部BSY1要求同步的開始之資訊,在自身的模組M的電源狀態(SY_P1~SY_P6)、同步設定狀態(SY_EN1~SY_EN6)以及初始化完成時等任意的時間點被通知。同步開始要求暫存器,例如係以1位元構成的資訊。同步補正部SY1~SY6,在進行同步開始的要求之前對同步開始要求暫存器設定「0」(關閉)而通知,進行同步開始的要求的場合則對同步開始要求暫存器設定「1」(打開)而通知。
基準時脈產生部BCL1,產生成為使PLC系統SYS進行同步的基準之基準時刻。基準時脈產生部BCL1,把產生的基準時刻的資訊對被配置在第1CPU模組M1~第6CPU模組M6的同步補正部SY1~SY6及被配置在基板B1的同步控制部BSY1輸出。基準時脈產生部BCL1產生的基準時刻的週期可以是任意的值,但於本實施型態,基準時脈產生部BCL1,使用1MHz的水晶產生100μs週期的脈衝(CLK100μs)作為基準時刻而輸出。
同步控制部BSY1,基於從各第1CPU模組M1~第6CUP模組M6接受的同步設定狀態(SY_EN1~SY_EN6)、同步開始要求(SY_RQ1~SY_RQ6)、電源狀態(SY_P1~SY_P6)及藉由基準時脈產生部BCL1產生的基準時刻(CLK100μs)之資訊,產生同步開始訊號(SY_EXE),對各第1CPU模組M1~第6CPU模組M6的同步補正部SY1~SY6輸出。例如,同步控制部BSY1,基於藉由基準時脈產生部BCL1產生的基準時刻(CLK100μs)的升起或降下的邊緣,將同步開始訊號(SY_EXE)對各第1CPU模組M1~第6CPU模組M6之同步補正部SY1~SY6輸出。
圖3係顯示在第1CPU模組M1~第6CPU模組M6與基板B1之間被通知的資訊的時序圖之一例之圖。同步控制部BSY1,在第1CPU模組M1~第6CPU模組M6的電源狀態(SY_P1~SY_P6)及同步對象的模組M的同步設定狀態(SY_EN1~SY_EN6)成為打開的狀態下,同步對象的所有模組M的同步開始要求(SY_RQ1~SY_RQ6)成為打開的場合,同步控制部BSY1,將各模組M的同步開始要求(SY_RQ1~SY_RQ6)使用正反器來保持。
同步控制部BSY1,從第1CPU模組M1~第6CPU模組M6的同步補正部SY1~SY6以脈衝的形式分別接受同步開始要求(SY_RQ1~SY_RQ6)。同步控制部BSY1,藉由基準時刻(時脈)的升起的邊緣來判斷在T1~T6的時間點是否接受到同步對象的模組M之所有的同步開始要求(SY_RQ1~SY_RQ6)。同步控制部BSY1,藉由栓鎖接受到的同步開始要求(SY_RQ1~SY_RQ6)作為內部訊號(SY_RQFF1~SY_RQFF6),可以判斷是否由同步對象的所有的模組M接受到同步開始要求(SY_RQ1~SY_RQ6)。同步控制部BSY1,在從同步對象的所有的模組M接受到同步開始要求(SY_RQ1~SY_RQ6)的場合,基於基準時刻(CLK100μs)的升起邊緣或者下降邊緣而將同步開始訊號(SY_EXE)以脈衝的形式往同步對象的各模組M輸出。
圖4係顯示接收同步開始訊號(SY_EXE)的第1CPU模組M1~第6CPU模組M6由同步不一致狀態移向同步狀態的狀態之圖。圖4(1)係顯示第1CPU模組M1~第6CPU模組M6的同步不一致狀態之圖。圖4(2)係顯示第1CPU模組M1~第6CPU模組M6由同步不一致狀態移向同步狀態的狀態之圖。
如圖4(1)所示,同步補正前,第1CPU模組M1~第6CPU模組M6的自身的模組M的週期(以下亦稱為「自模組週期」)的開始起點例如於時刻T7分別為不一致。在此,以使各第1CPU模組M1~第6CPU模組M6的自模組週期的開始起點成為一致的方式進行同步補正。
首先,接受同步開始訊號(SY_EXE)的各模組M的同步補正部SY1~SY6,分別由計數部Co1~Co6的時間狀態取得自模組週期。同步補正部SY1~SY6,基於根據同步開始訊號(SY_EXE)的同步基準點與自模組週期,算出同步基準偏離幅度。同步基準偏離幅度,是表示自模組週期的偏離量的差分。同步基準點,係使各模組M彼此同步的基準之時刻,於本實施型態,同步補正部SY1~SY6基於同步開始訊號(SY_EXE)的升起邊緣設定同步基準點。在此場合,同步開始訊號(SY_EXE)被輸出的時刻,與同步基準點的時刻是一致的。又,同步補正部SY1~SY6,把由同步開始訊號(SY_EXE)被輸出開始經過特定時間後的時刻設定為同步基準點亦可。
同步補正部SY1~SY6,把由自模組週期的開始起點直到同步基準點為止的經過時間算出作為同步基準偏離幅度。例如,如圖4(2)所示,第1CPU模組M1的同步補正部SY1,從第1CPU模組M1的周期的開始起點t1直到基於同步開始訊號(SY_EXE)的升起邊緣而設定的同步基準點Te為止的經過時間(Te-t1=k1)算出作為第1CPU模組M1的同步基準偏離幅度。同步補正部SY1,基於算出的同步基準偏離幅度是否使(1)式或(2)式之中的任一式成立與否,而設定補正方向。
同步基準偏離幅度≧(自模組週期-同步基準偏離幅度):-之補正方向・・・(1) 同步基準偏離幅度<(自模組週期-同步基準偏離幅度):+之補正方向・・・(2) (1)式成立的場合,同步補正部SY1,設定於-(負)的補正方向,亦即把補正方向設定於縮短週期的方向。(2)式成立的場合,同步補正部SY1,設定+(正)的補正方向,亦即把補正方向設定於延長週期的方向。同步補正部SY2~SY6,與同步補正部SY1同樣,設定第2CPU模組M2~第6CPU模組M6的補正方向。圖4(2)中,以兩條線之箭頭來表示-(負)的補正方向,亦即縮短週期的方向的補正方向之週期(例如,於下一週期C1、C3、C5),以三條線之箭頭來表示+(正)的補正方向,亦即延長週期的方向的補正方向之週期(例如,於下一週期C2、C4、C6)。又,同步補正部SY1~SY6,將同步基準點起直到自模組週期的結束時間點為止的經過時間算出作為同步基準偏離幅度亦可。在此場合,同步補正部SY1~SY6將補正方向的正負符號設定為相反。
同步補正部SY1~SY6,將確定的補正方向之資訊設定於同步補正方向暫存器。同步補正方向暫存器,是確定往負方向補正或是往正方向補正之資訊。同步補正方向暫存器,例如係以1位元構成的資訊。同步補正部SY1~SY6在確定的補正方向為+(正)的場合,在同步補正方向暫存器設定「0」,在確定的補正方向為-(負)的場合,在同步補正方向暫存器設定「1」。
例如,針對自模組週期為「4000μs」,同步基準偏離幅度為「3700μs」之圖4的第5CPU模組M5的場合進行說明。自模組週期開始起算3700μs時,接受同步開始訊號(SY_EXE)的脈衝的場合,亦即同步基準點Te設定為3700μs的場合,判斷由自模組週期「4000μs」減去同步基準偏離幅度「3700μs」的值,是否比同步基準偏離幅度「3700μs」還要大。
由自模組週期「4000μs」減去同步基準偏離幅度「3700μs」的值「300μs」,比同步基準偏離幅度「3700μs」還要小,亦即(1)式成立。在此場合,第5CPU模組M5的同步補正部SY5,把補正方向設定為-(負)的補正方向,亦即縮短接受同步開始訊號(SY_EXE)的脈衝之下一個周期(以下,亦稱為「下一周期」)C5的週期之方向。
此外,針對自模組週期為「4000μs」,同步基準偏離幅度為「1800μs」的圖4的第6CPU模組M6的場合進行說明。自模組週期開始起算1800μs時,接受同步開始訊號(SY_EXE)的脈衝的場合,亦即同步基準點Te設定為1800μs的場合,判斷由自模組週期「4000μs」減去同步基準偏離幅度「1800μs」的值,是否比同步基準偏離幅度「1800μs」還要大。
由自模組週期「4000μs」減去同步基準偏離幅度「1800μs」的值「2200μs」,比同步基準偏離幅度「1800μs」還要大,亦即(2)式成立。在此場合,第6CPU模組M6的同步補正部SY6,把補正方向設定為+(正)的補正方向,亦即延長下一周期C6的週期之方向。
又,如第6CPU模組M6的同步一致時之例那樣,第6CPU模組M6的週期之開始起點t6‘,與基於同步開始訊號(SY_EXE)的升起的邊緣而設定的同步基準點Te一致的場合,亦即同步基準偏離幅度為0的場合,同步補正部SY1~SY6不設定補正方向也不進行同步補正。
如此,藉由基於由自模組週期減去同步基準偏離幅度之值,是否比同步基準偏離幅度還要大而改變補正方向,最大程度必須進行相當於自模組週期的補正,但可以用約其一半的時間進行補正。
同步補正部SY1~SY6,把同步基準偏離幅度之值,與從自模組週期減去同步基準偏離幅度之值之中的比較少(小)的值作為同步補正目標時間設定於同步補正目標時間暫存器。同步補正目標時間暫存器,係以任意位元數構成的資訊。同步補正目標時間,是進行同步補正的全體時間之資訊。
例如,針對自模組週期為「4000μs」,同步基準偏離幅度為「3700μs」之圖4的第5CPU模組M5的場合進行說明。第5CPU模組M5的同步基準偏離幅度「3700μs」,比由自模組週期減去同步基準偏離幅度之值「4000μs-3700μs=300μs」還要大。亦即,第5CPU模組M5的同步補正部SY5,把由自模組週期減去同步基準偏離幅度之值「300μs」作為同步補正目標時間設定於同步補正目標時間暫存器。
此外,針對自模組週期為「4000μs」,同步基準偏離幅度為「1800μs」的圖4的第6CPU模組M6的場合進行說明。第6CPU模組M6的同步基準偏離幅度「1800 μs」,比由自模組週期減去同步基準偏離幅度之值「4000μs-1800μs=2200μs」還要小。亦即,第6CPU模組M6的同步補正部SY6,把同步基準偏離幅度「1800μs」作為同步補正目標時間設定於同步補正目標時間暫存器。
同步補正部SY1~SY6,將進行同步補正時的任意的單位時間作為同步補正幅度設定於同步補正幅度暫存器。同步補正部SY1~SY6,以被設定於同步補正幅度暫存器的同步補正幅度之單位,進行相當於同步補正目標時間的補正。同步補正幅度暫存器,係以任意位元數構成的資訊。同步補正幅度,顯示在一個週期進行補正的單位時間,係顯示把同步補正目標時間以哪個程度的幅度進行分割而補正之資料。
被設定於同步補正幅度暫存器的同步補正幅度,亦可為預先以處理器P1~P6或中斷控制部W1~W6指定之值。此外,於同步補正幅度暫存器,亦可指定實際進行補正的同步補正目標時間。同步補正目標時間比同步補正幅度更長的場合,亦可在下一週期以後,每一周期都由周期時間增減相當於同步補正幅度,而補正自模組週期。藉此,藉由第1CPU模組M1~第6CPU模組M6具備的IO匯流排或者實現的機能,可以一次大幅進行修正而避免招致參與IO匯流排的站台(模組)之脫落等不良狀況。同步補正目標時間與同步補正幅度相同或者更短的場合,亦可於下一週期補正相當於同步補正目標時間之時間。
同步補正部SY1~SY6,將只是同步補正實行的資訊設定於同步補正實行暫存器。同步補正實行暫存器,例如係以1位元構成的資訊。同步補正部SY1~SY6,在進行同步補正之前對同步補正實行暫存器設定「0」(關閉)而通知,進行同步補正的場合則對同步補正實行暫存器設定「1」(打開)而通知。
同步補正部SY1~SY6,設定同步補正目標時間暫存器的資訊、同步補正方向暫存器的資訊、同步補正幅度暫存器的資訊,藉由將同步補正實行暫存器設定為「1」(打開)而分別開始同步補正。
例如,同步補正部SY1~SY6,在同步補正目標時間為同步補正幅度以下的場合,將同步補正目標時間設定作為實際補正時間。對此,同步補正目標時間比同步補正幅度更大的場合,同步補正部SY1,將同步補正幅度算出作為實際補正時間而進行設定。
例如,針對同步補正目標時間為「300μs」,同步補正幅度為「500μs」之圖4的第5CPU模組M5的場合進行說明。同步補正目標時間「300μs」為在同步補正幅度「500μs」以下的場合,同步補正部SY5,將同步補正目標時間「300μs」設定作為實際補正時間。接著,同步補正部SY5,在設定的補正方向為-(負)方向的場合,把減去設定為自模組週期「4000μs」的實際補正時間「300μs」之值「4000μs-300μs=3700μs」設定作為下一週期C5的長度而補正自模組週期。
針對同步補正目標時間為「1800μs」,同步補正幅度為「500μs」之圖4的第6CPU模組M6的場合進行說明。同步補正目標時間「1800μs」為在同步補正幅度「500μs」以下的場合,同步補正部SY5,將同步補正目標時間「1800μs」設定作為實際補正時間。接著,同步補正部SY5,在設定的補正方向+(正)方向的場合,把加上設定為自模組週期「4000μs」的實際補正時間「1800μs」之值「4000μs+1800μs=5800μs」設定作為下一週期C6的長度而補正自模組週期。
藉此,同樣的自模組週期「4000μs」的第5CPU模組M5的週期C5的下一週期C5b的開始起點Tb,與第6CPU模組M6的週期C6的下一週期C6b的開始起點Tb為一致。藉此,如圖4(1)所示,可以使同步不一致的狀態之各模組M的自模組週期的開始起點一致。
此外,同樣的,決定自模組週期「1000μs」之第1CPU模組M1、第2CPU模組M2的下一週期C1、C2、自模組週期「2000μs」之第3CPU模組M3、第3CPU模組M3的下一週期C3,C4的週期長度而進行同步補正。
藉此,如圖4(2)所示,在不同的自模組週期之第1CPU模組M2、第2CPU模組M2的自模組週期「1ms」,第3CPU模組M3、第4CPU模組M4的自模組週期「2ms」,第5CPU模組M5、第6CPU模組M6的自模組週期「4ms」的最小公倍數「4ms」之後的開始起點Tb,可以使各模組的自模組週期的開始起點一致。
亦即,如圖4(1)所示,在將同步開始訊號(SY_EXE)作為起點的一連串的同步補正進行之前的非同步狀態,係以藉由第1CPU模組M1~第6CPU模組M6之各個的時脈產生部CL1~CL6所產生的週期為根本而進行動作,所以對於成為起點的開始時刻並未成為同步的狀態。
對此,於本實施型態,在進行以同步開始訊號(SY_EXE)為起點的一連串的同步補正的場合,接收到同步開始訊號(SY_EXE)時,第1CPU模組M1~第6CPU模組M6之同步補正部SY1~SY6,決定同步補正方向與同步補正目標時間。藉此,同步補正部SY1~SY6,藉著在下一週期進行同步補正,在各模組M的最小公倍數後的第1或者第2個週期可以使開始起點同步。藉此,不用另行具備管理PLC系統SYS的同步的模組等之構成,就可以使構成PLC系統SYS的各模組M的自模組週期同步。
此外,同步補正目標時間為「300μs」,同步補正幅度為「1μs」的場合,同步補正部SY1~SY6,跨越把同步補正目標時間「300μs」除以同步補正幅度「1μs」的幅度之值的「300次」之週期進行分割補正。
在此場合,補正方向為-(負)方向的場合,同步補正部SY1~SY6,以從同步補正目標時間「300μs」減去同步補正幅度「1μs」之值「299μs」跨「300次」的週期進行補正。
此外,補正方向為+(正)方向的場合,同步補正部SY1~SY6,以從同步補正目標時間「300μs」加上同步補正幅度「1μs」之值「301μs」跨「300次」的週期進行補正。
更具體地說,針對同步補正目標時間為「300μs」,自模組週期為「4000μs」,同步補正幅度為「100μs」的場合進行說明。同步補正目標時間「300μs」比同步補正幅度「100μs」還大的場合,同步補正部SY5,將同步補正幅度「100μs」設定作為實際補正時間。接著,同步補正部SY1~SY6,在設定的補正方向為+(正)方向的場合,把加上設定為自模組週期「4000μs」的實際補正時間「100μs」之值「4000μs+100μs=4100μs」設定作為下一週期的長度而補正自模組週期。
同步補正部SY1~SY6,把從同步補正目標時間「300μs」減去實際補正時間「100μs」之值「300μs-100μs=200μs」設定為同步補正目標時間。其後,同步補正部SY1~SY6,在同步補正目標時間成為「0」以下為止的期間,每一週期反覆進行實際補正時間的加算以及同步補正目標時間的減算,跨3個週期進行自模組週期的補正。
如此,藉由跨複數個週期分割補正,可以抑制自模組週期急速縮短,可以防止在縮短的週期內應用程式實行機能,或者IO匯流排機能在該時間內無法實行,可以防止PLC系統SYS的誤動作。
此外,同步補正幅度亦可設定比同步補正目標時間更大的值。在此場合,同步補正部SY1~SY6,進行相當於同步補正目標時間的補正。例如,同步補正目標時間為「300μs」,同步補正幅度為「500μs」的場合,同步補正幅度「500μs」比同步補正目標時間「300μs」還要大。在此場合,同步補正部SY1~SY6,以同步補正目標時間「300μs」進行補正。
此外,PLC系統SYS的初期升起時(例如初始化的時間點),作為同步補正幅度設定最大值而在1個週期補正自模組週期,PLC系統SYS起動後,使各模組M個別起動的場合(例如,複數個模組M之中至少一個模組運作的時間點),設定任意的同步補正幅度而跨n(n>2)個週期將自模組週期分割而補正亦可。藉此,在PLC系統SYS的初始起動時,可以早期進行同步補正,同時在PLC系統SYS的起動之後,使各個模組個別起動的場合,可以防止由於自模組週期急速縮短而使得在各模組M無法實行各種機能。
又,同步補正部SY1~SY6,在進行同步補正之後,使用計數部Co1~Co6等來判定各模組M的個別時脈產生部CL1~CL6與基板B1上的基準時脈產生部BCL1的水晶振盪器誤差(PPM誤差)。接著,判定結果為水晶振盪器誤差(PPM誤差)超過一定範圍的場合,基板B1上的基準時脈產生部BCL1之升起時,或者於處理器P1~P6或中斷控制部W1~W6的IO匯流排機能在指定的任意時間點,開始同樣的同步補正處理步驟而藉著把各模組M的個別的自模組週期暫時的減算或加算進行補正可以繼續維持同步。
圖5係顯示在構成PLC系統SYS的第1CPU模組M1、第2CPU模組M2、基板B1之間實行的同步補正處理的序列圖之一例之圖。在圖5的實施型態,第1CPU模組M1~第6CPU模組M6之中,僅針對第1CPU模組M1及第2CPU模組M2進行說明,針對第3CPU模組M3~第6CUP模組6也是同樣的。
首先,第1CPU模組M1的電源被打開時,第1CPU模組M1的電源控制部Pa1,把電源狀態(SY_P1)往基板B1通知(S101)。此外,第1CPU模組M1的同步補正部SY1,把同步設定狀態(SY_EN1)往基板B1通知(S102)。
同樣地,第2CPU模組M2的電源被打開時,第2CPU模組M2的電源控制部Pa2,把電源狀態(SY_P2)往基板B1通知(S103)。此外,第2CPU模組M2的同步補正部SY2,把同步設定狀態(SY_EN2)往基板B1通知(S104)。
第1CPU模組M1的同步補正部SY1,在任意的時間點將同步開始要求(SY_RQ1)使用同步開始要求暫存器通知至被配置在基板B1上的同步控制部BSY1(S105)。同樣的,第2CPU模組M2的同步補正部SY2,在任意的時間點將同步開始要求(SY_RQ2)使用同步開始要求暫存器通知至被配置在基板B1上的同步控制部BSY1(S106)。
基板B1的同步控制部BSY1,判定是否由同步對象之所有的模組M接受同步開始要求(SY_RQ1~SY_RQ6)(S107)。未由同步對象之所有的模組M接受同步開始要求(SY_RQ1~SY_RQ6)的場合(S107:NO),直到由同步對象之所有的模組M接受同步開始要求(SY_RQ1~SY_RQ6)為止等待處理。
由同步對象之所有的模組M接受同步開始要求(SY_RQ1~SY_RQ6)的場合(S107:YES),基板B1的同步控制部BSY1,基於藉由基準時脈產生部BCL1產生的基準時刻(CLK100μs)的升起的邊緣把同步開始信號(SY_EXE)及基準時刻(CLK100μs)分別對第1CPU模組M1的同步補正部SY1、第2CPU模組M2的同步補正部SY2輸出(S108~S111)。
接受同步開始要求(SY_RQ1)的第1CPU模組M1的同步補正部SY1,進行後述的同步補正處理(S112)。同樣地,接受同步開始要求(SY_RQ2)的第2CPU模組M2的同步補正部SY2,進行後述的同步補正處理(S113)。以下,藉由第1CPU模組M1進行的S112之同步補正處理,與藉由第2CPU模組M2進行的S113之同步補正處理為約略相同的處理,所以以下基於相同的符號以流程圖進行說明。
圖6係顯示第1CPU模組M1實行的同步補正處理之一例之流程圖。又,第2CPU模組M2~第6CPU模組M6實行的同步補正處理也與第1CPU模組M1實行的同步補正處理相同,所以省略說明。
首先,同步補正部SY1,在自模組為同步對象的場合,進行模組機能的初始化設定(S201)。同步補正部SY1,判定初始化設定是否完成(S202)。判定結果為初始化設定尚未完成的場合(S202:NO),等待處理。判定結果為初始化設定已完成的場合(S202:YES),同步補正部SY1,把同步開始要求(SY_RQ1)往基板B1通知(S203)。
同步補正部SY1,判定是否已由基板B1的同步控制部BSY1接受同步開始訊號(SY_EXE)(S204)。在未由同步控制部BSY1接受同步開始訊號(SY_EXE)的場合(S204:NO),直到接受同步開始訊號(SY_EXE)為止之處理為等待。
在已由同步控制部BSY1接受同步開始訊號(SY_EXE)的場合(S204:YES),同步補正部SY1,基於算出的同步基準偏離幅度是否使(1)式或(2)式之中的任一式成立與否,而設定補正方向(S205)。
同步補正部SY1,把同步基準偏離幅度之值,與從自模組週期減去同步基準偏離幅度之值之中的比較少(小)的值設定為同步補正目標時間(S206)。同步補正部SY1,將進行同步補正時的任意的單位時間作為同步補正幅度設定於同步補正幅度暫存器(S207)。
同步補正部SY1,判定是否已由處理器P1接受同步補正實行要求(S208)。在未由處理器P1接受同步補正實行要求的場合(S208:NO),直到從處理器P1接受到同步補正實行要求為止的期間,處理為等待。由處理器P1接受到同步補正實行要求的場合(S208:YES),進行後述的同步補正實行處理(S209)。
圖7係顯示同步補正執行處理之一例之流程圖。首先,同步補正部SY1,判定在圖6的S206設定的同步補正目標時間是否比0還要大(S301)。在同步補正目標時間為0以下的場合(S301:NO),同步補正實行處理為結束。
同步補正目標時間比0還大的場合(S301: YES),同步補正部SY1,判定同步補正目標時間手為圖6的S207設定的同步補正幅度以下(S302)。
同步補正目標時間為同步補正幅度以下的場合(S302:YES),同步補正部SY1,將同步補正目標時間設定為實際補正時間(S303)。此處理結束時,處理前進到S305。同步補正目標時間比同步補正幅度更大的場合(S302:NO),同步補正部SY1,將同步補正幅度設定為實際補正時間(S304)。此處理結束時,處理前進到S305。
於S305,同步補正部SY1,判定在圖6的S205設定的補正方向(S305)。設定的補正方向為+(正)方向的場合,同步補正部SY1,把對自模組週期加上實際補正時間的時間設定為下一週期(S306)。此處理結束時,處理前進到S308。設定的補正方向-(負)方向的場合,同步補正部SY1,把從自模組週期減去實際補正時間的時間設定為下一週期(S306)。此處理結束時,處理前進到S308。
同步補正部SY1,把從同步補正目標時間減去實際補正時間之值設定為同步補正目標時間(S308)。同步補正部SY1,判定同步補正目標時間是否比0還要大(S309)。
同步補正目標時間比0還大的場合(S309: YES),處理回到S302,直到同步補正目標時間成為0為止的期間,反覆實行S302、S304~S309之處理。同步補正目標時間為0以下的場合(S309:NO),同步補正部SY1,關閉同步開始要求(SY_RQ1)(S310),使同步補正實行處理結束。
又,本發明不限定於前述實施型態,可以進行種種變更而實施。於前述實施型態,針對附圖所示的構成要素的大小或形狀、機能等,並不以此為限定,可以在發揮本發明的效果的範圍內適當地變更。其他,只要不逸脫本發明的目的之範圍可以適當變更而實施。 [產業上利用可能性]
如以上所說明的,本發明,可以使構築可程式控制器系統的各模組之自模組週期同步,適宜使用在使用可程式控制器系統的機器。
SYS:可程式控制器系統 M1~M6:第1CPU模組~第6CPU模組 K1~K6:連接器 B1:基板 P1~P6:處理器 W1~W6:中斷控制部 CL1~CL6:個別時脈產生部 Co1~Co6:計數部 Pa1~Pa6:電源控制部 SY1~SY6:同步補正部 BSY1:同步控制部 BCL1:基準時脈產生部
[圖1]係顯示相關於本實施型態的可程式控制器系統的構成之圖。 [圖2]係顯示PLC系統的機能構成之一例之圖。 [圖3]係顯示在第1CPU模組~第6CPU模組與基板之間被通知的資訊的時序圖之一例之圖。 [圖4]係顯示接收同步開始訊號的第1CPU模組~第6CPU模組由同步不一致狀態移向同步狀態的狀態之圖。 [圖5]係顯示在構成PLC系統的第1CPU模組、第2CPU模組、基板之間實行的同步補正處理的序列圖之一例之圖。 [圖6]係顯示第1CPU模組實行的同步補正處理之一例之流程圖。 [圖7]係顯示同步補正執行處理之一例之流程圖。
B1:基板
BCL1:基準時脈產生部
BSY1:同步控制部
CL1~CL6:個別時脈產生部
Co1~Co6:計數部
M1~M6:第1CPU模組~第6CPU模組
P1~P6:處理器
Pa1~Pa6:電源控制部
SY_EN1~SY_EN6:同步設定狀態
SY_EXE:同步開始訊號
SY_P1~SY_P6:電源狀態
SY_RQ1~SY_RQ6:同步開始要求
SY1~SY6:同步補正部
SYS:可程式控制器系統
W1~W6:中斷控制部

Claims (9)

  1. 一種可程式控制器系統,具備基板及被連接於前述基板的複數模組;前述基板,具備控制前述複數模組的同步之同步控制部;前述複數模組分別具備:產生個別時脈的個別時脈產生部,由藉由前述個別時脈產生部產生的前述個別時脈產生自模組週期之計數部,以及根據:基於由前述同步控制部輸出的同步開始訊號之同步基準點,以及前述自模組週期,算出前述自模組週期的偏離量,根據前述算出的偏離量,補正前述自模組週期之同步補正部;於進行同步補正的全體時間也就是同步補正目標時間,與進行同步補正的任意的單位時間也就是同步補正幅度為相同或者更短時,在下一周期進行減去或加上與前述同步補正目標時間相當之時間的補正。
  2. 如請求項1之可程式控制器系統,其中前述同步補正部,根據前述同步開始訊號的上升邊緣或下降邊緣設定前述同步基準點。
  3. 如請求項1或2之可程式控制器系統,其中前述同步補正部,把從前述同步開始訊號被輸出起經過特定時間後的時刻設定為前述同步基準點。
  4. 如請求項1或2之可程式控制器系統,其中前述同步補正部,進行將前述自模組週期減去或者加上1週期之補正。
  5. 如請求項1或2之可程式控制器系統,其中前述同步補正部,進行把前述自模組週期分割成n(n>2)個週期來減算或者加算之補正。
  6. 如請求項1或2之可程式控制器系統,其中前述同步補正部,於初始化的時機,進行把前述自模組週期減算或加算1週期之補正,於前述模組中之至少1個模組在運作中的時機,進行把前述自模組週期分割成n(n>2)個週期來減算或者加算之補正。
  7. 如請求項1或2之可程式控制器系統,其中前述基板,進而具備產生基準時刻之基準時脈產生部,前述同步控制部,根據前述基準時刻把前述同步開始訊號輸出至前述各模組。
  8. 如請求項7之可程式控制器系統,其中於前述各模組之個別時脈產生部與基板上之前述基準時脈產生部之PPM誤差超過一定範圍時,藉著暫時減去或 加上模組個別的週期進行補正以持續地維持同步。
  9. 一種模組,其係複數個連接在具備控制複數模組的同步之同步控制部的基板上之可程式控制器系統之模組;前述複數個模組分別具備:產生個別時脈的個別時脈產生部,由藉由前述個別時脈產生部產生的前述個別時脈產生自模組週期之計數部,以及根據:基於由前述同步控制部輸出的同步開始訊號之同步基準點,以及前述自模組週期,算出前述自模組週期的偏離量,根據前述算出的偏離量,補正前述自模組週期之同步補正部;於進行同步補正的全體時間也就是同步補正目標時間,與進行同步補正的任意的單位時間也就是同步補正幅度為相同或者更短時,在下一周期進行減去或加上與前述同步補正目標時間相當之時間的補正。
TW109133454A 2019-11-25 2020-09-26 可程式控制器系統及模組 TWI764300B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-212503 2019-11-25
JP2019212503A JP7439474B2 (ja) 2019-11-25 2019-11-25 プログラマブルコントローラシステムおよびモジュール

Publications (2)

Publication Number Publication Date
TW202121084A TW202121084A (zh) 2021-06-01
TWI764300B true TWI764300B (zh) 2022-05-11

Family

ID=75923457

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109133454A TWI764300B (zh) 2019-11-25 2020-09-26 可程式控制器系統及模組

Country Status (4)

Country Link
JP (1) JP7439474B2 (zh)
KR (1) KR102494296B1 (zh)
CN (1) CN112835321B (zh)
TW (1) TWI764300B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012081115A1 (ja) * 2010-12-16 2012-06-21 三菱電機株式会社 シーケンサシステムおよびその制御方法
WO2014037684A1 (en) * 2012-09-04 2014-03-13 Khalifa University of Science, Technology, and Research Methods and devices for clock synchronization
WO2015102605A1 (en) * 2013-12-31 2015-07-09 Schneider Electric It Corporation Automatic sub-millisecond clock synchronization
WO2016092243A1 (en) * 2014-12-11 2016-06-16 Khalifa University of Science, Technology, and Research Method and devices for time transfer using end to end transparent clocks
TW201707404A (zh) * 2015-07-08 2017-02-16 三菱電機股份有限公司 網路系統、時間主局及時間從屬局
TW201724777A (zh) * 2010-12-10 2017-07-01 Sun Patent Trust 訊號生成方法及訊號生成裝置
TW201826716A (zh) * 2016-10-27 2018-07-16 美商應微股份有限公司 減緩調適等化與時序恢復之間的互動
TW201907260A (zh) * 2017-06-20 2019-02-16 美商司固科技公司 混合式時序恢復
WO2019140638A1 (zh) * 2018-01-19 2019-07-25 深圳市大疆创新科技有限公司 定位***和定位***的时间同步控制方法、装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7072432B2 (en) 2002-07-05 2006-07-04 Meshnetworks, Inc. System and method for correcting the clock drift and maintaining the synchronization of low quality clocks in wireless networks
JP5141972B2 (ja) * 2007-12-07 2013-02-13 オムロン株式会社 産業用コントローラ
JP2011123688A (ja) 2009-12-11 2011-06-23 Fuji Electric Systems Co Ltd 同期プログラマブルコントローラ、同期プログラマブルコントローラシステム
CN104854523B (zh) * 2013-01-08 2017-07-04 富士电机株式会社 控制***、主可编程控制器、从可编程控制器以及控制方法
CN103389914B (zh) * 2013-07-03 2015-10-21 浙江大学 基于时钟同步技术的星载三模冗余***
WO2015128981A1 (ja) 2014-02-27 2015-09-03 富士電機株式会社 プログラマブルコントローラシステム、そのコントローラ
US10305616B2 (en) 2014-12-16 2019-05-28 Robert Bosch Gmbh Method of synchronising clocks of network devices
JP2017069809A (ja) * 2015-09-30 2017-04-06 住友電気工業株式会社 通信装置
CN106708168B (zh) * 2015-11-13 2019-12-06 华为技术有限公司 多处理器***及时钟同步方法
CN108592715A (zh) * 2018-05-02 2018-09-28 南京雷芯聚力电子科技有限公司 一种可编程电子***控制芯片及其控制流程

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201724777A (zh) * 2010-12-10 2017-07-01 Sun Patent Trust 訊號生成方法及訊號生成裝置
WO2012081115A1 (ja) * 2010-12-16 2012-06-21 三菱電機株式会社 シーケンサシステムおよびその制御方法
WO2014037684A1 (en) * 2012-09-04 2014-03-13 Khalifa University of Science, Technology, and Research Methods and devices for clock synchronization
WO2015102605A1 (en) * 2013-12-31 2015-07-09 Schneider Electric It Corporation Automatic sub-millisecond clock synchronization
WO2016092243A1 (en) * 2014-12-11 2016-06-16 Khalifa University of Science, Technology, and Research Method and devices for time transfer using end to end transparent clocks
TW201707404A (zh) * 2015-07-08 2017-02-16 三菱電機股份有限公司 網路系統、時間主局及時間從屬局
TW201826716A (zh) * 2016-10-27 2018-07-16 美商應微股份有限公司 減緩調適等化與時序恢復之間的互動
TW201907260A (zh) * 2017-06-20 2019-02-16 美商司固科技公司 混合式時序恢復
WO2019140638A1 (zh) * 2018-01-19 2019-07-25 深圳市大疆创新科技有限公司 定位***和定位***的时间同步控制方法、装置

Also Published As

Publication number Publication date
TW202121084A (zh) 2021-06-01
JP7439474B2 (ja) 2024-02-28
CN112835321B (zh) 2024-05-14
JP2021086211A (ja) 2021-06-03
CN112835321A (zh) 2021-05-25
KR20210064039A (ko) 2021-06-02
KR102494296B1 (ko) 2023-01-31

Similar Documents

Publication Publication Date Title
US10110367B2 (en) High precision timer in CPU cluster
US8280559B2 (en) Apparatus and method for providing cooling to multiple components
US8375239B2 (en) Clock control signal generation circuit, clock selector, and data processing device
CN107817871B (zh) 实时时钟的频率偏移校正精确度
US5006979A (en) Phase synchronization system
TW201603493A (zh) 時脈產生器、通訊裝置與循序時脈閘控電路
EP3502870A1 (en) Stabilizing the startup behavior of ring oscillators
Zong et al. Proportional–integral synchronization for nonidentical wireless packet-coupled oscillators with delays
Coviello et al. A novel low-power time synchronization algorithm based on a fractional approach for wireless body area networks
TWI764300B (zh) 可程式控制器系統及模組
JP2013206472A (ja) リアルタイムシステムでタイムスタンプを形成する方法、データ処理装置、コンピュータプログラム製品、および、ディジタル記憶媒体
JP2000174615A (ja) 集積回路の内部クロック周波数を自動補正する方法と装置
JP2004056464A (ja) 周波数補正回路
JP2005157883A (ja) リセット回路
JP2012047705A (ja) 時刻補正装置、及び制御方法
JP2011123688A (ja) 同期プログラマブルコントローラ、同期プログラマブルコントローラシステム
US9442511B2 (en) Method and a device for maintaining a synchronized local timer using a periodic signal
JP5662119B2 (ja) ノードシステムおよび監視ノード
JP2006048284A (ja) プログラマブルコントローラ装置およびオプションモジュールとの同期方法
US9941865B2 (en) Method and circuitry for generating trigger signal and associated non-transitory computer program product
US6353351B1 (en) Clock generator circuit
JP4004668B2 (ja) データ処理回路
US6760798B1 (en) Interface mechanism and method for interfacing a real-time clock with a data processing circuit
KR100462736B1 (ko) 다수의 타임 인터럽트 신호를 발생시킬 수 있는 타이머 장치
JP5724772B2 (ja) 試験条件設定方法、電流変動試験方法、及び情報処理装置