nealleong
級(jí)別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 56 個(gè)
工控威望: 159 點(diǎn)
下載積分: 735 分
在線時(shí)間: 55(小時(shí))
注冊(cè)時(shí)間: 2016-09-21
最后登錄: 2018-10-16
查看nealleong的 主題 / 回貼
樓主  發(fā)表于: 2017-08-23 12:06
求助一段程序,具體為:一自動(dòng)貼標(biāo)程序,光電傳感器與機(jī)械貼標(biāo)裝置有一段距離,2個(gè)需要貼標(biāo)位置間距為按產(chǎn)品需求可自己設(shè)定,如果間距足夠長(zhǎng),可以光電傳感器檢測(cè)到貼標(biāo)位置后進(jìn)料伺服走相應(yīng)脈沖然后貼標(biāo),但如果第一個(gè)貼標(biāo)位置觸發(fā)光電后還未貼標(biāo)后一位置又觸發(fā)光電了,這種思路就不可行了。

請(qǐng)問(wèn)這樣怎么做程序呢?
咗臉ヅ微笑ぺ
非吾所愿,奈何已離去……
級(jí)別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 471 個(gè)
工控威望: 2130 點(diǎn)
下載積分: 29832 分
在線時(shí)間: 588(小時(shí))
注冊(cè)時(shí)間: 2017-04-08
最后登錄: 2023-07-25
查看咗臉ヅ微笑ぺ的 主題 / 回貼
1樓  發(fā)表于: 2017-08-24 09:08
1、先入先出比較容易做,很直觀
2、算好最多同時(shí)檢測(cè)到多少產(chǎn)品,用大于這個(gè)數(shù)的計(jì)時(shí)器循環(huán)使用
ヅ微笑面對(duì)每一天,即使生活并不美好ヅ
咗臉ヅ微笑ぺ
非吾所愿,奈何已離去……
級(jí)別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 471 個(gè)
工控威望: 2130 點(diǎn)
下載積分: 29832 分
在線時(shí)間: 588(小時(shí))
注冊(cè)時(shí)間: 2017-04-08
最后登錄: 2023-07-25
查看咗臉ヅ微笑ぺ的 主題 / 回貼
2樓  發(fā)表于: 2017-08-24 14:43
引用
引用第14樓nealleong于2017-08-24 11:15發(fā)表的  :


先入先出的話,如果想用脈沖來(lái)定位的話怎么做好呢?寫(xiě)入的數(shù)據(jù)應(yīng)該是什么呢?

我的想法是這樣的,傳感器觸發(fā)到第一個(gè)貼標(biāo)位置的時(shí)候,先把當(dāng)前脈沖量D2寫(xiě)到到一個(gè)寄存器D1中。然后從第二個(gè)貼標(biāo)位置開(kāi)始的相應(yīng)脈沖位通過(guò)先入先出方式寫(xiě)入到一列寄存器D10~D20中,當(dāng)當(dāng)前脈沖量D2-D1=S(傳感器與貼標(biāo)機(jī)構(gòu)的距離,換算為脈沖量),貼標(biāo)機(jī)構(gòu)給一個(gè)貼標(biāo)位置貼標(biāo),同時(shí)把從第二個(gè)貼標(biāo)位置開(kāi)始的相應(yīng)脈沖位通過(guò)移位讀出到D30,貼標(biāo)機(jī)構(gòu)的執(zhí)行條件就是D2-D30=S,就進(jìn)行貼標(biāo)
.......

用棧指令,傳感器觸發(fā)直接存當(dāng)前脈沖量D2加貼標(biāo)位置間距量S(當(dāng)然脈沖量不可能無(wú)限大,到一定值要清零,超過(guò)最大值要換算一下再存),即D2+S存入棧。當(dāng)棧里有數(shù)據(jù)(可以用指針判斷)且預(yù)檢測(cè)位置D1為零時(shí),以先入先出取出棧數(shù)據(jù)到D1,當(dāng)D2=D1時(shí)觸發(fā)貼標(biāo),然后清零D1。這樣做的話就算中間缺料了也不會(huì)有影響。
或者移位加變址也是可以的。
以上為個(gè)人看法,如有錯(cuò)誤望指出
ヅ微笑面對(duì)每一天,即使生活并不美好ヅ