13771165220
級(jí)別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 323 個(gè)
工控威望: 553 點(diǎn)
下載積分: 1601 分
在線時(shí)間: 85(小時(shí))
注冊(cè)時(shí)間: 2017-11-27
最后登錄: 2024-12-18
查看13771165220的 主題 / 回貼
樓主  發(fā)表于: 2020-05-14 13:54
從M0---M19任何一個(gè)產(chǎn)生上升沿D0就加1,我用了很多ORP感覺(jué)程序看著不舒服。
大家有啥好主意嗎?
anlyl2014
大吉大利
級(jí)別: 網(wǎng)絡(luò)英雄
精華主題: 0
發(fā)帖數(shù)量: 982 個(gè)
工控威望: 8884 點(diǎn)
下載積分: 10262 分
在線時(shí)間: 926(小時(shí))
注冊(cè)時(shí)間: 2014-05-23
最后登錄: 2024-12-22
查看anlyl2014的 主題 / 回貼
1樓  發(fā)表于: 2020-05-15 16:09
給你一個(gè)參考,這里是M0-M31共32位,有變化,D0會(huì)計(jì)數(shù),當(dāng)然,包括M0-M19.

樓主留言:
這個(gè)下降沿也會(huì)加的。
活到老,學(xué)到老!
微信號(hào):anjjyy2013
添加時(shí)注明來(lái)自工控人家園
壓縮包用WINRAR打開(kāi),沒(méi)密碼
anlyl2014
大吉大利
級(jí)別: 網(wǎng)絡(luò)英雄
精華主題: 0
發(fā)帖數(shù)量: 982 個(gè)
工控威望: 8884 點(diǎn)
下載積分: 10262 分
在線時(shí)間: 926(小時(shí))
注冊(cè)時(shí)間: 2014-05-23
最后登錄: 2024-12-22
查看anlyl2014的 主題 / 回貼
2樓  發(fā)表于: 2020-05-17 20:20
引用
引用樓主13771165220于2020-05-14 13:54發(fā)表的 如何簡(jiǎn)化一條指令 :
從M0---M19任何一個(gè)產(chǎn)生上升沿D0就加1,我用了很多ORP感覺(jué)程序看著不舒服。
大家有啥好主意嗎?

樓主總覺(jué)得這不行、那不行,我們提供一些程序,只是如何簡(jiǎn)化程序,供你參考,那么,請(qǐng)問(wèn)樓主你把你的程序發(fā)出來(lái)看看,能解決你說(shuō)的這些問(wèn)題嗎?
例如:M0到M19同時(shí)有通,或者斷開(kāi);如果M0-M19有兩個(gè)或以上同時(shí)通,那么到底要加1或加2?若幾個(gè)同時(shí)通,只加1,有什么實(shí)用意義?
如果不管什么時(shí)候,M0-M19有多少個(gè)接通都要實(shí)時(shí)計(jì)數(shù),就沒(méi)有說(shuō)用ORP,并聯(lián)輸入能解決問(wèn)題的,正確的做法是:M0--D1計(jì)數(shù),M1-D2計(jì)數(shù)余類(lèi)推,最后D1-D20相加結(jié)果存到D0,這樣子不管何時(shí)來(lái)信號(hào),都有加


程序例子,只寫(xiě)M0-M3,供參考。
[ 此帖被anlyl2014在2020-05-17 21:22重新編輯 ]
活到老,學(xué)到老!
微信號(hào):anjjyy2013
添加時(shí)注明來(lái)自工控人家園
壓縮包用WINRAR打開(kāi),沒(méi)密碼
anlyl2014
大吉大利
級(jí)別: 網(wǎng)絡(luò)英雄
精華主題: 0
發(fā)帖數(shù)量: 982 個(gè)
工控威望: 8884 點(diǎn)
下載積分: 10262 分
在線時(shí)間: 926(小時(shí))
注冊(cè)時(shí)間: 2014-05-23
最后登錄: 2024-12-22
查看anlyl2014的 主題 / 回貼
3樓  發(fā)表于: 2020-05-19 07:32
引用
引用第19樓13771165220于2020-05-18 16:50發(fā)表的  :
程序如下,從M202開(kāi)始到M215只要任何其中一個(gè)中繼檢測(cè)到上升沿,必須有蜂鳴器響一下。這條程序不大沒(méi)幾步,如果步數(shù)多的話并聯(lián)的點(diǎn)就比較多,所以想到這個(gè)問(wèn)題。

看了樓主的程序,寫(xiě)了不少注解,這種習(xí)慣不錯(cuò)!沒(méi)有硬件結(jié)構(gòu)布局,我沒(méi)辦法理解是否可以達(dá)到你的設(shè)計(jì)目的,就你本貼而言,似乎你程序沒(méi)寫(xiě)完,無(wú)法達(dá)到M202到M215有接通蜂鳴器就響一下這個(gè)功能要求!響一下,到底響多久也沒(méi)寫(xiě)。
很多熱心網(wǎng)友提供了不少寫(xiě)法供你參考,各有特點(diǎn),總結(jié)一下,供你參考:
1.用FOR指令,循環(huán)法:實(shí)際上是不斷掃描M0-M19是否接通,通就D0加1,要注意M0到M19不能一直通,只要有一個(gè)一直通就會(huì)不停計(jì)數(shù);
2.比較法,就之前我寫(xiě)給你參考的那種,當(dāng)然,你要的只是上升沿有效,只選擇大于的情況是對(duì)的;要注意的是:比較法剛好與FOR循環(huán)剛好相反,M0-M19要一直實(shí)時(shí)給信號(hào);
樓主留言:
真誠(chéng)感謝!我參考參考。
活到老,學(xué)到老!
微信號(hào):anjjyy2013
添加時(shí)注明來(lái)自工控人家園
壓縮包用WINRAR打開(kāi),沒(méi)密碼