文/孟飛 詹承華
EE1588 同步協(xié)議的主要想法是同步網(wǎng)絡(luò)設(shè)備(客戶)的時(shí)鐘與主控制時(shí)鐘,把軟硬件緊密耦合,從而實(shí)現(xiàn)亞微秒級(jí)時(shí)間同步的精度。主要應(yīng)用于以太網(wǎng)中的設(shè)備時(shí)鐘同步,但不限于以太網(wǎng),也能實(shí)現(xiàn)其它網(wǎng)絡(luò)中的時(shí)鐘同步功能,同時(shí)結(jié)合PID 進(jìn)行相位調(diào)整的方法,使其更加精確。
PID 控制是目前應(yīng)用最廣泛的控制方法。該系統(tǒng)運(yùn)行可靠,結(jié)構(gòu)簡單,具有一定的穩(wěn)定性。只有三個(gè)參數(shù)需要設(shè)置:根據(jù)系統(tǒng)偏差E(t)(即設(shè)定目標(biāo)值R(t)與實(shí)際輸出值Y(t)之差),利用系統(tǒng)內(nèi)部比例、積分和微分三種計(jì)算方式,將三種功能的結(jié)果結(jié)合起來。以獲得輸出U(T)控制系統(tǒng),實(shí)現(xiàn)控制效果。
在PID 控制中,比例環(huán)節(jié)的作用是按比例減小偏差值E(t)。而積分環(huán)節(jié)則是用來消除靜差,提高系統(tǒng)的精度和無差的程度,在PID 控制中,積分作用的強(qiáng)度與數(shù)值成反比;微分環(huán)節(jié)是反映偏差值變化的指標(biāo)。當(dāng)超調(diào)量過大時(shí),可增加校正指令,防止對(duì)系統(tǒng)的不利影響,縮短調(diào)節(jié)時(shí)間,改善動(dòng)態(tài)特性。通過以上環(huán)節(jié)的結(jié)合,理論上可以達(dá)到較好的控制效果。PID 控制的有效性取決于數(shù)學(xué)模型的精度,但實(shí)際工程問題大多是時(shí)變非線性的,存在許多不確定性,因此傳統(tǒng)的PID 控制往往難以適應(yīng)實(shí)際工況,性能較差。
它以主從模式工作,時(shí)鐘校準(zhǔn)是根據(jù)時(shí)鐘的同步信息完成的。主時(shí)鐘發(fā)送同步消息具有周期性,從時(shí)鐘會(huì)依據(jù)收到消息的具體的時(shí)間戳信息來計(jì)算消息傳輸?shù)臅r(shí)間、延遲甚至是主從線上的時(shí)鐘偏移量,從而對(duì)本地的時(shí)間進(jìn)行相應(yīng)的調(diào)整,使從時(shí)鐘與主時(shí)鐘之間保持在同一時(shí)間。在時(shí)鐘同步過程中,通過時(shí)鐘偏移以及網(wǎng)絡(luò)延遲測量這兩個(gè)相位。,在時(shí)鐘偏移量測量階段,主時(shí)鐘依次從時(shí)鐘同步消息和消息發(fā)送,接收到來自時(shí)鐘的消息并記錄時(shí)間戳。在網(wǎng)絡(luò)延遲的測量階段中,根據(jù)時(shí)鐘延遲請(qǐng)求報(bào)紙的發(fā)送以及接收對(duì)應(yīng)的通知,從而記錄發(fā)送然后接收的時(shí)間戳。當(dāng)從同步時(shí)鐘周期撥打記錄的四個(gè)要求時(shí),計(jì)算時(shí)鐘誤差和網(wǎng)絡(luò)延遲,改變本地時(shí)鐘,重復(fù)該過程從而保持時(shí)鐘同步。
(1)時(shí)鐘同步模塊分為兩部分:主控模塊和網(wǎng)絡(luò)通信模塊,在時(shí)鐘同步模塊中,主控模塊配有微控制器、實(shí)時(shí)時(shí)鐘、串行口以及USB 接口。網(wǎng)絡(luò)的通信模塊配置的主要控制模塊有電源的模塊、必要的GPIO 接口以及網(wǎng)絡(luò)接口模塊。應(yīng)該選擇主控制芯片STM32F107VC 因?yàn)樗芴峁㎝II 接口的。支持DP83640L 的是以太網(wǎng)的通信模塊PHY芯片,且其具有精確的時(shí)鐘同步功能。在高精度的芯片內(nèi)部,由硬件執(zhí)行時(shí)間戳功能的IEEE1588 時(shí)鐘,可以在包內(nèi)發(fā)送和接收物理播放時(shí)間標(biāo)記。無論什么樣的工作模式,都可以確定消息發(fā)送以及接收的精準(zhǔn)時(shí)間。
(2)系統(tǒng)軟硬件設(shè)計(jì)和提高IEEE1588時(shí)鐘同步精度是提高時(shí)間戳精度的關(guān)鍵。并且越接近物理層,時(shí)間戳的精度越高,同步系統(tǒng)就可以達(dá)到同步精度。物理層芯片DP83640集成了發(fā)送和接收數(shù)據(jù)包的能力,建立了時(shí)間戳硬件標(biāo)記時(shí)間戳(C),它能準(zhǔn)確地反映IEEE1588 報(bào)文的實(shí)際發(fā)送和接收時(shí)間,能消除協(xié)議棧的時(shí)間延遲和抖動(dòng),從而計(jì)算出報(bào)文在傳輸端的延遲時(shí)間。任務(wù)路徑和主從時(shí)鐘偏差更準(zhǔn)確。在此基礎(chǔ)上,硬件時(shí)鐘同步模塊采用了標(biāo)簽時(shí)間戳的方法IEEE1588 協(xié)議。以GPS 時(shí)鐘為基準(zhǔn)時(shí)鐘源,并通過UDP/IP 通信系統(tǒng)進(jìn)行時(shí)鐘同步。
時(shí)鐘同步模塊軟件的部分,由驅(qū)動(dòng)程序、協(xié)議層、應(yīng)用層組成,完成的是底層的硬件控制、人機(jī)交互等功能,驅(qū)動(dòng)層又分為三個(gè)部分:標(biāo)準(zhǔn)驅(qū)動(dòng)、以太網(wǎng)驅(qū)動(dòng)和抑制PTP的時(shí)鐘驅(qū)動(dòng);協(xié)議層分為兩部分:TCP 和IP 協(xié)議,應(yīng)用層分為四部分:串行口的通信、精確時(shí)間同步、以太網(wǎng)通信、實(shí)時(shí)時(shí)鐘等。在協(xié)議層當(dāng)中,嵌入式TCP/IP 協(xié)議棧利用了LWLP LWLP 以太網(wǎng)協(xié)議棧來實(shí)現(xiàn)接收信息中的中斷響應(yīng)機(jī)制,當(dāng)MAC 接收到網(wǎng)絡(luò)信號(hào),來觸發(fā)以太網(wǎng)中斷,主控芯片實(shí)行中斷功能,先進(jìn)行底層處理的功能,然后進(jìn)入P。類似的是:協(xié)議棧;應(yīng)用層協(xié)議通過協(xié)議棧發(fā)送LWLP 協(xié)議棧,讓以太網(wǎng)信息逐步傳遞到MAC 層,這稱之為處理函數(shù)的相關(guān)底層。
PID 參數(shù)整定的方法是采用帶kp、積分系數(shù)ki 以及微分系數(shù)kd 以完成調(diào)節(jié)器的確定。通過理論計(jì)算是可以確定的,就是誤差比較大。在目前主要采用方法是工程整定法、經(jīng)驗(yàn)法、反應(yīng)曲線法、臨界比帶法、衰減曲線法等等。本文采用就是單中的經(jīng)驗(yàn)試錯(cuò)法,大致過程如下:
(1)給出參數(shù)值kp、ki,改變控制系統(tǒng)的給定值然后施加擾動(dòng),進(jìn)行觀察判斷然后控制曲線的形狀。如果曲線不夠完美,就可以改變kp 或者ki,多次進(jìn)行嘗試,直到控制曲線可以完全滿足動(dòng)態(tài)過程質(zhì)量要求為止。因?yàn)樵谶@種情況下,kp 和ki 是最佳參數(shù)值。
(2)依據(jù)為kp 和ki 集再加上微分參數(shù)。因?yàn)槲⒎肿饔檬蔷哂械挚蛊钅芰Φ?,所以在確定kd 值之后,可以適當(dāng)?shù)膶⒁郧霸O(shè)置的kp和ki 值減少,多次進(jìn)行試驗(yàn),直到kp、ki 和kd 達(dá)到最佳值為止。雖然經(jīng)驗(yàn)試錯(cuò)法所設(shè)定的參數(shù)是對(duì)的,但它需要更多的時(shí)間。如果先要減少時(shí)間,我們應(yīng)看一下以下幾點(diǎn):
(1)要依據(jù)控制對(duì)象具有的特點(diǎn)確定初始得參數(shù)值kp、ki 和kd。再結(jié)合實(shí)際運(yùn)行中控制系統(tǒng)的參數(shù)值,使初始參數(shù)接近其理想值集,從而試驗(yàn)次數(shù)。
(2)在試驗(yàn)過程中,如果發(fā)現(xiàn)控制變量變化慢,不能夠快速的達(dá)到穩(wěn)定值,都是kp 過大、ki 過長造成的,兩者不同的是:kp 過大,導(dǎo)致曲線浮動(dòng)過大形成不規(guī)則變化,ki 過長,曲線會(huì)存在振蕩分量,然后接近給定值。進(jìn)而會(huì)根據(jù)曲線的形狀而改變kp 或ki。
(3)kp 和ki 臺(tái)小,而kd 過多導(dǎo)致了振蕩衰減緩慢不衰減,如果差異kp 過小,則振蕩周期短;Ki 太短的話振蕩的周期長。kd 長的話振蕩周期是最短的。
本文首先對(duì)時(shí)鐘同步系統(tǒng)進(jìn)行數(shù)學(xué)建模,然后基于MATLAB 進(jìn)行仿真建模。建立了PID 控制器,對(duì)KP、KI 和KD 參數(shù)進(jìn)行調(diào)節(jié)。通過生成的控制曲線來評(píng)價(jià)這組參數(shù)的控制效果。在時(shí)鐘同步系統(tǒng)上對(duì)所得到的參數(shù)進(jìn)行了驗(yàn)證,減少了實(shí)驗(yàn)的時(shí)間和工作量。結(jié)果令人滿意。然而,平衡中的小振蕩等問題需要改進(jìn)。在簡單的PID 控制中加入模糊控制,對(duì)PID控制器進(jìn)行優(yōu)化設(shè)計(jì)。