流辰沙
級別: 家園常客
![]() |
要做一個(gè)項(xiàng)目,用機(jī)械手控制上面帶的氣缸。因?yàn)闄C(jī)械手程序是從上至下逐行執(zhí)行,不像PLC那樣循環(huán)掃描。一旦遇到哪個(gè)條件不通,就會一直在那個(gè)位置等待。 那有沒有辦法讓機(jī)械手報(bào)警?我的想法是能不能額外一直執(zhí)行一個(gè)報(bào)警檢測循環(huán)? 看了下手冊,有個(gè)用戶錯(cuò)誤編輯器,到底怎么使用的?每次動哪個(gè)電磁閥都需要添加嗎?有沒有大神能分享個(gè)應(yīng)用了用戶錯(cuò)誤編輯器的范例! ![]() |
---|---|
|
宿遷電工
級別: 論壇先鋒
![]() |
機(jī)器人得有多任務(wù)功能,否則沒用。 |
|
---|---|---|
本帖最近評分記錄:
|
anlyl2014
大吉大利
級別: 網(wǎng)絡(luò)英雄
![]() |
可以的,你可做一個(gè)后臺程序,專門檢測這個(gè)DI,如果條件成立,就發(fā)出一個(gè)用戶警報(bào),或者關(guān)聯(lián)一個(gè)信號,讓機(jī)器暫停、停止程序運(yùn)行。 |
|
---|---|---|
|
1593887
每天進(jìn)步一點(diǎn)足矣!
級別: 略有小成
![]() |
圖片:
![]() 可以,圖片中:編寫一個(gè)檢測指令,判斷if條件是否成立,執(zhí)行標(biāo)簽跳轉(zhuǎn)。 |
---|---|
|
流辰沙
級別: 家園?
![]() |
你說的后臺程序是上位機(jī)程序嗎?機(jī)械手是用控制器在執(zhí)行程序,畢竟不是上位機(jī),能夠多線程運(yùn)行嗎? |
---|---|
|
流辰沙
級別: 家園?
![]() |
像動一個(gè)氣缸,然后等感應(yīng)器亮了再執(zhí)行下一個(gè)動作,這里同時(shí)加個(gè)延時(shí)和if條件嗎? On 7 Wait 0.5 IF Sw(5)=Off Then Error ER_*** EndIf ![]() |
---|---|
|
我看到你了
級別: 家園?
![]() |
明白你的意思,但不是很清楚你用哪個(gè)牌子的機(jī)械手 一般編程語言會有中斷功能,就是后臺一直檢測某些DI,響應(yīng)速度很快的一般就幾ms,中斷觸發(fā)會根據(jù)DI映射找到唯一trap作用域也就是程序段執(zhí)行。你查查編程手冊有沒這個(gè) |
---|---|
本帖最近評分記錄: |
1593887
每天進(jìn)步一點(diǎn)足矣!
級別: 略有小成
![]() |
你好,希望對你有幫助。我們公司的2種機(jī)械手工作過程:1.采用西門子控制系統(tǒng),控制3組機(jī)械手(6個(gè)伺服作X、Y方向運(yùn)行)。每組機(jī)械手帶3個(gè)氣缸,旋轉(zhuǎn)氣缸,取料和送料氣缸。旋轉(zhuǎn)氣缸2個(gè)感應(yīng)器,取料和放料氣缸各一個(gè)感應(yīng)器。 動作:首先執(zhí)行控制系統(tǒng)NC代碼程序,發(fā)送脈沖數(shù)據(jù)→伺服機(jī)械手運(yùn)行到位→PLC檢測到位信號OK,則執(zhí)行取料動作,延時(shí)0.5S→在0.5S時(shí)間內(nèi)檢測感應(yīng)器是否亮,并將此信號作為檢測信號傳送給控制系統(tǒng)→控制系統(tǒng)根據(jù)此信號狀態(tài)判斷執(zhí)行哪一個(gè)跳轉(zhuǎn)→這個(gè)信號再傳送到pLc,pLc再執(zhí)行下一個(gè)動作。 2.發(fā)那料機(jī)械手工作原理和上面類似。 每個(gè)氣缸動作都有一個(gè)檢測信號,由pLC檢測并傳送給控制系統(tǒng),控制系統(tǒng)根據(jù)這個(gè)信號狀態(tài)控制pLc執(zhí)行輸出。😊 |
---|---|
本帖最近評分記錄: |
流辰沙
級別: 家園?
![]() |
我們原來就是這么弄,機(jī)械手上10多個(gè)電磁閥,由機(jī)械手IO輸出到位,然后PLC去控制電磁閥,所以氣缸報(bào)警也是在PLC上面。現(xiàn)在想全部改為由機(jī)械手來控制,可以極大減小兩者的交互工作。然后就遇到了現(xiàn)在問的這個(gè)問題,機(jī)械手程序不好寫報(bào)警 |
---|---|
本帖最近評分記錄: |
流辰沙
級別: 家園?
![]() |
假設(shè)用愛普生的機(jī)械手, On 7 Wait 0.5 Trap 1,Sw(5)=Off,Call TrapAlarm Wait Sw(7) = On .... 每個(gè)地方都指向中斷報(bào)警,反復(fù)調(diào)用嗎? |
---|---|
|
anlyl2014
大吉大利
級別: 網(wǎng)絡(luò)英雄
![]() |
你是想氣缸上的磁開關(guān)信號一旦出錯(cuò),就停止運(yùn)行機(jī)器人程序,而不想讓機(jī)器人一直等那個(gè)錯(cuò)誤信號到位嗎? 方法很多的: 1.等待超時(shí)法,機(jī)器人程序里一定有等待DI..,才到下一步,這樣的程序,可以設(shè)超時(shí)就跳到用戶警報(bào),不會一直等磁開關(guān)信號; 2.錯(cuò)誤觸發(fā)暫停法,你說的磁開關(guān)信號出錯(cuò)時(shí)會在PLC產(chǎn)生警報(bào),你可以關(guān)聯(lián)一下該警報(bào)信號,出錯(cuò)時(shí)就出斷掉機(jī)器人的HOLD暫停信號,機(jī)器人就會暫停。 3.后臺運(yùn)行DI檢測,一旦出錯(cuò)也關(guān)聯(lián)暫停信號,跟第2個(gè)方法相同。 我用的是FANUC Robot,不知你說的機(jī)械手指的是否跟我說的一至?我只能說思路不同品牌機(jī)器人可能操作起來都不盡相同,希望能幫到你。 |
|
---|---|---|
|
流辰沙
級別: 家園?
![]() |
現(xiàn)在機(jī)械手上控制10多個(gè)電磁閥,感應(yīng)器也是十幾個(gè)...完全不經(jīng)過PLC,所以第二種方法行不通 第一種方式,是不是像下圖這樣 ![]() ![]() 建2個(gè)程序文件,然后選擇允許開始多重任務(wù),機(jī)械手會同時(shí)執(zhí)行嗎? |
---|---|
|