一区二区三区成人-一区二区三区www-一区二区三区 日韩-一区二区日韩欧美-一区二区日韩精品中文字幕-一区二区日韩

liangyangli
級別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 17 個
工控威望: 560 點
下載積分: 848 分
在線時間: 183(小時)
注冊時間: 2009-11-25
最后登錄: 2014-09-03
查看liangyangli的 主題 / 回貼
樓主  發(fā)表于: 2013-04-05 01:04
  S7200  PLC都沒有隨機函數(shù)指令,但有時工藝還是需要的,如何生成呢?求高手指教

zedy888
回收 西門子PLC,存儲卡,觸摸屏,變頻器
級別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 1256 個
工控威望: 709 點
下載積分: 750 分
在線時間: 1200(小時)
注冊時間: 2010-09-23
最后登錄: 2024-11-13
查看zedy888的 主題 / 回貼
1樓  發(fā)表于: 2013-04-06 17:41
恰好本人也對此有過研究,現(xiàn)貼出供大家研究,可以用狀態(tài)圖監(jiān)控效果。
偽隨機數(shù)的產(chǎn)生,現(xiàn)在用得較多的是“線性同余法"  公式 = R(n+1) = [R(n) * a + b]  mod  c  為使隨機數(shù)分布盡量均勻,a、b 均為質(zhì)數(shù), c 一般取值域內(nèi)的最大值(mod 是求余數(shù))  從這個式了可以看出,每次產(chǎn)生的隨機數(shù)都跟上一次產(chǎn)生的數(shù)有關(guān)系,那么,第一個數(shù)是怎么來的呢?這就是線性同余法中必須用的的”種子",也就是說,給定某個種子后,所產(chǎn)生的隨機數(shù)序列是固定的,在計算機編程中,一般使用系統(tǒng)時間來初始化種子,就是前面代碼中的 srand((unsigned)time(NULL)); 這一句了。因為每次運行程序的時間肯定不一樣,所以產(chǎn)生散列肯定也不一樣,從而達到“隨機”的目的。  a,b,c 的取值我用的是 a=3373, b=1, c=32768 下面的兩個子程序是我在我的項目(S7-200 226)中產(chǎn)生隨機的系統(tǒng)編號用的,因為我的編號中只有4位數(shù)采用了隨機數(shù),所以下面的程序中用的是整型,最大范圍為32767。如果需要更寬范圍的隨機數(shù),可以采用雙字類型,并適當修改程序,代碼很簡單,就是將上面那個表達式用 S7-200 的指令表示出來就行了。  這兩個子程序是從 MicroWIN V4.0 中導(dǎo)出來的,可以將它們用文本編輯器保存為 AWL 文件后直接導(dǎo)入 MicroWIN。  使用時在第一個掃描周期調(diào)用  Srand 初始種子,需要隨機數(shù)的地方調(diào)用 Random Random 有了個最大范圍參數(shù),可以限制生成的隨機數(shù)的最大范圍,比如我只需要4位隨機數(shù),所以一般這樣調(diào)用   CALL  Random, 10000, vw0,生成的數(shù)就在 0-9999 范圍內(nèi)  下面是代碼: SUBROUTINE_BLOCK Srand:SBR17 TITLE=初始化隨機數(shù)種子 //  // 直接使用系統(tǒng)時鐘的分秒來作為種子 VAR_OUTPUT seed:WORD; END_VAR BEGIN Network 1  LD     SM0.0  TODR   VB1990  Network 2  LD     SM0.0 BTI    VB1994, AC1 SLW    AC1, 8  BTI    VB1995, AC3 +I     AC3, AC1  MOVW   AC1, LW0  END_SUBROUTINE_BLOCK  SUBROUTINE_BLOCK Random:SBR16 TITLE=隨機數(shù)發(fā)生器 //  // 線性同余法獲取偽隨機數(shù),范圍:0~32767 //  // seed = (seed * 3373 + 1) % 32768; //  VAR_INPUT wMax:WORD; // 最大范圍 END_VAR VAR_OUTPUT wOut:WORD; END_VAR BEGIN Network 1  // wSeed * 3373 + 1  => AC1 LD     SM0.0  ITD    VW1940, AC1 *D     3373, AC1 INCD   AC1  Network 2  // AC1 mod 32768 => wSeed LD     SM0.0  MOVD   AC1, AC3 /D     +32768, AC3 *D     32768, AC3 -D     AC3, AC1  DTI    AC1, VW1940  Network 3  // wSeed / 32768 * wMax => wOut LD     SM0.0 DTR    AC1, AC1 /R     32768.0, AC1  ITD    LW0, AC3 DTR    AC3, AC3 *R     AC3, AC1  ROUND  AC1, AC1 DTI    AC1, LW2  END_SUBROUTINE_BLOCK
[ 此帖被zedy888在2013-04-06 17:50重新編輯 ]
長期回收西門子 PLC  變頻器,觸摸屏,成套伺服等,電微:I8I2I923860注明二手電氣

主站蜘蛛池模板: 亚洲精品久久麻豆蜜桃 | 国产一区二区三区久久精品小说 | 亲爱的客栈第二季免费观看完整版 | 紧身裙女教师波多野结衣 | 亚州精品永久观看视频 | 娇小异类videos| 欧美精品1区2区 | 无码国产成人777爽死 | 911色_911色sss在线观看 | 国产精品原创永久在线观看 | 亚洲AV永久无码精品澳门 | 女人国产香蕉久久精品 | yellow高清免费观看日本 | 波多野结在线观看 | china中国小帅gayxnxx | 青青草综合网 | 好逼365| 视频在线观看高清免费 | 精品国产欧美精品v | 地址二地址三2021变更 | 精品在线网站 | 国产精品视频一区二区三区经 | 国色天香 社区视频 | fuqer日本老师 | 国产成人久久精品一区二区三区 | 99精品在线免费观看 | 日本妇人成熟免费不卡片 | 日本高清视频在线观看 | 国产精品亚洲综合久久 | 99精品国产高清一区二区三区香蕉 | 国产精品四虎在线观看免费 | 免费在线观看小视频 | 97色吧| 国产免费一区二区三区免费视频 | 91天堂在线| 亚洲国产成人超福利久久精品 | 久久福利影院 | 久久中文字幕亚洲精品最新 | 午夜成私人影院在线观看 | 我的奶头被客人吸的又肿又红 | 99久久国产综合精品麻豆 |