2025最新热门电视排行榜-2025最新上映电影-2025最新院线大片抢先看-2025最新在线观影网站-2048国产精品原创综合在线-23部人禽伦

yoyo2001426
級別: 略有小成
精華主題: 0
發帖數量: 231 個
工控威望: 469 點
下載積分: 3522 分
在線時間: 169(小時)
注冊時間: 2017-04-23
最后登錄: 2025-05-29
查看yoyo2001426的 主題 / 回貼
樓主  發表于: 2023-09-07 14:25
上位機 將收到的浮點數值分成兩個D值丟進來PLC
那怎么將兩個D值合并恢復成原本的數值
夢雨天涯
微信hui530527   &
級別: 網絡英雄
精華主題: 0
發帖數量: 4734 個
工控威望: 8143 點
下載積分: 17590 分
在線時間: 3297(小時)
注冊時間: 2016-10-31
最后登錄: 2025-06-11
查看夢雨天涯的 主題 / 回貼
1樓  發表于: 2023-09-07 14:49
不需要結合啊,你認為他是浮點,那么他就自動默認占用兩個字
微信hui530527      b站賬號,非標自動化譚工
請不要隨意加我,不會隨便通過。QQ群942493953
yoyo2001426
級別: 略有小成
精華主題: 0
發帖數量: 231 個
工控威望: 469 點
下載積分: 3522 分
在線時間: 169(小時)
注冊時間: 2017-04-23
最后登錄: 2025-05-29
查看yoyo2001426的 主題 / 回貼
2樓  發表于: 2023-09-07 15:16
上位機的輸出為 1Byte 所以他將浮點數分成4 Byte
以PLC 這端來看的話就是兩個D值
假設 上位機的數值為 45.725
PLC收到為 26342 和 13890 要把這個兩個數值合起來 就是45.725
現在就是不知道怎么合并
wmw186
級別: 略有小成
精華主題: 0
發帖數量: 55 個
工控威望: 314 點
下載積分: 131 分
在線時間: 55(小時)
注冊時間: 2021-11-09
最后登錄: 2025-05-28
查看wmw186的 主題 / 回貼
3樓  發表于: 2023-09-07 15:39
單精度的浮點數本來就占用兩個字呀,你處理使用這個數據用浮點數相關的指令直接操作就行了
陳0928
陳0928
級別: 探索解密
精華主題: 0
發帖數量: 58 個
工控威望: 161 點
下載積分: 7508 分
在線時間: 243(小時)
注冊時間: 2021-11-19
最后登錄: 2025-05-13
查看陳0928的 主題 / 回貼
4樓  發表于: 2023-09-07 15:59
引用
引用第2樓yoyo2001426于2023-09-07 15:16發表的  :
上位機的輸出為 1Byte 所以他將浮點數分成4 Byte
以PLC 這端來看的話就是兩個D值
假設 上位機的數值為 45.725
PLC收到為 26342 和 13890 要把這個兩個數值合起來 就是45.725
現在就是不知道怎么合并

這牽扯到通信格式的問題,不同的PLC、通信模式都有些差異,而PLC會有通信上的特殊寄存器,通常只要用那個就能解決了。如果那寄存器格式不符合,就要自己解碼了
yoyo2001426
級別: 略有小成
精華主題: 0
發帖數量: 231 個
工控威望: 469 點
下載積分: 3522 分
在線時間: 169(小時)
注冊時間: 2017-04-23
最后登錄: 2025-05-29
查看yoyo2001426的 主題 / 回貼
5樓  發表于: 2023-09-08 14:46
上位機 數值為 100.723 從Float 轉成 Log
分成兩個 16Bit 的通道給PLC 數值分別為 11634 和 51522
如何在PLC程式里還原成100.723
陳0928
陳0928
級別: 探索解密
精華主題: 0
發帖數量: 58 個
工控威望: 161 點
下載積分: 7508 分
在線時間: 243(小時)
注冊時間: 2021-11-19
最后登錄: 2025-05-13
查看陳0928的 主題 / 回貼
6樓  發表于: 2023-09-08 16:43
不是你的問題不夠詳細,是你沒理解別人在提什么  
你的通訊如果是走MODBUS的話,會有ABCD、BADC、CDAB、DCBA這些接收方式
最后看要不要重新排列,如果接收的寄存器剛好符合指令的格式,就能直接用指令DEBCD之類的指令去轉
如果你的資訊只有給這樣,別人當然只能給你這樣的答案
工控小c
級別: 工控俠客
精華主題: 0
發帖數量: 449 個
工控威望: 2261 點
下載積分: 6461 分
在線時間: 440(小時)
注冊時間: 2022-10-14
最后登錄: 2025-06-10
查看工控小c的 主題 / 回貼
7樓  發表于: 2023-09-08 17:12
PLC收到的D0=K26342=H66 E6 ,D1=K13890=H36 42,H42 36 E6 66=IEEE754浮點數45.724998474121094,先D0D1高低字節交換后面自己想吧。
引用
引用第2樓yoyo2001426于2023-09-07 15:16發表的  :
上位機的輸出為 1Byte 所以他將浮點數分成4 Byte
以PLC 這端來看的話就是兩個D值
假設 上位機的數值為 45.725
PLC收到為 26342 和 13890 要把這個兩個數值合起來 就是45.725
現在就是不知道怎么合并
wmw186
級別: 略有小成
精華主題: 0
發帖數量: 55 個
工控威望: 314 點
下載積分: 131 分
在線時間: 55(小時)
注冊時間: 2021-11-09
最后登錄: 2025-05-28
查看wmw186的 主題 / 回貼
8樓  發表于: 2023-09-10 07:45
就是常見的通訊過來的數據高低字節順序顛倒問題,swap指令調換下高低字節順序就好了。
卓發智能
相互學習,共同進步。
級別: 工控俠客
精華主題: 0
發帖數量: 2492 個
工控威望: 3109 點
下載積分: 12521 分
在線時間: 672(小時)
注冊時間: 2008-08-03
最后登錄: 2025-06-07
查看卓發智能的 主題 / 回貼
9樓  發表于: 2023-09-10 08:52
高低字節互換再合并,果然是高手。
相信自我!
雪山飛狐
級別: 網絡英雄
精華主題: 0
發帖數量: 13132 個
工控威望: 15886 點
下載積分: 46518 分
在線時間: 1032(小時)
注冊時間: 2019-06-05
最后登錄: 2025-06-12
查看雪山飛狐的 主題 / 回貼
10樓  發表于: 2023-09-10 15:53
思考研究。

主站蜘蛛池模板: 国产一级特黄大片特爽 | 三年片免费观看影视大全视频 | 日产精品一 | 国产专区一va亚洲v天堂 | 丰满大号美女 | 欧美一级特黄高清视频 | 欧美一区二区三区免费播放 | 国产国语一级在线播放视频 | 亚洲精品视频免费观看 | 五月天激情视频a级在线版 无吗一区二区三区 | 日本欧美一区二区三区在线播放 | 国产精品乱码高清在线观看 | 日本中文有 | 日本中文在线观看欧美 | 乱码一二三入区口 | 黑粗硬大欧美 | 电视剧大全免费 | 九九自拍视频 | 欧美日韩亚洲国产综合 | 亚洲欧美综合在线天堂 | 国产在沙发上午睡被强 | 三年在线观看免费完整版中文 | 亚洲男人的天堂一区二区 | 国产欧美日韩精品二区在线 | 91制片厂职场冰与火 | 亚洲国产精品福利片在线观看 | 涩涩www在线观看免费高清 | 大胸视频在线观看国产 | 鲁丝一区二 | 在线观看最新国产专区 | 欧美日韩国产一区二区三区在 | 天天综合亚洲 | 国产高清在线精品二区一 | 理论片在线电影 | 在线精品国产 | 区二区三区观看 | 国产在线精品国自产在线 | 在线观看免费人成片 | 欧美乱妇日本无乱码特黄大片 | 精品大臿蕉视频在线观看 | 日韩欧美一区二区三区视频 |