制御 システムのモデル化に適するように拡張 した 論理カラーペトリネット
和崎克己 不破泰 江口正義 中村八束 (平成
7
年1 0
月31
日 受理)Lo g Logical Coloured Petri Net expanded to be suitable f
o r m a k i n g t h e C o n t r o l S y s t e m M o d e l
Katsumi WASAKI Yasushi FUWA Masayoshi EGUCHI and Yatsuka NAKAMURA
I nt hi spa pe r , wepr o pos eane xt e ns i o no fPe t r ine t s(LC‑ ne t)s ui t a b l ef o rc o
nt r o ls ys t e ms de s i gnanddi s c us si t sme t ho dso fe v a lu a t i o n・Thi sLC‑ne ti sama r k e dne twi t ha ddi t i o no f t hef o l l o wl ngf e a t ur e s :dat aa s s l g nme n tOfma r ks ,r e pr e s e n t a t i o no ff ir i ngc o ndi t i o nsa sl og ic e qua t i o ns , C o upl i ngo fout putpr o c e dur e swi t ht r a ns i t i o nf ir ing,e t c .Al s o , s i nc et hec o nc e ptof t r a ns i t i o nf ir inge v a ll l a t i ono r de r si 5Om it t e df r om t hea na lys i so fc on v e n t i o na lPe t r ine t s ,we i n t r oduc et hi sc o nc e ptf or ma ll yi no urpr opo s e dne t .Fi na l
ly ,l nO r de rt os t udyt hebe ha vi o r o fas ys t e mmode l l e dwi t h・ t hi sne t ,Wepr o v i deame ansf o rs e ar c hi ngt her e a c ha bi l i t yt r e eof ma r ki ngs ・Thi sLC‑ne ti sae xt e nde dPe t r ine t swhi c hs o l v eapr obl e m o fde s c r ipt i o nf r om Pl a c e / T ra ns i t i o nPe t r ine t s(PNS)andCo l o r e dPe t r ine t s(CPNs)be f o r e .
1
まえが き並列システムの設計 においでは,ペ トリネットをモデル化手法として採用 した ものが多 く発 表 されている.これは,ペ トリネ ットが並列 システムが持つ特性の記述に通 していること,一度 ペ トリネットでモデル化すると解析が容易に行えることによる1)2).なかで も,プ レース ・トラ ンジションペ トリネット(以下,PNsと記す)は,特性が時間に依存 しないシステムの設計 に際 して有効であることが知 られている.また,対象 とするシステムの複雑皮が増 して きた場合 に は,pNsよりハ イレベルなペ トリネ ットである,カラーペ トリネット3)(以下,CPNsと記す) が よ く用い られる.
'平成5年5月 電子情報通倍学会 ソフトウェアサ イエンス研究会発表予稿 に加筆
… 電子制御工学科 助手
… 僧州大学工学部 助教授
… ●東京商船大学商船学部 助教授
… = 僧州大学工学部 教授
従来か らの
PN
Sお よびCPNs
を,システムの設計 と解析 に適用 した例 としては,Je ns e n
に よるハードウェア設計への応用3),Mur a t a
らによるAda
プログラムのデッドロック検証への適 用4),Na g a o
らによるFA
制御への応用5),などが挙げ られる.pNs
やCPNs
を実際に制御システムの記述に適用 した時,次の問題点がある.ネットの動作 (トランジションの発火条件ならびに発火時の トークンの移動)が一意に固定されている.処理 の分岐条件に応 じて多 くの トランジションやプレースを用いる必要がある.よって,ネットの規 模が増大する.本稿は,論理 カラーペ トリネット6)
( Lo g iC a lCo l o ur e dPe t r ine t
:以下LC‑ ne t
と記す)を 提案する.LC‑ne t
は,PNs
に次の改良を行ったものである.トークンはデータを持つ.発火条 件は,入力プレース内の トークンの有無や, トークンのデータ値 を用いた任意の論理式で与え る.発火時の トークンの出力は入力プレースの トークンのデータ億を用いた関数によって設定 する.以上の改良により,条件分岐の トランジションやプレースの追加が不要で,ネット規模を 縮小できる7).トランジション発火評価順位の概念 を
LC‑ ne t
に導入する.ペ T1)ネットをソフトウェアや ハードウェア上へ実装 した際には,トランジションの評価順序はそれぞれ, トランジションへ 割 りあてられた制御手続 きの呼びだし順序,または動作用のクロックの配分方法から一意に定 まる.しか し,従来の解析は,不確実な順番で起 こる入力 (刺激)に対する応答の解析時, トラ ンジションの発火評価の順位付けを行わない.著者らは,既 に発火評価順位 という概念を導入 し,順位を考慮 したデ ッドロックおよび トラップ性を有する トランジション集合の検討を行い, 重要性を指摘 している8)9).LC‑ ne t
により,実際の画像処理装置を制御するソフトウェアのモデル化を行 う.その上で,発 火評価の順位付けを考慮 した可連木によるネット解析を行 う.更に,システム制御用コンピュータへ作成 したネ ットモデルを実装 し,動作を確認する.
本稿では
,2.
でLC‑ ne
tの定義と発火評価順位の概念について説明する.3.
では,LC‑ ne t
を 実際の制御ソフ トウェアの設計に適用する.更に4.
で,可連木によるネット解析 と,制御用コンピュータへの実装による評価 を行 う.
2
論理 カラ ーペ トリネッ ト( LC‑net) 2‑1 LC‑ne t
の定義LC‑ ne t=NE‑( SE, TE; FE, ME)
は次の各条件( i ) 〜( V)
を満たす( i ) SE‑(
sl ,
S2
,・・・
,Sn)及びTE ‑( i l ,
i2
,‑,t
m)は,それぞれプ レース, トランジション の集合であ り,FE‑
(fl,f2,・・・,fLl⊆ ( SEXTE)∪( TEXSE)
はプレースからトランジ ション, もしくは トランジションからプレースへのアークの集合である.( i i )
各プレースsi∈SE( i‑1
,2
,・‑, n;n‑l SE
L)のマークは,1か らNまでの自然数の億 をとることができる.これをp( s i )
と書 く.ただし,s
l・にマークがない ときはp( s i )
‑ 0 とする.I L: SE‑
(0
,1 , 2
,・・・ , N)
( i i i )各プ レース
siのマークの容丑は 1.( i i ) , ( i i
i)
から,全てのプレースのあらゆるマーク億からなる集合ME
は,sE
から(0
,1
,2,・・・ , Nl
への写像の作る集合で表す.ME
=(0
,1
,2
,・・・ , N) S E
( i v) i ) I∈TEb'‑1
,2
,‑, m; m =I TE
l)へのアークを有する全てのプレースの集合を*
lJ・,i)・ か らの全てのアークが指すプ レースの集合 を i/ と普 く.* l j ‑ ( S ∈SE:( ] f) ( f ∈FE,
I‑( S , t , ・ ) ) I
i/ =
( S ∈SE:(
ヨf) ( / ∈FE,
I‑( t , . , S ) ) )
( V)
任意のマーキングp ∈ME
の下での i)・に関する発火評価は,*i31に属するプ レースの状 態pl *i
,・の論理式で記述される発火条件Oj ( p
l+t,.)を調べる・◎
''の真偽によって,次段 マーキングF ; ∈ME
が変化する.◎)'が其ならば
t
,・は発火する・このときプ レース*t ) ・ ‑i /
はマークを取 り除 く・プ レース t/ は,* i
)・の状態に依存 して次のCj
によって与えられる・つまり,C' ' :
10
,1 , 2 , ‑ , N
√ t, ' ‑ ‑
(0
,1
,2
,‑, N) t ・ ' ̀
i f O' ' (
pl'ij)‑Tr uet he n 0 : o n ' i j‑
i/C
j ( I Lt 'i ) I ) : o n
i/p : o t he r wi s e
一方,◎''が偽ならばi
3.は発火 しない.このときp'‑ILである.トランジションちの評価後の次段マーキングについては,ネットのプ レースのマーク状態
p∈ME
か らI L '∈ME
への写像f
Jlで表すことが出来る.2 ‑2
発火評価順序 の導入LC‑ ne t: NE = ( SE, TE; FE, ME)
に導入する,トランジションの発火評価順序の定義を以下 に示す.( i ) a;
(1 ,2
,‑,m)( m ‑l TE
l)の置換群.トランジションの発火評価(
il ,
12
,・・・,i m
)の 順番を決める・
9∈Gに対 して発火評価の無限系列i 9 (
1) ,i g ( 2 )
,‑,1 9 ( m) ,i g ( 1 ) ,t g ( 2 )
,‑ ,i g ( m)
,・・・を対応 させる・( i i )トランジシ ョン t ) .(
3'‑1 , 2
,‑, m :m ‑1 TE
l)の発火評価は,プ レースのマーク状態 IL∈ME
からF ;∈ME
への写像f
Jlで表す.( i i i ) m
個の トランジションに関する発火評価順序は,9∈Gに基づ く.このとき,/g ( 1 ) 9 ( 2 ) ‑9 ( m)‑f9 ( m)
×‑×fg ( 2 )×fg ( 1 )
( i v)m
個の トランジションに対する1
サイクルの評価)qE序 9が与えられたとき, 9 :ig(1)ー ig(2)ー ‑ J ig(m)と普 く.また,このことを略 して次のように普 く.
9 ‑ (9(
1
),9(2), ・ ・ ・
,9(m))3
制御 ソフ トウェアのLC‑net
によるモデル化3‑1
画像処理装置制御 システムの概要画像処理システムの機器構成を,図
1( a )
に示す.この制御システムは,画像処理装置,XY
ステージ,ステージコントローラ,CCD
カメラ,及びシステム制御用コンピュータから構成さ れている.おおまかな椀能は以下の通 りである.
XY
ステージ上に置かれたプリント基板( PCB)
などの 対象物の表面 を,セルと呼ぶ小さな四角形の領域に分割しておく.CCD
カメラでこの各セルを 原画像 として次々に取 り込み,取 り込みが終了した原画像をあらかじめ用意 しておいたい くつ かの基準画像 と比較することにより,対象物の品質検査を行 う.例えば対象物がプリントパター ンである場合,正常なパターンを基準画像 とし,取 りこんだ各セルの画像 との比較を行い,そ の不一致な箇所を調べることでパターンの欠陥が判る.欠陥の程度は不一致な画素数で制御用 コンピュータへ通知する.画像処理装置の内部ハードウェア構成について説明する.構成図を,図
1 ( b)
に示す.この画 像処理装置は,CCD
カメラから取 りこんだ各セルの画像を格納するためのA, B2
つの原画像 メモリ( Ra wI ma g eMe mo r y)
,マ.)チング処理フィルタ( Ma t c h i ngFi l t e r )
,ピクセル数カ ウンタ( Pi xe lCo u nt e r ),A, B2
つの基準画像 メモリ( Te mpl a t el m a g eMe mo r
y)
,および複 数枚の基準画像を蓄積 してお くための基準画像ス トレージ( Te mpl a t eI ma g eSt o r a g e)
から構 成される.原画像メモリと基準画像メモ リを2
つ持つことにより,CCD
カメラからある原画像 メモリへ取込処理を行っている間に,他方の原画像メモリと基準画像 とのマッチング処理を同 時に行 うことが可能である.また,基準画像ス トレージと基準画像メモリとの間は,独立 した データバスによって接続 されているので,ス トレージからメモリへの転送は独立 して動作 させ ることが出来る.これらの並列処理の制御は,システム制御用コンピュータに実装されるソフトウェアが行 う.
3‑2 Ⅰ 一 C‑net
による制御 システムの設計例画像処理シーケンスに基づいた
,LC‑ ne t
による制御システムの設計例を図2
に示す.画像処理シーケンスの うち,原画像の取込処理,基準画像の転送処理,およびマッチング処 理などの各処理は,それぞれ回申の
S ubne t ‑1
,2 , 3
で示すサブネットで表現されている.各サブ ネットの入口である,プレース sl,S4,S6へマークを送出することで,それぞれのサブネットの 動作が開始される1.1各サブネットの動作や詳細定義 は紙面の都合 により省略
(ら)画像処理装置の内部構成 図
1
画像処理システムFi g1 :Anl ma g ePr oc e s s i ngSys t e m.
subne t ‑1 ‑3
の同期化のために,各サブネットの入口と出口にあたるプ レースを,同期用 ト ランジション ilお よび i2によって連結する.プ レースに格納 される トークンの億は1‑N
で, 各サブネットで処理 したセル番号を示す.トランジションilは,原画像の取込中オーバーラップ点に到達 したとき,次のセ)I,の原画像 取込処理を開始 させるために用意する.また,全ての検査が完了 した際の終了処理 も含 む.発火 条件は叱 e,tap,叱t.,の
2
つを用意 し,それぞれ次のセルに対する取 り込み処理の開始・お よび 終了処理の役割を持つ.ilの定義は次のように与える.'il
叱 e ,
Lap(l L
l*
il)C
lue,La
p(
ILI*il)叱 i
l
(p
l*tl)
Celct・t(
p
l'tl)(
S2 ,
S5 , S
7),tl★‑ (
sl , 8 8)
( 0<p( S 2 ) <N)a nd( p( 8 5 )≠0) a nd( F L ( S 7 )≠0) p( S 2 )+
1: o n
slO
: o n
s8( p( S 2 ) ‑N)a nd( F L ( S 7 )≠0)
0
:o n
sIp( S 2 ) :O n
S8一方, トランジション1
2
は,原画像の取込処理が終了 した後,基準画像転送 とマッチ ング処 理を行わせ るために用意する.ただし,最後の画像取 り込み処理の終了後であれば,基準画像 の転送は必要な く・マ ッチング処理の開始のみ行 う・発火条件は叱 ,mat,02/.・na,の2
つを用意 し, それぞれ基準画像転送 とマ ッチング処理の開始,およびマ ッチング処理のみの開始の役割を持 つ.t 2
の定義は次のように与える.図
2
画像処理のためのI . C‑ ne
t回Fi g2:LC‑ ne tf ig u r e f o ri ma g epr oc e s s i ng・
* t 2 ‑ t s 3 1 ,t 2
*‑ t s 4 , S 6 )
◎2 n o , ma t ( p l 事i 2 ) ≡ ( 0<p( S 3 )
<N)C
Eo , ma
t( p l *t 2 )
(
p
( S 3 ) +
1: o n
s4p( S 3 ) : O n
S6埠 n a t ( p l *t 2 ) ‑ = ( F L ( S 3 )
‑N)ci t ・ n a L ( p
L"2 ,=( 0 :o n
s4p( S 3 ) :O n
S6本制御システムを実現するために作成 したネットの規模は,図
2に示すように,サブネット 3
, トランジシ ョン1 0
,プ レース1 3
であった.4
解析 と動作試験4‑1 Ⅰ 一 C‑net
の解析図
2
のLC‑ne t
モデルを解析する.本システムは対象 となるプ リント基板等が搬送される毎 に,処理を繰 り返 し安定 して行 う必要がある.このためには,システム中に発火で きない トラン ジシ ョンがないこと,ある一定の繰 り返 し処理を行 う際に,繰 り返 し現れるマーキングの状態が常に保たれていることが必須である.そのため,設定 した初期マーキングに基づいた可連木を 生成 し,ネット解析を行 う.
なお,以後の説明では,同期用および終了用 トランジションに連結されている,各サブネッ トの入出力部分のプ レース
( S 1‑8 8 )
に関するマーキング状態( p)
のみを記述する.p‑(
sl ,
S2 ,
S3 ,
S4 ,
S5 ,
S6 ,
S7 , S 8 )
4‑1 ‑1
初期マーキングの設定ネット解析を行 うために,図
2
に示 したLC‑ ne t
図に対 して,初期マーキングの設定を行 う.初 期マーキングF L o
は,検査を開始する最初のセル番号が1
であることから,po‑( 1
,0
,0
,1
,0
,0
,1 , 0)
と定義する.この初期マーキングの もとでは,最初の
1
ステップ 目で原画像の取 り込み処理 と, 基準画像の転送処理が開始 され,比較処理は行われない.4 ‑1 ‑2
可連木によるネット解析初期マーキング
po
の下で,図 2から生成 した可連木の一部を図 3に示す.なお,可連木中の 各マーキング状態Mi( i∈
‡1
,2
,・・・ , 1 71
)の要素I s t ・
lは,各プレース S.・に収容されるトークン の数(
oまたは1)
で表 した.M. ・ =( l s
ll , I s 2Hs 3日S 4l , l s 5l , l s 6日8
7日S 8I )
まず,マーキング状態の全てのパスを調べると図
2
の全ての トランジションが発火すること がわかる.また,状態〟2 ‑( 1
,0
,0
,0
,1
,0
,1 , 0)
に示 されるマーキング状態で,各サイクル終了 後の状態が常 に保たれていることもわかる.よって,この設計例は上述の初期マーキングの もとで,並列動作の安定性が保証 されている.
次 に状態
M
l, M
7, M
IOにつI、て検討する.これらは,原画像取 り込み処理において,次のセ ルのオーバーラップ点に到達 しているにも関らず,基準画像の転送処理または画素数カウンタ 処理が終了 していない状態である.つまり,原画像取 り込みを行っている時間内に,基準画像の 転送処理,マ ッチング処理および画素数カウンタ処理のいずれかが,間に合っていないとい うことであ り,システムとして異常である.この状態を検出するため,11を変更 し,新たなプレー ス
β 1 4
を追加する.異常時は,
β2
内にトークンがあって,8 5
または8
7内にトークンが無い状態な ので,ilの異常時の発火条件 と次段マーキングを次のように追加すればよい.◎e l
,T O , ( p I * i l ) ≡ ( I L ( S 2 ) ≠0 )a nd( ( p( S 5 )‑0 )o r( p( S 7 )=0) )
Ge l
,,0 , ( pri l ) ‑ =
i
:
:OnSl,S8
I L ( S 2 ) : O n
S14以上の修正を行 ったネットに対 して可連木を生成 したところ,上述の異常が起 きた場合 にお いて も,異常状態を検出して処理が停止することを確かめた.
siThP o・
o I
1q
h d・2E",
1
,.=,'0.1'0' 1
'0' 0
'1.0' "2E
'1' O
lo
£崇 tl:.0"3
'
'0' 1
10;oi崇 .1:10'M4
g
(0,1
,1,0,1,0.1.0)ト
"5
=
(1・ O
llg ・o・o・o・o)M
8 ‑(1,0
:0,0,1,
1,0,0)M9
Error
MI
O
≡(0, 1 , 0
.0.1.1,0. 0
)Erro
r
MIつ≡
(0 .
M12
ヒ
(0 .
†
1I
1
I
.
0
.0,0,1,0,0)S
ubnot・3,
0
.0,0,0,1,0)tl
M13
=
(0
.0 .0.0.0. 0
.0.1)Exit
図
3 LC‑ ne
t図から生成 した可連木 (一部分)Fi g3:Re a c ha bl i l i t yne eb yg e ne r a t ef ro mLC‑ ne t丘g ur e( Subs e t ) ・
4 ‑2
制御用 コン ピュータへの実装 と動作試験LC‑ne t
モデルによる並列処理システムを,制御用コンピュータ上へ実装 し,動作の確認を 行 った.本装置の機能の中で,画像処理シーケンスの部分はペ トリネットで記述 したが,数億演算処 理 を伴 う比較処理や,高速な処理が必要な XY ステージコントローラとの通倍枚能,お よび画 面表示等のマンマシンインターフェース機能などの基本プロシージャは,従来の
C
言語で実現 した.開発時から実地試験時まで,制御用 コンピュータには市販のパーソナルコンピュータを 用い,LC‑ ne t
によるモデル化,ネットの検証,ー基本プロシージャとの結合,および現場の実行 マシンでのテス ト運用 までを行い,正 しく動作することを実証 した.LC‑ ne t
の利用により,この画像処理システムのソフトウェア開発は,特に従来の開発方式で は十分な検証なしに実装 していた並列処理部分の作成に関 して,大幅なコス ト削減が図 られた.これは,設計時にシステム仕様を
LC‑ne t
で簡素に記述で きたこと,システムの安定性 をネッ ト解析 によって十分に検証で きたこと,基本ワークプロシージャとの結合で制御プログラムを生成できたこと,更に現場のテス ト段階で,制御プログラムのリアルタイムな動作をネットの形 で視覚的に確認 しなが ら行えたことの結果である.
5 まとめ
既存
pNs
やCPNs
の記述性を改善する,論理カラーペ トリネット( LC‑ ne t )
を提案 し定義を 行 った.トランジション発火評価順位の概念 をLC‑ ne t
に導入 し,定義を行 った.LC‑ ne t
を用い て,画像処理システムを制御するソフトウェアをモデル化 し,可連木によるネット解析を行 った.安定性検証済みのネットか ら生成 した制御ソフトウェアを,制御用コンピュータ上へ実装 し,そ の動作を確認 した.
今後は