工控康
級別: 略有小成
![]() |
圖片:
![]()
圖片:
![]() 求指教,1,兩個指令中的K1,K3是如何應(yīng)用的,他們的含義的是什么。2,movp K1 D32 ; ZP.PSTRT U0 D30 M32 和 movp K3 D280 ; ZP.PSTRT U5 D278 M308中D32與D30和D280與D278 其中有什么聯(lián)系嗎。3, 指令ZP.PSTRT2 U5 D278 M308中的D278如何處理,求各位大師指教 ![]() |
|
---|---|---|
|
qinchuangyi
級別: 略有小成
![]() |
1。 K1,K3是常數(shù)1和3。 2。movp K1 D32 當M150成立時將常數(shù)1傳送D32一次; ZP.PSTRT1 U0 D30 M32 :軸1定位指令執(zhí)行,M200成立,定位模塊U0熱行定位操作,D30是存儲控制數(shù)據(jù)的首地址。D30是系統(tǒng)區(qū),數(shù)據(jù)不用設(shè)置,D30+1,即D31存儲完成狀態(tài),由系統(tǒng)設(shè)置,0:正常完成;除0以外:異常完成(內(nèi)存儲異常代勞),D30+2,即D32存儲定位編號,由用戶設(shè)置: 定位數(shù)據(jù)編號:1-600; 塊啟動編號:7000-7004; 機器OPR:9001; 快速OPR:9002; 當前值更改:9003; 多軸同時啟動:9004。 M32:指令執(zhí)行完成標志,指令完成時ON并在一次掃描時間持續(xù);若異常完成,M32+1,即M33也會變成ON。 …………movp K1 D32 ,當M150成立,向D32傳送常數(shù)1一次,ZP.PSTRT1 U0 D30 M32,當M200成立,定位模塊U0的軸1(ZP.PSTRT1:軸1,ZP.PSTRT2:軸2……)向定位數(shù)據(jù)編號為1的執(zhí)行定位動作,正常完成時,M32 ON;異常完成時,M33 也ON。 ![]() 樓主留言:又是大師啊,麻煩你了,希望以后有不會的能在您請教,謝謝。剩下的我自己琢磨琢磨,QD75內(nèi)的數(shù)據(jù)存儲器D也是定義好的嗎 |
---|---|
本帖最近評分記錄: |
qinchuangyi
級別: 略有小成
![]() |
![]() [ZP.PSTRT1 U0 D30 M32],該是定位啟動專用指令,是向定位模塊U0的軸1發(fā)送的定位啟動的指令。其中數(shù)據(jù)處理是這樣的: D30,D32是由PLC向U0發(fā)送數(shù)據(jù);D30是首地址,不用設(shè)置,D32是定位數(shù)據(jù)編號,其值由1-600,編號1對應(yīng)的定位地址(絕對系統(tǒng))/位移量(相對系統(tǒng))的數(shù)據(jù)存于2006和2007,2的數(shù)據(jù)存于2016和2017,3的數(shù)據(jù)存于2026和2027……;若D32是1,則U0調(diào)用2006和2007的數(shù)據(jù)進行定位,若D32是2,則調(diào)用2016和2017的數(shù)據(jù)定位。 而D31,M32,M33是存儲接收由UO執(zhí)行定位過程中反饋的信息的,當正常完成定位,向D31寫入0;當異常完成,向D31寫入異常的代碼;當指令執(zhí)行完成,M32在一個掃描時間內(nèi)被置ON;異常完成,則M33也被置ON。 例:movp K1 D32 是設(shè)置的向定位編號1實行定位的操作,所以在指令ZP.PSTRT U0 D30 M32條件成立前,先向#2006寫入定位數(shù)據(jù),比如[DTO K0 K2006 K5000 K1],如果絕對定位系統(tǒng),則是向原點正方向的5000這個地址實行定位;如果是相對定位系統(tǒng),則是向當前位置正方向走5000的位移量。 K5000也可以用D?來代替,這樣只要改變D?的數(shù)據(jù)就可以多點定位。 |
---|---|
本帖最近評分記錄: |
工控康
級別: 略有小成
![]() |
圖片:
![]() 就像剛才你說的那樣在執(zhí)行ZP.PSTRT2之前,先向#8026寫入定位數(shù)據(jù)D324,D280是定位數(shù)據(jù)編號=3,所以定位數(shù)據(jù)寫入#8026. 當指令ZP.PSTRT2 U5 D278 M308完成時M308在一個掃面周期內(nèi)置ON,異常完成時M309也置ON, |
|
---|---|---|
|
qinchuangyi
級別: 略有小成
![]() |
![]() 樓主留言:大師,還是有點不明白的地方,已經(jīng)寫在下面了,你看看我對不對,呵呵 |
---|---|
|
工控康
級別: 略有小成
![]() |
圖片:
![]()
圖片:
![]()
圖片:
![]() 剛才看了一下程序還是有點不明白的地方。前面你所說的:"編號1對應(yīng)的定位地址(絕對系統(tǒng))/位移量(相對系統(tǒng))的數(shù)據(jù)存于2006和2007,2的數(shù)據(jù)存于2016和2017,3的數(shù)據(jù)存于2026和2027……;是不是圖一上所說的,軸一對應(yīng)編號1對應(yīng)的定位地址(絕對系統(tǒng))/位移量(相對系統(tǒng))的數(shù)據(jù)存于2006和2007,編號2對應(yīng)的是2010到2019,編號3對應(yīng)的時2020到2029,那么在中間圖上MOVP K1 D272 定位數(shù)據(jù)編號為1,所以寫定位數(shù)據(jù)寫在#2006, 那么當K=2時,是不是應(yīng)該寫在2010至2019中間的任意一個都行呢,K=3寫在2020至2029呢,就像圖三所示,軸二的定位編號為3時,定位數(shù)據(jù)寫入#8026。求解釋,呵呵, ![]() |
|
---|---|---|
本帖最近評分記錄:
|
qinchuangyi
級別: 略有小成
![]() |
定位數(shù)據(jù)需要存儲32位數(shù)據(jù),一個緩沖地址只能存儲16位,和PLC存儲器D一樣一個只能存16位,需要存32位就需要兩個一起,所以需要兩個地址存儲,2006為低位,2007為高位。 寫入指令要加D,例:[DMOVP D234 U5/G8026]是將D234,D235的數(shù)據(jù)寫入#8026,#8027里,將常數(shù)寫入D234也是一樣,要用32位指令的,即前面加D。[DMOVP K5000 D234]是將常數(shù)以32位的形式寫入D234,D235里。當使用[DMOVP D234 U5/G8026]這樣的指令后,D235就不能再用做存儲其它數(shù)據(jù)了。 軸1:編號1:2006,2016,編號2:2016,2017……2006為首至7996,每一編號+10,共600組。 而2010-2019中并非每一個都是存儲定位地址的,如:2010是存儲運行形式/控制系統(tǒng)/加減速時間等,2011存儲M代碼/條件數(shù)據(jù),2012存儲停頓時間,2013未使用,2014和2015是存儲命令速度的,2016和2017才是存儲定位地址的,2018和2019存儲弧地址。 32位寫入方法要從低位開始寫入,如:[DMOVP D234 U5/G8026]才是正確的,[DMOVP D234 U5/G8027]是不對的。 你在5樓發(fā)的第二張圖片就很好理解,在手動模式,回零按鈕M262被輸入時,先在#2006寫入0,#2006是編號1的定位地址,所以在D272寫入了1,再用定位啟動專用指令ZP.PSTRT1執(zhí)行定位啟動. 第三張圖寫入#8026是軸2的編號2的定位地址,所以用指令ZP.PSTRT2(而不是ZP.PSTRT1). ![]() 樓主留言:現(xiàn)在我想我明白了,那既然2006,2007和2016,2017和2026,2027至7996,7997,是編號1到600定位地址存儲區(qū),那么他們都有什么區(qū)別嗎,除了編號不一樣除外 |
---|---|
本帖最近評分記錄: |
qinchuangyi
級別: 略有小成
![]() |
一樣。但你可以在每一編號中寫入不同的數(shù)據(jù),實現(xiàn)多點定位和不同的速度等的控制。只使用一組數(shù)據(jù)實現(xiàn)多點定位的話須得在每次定位起動前先更改定位數(shù)據(jù),這樣的話寫程序會比較麻煩。 我的QQ:269088868 有興趣加朋友一起學習學習。我是剛學習PLC的,但我是不是做工控的。 你呢?是做工控的嗎? 樓主留言:我只是一個電工而已,上面些都是廠里機器里的程序的截圖,現(xiàn)在正在學習,希望更上一層樓 |
---|---|
本帖最近評分記錄: |
fengxisong
級別: 略有小成
![]() |
我一直不理解,D30系統(tǒng)區(qū)我到那找的到啊。和M32我到那取找到啊。 |
---|---|
|