qiyun0528
級(jí)別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個(gè)
工控威望: * 點(diǎn)
下載積分: * 分
在線時(shí)間: (小時(shí))
注冊(cè)時(shí)間: *
最后登錄: *
查看qiyun0528的 主題 / 回貼
樓主  發(fā)表于: 2011-04-18 20:24
是這樣的,假設(shè)一臺(tái)設(shè)備,現(xiàn)在位置是10米,我設(shè)置它為15米,也就是還要升高5米,如果現(xiàn)在高度是19米,也就是還要降低4米,是正反轉(zhuǎn)的那種,有5根線,電源與ABC三相,但我們只用AB兩相,就是假如高度增加數(shù)值越小就把AB換個(gè)相,編碼器是每轉(zhuǎn)一圈發(fā)出600個(gè)脈沖,螺距為7公分,也就是轉(zhuǎn)一圈升高或降低7公分,我的程序是先計(jì)算出脈沖總的有多少個(gè)  
LD  X1 0UT C251 ( X1接編碼器A相)
LD M8012  MOVP C2  D20 (把編碼器收到的脈沖放到D20中)
MOVP K7 D21
MOVP K600 D22
MULP  D21 D20 D24
DIVP  D24 D22 D25
(升高或者降低的高度等于螺距*總脈沖數(shù)/每一圈的脈沖數(shù)
不知道這個(gè)程序是否正確,還有怎么知道是正轉(zhuǎn)或者反轉(zhuǎn),假如正轉(zhuǎn)是計(jì)A相的脈沖,把反轉(zhuǎn)是不是就計(jì)B相的脈沖,編碼器的A接X1 B接X2

希望大家有知道的可以寫一段程序過來,小女子再次感謝大家了
hsyyqq
級(jí)別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個(gè)
工控威望: * 點(diǎn)
下載積分: * 分
在線時(shí)間: (小時(shí))
注冊(cè)時(shí)間: *
最后登錄: *
查看hsyyqq的 主題 / 回貼
1樓  發(fā)表于: 2011-04-19 10:05
這個(gè) ld x1  out c251  怎么說呢。依我的理解你還沒理解三菱plc為什么要設(shè)個(gè)高速計(jì)數(shù)器,所謂高速當(dāng)然是要中斷處理的,中斷說白了 就是不收plc程序掃描周期的影響,所以你寫這一步多余了 ld m8000  out c251 這樣就可以直接技術(shù)了 你參考三菱編程手冊(cè)上面有高速計(jì)數(shù)器的詳細(xì)資料 2樓的仁兄也說得很詳細(xì)。
  樓主你的思維很混亂,沒搞清楚編碼器的原理 跟plc定位控制的原理,要實(shí)現(xiàn)定位看看三菱的絕對(duì)位置控制 drva d0 d3 y2 y0 你想要他正轉(zhuǎn)就送k999999 反轉(zhuǎn)就k-9999999,定好原地位置。輕松搞定。