qiyun0528
級別: *
|
是這樣的,假設一臺設備,現在位置是10米,我設置它為15米,也就是還要升高5米,如果現在高度是19米,也就是還要降低4米,是正反轉的那種,有5根線,電源與ABC三相,但我們只用AB兩相,就是假如高度增加數值越小就把AB換個相,編碼器是每轉一圈發出600個脈沖,螺距為7公分,也就是轉一圈升高或降低7公分,我的程序是先計算出脈沖總的有多少個 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 (升高或者降低的高度等于螺距*總脈沖數/每一圈的脈沖數 不知道這個程序是否正確,還有怎么知道是正轉或者反轉,假如正轉是計A相的脈沖,把反轉是不是就計B相的脈沖,編碼器的A接X1 B接X2 希望大家有知道的可以寫一段程序過來,小女子再次感謝大家了 |
---|---|
|
niningtt
級別: 工控俠客
|
旋轉編碼器是通過光電轉換,將輸出至軸上的機械、幾何位移量轉換成脈沖或數字信號的傳感器,主要用于速度或位置(角度)的檢測。典型的旋轉編碼器是由光柵盤和光電檢測裝置組成。光柵盤是在一定直徑的圓板上等分地開通若干個長方形狹縫。由于光電碼盤與電動機同軸,電動機旋轉時,光柵盤與電動機同速旋轉,經發光二極管等電子元件組成的檢測裝置檢測輸出若干脈沖信號,;通過計算每秒旋轉編碼器輸出脈沖的個數就能反映當前電動機的轉速。 一般來說,根據旋轉編碼器產生脈沖的方式的不同,可以分為增量式、絕對式以及復合式三大類。自動線上常采用的是增量式旋轉編碼器。 增量式編碼器是直接利用光電轉換原理輸出三組方波脈沖A、B和Z相;A、B兩組脈沖相位差90,用于辯向:當A相脈沖超前B相時為正轉方向,而當B相脈沖超前A相時則為反轉方向。Z相為每轉一個脈沖,用于基準點定位。 1、FX2N 型PLC的高速計數器 高速計數器是PLC的編程軟元件,相對于普通計數器,高速計數器用于頻率高于機內掃描頻率的機外脈沖計數,由于計數信號頻率高,計數以中斷方式進行,計數器的當前值等于設定值時,計數器的輸出接點立即工作。 FX2N 型PLC內置有21點高速計數器C235~C255,每一個高速計數器都規定了其功能和占用的輸入點。 ⑴ 高速計數器的功能分配如下: • C235~C245共11個高速計數器用作一相一計數輸入的高速計數,即每一計數器占用1點高速計數輸入點,計數方向可以是增序或者減序計數,取決于對應的特殊輔助繼電器M8□□□的狀態。例如C245占用X002作為高速計數輸入點,當對應的特殊輔助繼電器M8245被置位時,作增序計數。C245還占用X003和X007分別作為該計數器的外部復位和置位輸入端。 • C246~C250共5個高速計數器用作一相二計數輸入的高速計數,即每一計數器占用2點高速計數輸入,其中1點為增計數輸入,另一點為減計數輸入。例如C250占用X003作為增計數輸入,占用X004作為減計數輸入,另外占用X005作為外部復位輸入端,占用X007作為外部置位輸入端。同樣,計數器的計數方向也可以通過編程對應的特殊輔助繼電器M8□□□狀態指定。 • C251~C255共5個高速計數器用作二相二計數輸入的高速計數,即每一計數器占用2點高速計數輸入,其中1點為A相計數輸入,另1點為與A相相位差90º的B相計數輸入。C251~C255的功能和占用的輸入點如表5-14所示。 表5-14 高速計數器C251~C255的功能和占用的輸入點 X000 X001 X002 X003 X004 X005 X006 X007 C251 A B C252 A B R C253 A B R C254 A B R S C255 A B R S 如前所述,分揀單元所使用的是具有A、B兩相90º相位差的通用型旋轉編碼器,且Z相脈沖信號沒有使用。由表5-14,可選用高速計數器C251。這時編碼器的A、B兩相脈沖輸出應連接到X000和X001點。 ⑵ 每一個高速計數器都規定了不同的輸入點,但所有的高速計數器的輸入點都在X000~X007范圍內,并且這些輸入點不能重復使用。例如,使用了C251,因為X000、X001被占用,所以規定為占用這兩個輸入點的其他高速計數器,例如C252、C254等都不能使用。 2、高速計數器的編程 如果外部高速計數源(旋轉編碼器輸出)已經連接到PLC的輸入端,那末在程序中就可直接使用相對應的高速計數器進行計數。例如,在圖5-18中,設定C255的設置值為100,當C255的當前值等于100時,計數器的輸出接點立即工作。從而控制相應的輸出Y010 ON。 由于中斷方式計數,且當前值=預置值時,計數器會及時動作,但實際輸出信號卻依賴于掃描周期。 如果希望計數器動作時就立即輸出信號,就要采用中斷工作方式,使用高速計數器的專用指令,FX2N 型PLC高速處理指令中有3條是關于高速計數器的,都是32位指令。它們的具體的使用方法,請參考FX2N編程手冊。 |
---|---|
|
王大餅
承接上海周邊地區非標電氣設計。QQ864539117
級別: 工控俠客
|
|
|
---|---|---|
|
akang8612
級別: 略有小成
|
要是用西門子的就方便了,,,,,你的程序可以的,A接X1,B接X2就可以了,方向編碼器內部定好的 還有你A,B換相是什么意思??????????? 正轉的時候高速計數器是加,,,反之為減,,,,,,,,,, 你只要把讀到的當前值與設定值比較來控制電機的正反轉就可以了!!!!!!!!! [ 此帖被akang8612在2011-04-18 21:34重新編輯 ] |
---|---|
|
qinchenglim
級別: 論壇先鋒
|
要實現你要求的功能,為什么不用1PG 模塊呢?編程簡單控制精度又高,跟上時代的發展才是硬道理 |
---|---|
|
ngch
深圳工控小匠
級別: 網絡英雄
|
用編碼器當前值與設定值進行比較。來判斷電機運轉方向。 [ 此帖被ngch在2011-04-18 22:35重新編輯 ] |
|
---|---|---|
|
hsyyqq
級別: *
|
這個 ld x1 out c251 怎么說呢。依我的理解你還沒理解三菱plc為什么要設個高速計數器,所謂高速當然是要中斷處理的,中斷說白了 就是不收plc程序掃描周期的影響,所以你寫這一步多余了 ld m8000 out c251 這樣就可以直接技術了 你參考三菱編程手冊上面有高速計數器的詳細資料 2樓的仁兄也說得很詳細。 樓主你的思維很混亂,沒搞清楚編碼器的原理 跟plc定位控制的原理,要實現定位看看三菱的絕對位置控制 drva d0 d3 y2 y0 你想要他正轉就送k999999 反轉就k-9999999,定好原地位置。輕松搞定。 |
---|---|
|
535357
級別: 略有小成
|
真是女同行嗎,稀有,支持!不過你對的基礎知識還要多加練練。你的程序不是一般的錯。 最高幾米啊,告訴我,我幫你編個。 [ 此帖被535357在2011-04-19 23:18重新編輯 ] |
---|---|
|