| 
				 
					
					
					 csq663347 
					
				 
				
				
					級別: 略有小成 
			 
					
					
				 | 
			
				
				
				
				 各位老大!ADPRW指令 ADPRW  H1  H4  H2  H2   D1000  M100 這條指令把數據讀回來放在了D1000 和D1001里面了,我要如何轉換成32位浮點數? D1000=4028 (16進制) D1001=C16E (16進制) [ 此帖被csq663347在2022-05-17 20:52重新編輯 ]  | 
		
|---|---|
| 
				 | 
		
| 
				 
					
					
					 夢雨天涯 
					
				 
				微信hui530527   & 
				
				
					級別: 網絡英雄 
			 
					
					
				 | 
			
				
				
				
				 他就是浮點了吧。。  | 
		|
|---|---|---|
				
  | 
		
| 
				 
					
					
					 gxtmdb82164 
					
				 
				
				
					級別: 論壇先鋒 
			 
					
					
				 | 
			
				
				
				
				 要看你讀的源頭是什么格式的,你這個數據隨便找個在線的浮點數轉換器驗證了一下已經是合法的浮點數,如果格式符合你的邀請那么直接用就行了. 你這個數據簡單驗證了一下是-14.9,如果數值是對的,那么后面就可以直接用PLC的浮點運算指令去操作了,實際上你在PLC里面監控的時候也可以切換一下顯示格式以浮點格式顯示,這樣可以直接看到讀進來的數值. modbus浮點數傳輸需要注意的只有一個大小端問題,就是ABCD還是CDAB,或者有變態的是BADC或者DCBA這種的,但是要驗證也是很簡單的,一共就那么幾種組合.  | 
		
|---|---|
| 
				 | 
		
| 
				 
					
					
					 csq663347 
					
				 
				
				
					級別: 略有小成 
			 
					
					
				 | 
			
				
				
				
				 假設 D1000=3F7E  D1001=40A7  用浮點數轉換工具等于0.993174  這兩個16位寄存器如何轉換成32位浮點數。請大師幫忙解答一下謝謝!  | 
		
|---|---|
| 
				 |