
發布
注冊
/
登錄有限狀態機的案例
干貨|教你一招搞定單片機開發常用的狀態機
之前寫過一篇狀態機的實用文章,很多朋友說有幾個地方有點難度不易理解,今天給大家換種簡單寫法,使用函數指針的方法實現狀態機。
狀態機簡介
有限狀態機FSM是有限個狀態及在這些狀態之間的轉移和動作等行為的數學模型,是一種邏輯單元內部的高效編程方法,可以根據不同狀態或者消息類型進行相應的處理邏輯,使得程序邏輯清晰易懂。
MBSE建模學習之六:狀態機和狀態機圖
狀態機(StateMachine)
狀態機(StateMachine)用于表示事件驅動的行為。在狀態機圖中,用系統的不同狀態之間事件驅動的轉移機制來說明一系列的行為發生過程。它一般作為一個模塊(Block)的類目行為(ClassifierBehavior)。類目行為是一個類(如模塊)從開始工作,一直到結束的整個過程的行為。一個模塊只有一個類目行為。它也可以作為模塊的一個普通的擁有行為(OwnedBehavior),表示模塊的一種功能。
和活動(Activity)一樣,狀態機同時也是一種模塊(Block)元素。一個復雜的狀態機行為可以進行分解。在上層的狀態機行為中,通過一個“子機狀態”(SubmachineState)元素表示對下層或其它狀態機的調用。
作為行為,狀態機的發生一樣需要規定發生的語境(Context)。如果狀態機是某個模塊的類目行為或擁有行為,則這個模塊是狀態機的語境;否則它自己是它的語境。狀態機中的狀態的內部行為(entry、do及exit)如果沒有明確的語境,則它們的語境是這個狀態機的語境。
狀態機是通過狀態機中的狀態(State)以及狀態是如何轉換的來說明系統的行為過程。狀態機中的狀態(State)和轉移(Transition)不像活動圖中的動作(Action),它們本身并不說明究竟這個行為是如何把一個輸入的信息(或其它物質)轉為輸出的信息(或其它物質)。(動作—Action中,可以通過語句或專用的動作類型來說明對象的生成、變換或刪除等)但是,在狀態和轉移中可以包含其它行為(如一個活動),它可以用它包含的行為來說明具體是轉換的細節。狀態機更像是把系統的行為串聯起來的一種作用,它著重展現的是系統在這個行為之間所處的狀態,以及狀態是在什么時機,或通過什么機制來轉換的(這個時機被定義為觸發器,這個機制是觸發器的事件)。
展開 Unity與C#創建第三人稱近戰戰斗系統 | 學習游戲玩法編程與簡潔編碼規范 ¥15
接下來,我們將著手開發敵人AI,并采用“有限狀態機”(Finite-State Machine)的架構來實現。過去25年間,有限狀態機一直是游戲AI開發的常用技術,《最后生還者》《蝙蝠俠:阿卡姆》系列等眾多熱門游戲均有采用。我們會從零構建一個有限狀態機,并以此為基礎創建敵人;首先實現“閑置”“追逐玩家”等簡單敵人行為,隨后再開發“包圍玩家”“協同進攻”等更復雜的行為。完成敵人AI開發后,我們將實現“反擊”功能。
在整個課程中,你將掌握大量游戲編程技能,學習多種中級C#概念(如泛型類、字典、語言集成查詢(LINQ)、繼承等),還將學會運用三角學、點積、叉積等數學概念解決實際問題。
展開 無人機集群自組織搜索仿真模型設計與實現
摘要:城市威脅背景下無人機集群自組織搜索移動目標問題,是無人機集群作戰應用的一個重要發展方向。采用基于Agent的復雜系統建模仿真工具,構建了無人機集群搜索仿真模型框架,設計實現了無人機集群自組織搜索模型。在考慮無人機集群作戰可能受到威脅的背景下,展示了無人機集群自組織搜索概念,探索了使用基于概率的有限狀態機模型實現集群自主決策的解決方案,并通過案例進行了分析驗證。該仿真模型為無人機集群作戰應用研究提供了參考案例、模型支撐和實驗平臺。
關鍵詞:無人機集群 ; 自組織 ; 搜索 ; 威脅環境 ; 仿真 ; 有限狀態機
隨著戰爭形態的不斷演化,未來的作戰對手可能將戰爭引向城市,依靠高大的建筑物和密集的人群,來躲避搜索跟蹤,進而抵消我方偵察和火力打擊的優勢。無人機集群具有靈活性、自主性、魯棒性和可擴展性等特點,同時可以降低作戰成本、減少作戰人員傷亡,并且依賴無人機個體的自主能力實現無人機集群的自組織作戰,降低了對人員操控和操作系統的依賴,對破解敵方利用建筑物和地形優勢躲避搜索跟蹤,提高作戰效果具有重要的作戰應用價值。
當前,關于無人機和無人機集群的研究較多[1],無人機集群也以其獨特的優勢日益受到各國軍方的廣泛關注。在集群搜索問題上[2-3],已有很多搜索算法。本文聚焦無人機集群自組織搜索城市威脅環境中移動的目標進行研究。無人機集群自組織搜索,是指將多架成本低廉、小型輕便、功能相對簡單和具有一定自主能力的低成本無人機以集群的方式大量部署,基于一定的間隔分布,形成一定的覆蓋范圍,按照上一層次的指揮要求,在操控人員監控下,在任務區域上空按照選定的策略飛行,實現對目標的搜索、發現、識別和跟蹤鎖定。
展開 
往復壓縮機典型狀態監測方案
本文以典型4缸API 618標準的往復壓縮機組為例,簡單介紹下往復機的狀態監測應用配置方案。
往復機狀態監測傳感器測點布置示意圖:
擬配置測點清單(二次高壓壓縮機,4缸):
傳感器及硬件配置介紹:
鍵相信號(Crankcase Reference Position Keyphasor)
往復機鍵相信號,可采用標準鍵相或多事件鍵相。
多事件鍵相系統與傳統的標準鍵相系統不同,它使用電渦流傳感器對曲軸上的多輪齒盤進行監測,除了可以提供每轉一次的參考點以外,還可以每旋轉30度就提供一個精確的參考計時信號(電壓脈沖)。產生的信號可用于監測系統作為準確的曲軸位置參考。多事件鍵相系統,可以幫助氣缸壓力測量獲得更準確的測量結果并提供更精確的壓力-流量曲線(P/V曲線)。
多事件鍵相的多齒輪盤可安裝在軸靠近驅動器的外側,通常要求在驅動軸上鉆孔和開孔。也可根據用戶機械結構特征,設計提供在軸上安裝圓箍式(由兩個半圓環組成)的齒輪盤,更方便安裝。標準鍵相每轉一次的參考點通常與1號氣缸的頂頭中心位置對齊。活塞桿位置和氣缸壓力監測都需要使用鍵相參考信號。
主軸承溫度(Main Bearing temperatures)
曲軸主軸承溫度高表明設備有與油膜軸承相關的故障,如過載,軸承疲勞或潤滑油不足。測量主軸承溫度和其它相關的過程參數可以幫助確定發動機的整體運行狀況。
可以在設備制造過程中在主軸承蓋上打鉆開孔以安裝溫度探頭,也可以在設備安裝完成后,移開軸承蓋,再打鉆開孔,安裝溫度探頭。
展開 自動駕駛人機交互 [五]:駕駛員狀態監控
作者 | HYZY
來源 | 焉知
知圈 | 進“HMI社群”請加微信15221054164,備注HMI
一、基本概念
駕駛員狀態監控系統DMS(Driver Monitor System)屬于自動駕駛人機交互的一部分,其使用攝像頭獲取的圖像及其它車身傳感器輸入的數據,通過視覺跟蹤、動作識別等技術監測駕駛員的駕駛行為和生理狀態,當判斷駕駛員不在場或處于非正常駕駛狀態時(疲勞、分心等),自動駕駛系統向駕駛員發出報警或執行其它安全策略,以確保車輛運行安全。
圖 1 駕駛員狀態監控DMS
從技術原理上,駕駛員狀態監控系統DMS可分為直接監控和間接監控兩種類型:
直接監控:通過傳感器獲取駕駛員頭部運動、面部運動、眼部運動、心電或腦電等直接表征駕駛員狀態的信號,用以判斷駕駛員的狀態;
間接監控:通過獲取駕駛員的駕駛行為信號及相關車輛狀態信號,間接判斷駕駛員狀態。
直接監控方式可獲取更多的駕駛員狀態信息,且隨著相關視覺技術的進步,其判斷結果可信度也不斷提升,多用于自動駕駛系統的人機交互。間接監控方式可獲取的駕駛員狀態信息有限,通常可用于駕駛員駕駛風格判斷及整車駕駛模式匹配。
二、駕駛員狀態定義
駕駛員狀態監控系統DMS可識別的駕駛員狀態見下圖2。
展開 如何在S7-1500 CPU里讀取交換機的MRP狀態
2.問題 當交換機的MRP 環網斷開時,如何通過S7-1500CPU 獲取這個故障信息,以 便進行處理。
3.解決方法 S7-1500 提供了PROFINET 數據記錄庫,把交換機作為PROFINET IO 設備, 通過讀取數據記錄的方式可以獲取 MRP 狀態。PROFINET 數據記錄庫下載地址 https://support.industry.siemens.com/cs/cn/zh/view/109753067。
4 操作方法:
(1)組態CPU為PROFINET控制器,組態交換機為IO設備,如圖 1 所示。
圖 1 網絡拓補
(2)組態 X310 為管理器,如圖 2 所示。
圖 2 MRP管理器組態
(3)組態 X208 為客戶端,如圖 3 所示。
圖 3 MRP 客戶端組態
(4)加載 PROFINET 數據記錄庫,如圖 4 所示。
圖 4 加載 PROFINET 數據記錄庫
(5)調用庫函數 LPNDR_ReadMrpState 讀取 MRP 狀態,如圖 5 所示。
圖 5 調用 LPNDR_ReadMrpState 庫函數
其中輸入參數execute 的上升沿啟動讀取任務,hwId 為交換機接口的硬件標識符,如圖 6 所示;輸出參數mrpRingState 為環網狀態,0 為斷開,1 為閉合
圖 6 hwld 參數設置
(6)測試結果
環網閉合時,mrpRingState 為 1,如圖 7 所示。
圖 7 環網閉合狀態
環網斷開時,mrpRingState 為 0,如圖 8 所示。
圖 8 環網斷開狀態
展開 航空發動機壓氣機和渦輪輪盤的載荷特點及計算狀態
二、熱載荷
輪盤要承受因受熱不均引起的熱載荷,對于壓氣機盤,熱載荷一般可以忽略。但隨著發動機總壓比和飛行速度的提高,壓氣機出口氣流已達到很高的溫度。所以,壓氣機前后幾級盤的熱載荷有時也不可忽略。對于渦輪盤,熱應力是僅次于離心力的重要影響因素,計算時應考慮以下類型的溫度場:
飛行包線中規定的各強度計算的穩態溫度場;
典型飛行循環中的穩態溫度場;
典型飛行循環中的過渡態溫度場。
在估算時,若原始數據無法充分提供,也沒有實測溫度可參考,這時可以根據設計狀態及最高熱載荷狀態的氣流參數進行估算,估算盤上溫度場的經驗公式為:
式中,T 為所求半徑處的溫度,T0 為盤中心孔處的溫度,Tb 為盤輪緣處的溫度,R 為盤上任意半徑,下腳標0、b 分別對應中心孔和輪緣。
m=2,對應無強迫冷卻時的鈦合金和鐵素體鋼;
m=4,對應有強迫冷卻時的鎳基合金。
1.
展開 五金沖壓件廠在試模時對壓力機的狀態要求
五金沖壓模具在試模前,對五金沖壓件廠的壓力機的技術狀態也是有著較為嚴格的要求的。下面就來說明下要試模的指定壓力機應處于的狀態。
1.壓力機的剎車、離合器及操作機構應工作正常;
2.壓力機上的打料螺釘應調整到合適的位置;
3.壓力機上的壓縮空氣墊操作要靈活、可靠;
4.壓力機上的工作形式應與沖模結構形式相吻合。例如,開式沖床適用于左右方向送、出料的沖壓作業;自動沖床可保證較高的生產率;
5.壓力機滑塊行程大小要滿足沖模的沖壓要求,即壓力機的行程應滿足制品高度尺寸要求,并保證沖壓后的制品能順利地從沖模中取出;其行程次數應符合生產率和材料變形速度的要求。
6.壓力機的電動機功率應大于沖模沖壓時所計算的功率值;
7.壓力機應能保證使用的方便和安全性。
五金沖壓件廠指定試模的壓力機只有滿足了以上幾點要求,才能將經檢驗外觀合格的沖模安裝其上,進行下一步的試模,否則對壓力機和模具都會產生不良的影響,也不會試沖出合格的五金沖壓件。
展開 狀態檢測、故障診斷技術在離心壓縮機上的應用
狀態檢測、故障診斷技術在離心壓縮機上的應用
原作者:蔡廣斌 溫賓江
出處:
【關鍵詞】離心式壓縮機,振動,故障診斷
【論文摘要】旋轉機械故障診斷技術在發電、化工行業等大型透平,離心機組上的應用日益廣泛。介紹了大慶天然氣公司從美國DRSSER-RAND公司引進的D10R9B離心壓縮機應用振動檢測,故障診斷技術,分析、判斷、處理的軸振動超高的問題及收到的良好效果。
在沖壓件加工中,要保證壓力機在什么樣的狀態?
沖壓件加工廠在沖壓件加工中,要保證壓力機一直處在比較穩定的狀態,才能安全的生產,那么壓力機的狀態達到什么樣的要求才算是合格呢?下面來看一下;
1、在沖壓件加工中壓力機的剎車、離合器及操作機構工作正常;
2、壓力機上的打料螺釘應調整到合適的位置;
3、在沖壓件加工中,壓力機上的壓縮空氣墊操作也要靈活、可靠;
4、壓力機的工作形式應與沖模結構形式相吻合,例如,開式沖床(壓力機)適用于左、右方向送、出料的沖壓作業;自動沖床可保證較高的生產率;
5、壓力機滑塊行程大小要滿足沖模的沖壓要求,即壓力機的行程應滿足制品高度尺寸要求,并保證沖壓后制品能順利地從沖模中取出,其行程次數應符合生產率和材料變形速度的要求;
6、壓力機的電動機功率應大于沖模沖壓時所計算的功率值;
7、沖壓件加工中壓力機應能保證使用的方便和安全性;
展開 
基于虛擬技術的柴油機狀態監測與故障診斷系統的開發
挑戰: 將計算機軟硬件相結合,開發柴油機狀態監測與故障診斷系統。該系統能采用多參數多
方法的故障診斷技術在線或離線進行柴油機的狀態監測與故障診斷。
請享用!
耐特EM232模塊在超聲波滾刀切割機時的裁切狀態
系統功能
超聲波滾刀機是一種應用于高速定長切割的設備, 該設備使用伺服系統電機進行送料(也可使用變頻電機送料加編碼器反饋的方式),使用滾刀加超聲波的擠壓來將材料切斷.
控制系統特點
1、系統雙伺服控制電機,一軸用來送料,一軸控制滾刀裁切(送料軸也可使用變頻控制加編碼器反饋方式工作)
2、滾刀使用伺服控制,在裁切的時候存在空轉時間和裁切時間兩種狀態,裁切狀態的時候滾刀的末端同送料的運動線速度一致,,空轉的時候自動判斷空轉速度進入準備下一次的裁切。
3、滾刀同物料咬合部分的長度可以根據實際需要進行設定,這樣可以做成普通的切斷,也可在結合刀頭的不同形狀切割出不同的紋路的物料.
4、本系統裁切效率高,裁切精度穩定, 相比普通的定長切割的需要停頓的裁切方式可以提高4倍以上的生產效率.
使用耐特的CPU222 DC/DC/DC 控制兩軸伺服,使用實時變速進行調整,極大提高運行效率。
此文章從福州耐特電子科技有限公司官網轉載
展開 基于fluent重疊網格計算四旋翼無人機懸停及巡航狀態(含fluent設置視頻及網格、結果文件) ¥80
基于fluent重疊網格計算四旋翼無人機懸停及巡航狀態(含fluent設置視頻及網格、結果文件)
有人/無人機編隊指揮控制系統結構設計
如“編隊以間距100 m的楔形編隊到達1號區域”“編隊躲避1號障礙物”“攻擊敵方1號陣地”等編隊級指令和“1號無人機右轉脫離編隊”“2號無人機爬升至5 000 m”等動作級指令。語音指令通過識別模塊輸出到語言理解模塊,經過分析詞法和句法與建立的標準指令數據庫相匹配,并輸出相應的機器編碼到下一模塊。
3.2 協調控制層
協調控制層是整個MAV/UAV編隊指揮控制系統核心層次,包括編隊控制管理、航跡規劃和軌跡跟蹤等模塊。各模塊負責處理任務規劃層指令,主要包括以下功能:
(1) 接收上一層處理的飛行員指令;
(2) 根據任務類型、障礙物信息與鄰機狀態信息,調取控制算法進行期望飛行航跡規劃;
(3) 在規劃的飛行軌跡下,根據UAV動力學和運動學模型生成航跡跟蹤指令;
(4) 系統自檢、故障處理和容錯控制。
3.2.1 有限狀態機編隊控制管理
編隊的任務由一系列任務作業構成,每個任務作業稱為任務模式[13]。每一個任務模式對應作戰流程某一階段的特定控制過程,任務模式采用數據結構存儲編隊任務信息。有限狀態機主要用來描述不同狀態轉換過程計算模型,有限狀態機擁有有限狀態,通過輸入字串確定狀態間的轉換。有限狀態機可表達成為一個五元組M={Q,A,δ,I,F},其中Q={Q1,Q2,…,Qn}是非空有窮狀態集合;A為輸入字母表(驅動事件集合);δ狀態轉移函數(算法)可表示為δ:Qi×A→Qj,即狀態Qi在事件趨動下達到狀態Qj過程中的控制算法,I={I1,I2,…,Im}是初始狀態集合,I∈Q;F={F1,F2,…,Fs}是終止狀態集合,F∈Q。
鄰機狀態、任務指令、戰場環境信息進入有限狀態機編隊控制管理單元,根據初始編隊狀態和期望終端編隊狀態調取相應的編隊控制器,并輸出控制指令到執行器,實現編隊狀態轉換和隊形控制。
展開