SM2100是一個(gè)基于CPLD的編碼器解碼接口SOPC(系統(tǒng)在可編程芯片上)芯片方案,,她主要提供了1-4路ABZ相編碼器信號(hào)的解碼及PWM輸出功能,用于對實(shí)際位置的判斷與反饋,,她的高性價(jià)比特點(diǎn)非常適合應(yīng)用于現(xiàn)階段我國數(shù)控設(shè)備中,。
引言
在數(shù)控機(jī)床或其他數(shù)控設(shè)備中,往往都會(huì)用到光柵尺或編碼器等位置傳感部件,,用以來測量機(jī)械運(yùn)動(dòng)部件的實(shí)際運(yùn)動(dòng)位置及速度信息,。那么光柵尺或編碼器測量到的數(shù)值,就需要專門的接收部件來處理,。一般的編碼器輸出的信號(hào)是AB(或ABZ)相正交編碼信號(hào),,之所以這樣編碼也是為了將方向信息加入碼流,同時(shí)也有利抗干擾等方面的處理,。因此在接收這個(gè)信號(hào)時(shí)就需要專門的解碼接口電路,,將所得的數(shù)據(jù)也就是實(shí)際運(yùn)動(dòng)位置/位置信息傳遞給處理單元,或通過總線(比如PCI)傳遞給數(shù)控設(shè)備的中央控制系統(tǒng)中,,讓控制系統(tǒng)的軟硬件根據(jù)測來的實(shí)際信息與理想(邏輯)信息進(jìn)行對比,,然后根據(jù)比較的誤差結(jié)果再去調(diào)節(jié)運(yùn)動(dòng)部件的位置和速度,或做其他中斷,、開關(guān)性的輸出動(dòng)作以達(dá)到控制機(jī)械運(yùn)動(dòng)的目的,。甚至,通過一套完整的算法來把位置,、速度,、力矩等信息納入體系中來,,做實(shí)時(shí)反饋處理,這也就是我們所說的閉環(huán)(半閉環(huán))處理,,我們常見的算法就是PID(或PI)算法,。這樣以來,就比較方便于讓機(jī)械設(shè)備在全自動(dòng)的運(yùn)行下達(dá)到快,、準(zhǔn),、柔的特性。
1 用CPLD來實(shí)現(xiàn)編碼器解碼接口及PWM輸出功能
現(xiàn)在市面上已經(jīng)有專用的編碼器信號(hào)/AB相正交編碼信號(hào)解碼接口芯片,,主要是歐美等國家提供的芯片,,比如HCTL-2016/HCTL-2020等產(chǎn)品。但是這些產(chǎn)品性能價(jià)格比還是比較差,,功能不夠豐富,,使用起來也不靈活方便,很難適合廣大客戶的需求,。
而用中規(guī)模的CPLD來完成AB相正交編碼信號(hào)解碼功能的設(shè)計(jì),,就成了一個(gè)選擇,加之CPLD的可塑性,,及日益走好的性價(jià)比趨勢,,這種方案甚至成為了唯一的最優(yōu)選擇。
一般情況,,Altera/Lattice/Xilinx的市面主流的CPLD都可以滿足設(shè)計(jì)的需求,,邏輯在中等規(guī)模,約500-1000宏單元,,就可以完成1-4通道解碼AB相正交編碼信號(hào)解碼功能,,并且可以外加1-4通道的PWM發(fā)生,以及多路數(shù)字量I/O的擴(kuò)展功能,?;蛘咄瓿?-4軸AB相解碼外加可編程脈沖發(fā)生功能。
而要充分利用CPLD的資源,,并且達(dá)到一個(gè)高性能,、高可靠性的設(shè)計(jì),是需要足夠的技術(shù)力量保障的,,這樣才會(huì)有高性加比的產(chǎn)品出現(xiàn),。
深圳市斯邁迪科技發(fā)展有限公司正式這樣的公司,專業(yè)從事運(yùn)動(dòng)控制SOPC(即CPLD,、 FPGA)的芯片級(jí)技術(shù)方案和平臺(tái)級(jí)技術(shù)方案開發(fā),,并向市場推出多款運(yùn)動(dòng)控制SOPC芯片產(chǎn)品。其中SM2100系列就是1-4路的ABZ相編碼器信號(hào)的解碼及PWM輸出功能SOPC產(chǎn)品。
以下是2100系列的功能介紹
1.1 SM2100特點(diǎn)簡介
SM2100提供了1-4通道的ABZ相解碼,、4倍頻,、16位的編碼器計(jì)數(shù)范圍和16位的PWM脈沖發(fā)生的功能。同時(shí)在芯片內(nèi)部附加了8路通用輸入和8路通用輸出,。由于芯片是SOPC技術(shù)方案,,因此還可以根據(jù)客戶的具體需求做定向化的設(shè)計(jì)。
下面是其性能指標(biāo):
輸入時(shí)鐘CLK頻率最高到80MHz,,標(biāo)準(zhǔn)輸入頻率40MHz,;
PWM的占空比調(diào)節(jié)范圍0~4095,,頻率調(diào)節(jié)范圍150Hz~150KHz,;
16位編碼器計(jì)數(shù)器,可達(dá)計(jì)數(shù)范圍為:1~ 65535,;
AB相輸入可4倍頻,,AB相輸入內(nèi)接3階數(shù)字低通濾器,濾波帶寬4級(jí)可調(diào),。
1.2 SM2100的設(shè)計(jì)應(yīng)用說明
SM2100是一個(gè)SOPC方案,,它的應(yīng)用特點(diǎn)如同常見的ASIC一樣方便,通過8位CPU接口與主控器件接口,,通過內(nèi)部寄存器來設(shè)置其工作狀態(tài)及功能,。
其中CPU接口非常簡單:
8根雙向數(shù)據(jù)總線:D0~7;
7根地址總線:A0~6,;
1根片選線:CS_n,;
1根讀允許線:RD_n;
1根寫允許線:WR_n,。
也可以根據(jù)用戶需要,,提供16位總線接口。除了數(shù)據(jù)總線增加到16根外,,其它信號(hào)與8位總線接口相同,。
下面是主要的功能設(shè)置寄存器介紹。通過這些寄存器的描述,,應(yīng)用工程師們可以一目然地看清了SM2100的具體功能及如何使用,。
1.3 SM2100的主要功能原理及應(yīng)用介紹
A、編碼器解碼計(jì)數(shù)功能
SM2100芯片有1-4通道16位ABZ相編碼器計(jì)數(shù)器,。通過讀取各通道的計(jì)數(shù)寄存器(CNT*)可以得到該通道當(dāng)前的計(jì)數(shù)值,。對各通道的計(jì)數(shù)清零寄存器(CNT*_CLR)的寫操作將把該道的計(jì)數(shù)寄存器清零。
每道計(jì)數(shù)器的輸入端都有4倍頻電路和3階數(shù)字濾波器電路,。數(shù)字濾波器的帶寬分4檔可調(diào),,分別是10M,5M,2.5M,625K,分別可以濾除ABZ相信號(hào)上的寬度小于300ns、600ns,、1.2us,、4.8us的干擾。對模式寄存器(MODE)的寫操作可以分別設(shè)定各通道的濾波器帶寬,。
在Z相信號(hào)的上升沿,,會(huì)把當(dāng)前的編碼器計(jì)數(shù)值鎖存在索引寄存器(CNT*_IDX)中,同時(shí)把狀態(tài)寄存器(STATUS)中的對應(yīng)標(biāo)志位置1,。CPU芯片可以依據(jù)SM2103的狀態(tài)寄存器和索引寄存器的值進(jìn)行回零點(diǎn)處理,。狀態(tài)寄存器的索引標(biāo)志位在狀態(tài)寄存器讀操作后自動(dòng)清零。
B,、PWM輸出
SM2100芯片有1-4通道16位PWM輸出,。用于產(chǎn)生互補(bǔ)(差分)的脈寬調(diào)制信號(hào)有死區(qū)控制功能??梢杂脕韺?相位晶體管的控制完成電機(jī)控制中的功率驅(qū)動(dòng)和3相逆變器功能,,也可以或結(jié)合低通濾波完成DA轉(zhuǎn)換功能。
PWM輸出脈沖的周期可以通過往控制寄存器PWM_TL,、PWM_TH寫入數(shù)據(jù)來設(shè)置,。有效數(shù)據(jù)為16位,即PWM_TL的8位和PWM_TH的低4位,。
第n通道的脈沖寬度可以通過往控制寄存器PWM_WnL,、PWM_WnH寫入數(shù)據(jù)來設(shè)置。有效數(shù)據(jù)為16位,,即PWM_WnL的8位和PWM_WnH的低4位,。
往PWM_EN寄存器的最低位寫入1時(shí),使能PWM,;寫入0時(shí),,禁止PWM輸出(輸出0電平)。
當(dāng)PWM脈沖寬度的設(shè)置大于脈沖周期的設(shè)置值時(shí),,輸出脈沖的占空比保持為100%,。
C、通用IO應(yīng)用
對SM2100芯片的通用輸入輸出的操作,,直接對GPI ,、GPO寄存器進(jìn)行讀寫即可。這項(xiàng)功能可以用來完成對系統(tǒng)中的開關(guān)量控制,,或類似于PLC中的I/O點(diǎn)控制,。
2 2100的應(yīng)用方案舉例介紹
2.1 SM2100芯片在運(yùn)動(dòng)控制卡中的應(yīng)用:基于PCI的讀數(shù)卡SMP330
SMP330卡是利用SM2103及PCI接口芯片設(shè)計(jì)出的32位PCI總線的3通道AB相解碼計(jì)數(shù)和PWM輸出卡。該卡適用于電機(jī)控制,,數(shù)控機(jī)械系統(tǒng)中的位置監(jiān)測,。它體現(xiàn)了上述SM2100系列芯片的一切功能特點(diǎn),,包括3通道16位A/B相編碼計(jì)數(shù)器,3個(gè)16位的PWM信號(hào)輸出,,和多路通用的數(shù)字輸入,、輸出通道。
因?yàn)槭前蹇?jí)別的產(chǎn)品,,因此還做了系統(tǒng)性質(zhì)電路調(diào)理處理,。例如編碼器信號(hào)接口采用差分輸入接收,高速光電隔離,;PWM輸出經(jīng)過74LS06芯片OC輸出,;數(shù)字量的輸出輸入都經(jīng)過光電隔離,其中輸出還經(jīng)過達(dá)林頓管增加驅(qū)動(dòng)電流,;此外還在板上增加了隔離電源模塊,,用以增加系統(tǒng)的抗干擾性。
SMP330卡可以用到多個(gè)應(yīng)用領(lǐng)域:電機(jī)控制,、過程監(jiān)視,、工業(yè)過程控制,。具體的有:抄數(shù)機(jī),、測量分析儀器、半自動(dòng)化定位機(jī)器,、PC機(jī)數(shù)顯等,。它可以完成系統(tǒng)中的讀數(shù)功能,也就是對實(shí)際位置/速度信息的測量,,還有利用PWM功能對電機(jī)進(jìn)行控制,,同時(shí)數(shù)字GPI/O功能也可以用來對系統(tǒng)進(jìn)行I/O擴(kuò)展。
比如抄數(shù)機(jī),。我們在實(shí)際工件的設(shè)計(jì)生產(chǎn)中,,對一些較復(fù)雜或不規(guī)則工件的機(jī)械外型設(shè)計(jì)比較困難,同時(shí)也特別消耗時(shí)間,。這種情況下,,如果有實(shí)際的參考實(shí)物,利用抄數(shù)機(jī)的位置探測部位對實(shí)物的外殼的實(shí)際位置信息快速而又精準(zhǔn)的測得,,直接利用測得的數(shù)據(jù)恢復(fù)出其“外貌”來,,則設(shè)計(jì)就是一個(gè)快速高效的仿制了。那么這個(gè)抄數(shù)機(jī)設(shè)備中主要的處理部件就可以利用SMP330卡來實(shí)現(xiàn),。
2.2 SM2100芯片在數(shù)字伺服驅(qū)動(dòng)器中的應(yīng)用
已經(jīng)有部分客戶利用SM2100芯片方案來實(shí)現(xiàn)其伺服驅(qū)動(dòng)器產(chǎn)品了,,在產(chǎn)品里擔(dān)當(dāng)速度與位置的接口處理功能,以及對PWM輸出產(chǎn)生的功能,。
我們?nèi)绻麑ι蠄D3進(jìn)行深一步的全數(shù)字化電路設(shè)計(jì)性細(xì)分,,蘭色框體部分就可以用SM2100系列芯片方案來實(shí)現(xiàn),,灰色框范圍內(nèi)的功能則可以用DSP或 FPGA來實(shí)現(xiàn),這樣就形成一個(gè)全數(shù)字伺服系統(tǒng)方案,。當(dāng)然在這個(gè)系統(tǒng)中,,SM2100只是成但部分的功能及接口,主體的閉環(huán)算法處理是在DSP或FPGA 實(shí)現(xiàn)(用FPGA方案實(shí)現(xiàn)也是深圳市斯邁迪科技發(fā)展有限公司的產(chǎn)品之一,,它囊括了2100在內(nèi),,更主要的是新型FPGA的特點(diǎn)使得比起DSP方案來有獨(dú)到的優(yōu)勢,此處不再贅述),。
這樣的方案里面,,結(jié)合SM2100來實(shí)現(xiàn),優(yōu)點(diǎn)是增加系統(tǒng)可靠性,、性能好,。
綜上所述,一個(gè)數(shù)字直流伺服系統(tǒng)(驅(qū)動(dòng)器)的處理部分實(shí)現(xiàn),,就可以用一個(gè)DSP結(jié)合一個(gè)SM2100芯片就完成了,。
參考文獻(xiàn)
《SM2100:編碼器解碼計(jì)數(shù)、PWM輸出及I/O擴(kuò)展芯片 手冊》 深圳市斯邁迪科技發(fā)展有限公司
《SMP330:編碼器解碼計(jì)數(shù),、PWM輸出及I/O擴(kuò)展PCI卡 手冊》 深圳市斯邁迪科技發(fā)展有限公司