精密運動控制器LM628的應用設計(圖)
關鍵詞:精密運動控制器 pid lm628
引言
神經(jīng)網(wǎng)絡技術是自動控制方法發(fā)展的重要方向之一,目前已廣泛地應用于過程控制、機器人控制、生產(chǎn)制造、模式識別等領域。由于神經(jīng)網(wǎng)絡理論的計算量較大,對硬件的要求較高,神經(jīng)網(wǎng)絡理論系統(tǒng)一般十分昂貴。近年來隨著集成電路飛速發(fā)展,基于神經(jīng)網(wǎng)絡理論的控制系統(tǒng)可以用微處理器和專用的大規(guī)模集成電路來實現(xiàn)。這樣就大大降低了系統(tǒng)的成本。大規(guī)模集成芯片lm628是美國國家半導體公司生產(chǎn)的專用精密運動控制器,具有16位的可編程數(shù)字pid調(diào)節(jié)器,可經(jīng)增量碼盤反饋構(gòu)成位置閉環(huán),并能對位置誤差實行pid運算。利用lm628和微處理器可實現(xiàn)低成本、高精度神經(jīng)元pid伺服系統(tǒng)。
lm628主要特點如下:32bit位置、速度、加速度寄存器;16bit的可編程數(shù)字化pid調(diào)節(jié)器;可編程微分采樣周期;8bit或12bit dac輸出;8bit pwm輸出;內(nèi)部梯形速度特性產(chǎn)生器;在運動期間速度、目標位置和濾波器參數(shù)可以改變;具有位置和速度兩種操作模式;實時可編程的中斷;8bit異步并行接口;用于積分增量編碼器標準脈沖輸入接口。
表1 lm628引腳說明
引腳號 | 引腳名稱 | 功能 |
1 | index(in) | 積分增量編碼器標準脈沖輸入選擇端,如該引腳不用必須保持為高 |
2 | a | 編碼器信號輸入 |
3 | b | 編碼器信號輸入 |
4~11 | d7~d0 | 用于與微處理器接口的雙向數(shù)據(jù)總線. |
12 | cs | 片選端,低有效 |
13 | rd | 讀許,低有效 |
14 | gnd | 電源地 |
15 | wr | 寫許,低有效 |
16 | ps | 端口選擇,低為命令狀態(tài),高為數(shù)據(jù)狀態(tài) |
17 | hi | 中斷輸出 |
18~25 | dac7~dac0 | 輸出端口 |
26 | clk | 系統(tǒng)時鐘 |
27 | rst | 復位端,低有效 |
28 | vdd | 電源 |
內(nèi)部結(jié)構(gòu)及工作機理
lm628為28腳雙列直插封裝形式,引腳功能如表1所示,圖1所示為其內(nèi)部功能框圖。
lm628通過8bit并行i/o口與微處理器進行數(shù)據(jù)交換,微處理器可以以命令的形式對lm628的梯形速度特性和pid數(shù)字濾波器進行參數(shù)設定。用于檢測電機旋轉(zhuǎn)位置的增量編碼器的輸出信號通過編碼器輸入接口送入lm628,在lm628中與設定的位置信號相減,形成位置誤差信號,該信號送入pid數(shù)字濾波器進行處理后形成控制信號,通過8bitdac并行接口以數(shù)字化的形式輸出,然后就可以通過數(shù)模轉(zhuǎn)換器和功率放大電路驅(qū)動伺服電機完成精密的運動。
微處理器通過命令的方式對lm628進行控制和參數(shù)設定和讀取,在這些命令中,一般可分為兩大類,一類只有命令代碼,而另一類在命令代碼后還要加上相應的數(shù)據(jù)代碼(例如:設定的參數(shù)值)。lm628的命令集如表2所示。
lm628主要參數(shù)為:最高工作電壓7v;最大功耗為605mw;工作溫度范圍是-40℃~+85℃;電源電壓為:4.5~5.5v;存儲溫度范圍為-60℃~+150℃。
表2 lm628命令集
命令 | 類型 | 說明 | 對應的16進制數(shù) | 數(shù)據(jù)字節(jié)數(shù) |
reset | 初始化 | 復位lm628 | 00 | 0 |
port8 | 初始化 | 選擇8bit輸出 | 05 | 0 |
dfh | 初始化 | 定義原始位置 | 02 | 0 |
sip | 中斷 | 設定標志位置 | 03 | 0 |
lpei | 中斷 | 錯誤時中斷 | 1b | 2 |
lpes | 中斷 | 錯誤時停止 | 1a | 2 |
sbpa | 中斷 | 設置絕對斷電 | 20 | 4 |
sbpa | 中斷 | 設置相對斷電 | 21 | 4 |
mski | 中斷 | 屏蔽中斷 | 1c | 2 |
rsti | 中斷 | 復位中斷 | 1d | 2 |
lfil | 濾波器 | 裝載軌跡線 | 1f | 2~10 |
udf | 濾波器 | 更新濾波器 | 04 | 0 |
ltrj | 軌跡 | 裝載軌跡線 | 1f | 2~14 |
stt | 軌跡 | 開始運動 | 01 | 0 |
rdstat | 報告 | 讀狀態(tài)字節(jié) | 無 | 1 |
rdsigs | 報告 | 讀信號寄存器 | 0c | 2 |
rdip | 報告 | 讀標志位置 | 09 | 4 |
rddp | 報告 | 讀期望位置 | 08 | 4 |
rdrp | 報告 | 讀實時位置 | 0a | 4 |
rddv | 報告 | 讀期望速度 | 07 | 4 |
rdrv | 報告 | 讀實時速度 | 0b | 2 |
rdsum | 報告 | 讀積分和 | 0d | 2 |
lm628在神經(jīng)元pid伺服系統(tǒng)中的應用
以89c52單片機為核心的伺服系統(tǒng)如圖2所示,在該系統(tǒng)中89c52實現(xiàn)用戶的接口,如顯示、鍵盤等,并完成神經(jīng)元的學習算法及在線調(diào)整lm628的參數(shù)。lm628作為伺服控制調(diào)節(jié)器,接收89c52單片機傳送的控制指令及位置、速度、加速度三個運動參數(shù)和數(shù)字濾波器的參數(shù)kp,ki,kd,n(微分采樣周期),同時lm628對碼盤輸出的信號進行處理,獲得位置信號,經(jīng)數(shù)字pid運算后,由dac端口以8bit方式輸出,經(jīng)數(shù)模轉(zhuǎn)換器dac0800轉(zhuǎn)換為模擬信號,再經(jīng)lm12cl組成的放大電路輸出,用于驅(qū)動電動機完成精密的運動。lm628的輸出與誤差的關系式如下式所示。
上式中,u(n)為第n個采樣周期的控制輸出;e(n)為第n個采樣周期的位置誤差;n為正常采樣周期;n為微分采樣周期;kp為比例增益;ki為積分比例增益;kd為微分比例增益。
比例增益kp提供了一個與位置誤差成正比的輸出,積分比例增益ki提供了隨時間增長的輸出,因此保證了靜態(tài)位置誤差為0。微分比例增益kd提供了與位置變化率成正比的輸出,起到了超前控制的作用,減小了系統(tǒng)的超調(diào),保證了系統(tǒng)的動態(tài)特性良好。式(1)與神經(jīng)元pid算法的表達形式一致,因此在lm628中實現(xiàn)了神經(jīng)元的狀態(tài)量變換,狀態(tài)量加權求和的功能,也就是實現(xiàn)了神經(jīng)元pid伺服系統(tǒng)。
結(jié)束語
本文設計的基于lm628神經(jīng)元pid伺服系統(tǒng)具有性能穩(wěn)定可靠,成本低廉等一系列優(yōu)點。系統(tǒng)的動態(tài)性能好,啟動速度快,超調(diào)良好,具有較高的實用價值。
1. lm628 data sheet,1995
2. 陳粵初等,單片機應用系統(tǒng)設計與實踐,北京航空航天大學出版社,1992
3. 王修才、劉祖望,單片機接口技術,復旦大學出版社,1995
評論