麻豆一区区三三四区产品麻豆-麻豆影视国产TV在线观看-麻豆影视国产在线观看-麻豆影视在线-麻豆影视在线观看av-麻豆影院

ycllzl1314
級別: 探索解密
精華主題: 0
發帖數量: 66 個
工控威望: 196 點
下載積分: 901 分
在線時間: 328(小時)
注冊時間: 2013-12-10
最后登錄: 2024-12-28
查看ycllzl1314的 主題 / 回貼
樓主  發表于: 2015-08-01 23:24
遇到點問題,請師傅們幫忙看看。

有D1  D2  D3 `````D10    一共10個寄存器數據,有常數K,

10個寄存器數據順序排放,每次N個相加,要求(D1+D2+DN )最大并且小于 K,求N

如果用PLC寫上面的程序,該怎么寫,一點思路都沒有,PLC用松下的
ycllzl1314
級別: 探索解密
精華主題: 0
發帖數量: 66 個
工控威望: 196 點
下載積分: 901 分
在線時間: 328(小時)
注冊時間: 2013-12-10
最后登錄: 2024-12-28
查看ycllzl1314的 主題 / 回貼
1樓  發表于: 2015-08-01 23:41
每次從D1開始 N個數相加,結果與K比較,符合條件取最大,這是一個思路,查了下,西門子PLC可以做到,

不知道松下能不能做到
xingzb2
級別: 論壇先鋒
精華主題: 0
發帖數量: 692 個
工控威望: 1014 點
下載積分: 1358 分
在線時間: 930(小時)
注冊時間: 2015-07-11
最后登錄: 2025-01-18
查看xingzb2的 主題 / 回貼
2樓  發表于: 2015-08-02 13:28
用10個d代表是10個相加結果,n位相加結果小于K,且n+1>k,輸出結果就行了
(LD  m8000 ,add d1 d2 d32。。。。。。。。。)  意思是 d1+d2=d32   。。。      
   。。。                                                                                                d32+d3=d33
    。。。                                                                                               d33+d4=d34
   。。。                                                                                               。。。。
                                                       D39+D10=d40
條件ld m8000    --   (<D102 Kn)---(>d103 Kn)。。。。             意思是d102小于常數K,而D103大于常數K時,把2傳送到d100當中
輸出mov k2 d100
最后讀出d100的數據就行了xxx
lvpretend
級別: 論壇先鋒
精華主題: 0
發帖數量: 1264 個
工控威望: 1434 點
下載積分: 3699 分
在線時間: 324(小時)
注冊時間: 2015-07-20
最后登錄: 2024-11-29
查看lvpretend的 主題 / 回貼
3樓  發表于: 2015-08-02 14:58
沒看懂:
10個寄存器數據順序排放,每次N個相加,要求(D1+D2+DN )最大并且小于 K,求N。
既然每次有N個數相加,為什么有要求(D1+D2+DN)三個數了。
你是不是說的N個數相加,小于K,最大的組合,要求全部組合還是一個就行(因為可能出現多個結果相同)?
這是個排列組合呀!計算量有點大。
首先,10個數N1,N2,N3,N4,N5,N6,N7,N8,N9,N10。
再定義10個緩沖區A1,,,,,,,,A10,10個緩沖區相加,A1+A2+,,,,,,,+A10
N1,,,,,N10可以對應分別移入A1,,,,A10,具體移動幾個數,看情況。不移入的,填寫0.
如何確定哪些要移入呢?
設一個可以位操作的16位數D(其實只需使用低10位),對這個數每次加1,直到10位完成,2^10=1024,也就是要做1024次。
每次計算結果判斷大于K,丟棄。小于K,結果存放到一個中間暫存變量中(定義MAX),且把這個D也存入一個數據隊列中。
D由1開始計算,1的16位二進制編碼為0000 0000 0000 0001
先把A1,,,A10清0
那么按位尋址D-M1位1,則把N1移入A1,其它為0則不移動
A1,,,,A10累加,結果與K比較,大于K,不管,小于K,存入。

下一個循環,
A1,,,A10清零
D+1=2,二進制編碼為0000 0000 0000 0010
把N2,移入A2,再累加,,,,,

現在你懂了吧,也就是把1024種組合全部計算完,就可以找出全部符合你要求的數。
當然這個算法不夠簡練,是最笨的方法,但編程會方便些。其它算法會復雜些,計算速度也要快些,但編程不方便。

這個用時間中斷來寫,比如1mS中斷一次,這樣在1S多點就能求出結果。
wu32u2
耐得住挫折的打磨,我們將迸發出比鉆石還璀璨的光芒——
級別: 論壇先鋒
精華主題: 0
發帖數量: 1121 個
工控威望: 1474 點
下載積分: 1772 分
在線時間: 994(小時)
注冊時間: 2010-03-01
最后登錄: 2024-09-02
查看wu32u2的 主題 / 回貼
4樓  發表于: 2015-08-03 17:24
用變址寄存器累加,直到數值大于常數k停下,變址寄存器的數值減2就是你要求的N
[ 此帖被wu32u2在2015-08-03 17:35重新編輯 ]
本帖最近評分記錄:
  • 下載積分:+1(最遠是多遠) 感謝分享!
  • 成功的路上需要幫助

    主站蜘蛛池模板: 波多野结衣在线影视免费观看| 亚洲制服丝袜中文字幕自拍| 成aⅴ人免费观看中文字幕| 无码不卡中文字幕| 无码精品福利一区二区三区| 麻豆高潮AV久久久久久久| 金瓶梅2高清在线观看| 久久久久久久精品国产亚洲 | 亚洲精品久久久WWW小说| 国产亚洲精品久久久一区| 99精品国产免费久久| 成a人片亚洲日本久久| 日韩人妻无码精品一专区二区三区| 黄网址免费| 久久国产亚洲精品无码| 欧美FREE性护士VIDE0SHD| 国产精品亚洲av无人区一区| 亚洲一区二区三区乱码| 91精品国久久久久久无码| 欧美乱妇狂野欧美在线视频| 亚洲国产成人资源在线软件| 精品国产一区二区三区麻豆小说| 亚色在线视频| 丁香五月综合激情| 色欲一区二区三区精品A片| 欧美群交系列x| 精品国产人成人亚洲| 日韩精品一区二区三区线观看人| 成年女人毛片视频免费播放| 日韩a无v码手机在线播放| 国产区福利| 久久99精品久久久久久无毒不卡| 精品黑人一区二区三区久久| 国产调教免费专区| 亚州av| 亚洲中文字幕精品久久久久久| 久久国产欧美国日产综合抖音| 国产无遮挡又黄又爽又色| 国产精品无码无片在线观看| 亚洲欧美日韩另类精品一区二区三区| 精品一区二区三区在线|