首先運(yùn)行fsme命令來(lái)啟動(dòng)狀態(tài)機(jī)編輯器,然后單擊工具欄上的“New”按鈕來(lái)創(chuàng)建一個(gè)新的狀態(tài)機(jī)。FSME中用于構(gòu)建狀態(tài)機(jī)的基本元素一共有五種:事件(Event)、輸入(Input)、輸出(Output)、狀態(tài)(State)和轉(zhuǎn)換(Transition),在界面左邊的樹(shù)形列表中可以找到其中的四種。
狀態(tài)建模
在FSME界面左邊的樹(shù)形列表中選擇“States”項(xiàng),然后按下鍵盤(pán)上的Insert鍵來(lái)插入一個(gè)新的狀態(tài),接著在右下方的“Name”文本框中輸入狀態(tài)的名稱(chēng),再在右上方的繪圖區(qū)域單擊該狀態(tài)所要放置的位置,一個(gè)新的狀態(tài)就創(chuàng)建好了。用同樣的辦法可以添加狀態(tài)機(jī)所需要的所有狀態(tài),如下圖所示。
狀態(tài)建模
事件建模
在FSME界面左邊的樹(shù)形列表中選擇“Events”項(xiàng),然后按下鍵盤(pán)上的Insert鍵來(lái)添加一個(gè)新的事件,接著在右下方的“Name”文本框中輸入事件的名稱(chēng),再單擊“Apply”按鈕,一個(gè)新的事件就創(chuàng)建好了。用同樣的辦法可以添加狀態(tài)機(jī)所需要的所有事件,如下圖所示。
轉(zhuǎn)換建模
狀態(tài)轉(zhuǎn)換是整個(gè)建模過(guò)程中最重要的一個(gè)部分,它用來(lái)定義有限狀態(tài)機(jī)中的一個(gè)狀態(tài)是如何切換到另一個(gè)狀態(tài)的。例如,當(dāng)用來(lái)控制城門(mén)的狀態(tài)機(jī)處于Opened狀態(tài)時(shí),如果此時(shí)有Close事件產(chǎn)生,那么狀態(tài)機(jī)的當(dāng)前狀態(tài)將切換到Closed狀態(tài),這樣一個(gè)完整的過(guò)程在狀態(tài)機(jī)模型中可以用closeDoor這樣一個(gè)轉(zhuǎn)換來(lái)進(jìn)行描述。要在FSME中添加這樣一個(gè)轉(zhuǎn)換,首先需要在界面左邊的樹(shù)形列表中選擇“States”下的“Opened”項(xiàng),然后按下鍵盤(pán)上的Insert鍵來(lái)添加一個(gè)新的轉(zhuǎn)換,接著在右下角的“Name”文本框中輸入轉(zhuǎn)換的名字“closeDoor”,在“Condition”文本框中輸入“Close”表明觸發(fā)該轉(zhuǎn)換的條件是事件Close的產(chǎn)生,在“Target”下拉框中選擇“Closed”項(xiàng)表明該轉(zhuǎn)換發(fā)生后狀態(tài)機(jī)將被切換到Closed狀態(tài),最后再單擊“Apply”按鈕,一個(gè)新的狀態(tài)轉(zhuǎn)換關(guān)系就定義好了,如下圖所示。用同樣的辦法可以添加狀態(tài)機(jī)所需要的所有轉(zhuǎn)換。
轉(zhuǎn)換建模
-
程序
+關(guān)注
關(guān)注
117文章
3787瀏覽量
81060 -
命令
+關(guān)注
關(guān)注
5文章
684瀏覽量
22027 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
492瀏覽量
27541 -
編輯器
+關(guān)注
關(guān)注
1文章
806瀏覽量
31176
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論