首先運(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文章
3847瀏覽量
85446 -
命令
+關(guān)注
關(guān)注
5文章
758瀏覽量
23913 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
501瀏覽量
29309 -
編輯器
+關(guān)注
關(guān)注
1文章
828瀏覽量
33049
發(fā)布評(píng)論請(qǐng)先 登錄
SaberRD狀態(tài)機(jī)建模工具介紹(一)什么是狀態(tài)機(jī)建模
Verilog狀態(tài)機(jī)+設(shè)計(jì)實(shí)例
狀態(tài)機(jī)舉例
有限狀態(tài)機(jī)的建模與優(yōu)化設(shè)計(jì)
使用ModelSim自動(dòng)生成狀態(tài)機(jī)FSM的狀態(tài)轉(zhuǎn)換圖
狀態(tài)機(jī)如何簡(jiǎn)化PLC程序的編寫(xiě)
FPGA:狀態(tài)機(jī)簡(jiǎn)述
什么是狀態(tài)機(jī)?狀態(tài)機(jī)5要素
狀態(tài)機(jī)自動(dòng)生成工具FSME
如何生成狀態(tài)機(jī)框架
自動(dòng)生成程序狀態(tài)機(jī)代碼狀態(tài)機(jī)建模方法
評(píng)論