久久精品人成免费_国产精品久久久久久久白皙女_一级片播放_日韩欧美在线免费_亚洲AV无码精品色午夜果冻不卡_成人高潮免费视频

luyanlong1
不停的學習,努力!
級別: 家園常客
精華主題: 0
發帖數量: 152 個
工控威望: 798 點
下載積分: 4974 分
在線時間: 90(小時)
注冊時間: 2013-05-20
最后登錄: 2025-04-19
查看luyanlong1的 主題 / 回貼
樓主  發表于: 2016-08-21 12:05
PLC發送8個字節,儀表回應21個字節,用8位的寄存器沒問題,但是用16位的話,儀表回應回來的21個字節會出現錯位,大俠們有什么好辦法處理一下
lvpretend
級別: 論壇先鋒
精華主題: 0
發帖數量: 1266 個
工控威望: 1436 點
下載積分: 3703 分
在線時間: 324(小時)
注冊時間: 2015-07-20
最后登錄: 2025-02-25
查看lvpretend的 主題 / 回貼
1樓  發表于: 2016-08-21 16:45
你傳回來的數據加入放在D2000開始。

D2005是數據字1的高8位,但在PLC里卻是放在低8位的,也就是需要把數據左移動8位,實際上就是乘以256(16#100)。

由于臺達乘法運算比移位運算更快(處理器有專用乘法器),所以就是D2005 * 256

注意,16位乘法的結果是32位的,也就是占用2個16位數據,我們只需要低16位。所以這也是我喜歡全部用浮點數來運算的原因,反正是32位,不去管16位/32位之間的轉換問題,慢也慢不到哪里去。

MUL  D2005   256   D100
這時D100中的數據就是D2005左移8位的數據了。

D2006是數據字1的低8位,在PLC里本就是放在低8位的,不用管它。

ADD D2006  D100  D200

這個時候D200中的數據就是按要求組合完成的16數據了。

再下來把這個16位數據轉換成32位浮點數

FLT D200  D300   ,為了運算方便,建議不要直接采用地址,而采用變量定義,比如這里定義一個浮點數 R1

則上條指令就是  FLT D200 R1

然后進行小數點處理,因為有3個小數位,所以R1/1000
DEDIV  R1  1000.00  R1  
    
注意,常數要帶小數點,系統才知道是浮點數。
這個時候R1中就把小數位搞好了。

再來做符號位
D2003是符號位,為1就是負數,那么就可以用接點邏輯運算來做
LD=  D2003   1     DEMUL  R1  -1.00 R1

這樣就OK了。
當然,移位也可以,指令還要精簡些,但速度差不多。

寫得有點煩鎖,不知道有寫錯的地方沒有,你參考下,用仿真寫段指令試下。
本帖最近評分記錄:
  • 下載積分:+3(luyanlong1) 真誠感謝!

    主站蜘蛛池模板: 精品国产片 | 天天人人精品 | 欧美国产综合欧美视频 | 国产精品人妻无码久久久郑州 | 夜夜春亚洲嫩草一区二区 | 免费观看麻豆视频 | 麻豆国产传媒精品视频 | 领导在办公室含我奶头小短文 | 免费涩涩视频 | 国产精品国产三级国产aⅴ原创 | 91射网站| 日本大片免费观看完整视频 | 国产精品视频久久一区 | 国产三级农村妇女在线播放 | 先锋影音va在线 | 热の综合热の国产热の潮在线 | 亚洲精品国产综合区久久久久久久 | 美日韩在线视频 | 网友自拍视频在线 | 在线国产精品视频 | 手机在线视频一区 | 夜夜骑狠狠干 | 亚洲国产日韩在线一区模特 | 国产毛片精品一区二区色欲黄A片 | 亚洲热视频 | 久草免费网站 | 免费黄色在线视频网址 | 狠狠躁天天躁无码中文字幕图 | 久草资源免费 | 久久乱码卡一卡2卡三卡四 粗壮挺进邻居人妻 | 成人三级视频在线观看不卡 | 国产精品亚洲аv无码播放 x8x8拨牐拨牐x8免费视频8午夜 | GOGO亚洲肉体艺术 | 国产清纯白嫩初高生在线播放视频 | 精品视频免费播放 | 2021国内精品久久久久久影院 | 国产九九免费在线观看 | 欧美一级爽快片淫片在线观看 | 好黄好硬好爽免费视频一 | 99热综合网 | 巨胸不知火舞露双奶头无遮挡 |