jiangleidhr
級別: *
|
各位前輩大家好 小弟大四畢業(yè)生初次接觸PLC,要設(shè)計一個4軸機(jī)器人控制系統(tǒng),就是控制四個步進(jìn)電機(jī)(配套驅(qū)動器)。使用CP1H 初步設(shè)計目標(biāo)是實現(xiàn)一個類似示教的功能。就是手動控制運(yùn)動到第一點(diǎn),記錄數(shù)據(jù),再運(yùn)動到第二點(diǎn),記錄數(shù)據(jù)。然后按循環(huán)鍵開始在兩點(diǎn)間循環(huán)運(yùn)動。 我的思路是用高速計數(shù)器記錄脈沖數(shù)實現(xiàn)位置記錄,脈沖輸出控制步進(jìn)電機(jī)。高速計數(shù)器使用線性,加減模式。脈沖輸出用PULS+ACC 上電后運(yùn)動到第一點(diǎn)高速計數(shù)器清零。 第一點(diǎn)運(yùn)動到第二點(diǎn),記錄發(fā)給各個電機(jī)脈沖數(shù),存入存儲器D100—D130(四個電機(jī)分別的脈沖數(shù)) 循環(huán)程序中的脈沖輸出指令的脈沖個數(shù)調(diào)用D100—D130中的數(shù)據(jù)。 循環(huán)程序中先通過比較指令比較存儲器數(shù)據(jù)和0的關(guān)系,確定正反轉(zhuǎn)。 PULS調(diào)用存儲器數(shù)據(jù)為脈沖數(shù)。 脈沖輸出后存儲器數(shù)據(jù)反號。 進(jìn)入下一次循環(huán)。 目前有以下幾點(diǎn)問題 1.脈沖控制數(shù)據(jù)為十六進(jìn)制,雙字;高數(shù)計數(shù)器也是十六進(jìn)制雙字嗎? 2.高速計數(shù)器0當(dāng)前值存于A271(存高四位)和A270(存低四位),若要傳送到D100中,使用MOV A271 D100 加MOV A270 D101 還是使用長傳送MOVL,具體怎么用MOVL? 3.數(shù)據(jù)反號如何實現(xiàn)?我目前用的是用0減數(shù)據(jù)并存儲到該寄存器中。 4.數(shù)據(jù)運(yùn)算。沒有十六進(jìn)制的運(yùn)算指令,是否需要轉(zhuǎn)為十進(jìn)制運(yùn)算,結(jié)果再轉(zhuǎn)為十六進(jìn)制。 5.數(shù)據(jù)運(yùn)算中帶符號不帶符號和有CY無CY是什么含義? 6.高速計數(shù)器的數(shù)據(jù)中如何表示的正負(fù)。 新人初次接觸PLC,還請各位前輩不吝賜教。 |
---|---|
|
卓發(fā)智能
相互學(xué)習(xí),共同進(jìn)步。
級別: 工控俠客
|
歐姆龍PLC控制步進(jìn)或伺服不需要正負(fù)脈沖,只需要更改脈沖指令的控制數(shù)據(jù)就可以了,不用0減什么。三菱是需要正負(fù)脈沖數(shù)據(jù)來確定電機(jī)正反轉(zhuǎn)的。 |
|
---|---|---|
|