PLC控制伺服常用指令和程序段總結

DZRN回原點指令

DZRN K20000 K3000 X12 Y0
這是一個回原點指令,K20000表示剛開始回原點的脈衝頻率,當檢測到X12的上升沿後,脈衝輸出頻率降為3000。當再檢測到X12的下降沿後,脈衝輸出停止。脈衝輸出端為Y0。

PLC控制伺服常用指令和程序段總結

DDRVI相對定位指

x2-------DDRVI K10000 K1000 Y0 Y2

意思為:當X2接通時,以當前的位置為起點,向Y0以1KHz的頻率發送10000個脈衝,電機方向為正方向,並反應在Y2上

一般伺服電機使用的最多的就是位置控制模式,其說明書上的接線 ,不要被嚇到了,cn1是控制端口,cn2是編碼器反饋端口,不用管,有專用線的。

舉個例子:我們把32(plus+)接上+24v,把33(plus-)接上0V,把34(dir+)接上+24v,把35(dir-)接上0V,就接成了最簡單的伺服系統,發現沒有,其實外部三根線就可以了,我們把32和34接在一起, 共用電源正極

不過,伺服是靠脈衝控制的,我們的線路只給伺服發了一個脈衝,而本套伺服是10000脈衝/轉,那麼它只轉動了360/10000,呵呵,幾乎沒動一樣,要使它連續運動,就要給它持續的脈衝,脈衝快,它轉得快,脈衝多,它轉得多。那麼就用到PLC了

我這裡用的是三菱的plc: FX1s和Fx1n的都提供了24V的直流電源,引出端是24+和COM,在輸出端,Y0對應COM0,Y1對應COM1,Y2Y3到Y5對應COM2(我以Fx1s14mr 8入6出 為例)。 當Y0有輸出時,COM0就和Y0接通(內部的,據說是場效應管),同理Y2有輸出時,COM2就和Y2接通,那麼我們控制Y0和Y2的通斷就可以產生脈 衝信號(0101010101)和方向信號(0000001111111)了。產生脈衝還不容易,用個timer進行alt就行了(alt是三菱plc的一個指令,alt y0, 每執行一次,Y0就翻轉)。

PLC控制伺服常用指令和程序段總結

更簡單和強大的DRVA和DRVI

DDRVA:絕對位置驅動 ddrva s1 s2 d1 d2
s1:位置(簡單理解為相對於原點的脈衝數,正負999999之間)
s2:頻率(發脈衝的速度,越高速度越快,不要超過最高速,一般10k,當然也不能低於某個值,和加減速、最高速都有關係,具體參考編程手冊)
d1:輸出脈衝的out口,我們用的y0
d2:輸出方向的out口,我們用y2

DDRVI:相對位置驅動,用法一樣,唯一不同的是S1:簡單理解為相對於當前位置的脈衝數。

也許有人要說了,好像很麻煩,不如用alt呢。alt是簡單,可是我沒看到幾個人用alt驅動伺服

DDRVA的好處是:不用處理脈衝方向,也就是不用我們去管Y2是正還是負,我們只要告訴s1是正是負就好了,是正的話y2自動輸出,是負的話y2不輸出,伺服就自覺的反轉了

還有就是,我們用DDRVA和DDRVI的時候,PLC可以幫我們把發出的脈通過使用它的特殊寄存器記錄下來,就像這樣:ddrva k1000 k500 y0 y2 (驅動伺服電機以每秒500脈衝的速度移動1000個脈衝的距離,表達不準確,自己理解一下),那麼D8140就是1000了,D8141還是0,因為它是 高16位,當低16位的D8140滿了以後(16位,要滿的話估計要到665535去了),D8141才開始使用

注意:Fx1s的高速輸出只有y0和y1,所以為了有效利用資源(有時候要控制兩臺伺服),不是高速的方向信號就交給y2和y3了,一般是y0和y2 配成一對,y1和y3配成一對。

PLC控制伺服常用指令和程序段總結



分享到:


相關文章: