張諾言
級別: 略有小成
![]() |
家園的朋友,大家好!我是一個(gè)新手,一個(gè)初學(xué)者,有許多的問(wèn)題需要朋友們無(wú)私的幫助,在這兒沒(méi)有什么直接的表示,只能發(fā)自肺腑的說(shuō)聲:謝謝! 最近公司要改造一臺淬火機床,我用歐姆龍CPM2A-40CDR編了一個(gè)小程序,機床的機械部分還沒(méi)有改裝到位,自己編的程序模擬了一下,不是很放 心,所以我把程序傳上來(lái)請各位師傅們幫我鑒定一下有沒(méi)有錯誤,程序中自動(dòng)3,4用到了INC指令是否合理,還有MOV,CPM指令程序有錯誤嗎?再一 個(gè)請求:還有其他的指令能簡(jiǎn)化一下我的程序嗎?特別是自動(dòng)3與自動(dòng)4的程序,就說(shuō)這些吧,敬候各位師傅的回音及建議,謝謝。 |
---|---|
|
meng2008
級別: 家園?
![]() |
![]() 請問(wèn) 1.用了DIFU214.00/211.00后,為什么還要@INC指令? 2.CMP指令也可以與常數比較,可以省去MOV的步驟。 以上為個(gè)人看法~ |
---|---|
|
張諾言
級別: 略有小成
![]() |
謝謝1樓朋友的指點(diǎn),用了DIFU214.00,211.00就沒(méi)必要用@INC,應該寫(xiě)INC是嗎?當時(shí)我對指令不是很熟悉,害怕檢測到的信號誤動(dòng)作,覺(jué)得那樣保險,哈哈... CMP指令中直接與數字比較是剛剛跟您學(xué)的,再次的感謝1樓的朋友! |
---|---|
|
hlq_0815
人生的成功不在于拿到一副好牌,而是怎樣將壞牌打好。
級別: 論壇版主
![]() ![]() ![]() |
不知道你機器的工藝,很難指出動(dòng)作的...... 在編程方面除了1樓提出的之外再提兩點(diǎn): 1、“運行”條件的斷開(kāi)應加點(diǎn)延時(shí),可以預防機械震動(dòng)或開(kāi)關(guān)瞬時(shí)接觸不良而誤停機(還找不到原因); 2、*層與*次的比較可以用表比較TCMP(85),一個(gè)指令代替所有層、一個(gè)指令代替所有次,簡(jiǎn)潔方便。 |
|
---|---|---|
|
張諾言
級別: 略有小成
![]() |
謝謝3樓的朋友,雖然我有點(diǎn)不明白TCMP指令的用法,但是我會(huì )去查資料好好學(xué)習一下,在這兒我很想請教各位師傅們一些這方面的一些疑惑,只因為自己水平太低,有問(wèn)題卻提不出問(wèn)題,很明顯自己的基礎不行,還需再用功學(xué)習了。感謝家園為我們初學(xué)者提供了如此好的場(chǎng)地和機會(huì ),謝謝大家... |
---|---|
|
張諾言
級別: 略有小成
![]() |
圖片:
![]() 貼還沒(méi)有被刪除之前,再占用各位師傅們點(diǎn)時(shí)間請教一下,發(fā)個(gè)貼圖,圖里面的MOV #1 DM2;CMP DM1 DM2;AND 255.06 OUT 214.01; 能不能改成:MOV #1 214; 因為#1 能寫(xiě)為:0010,當#1傳到214這個(gè)通道號時(shí),那么通道里的214.01為1就變?yōu)镺N了...這樣說(shuō)對嗎?如果能行是不是簡(jiǎn)短了掃描時(shí)間呢?掃描時(shí)間的太長(cháng)時(shí),在工程實(shí)際運行 中有停滯現象嗎?謝謝 |
---|---|
|
hlq_0815
人生的成功不在于拿到一副好牌,而是怎樣將壞牌打好。
級別: 論壇版主
![]() ![]() ![]() |
用數字傳送–MOVD(83)可以辦得到。 奉LZ不要再折騰那些復雜又煩鎖的程序了,下面這程序就可以滿(mǎn)足你24條和50條的所有程序: ![]() 這樣的話(huà)你原程序的DIFU 214.00和DIFU 211.00 要改用別的地址,214.00~214.15和211.00~211.15已被兩TCMP(85)占用; 遞增指令暫存改為DM0和DM20; 將D1~D16(D21~D36)分別賦值0~15,當D0=0時(shí)214.00置位,以此類(lèi)推當D0=15時(shí)214.15置位。D20與211.00~211.15亦同理。 [ 此帖被hlq_0815在2009-08-13 20:57重新編輯 ] |
|
---|---|---|
|