同步和定時
每個實時應(yīng)用程序的阿爾法和歐米加是適當?shù)臅r間、同步和確定性系統(tǒng)響應(yīng)。在設(shè)計電動機控制軟件時,必須特別注意這些方面。從本質(zhì)上講,這個過程聽起來相當簡單:系統(tǒng)讀取傳感器值,處理控制算法,監(jiān)測系統(tǒng)安全性,通過調(diào)整三個主要的壓水堆輸出的任務(wù)周期來管理輸出階段。
微小的定時錯誤會導(dǎo)致系統(tǒng)響應(yīng)錯誤,操作不穩(wěn)定,性能差.為了確保一切功能都如預(yù)期的那樣,保持同步和確保系統(tǒng)的決定性是至關(guān)重要的。在此,我要強調(diào),我們正在處理一個"硬實時系統(tǒng)",在該系統(tǒng)中,嚴格的最后期限完成任務(wù)是絕對重要的。
電動機控制器軟件可以在沒有操作系統(tǒng)的情況下實現(xiàn),使用適當?shù)膶崟r操作系統(tǒng),或者是一種多芯混合解決方案,其中一些CPU核心在Bar-金屬模式下運行,而其他核心則使用操作系統(tǒng)。無金屬解決方案總是基于中斷驅(qū)動設(shè)計,在中斷過程中執(zhí)行時間緊迫的任務(wù),確保每件事都在精確的時間間隔下發(fā)生。
不管它是一個無金屬的、實時操作系統(tǒng)還是混合解決方案,都必須進行定時分析、任務(wù)優(yōu)先排序和安全性分析,以確保高效和可靠的系統(tǒng)性能。
時間分析確保所有任務(wù)都能在截止日期前完成。這包括考慮每個任務(wù)的最壞情況執(zhí)行時間。電動機控制中的一些主要關(guān)鍵任務(wù)是傳感器數(shù)據(jù)的采集、用PBM信號生成控制算法的執(zhí)行、故障檢測和處理、應(yīng)急和安全功能、與其他系統(tǒng)部件的實時通信以及與外部系統(tǒng)的同步。
鎖相環(huán)
如前所述,無論是集成在單片機/DSP硬件中,還是作為可持續(xù)發(fā)展框架中的IP核心實現(xiàn)的鎖相環(huán)路,都是同步關(guān)鍵事件所必不可少的。PLL的主要功能是將單片機/DSP/FPGA的內(nèi)部時鐘與外部時鐘源或信號同步。這對于保持實時應(yīng)用中的定時精度至關(guān)重要。當控制馬達的速度和位置時,對于精確的時間至關(guān)重要。PLL保證反饋信號采樣(如轉(zhuǎn)子位置和電流測量)與控制算法的執(zhí)行之間的精確的定時調(diào)整,確保最佳同步和準確性。在具有多個核心的系統(tǒng)中,PLLS可以用來同步這些核心的操作。
在電機控制應(yīng)用中,通過相位鎖定環(huán)路(PLL)對電流測量和模擬數(shù)字轉(zhuǎn)換(ADC)同步的脈沖寬度調(diào)制至關(guān)重要,以確保系統(tǒng)的精確和高效性能。同步時鐘,PLL確保所有的系統(tǒng)組件,包括壓波發(fā)生器,ADC和其他處理元件,運行同步時鐘。在這個同步時鐘的基礎(chǔ)上,控制輸送到電動機的功率的壓波M信號就產(chǎn)生了。這些信號的時序直接影響電動機的性能.電流傳感器測量流向電動機的電流。這些測量的時間是至關(guān)重要的,特別是在像面向外地的控制(FOC)系統(tǒng)中,在那里電流反饋被用來控制電動機的轉(zhuǎn)矩和速度。目前傳感器的模擬信號通過ADC轉(zhuǎn)換成數(shù)字值。PLL有助于將ADC采樣與壓波M循環(huán)同步。這種同步可以確保ADC在最佳時間采樣電流相對于壓波器的信號,通常是在壓波器既沒有完全啟動也沒有完全關(guān)閉的地方,以獲得準確的電流表示。然后將數(shù)字化電流測量輸入控制算法。PLL確保這些測量是在相對于壓波M信號的一致間隔進行的,使控制算法能夠根據(jù)狀態(tài)變量的變化而精確地修改壓波M的工作周期,確保最優(yōu)化的電動機性能。通過將ADC采樣同步,使開關(guān)噪聲和失真的影響最小化。在大功率電動機控制中,這一點尤為重要,在這種情況下,壓波機信號可以引起明顯的電子噪聲。
電流和位置測量
精確測量和同步電流與壓波M脈沖是必要的。常規(guī)采樣、電流過采樣和平均法等技術(shù)被用來提高精度。
定期采樣的頻率與壓波管相同.這里的挑戰(zhàn)是確定適當?shù)娜訒r間。這涉及到設(shè)置一個延遲之間的開始的壓波M周期和類似數(shù)字轉(zhuǎn)換器(ADC)采樣。
目前過采樣的頻率高于壓波管,有時高出8-32倍,并平均測量結(jié)果。ADC中斷服務(wù)例程(ISR)頻率可以遠遠高于壓水堆頻率,這使得詳細的數(shù)據(jù)收集成為可能。
過電平受當前傳感器帶寬的限制.例如,在電動機控制中,大多數(shù)人體效應(yīng)傳感器的帶寬通常在50千赫茲和160千赫茲之間。適當?shù)臅r序和同步是處理可能影響相位電流的高頻振蕩的關(guān)鍵。
圖1:同步水壓機和電流測量
圖1顯示了一個處理周期的時間安排。類似數(shù)字轉(zhuǎn)換器(ADC)可以配置為在高頻率采樣。這需要設(shè)置ADC的時鐘和調(diào)整其采樣率。一旦完成采樣,單片機單元(單片機)或數(shù)字信號處理器(DSP)處理這些樣品,以計算其平均值。這種計算通常是在積累一定數(shù)量的樣品之后進行的。主處理中斷服務(wù)例程(ISR)必須配置為在完成平均計算時觸發(fā)。此外,脈沖寬度調(diào)制模塊需要建立的方式,以確保同步之間的ADC采樣,ISR,和壓波M定時。現(xiàn)代的單片機和DSP由于其強大的處理能力,能夠同時處理這些任務(wù),實時操作能力,以及各種用于管理ADC、壓水堆和ISR任務(wù)的外圍設(shè)備。
位置傳感器數(shù)據(jù)的采樣與主處理中斷服務(wù)程序(ISR)同步是至關(guān)重要的。有必要考慮到數(shù)據(jù)傳輸所造成的任何延遲,這些可以外推以保持時間的精確性。在使用任何濾波器時,重要的是考慮相位延遲的影響。在使用解析器的情況下,解析器數(shù)據(jù)的處理必須是同步的,必須選擇正弦和余弦信號的幅值最小的一個點,以確保準確的讀數(shù)。此外,過采樣的解析器信號和應(yīng)用帶通濾波器的截止頻率匹配的壓波M頻率可能是有益的。這種方法有助于過濾掉不需要的頻率,同時保持信號的完整性。
在高速系統(tǒng)中,當務(wù)之急是對轉(zhuǎn)子位置進行外推,以確保轉(zhuǎn)子位置的準確性,從而使定子磁場與轉(zhuǎn)子磁場保持正確的直線。精確的角度測量確保電機在任何給定的時間都能提供適當?shù)墓β?從而減少能量損失、轉(zhuǎn)矩波動、振動和熱的產(chǎn)生。
本文主要討論了應(yīng)用直接轉(zhuǎn)子位置測量的面向場控制(FOC)應(yīng)用。它不深入研究無傳感器FOC的應(yīng)用,其中轉(zhuǎn)子的位置不是直接測量的,而是通過間接方法估計的。
安全功能
在電動機控制應(yīng)用中常見的一些安全功能是:
安全轉(zhuǎn)矩下降(STO) :此功能可立即消除電動機驅(qū)動器的電源,使電動機停止產(chǎn)生轉(zhuǎn)矩。在緊急情況下,盡可能快地停止電動機是防止傷害的必要條件,這是一個至關(guān)重要的特點。
Safe Direction (SDI): 防止電動機向意外方向運行.
安全操作站: 此功能使電動機保持在停止狀態(tài),而不拆卸電源.
安全速度范圍或有限安全速度: 確保電動機運行在一個安全的速度范圍或低于一個安全的最大速度.
過流保護: 此功能保護電動機和電子設(shè)備免受過大電流的損害,而過大電流可能是由于短路或過載等故障造成的。
過電壓和過電壓保護: 這些功能保護電壓條件太高或太低,可能損害電動機或控制電子。
熱保護: 監(jiān)控電動機和驅(qū)動器的溫度.如果溫度超過安全限度,系統(tǒng)可以關(guān)閉以防止過熱。
速度監(jiān)測和限制: 確保電動機不超過預(yù)先設(shè)定的速度限制,這對超過一定速度可能是危險的應(yīng)用至關(guān)重要。
緊急停車: 物理按鈕或開關(guān),當啟動時,立即使馬達停止.這是工業(yè)環(huán)境中的一個標準特征。
安全剎車控制: 對于裝有制動器的電動機,該功能安全地與制動器連接,以阻止電動機,特別是在重力可能引起運動的垂直應(yīng)用中。在啟動安全制動功能之前,系統(tǒng)首先嘗試通過電制動來停止電動機,如果可行的話,這是一個將能量流倒轉(zhuǎn)來減速的過程。
安全功能可以實現(xiàn)在硬件(HW),軟件(SWS),或兩者的組合,取決于具體的要求和限制的應(yīng)用。在硬件中,通常會實現(xiàn)過電壓和過電壓保護、過電流保護、熱保護和應(yīng)急停止等安全功能,以確保系統(tǒng)的堅固、快速和可靠的保護。
軟件中實現(xiàn)了速度監(jiān)控和限速、故障檢測算法和安全操作停止。
安全轉(zhuǎn)矩(sto)、安全方向(SDI)、安全轉(zhuǎn)速范圍(rp)/安全限制轉(zhuǎn)速(SLS)和安全制動控制等功能通常通過硬件和軟件的組合實現(xiàn)。這種混合方法通常涉及啟動和控制軟件命令,同時依賴硬件組件進行有效的執(zhí)行和執(zhí)行。
汽車控制中的安全設(shè)計和功能安全問題,包括SIL3等標準是一個專門的課題,本文沒有涉及。
嵌入式系統(tǒng)和電機控制領(lǐng)域的各種制造商提供了全面的設(shè)計包和工具,旨在促進和加速工業(yè)、運輸、能源和醫(yī)療等關(guān)鍵部門的設(shè)計和認證過程。這些軟件包通常包括預(yù)先認證的軟件庫、詳細的安全手冊和硬件模塊,這些模塊的設(shè)計是為了符合像ic61508、ISO13849等嚴格的安全標準。此外,它們通常提供廣泛的文檔和支持,以實現(xiàn)安全完整性等級等認證,這在高可靠性和安全性至關(guān)重要的應(yīng)用中至關(guān)重要。這種援助不僅簡化了發(fā)展進程,而且大大減少了這些高度管制行業(yè)的合規(guī)和認證所需的時間和努力。
實時操作系統(tǒng)
選擇適合于電動機控制應(yīng)用的實時操作系統(tǒng)對于確保高性能、可靠性和安全性至關(guān)重要。主要的考慮因素包括實時的rto的性能,它的資源效率,包括內(nèi)存足跡和CPU的使用,以及基于優(yōu)先級的先發(fā)制人的調(diào)度。高效快速的中斷處理以及系統(tǒng)的可靠性和健壯性也是關(guān)鍵因素。供應(yīng)商支持和文檔、與硬件的兼容性以及開發(fā)工具(如IDES、調(diào)試器和分析器)的可用性和生態(tài)系統(tǒng)(包括庫和代碼示例)發(fā)揮著重要作用。最后,應(yīng)該考慮到授權(quán)條款和實時操作系統(tǒng)的成本。
考慮到電動機控制應(yīng)用的各種因素和具體要求,一個廣受贊譽的開源實時操作系統(tǒng),以其效率和多功能性著稱,成為一個杰出的選擇。在成本效益、業(yè)務(wù)效率、系統(tǒng)靈活性、可靠性和穩(wěn)健性、易用性、廣泛的硬件支持和資源效率等方面都是至關(guān)重要的考慮因素的情況下,這種選擇特別有益。
應(yīng)用架構(gòu)
圖2:電機控制系統(tǒng)架構(gòu)概覽
重要的是,電動機控制應(yīng)用程序的架構(gòu)包括幾個層次和模塊:
硬件抽象層: 提供了一個標準化的接口,用于訪問硬件外圍設(shè)備,包括ADAC、PBM控制器和通信接口,方便了可移植性和可伸縮性。它還包含板支持包(BSP)和各種硬件外圍設(shè)備的驅(qū)動程序,使無縫硬件-軟件集成。
核心運行時層: 這一層包括實時操作系統(tǒng),用于高效的任務(wù)調(diào)度和系統(tǒng)資源管理。它還包括專門的內(nèi)存管理,具有實時堆分配器設(shè)計,在時間緊迫的應(yīng)用程序中優(yōu)化內(nèi)存分配。此外,該層整合了強大的核心間和流程間通信機制,促進系統(tǒng)內(nèi)不同核心和流程之間無縫數(shù)據(jù)交換和同步。這一層是核心操作功能的支柱,確保平穩(wěn)和高效的運行時性能。
中間件層: 這一層集幾個關(guān)鍵功能于一體:
· 通訊接口: 使用各種通信協(xié)議管理與外部系統(tǒng)或設(shè)備的交互。
· 追查和數(shù)據(jù)記錄: 專注于追蹤和記錄特定的信號和事件,能夠通過諸如發(fā)援會、iOS、以太網(wǎng)、UART、USB等渠道實時輸出數(shù)據(jù)。
· 軟件上載: 監(jiān)督新軟件版本或更新的上傳,確保無縫集成和系統(tǒng)的連續(xù)性。
· 配置管理: 處理定制和操作調(diào)整的系統(tǒng)配置設(shè)置。
· 診斷和監(jiān)測: 為系統(tǒng)診斷和持續(xù)監(jiān)控提供工具,這對維護系統(tǒng)的健康和性能至關(guān)重要。
· 內(nèi)置測試: 包括自我測試功能,以檢查硬件和軟件組件的狀態(tài)和功能。
電動機控制應(yīng)用層: 位于所有層頂端的是電機控制應(yīng)用程序,這是執(zhí)行應(yīng)用程序特定工作流的關(guān)鍵組件。這一層包括:
· 控制和信號處理算法: 這包括控制算法的核心控制,如530控制和面向場控制(FOC),以及旨在優(yōu)化電動機性能的信號處理算法。
· 安全邏輯: 本組成部分致力于系統(tǒng)的安全方面,執(zhí)行緊急情況下的必要協(xié)議和例行安全檢查,確保系統(tǒng)在安全參數(shù)范圍內(nèi)運作。
· 針對具體應(yīng)用的工作流程: 該層還集成了額外的、獨特的工作流,以適應(yīng)電機控制應(yīng)用程序的具體要求,確保全面的功能和性能。
應(yīng)用程序工作流
應(yīng)用工作流通常涉及幾個關(guān)鍵步驟:
第一階段引導(dǎo)加載程序: 這個基本組件負責啟動過程的初始階段,包括低級別的硬件初始化和加載主要的軟件組件。其作用的一個關(guān)鍵部分是加載和啟動用戶應(yīng)用程序。Fsbl與應(yīng)用層分開工作,通常由單片機或數(shù)字信號處理器制造商在其軟件開發(fā)包(SDK)中提供。定制板支持包(BSP)通常是必要的--例如,增加額外的內(nèi)存檢查或診斷功能--以確保Fsbl滿足特定的系統(tǒng)要求并提高整體可靠性。
平臺安裝: 硬件組件的初始化:這包括建立ADC(模擬至數(shù)字轉(zhuǎn)換器)、系統(tǒng)中斷、壓波調(diào)制(脈沖寬度調(diào)制)模塊、通信接口(如SPI、I2C、UART)、看門人定時器以及任何其他必要的硬件外圍設(shè)備。設(shè)置中斷處理機制,以響應(yīng)諸如計時器溢出、輸入更改或通信事件等事件。配置系統(tǒng)時鐘、電源模式,確??刂破骱碗姍C的高效電源管理.
應(yīng)用程序配置: 這個步驟包括定義操作參數(shù)的關(guān)鍵任務(wù),這通常是通過讀取配置文件來實現(xiàn)的。這些文件指定了基本的細節(jié),如電機特性、控制參數(shù)和操作限制。此外,配置設(shè)置可以通過各種方式進行調(diào)整,包括數(shù)字輸入、DIP開關(guān),或者通過外部PC或主設(shè)備的通信接口進行動態(tài)調(diào)整。這種多方面的方法確保靈活和適應(yīng)性的配置管理,滿足廣泛的應(yīng)用程序需求。
這一階段還包括:
· 確定任務(wù): 創(chuàng)建主要的控制任務(wù)、通信任務(wù)、健康監(jiān)控任務(wù)等對應(yīng)用程序功能至關(guān)重要的任務(wù)。
· 確定優(yōu)先事項: 根據(jù)這些任務(wù)在應(yīng)用程序中的重要性和作用,指定這些任務(wù)的優(yōu)先次序。這對于確保關(guān)鍵任務(wù)(比如主控制任務(wù))獲得必要的CPU時間來完成不那么重要的任務(wù)至關(guān)重要。
· 配置任務(wù)屬性: 這可以包括設(shè)置堆棧大小、指定任務(wù)參數(shù)和配置任何任務(wù)特定的屬性。
· 建立任務(wù)間溝通: 為任務(wù)之間的通信設(shè)置機制,例如隊列、信號符或共享數(shù)據(jù)結(jié)構(gòu)。
傳感器校準: 在傳感器是整體的應(yīng)用中,它們的校準對于確保讀數(shù)的精確性至關(guān)重要。特別是,霍爾效應(yīng)傳感器,這是常用的,顯示最初的抵消,必須核算。在校準階段,這些初始補償被確定,隨后從電流測量中減去,以糾正傳感器輸出。這一步驟對保證傳感器數(shù)據(jù)的精度至關(guān)重要。
通信和監(jiān)測: 數(shù)據(jù)通信:處理與外部設(shè)備或系統(tǒng)的通信,用于命令和控制、診斷或遠程監(jiān)控。
管理人機界面(如適用)
在電動機控制應(yīng)用程序中,HMI可以表示簡單的物理控制和指示器(如按鈕、LED或顯示器)或遙控接口。
主要中斷處理: 工作流程的這一部分包括:
· 傳感器數(shù)據(jù)采集: 實時讀取和處理來自傳感器的數(shù)據(jù),這是控制回路反饋所必需的。
· 實時控制循環(huán)執(zhí)行: 這是執(zhí)行主要控制算法的地方(比如530控制或面向字段的控制),通常是為了響應(yīng)定時器的中斷,以保持一致的時間。
· 執(zhí)行者命令生成: 基于控制算法的輸出,生成執(zhí)行器的命令,如電機驅(qū)動。它通常涉及到設(shè)置特定的數(shù)字輸出和壓波器信號的生成。
· 安全及緊急處理: 為了確保對安全和緊急事件(例如緊急停留)立即作出反應(yīng),應(yīng)在這一專門階段按順序并高度優(yōu)先地處理這些事件。這種方法不僅最大限度地減少了處理重大事件的延誤,而且還提高了系統(tǒng)的總體安全性和可靠性。此外,該階段包括檢測和應(yīng)對各種類型的故障,包括過電流、過電壓和硬件故障。通過確定這些任務(wù)的優(yōu)先次序,該系統(tǒng)能夠更好地迅速應(yīng)對和減輕潛在風險,從而確保更安全的業(yè)務(wù)環(huán)境。
關(guān)鍵原則是維護一個簡明的中斷服務(wù)例程(ISR),主要用于在需要進一步處理時通知主要控制任務(wù)。在此上下文中,它的主要作用不是在ISR中執(zhí)行整個控制邏輯,而是將事件的發(fā)生通知高優(yōu)先級任務(wù)。為此,FERERTOS提供了各種通知方法,例如二進制信號符號、任務(wù)通知或隊列。主要的控制任務(wù)--實時操作系統(tǒng)任務(wù)--負責主要的控制算法。一旦收到ISR的通知,這個任務(wù)就會啟動(或解除阻塞)并執(zhí)行前面描述的所有必要步驟。至關(guān)重要的是,主要的控制任務(wù)被分配一個適當?shù)膬?yōu)先級,以確??刂扑惴ū谎杆偬幚碜裱璉SR。
應(yīng)使用看門狗計時器確保主要任務(wù)的運行,該任務(wù)的設(shè)計是定期重置看門狗定時器,展示其正常操作,防止計時器失效并觸發(fā)系統(tǒng)重置或錯誤例程。
系統(tǒng)健康監(jiān)測: 持續(xù)監(jiān)控系統(tǒng)的故障,如過熱或其他異常,并在發(fā)現(xiàn)任何問題時采取適當?shù)男袆印?
伐木和數(shù)據(jù)記錄: 記錄重要事件、錯誤和系統(tǒng)性能指標,用于未來的分析或故障診斷。
圖3:數(shù)據(jù)傳輸:從電機控制器記錄到PC分析"Alt="未定義";
優(yōu)雅的關(guān)門: 確保當應(yīng)用程序停止時電機和控制器安全關(guān)閉.
如果應(yīng)用程序是在多芯單片機/DSP/FPGA上運行,則必須確保適當?shù)暮诵拈g通信機制。這可以通過芯片共享內(nèi)存和軟件中斷來實現(xiàn),盡管該方法可能因平臺不同而有所不同。其他的可能性包括消息傳遞接口、直接內(nèi)存訪問(DMA)通道,或者使用特定于體系結(jié)構(gòu)的專用硬件通信塊。
一種常見的方法是將一個核心專用于處理通信任務(wù),另一個核心專用于主控制環(huán)。為了有效的任務(wù)管理,典型的做法是在兩個核心上都使用實時操作系統(tǒng),但通常情況下,主控制核心是在一個非金屬環(huán)境中運行的,用于流線型、低級別的控制。各種制造商,包括德克薩斯儀器及其控制法律加速器(CLA),ARM的皮層-MDSP擴展器,ST微電子的藝術(shù)加速器,微芯片的DSPIC,NXP的電動機控制共同處理器,英菲良公司的XMC數(shù)學(xué)共同處理器,提供專門的處理單位,以提高在特定嵌入式系統(tǒng)應(yīng)用中的性能。這樣的擴展增加了總體的計算帶寬,并釋放了CPU用于其他任務(wù),如通信、監(jiān)控和診斷。