有些測量儀器輸出的數(shù)據(jù)就是32位浮點(diǎn)數(shù),你那個(gè)儀器,我不清楚數(shù)據(jù)排列是怎樣的。我以某一款測量三相電量儀表為例說明一下,希望你可以從中得到啟發(fā)。情況是這樣的:
1、測量輸出值是32位浮點(diǎn)數(shù),其中低16位存放在第1個(gè)保持寄存器,高16位存放在第2個(gè)保持寄存器。
2、讀取的每個(gè)保持寄存器數(shù)據(jù)是高8位在前,低8位在后。
3、三菱PLC的32位浮點(diǎn)數(shù)是由2個(gè)地址連續(xù)的寄存器存儲,存儲格式是低16位存入第1個(gè),高16位存入第2個(gè)。例如,D1-D2存儲浮點(diǎn)數(shù),那么D1存儲低16位,D2存儲高16位。
4、根據(jù)三述上點(diǎn)描述,轉(zhuǎn)換方法是,先把讀取的儀表每個(gè)保持寄存器的高8位和低8位數(shù)據(jù),組成一個(gè)16位數(shù)據(jù),再把2個(gè)保持寄存器數(shù)據(jù),按照低16位、高16位的順序存入PLC的2個(gè)地址連續(xù)的D寄存器,這樣就得到了浮點(diǎn)數(shù)。 我也是得到奇怪的數(shù)據(jù)后,經(jīng)過思考才發(fā)現(xiàn)問題所在。
[ 此帖被zhangqi_1234在2018-11-02 12:16重新編輯 ]