zhu2009
級別: 略有小成
![]() |
將R_PLC上的程序寫到FX5上測試結果發現得出的結果不一樣,傻眼啦 ![]() 在R_PLC和FX5_PLC中分別調用函數(REAL_TO_DINT)將浮點型轉換為雙整形,結果發現二種控制器的結果不一樣怎辦?這怎么解決 ![]() ![]() |
---|---|
|
不小心遇見你
自動項目、PLC、視覺、通訊等工控軟件開發QQ3515716
級別: 工控俠客
![]() ![]() |
浮點數存儲本來就是超出位忽略存儲,加上R系列是新的硬件架構,存儲精度是存在差異。特別是尾數23位,新的架構考慮了第24位是0還是1 |
|
---|---|---|
|
zhu2009
級別: 略有小成
![]() |
謝謝高見!你的意思是說fx5數據類型只支持float型,而R可以最高支持double型造成的,可以這樣理解嗎? |
---|---|
|
zmrs163
級別: 家園常客
![]() |
硬件架構不一樣導致浮點數計算存在細微差別,雖然沒研究三菱的CPU,但是打個比方有的CPU浮點數中間計算精度不止float,結果只是截斷成float,處理方法就是盡量避免這種大范圍數值相除。 |
---|---|
|
zhu2009
級別: 略有小成
![]() |
非常感謝! |
---|---|
|