月澤
時間嘛!就象乳溝,擠一擠總歸還是有的!
級別: 工控俠客
![]() |
OUT 是怎么算出來=50.03978588 I2.0=0 和 I2.0=1 有什么區別? =1 是表示BIPOLAR 雙極性嗎? =0 是表示UNIPOLAR 單極性嗎? OUT = [ ((FLOAT (IN) -K1)/(K2-1)) * (HI_LIM-O_LIM)] + LO_LIM 這是計算公式 我怎么就算不出 OUT=50.03978588 公式有問題嗎? ![]() |
|
---|---|---|
|
ak47m16u571
苦海無邊,柴米似鞭。歡樂無限,煩擾靠邊。得逍遙處且逍遙
級別: 家園?
![]() |
FC105 先貼全了,再解釋 描述 SCALE功能接受一個整型值(IN),并將其轉換為以工程單位表示的介于下限和上限(LO_LIM和HI_LIM)之間的實型值。將結果寫入OUT。SCALE功能使用以下等式: OUT = [ ((FLOAT (IN) ?K1)/(K2朘1)) * (HI_LIM朙O_LIM)] + LO_LIM 常數K1和K2根據輸入值是BIPOLAR還是UNIPOLAR設置。 ?BIPOLAR:假定輸入整型值介于 ?7648與27648之間,因此K1 = ?7648.0,K2 = +27648.0 ?UNIPOLAR:假定輸入整型值介于0和27648之間,因此K1 = 0.0,K2 = +27648.0 如果輸入整型值大于K2,輸出(OUT)將鉗位于HI_LIM,并返回一個錯誤。如果輸入整型值小于K1,輸出將鉗位于LO_LIM,并返回一個錯誤。 通過設置LO_LIM > HI_LIM可獲得反向標定。使用反向轉換時,輸出值將隨輸入值的增加而減小。 FC105參數 參數 說明 數據類型 存儲區 描述 EN 輸入 BOOL I、Q、M、D、L 使能輸入端,信號狀態為1時激活該功能。 ENO 輸出 BOOL I、Q、M、D、L 如果該功能的執行無錯誤,該使能輸出端信號狀態為1。 IN 輸入 INT I、Q、M、D、L、P、常數 欲轉換為以工程單位表示的實型值的輸入值。 HI_LIM 輸入 REAL I、Q、M、D、L、P、常數 以工程單位表示的上限值。 LO_LIM 輸入 REAL I、Q、M、D、L、P、常數 以工程單位表示的下限值。 BIPOLAR 輸入 BOOL I、Q、M、D、L 信號狀態為1表示輸入值為雙極性。信號狀態0表示輸入值為單極性。 OUT 輸出 REAL I、Q、M、D、L、P 轉換的結果。 RET_VAL 輸出 WORD I、Q、M、D、L、P 如果該指令的執行沒有錯誤,將返回值W#16#0000。對于W#16#0000以外的其它值,參見"錯誤信息"。 錯誤信息 如果輸入整型值大于K2,輸出(OUT)將鉗位于HI_LIM,并返回一個錯誤。如果輸入整型值小于K1,輸出將鉗位于LO_LIM,并返回一個錯誤。ENO的信號狀態將設置為0,RET_VAL等于W#16#0008。 實例 如果輸入I0.0的信號狀態為1 (激活),則執行SCALE功能。在本例中,整型值22將轉換為介于0.0和100.0之間的實型值,并寫入OUT。如I2.0的信號狀態所示,該輸入值為BIPOLAR。 如果該功能的執行沒有錯誤,ENO和Q0.0的信號狀態將設置為1,RET_VAL等于W#16#0000。 ![]() |
---|---|
|
ak47m16u571
苦海無邊,柴米似鞭。歡樂無限,煩擾靠邊。得逍遙處且逍遙
級別: 家園常客
![]() |
手冊里面給的BIPOLAR=1,所以就是雙極性,范圍-27648與27648之間,因此K1 = -27648.0,K2 = +27648.0 IN=22, 工程量(就假設是溫度): HI_LIM (最高) 100 LO_LIM (最低) 0 所以: OUT = [ ((FLOAT (IN) -K1)/(K2-1)) * (HI_LIM-O_LIM)] + LO_LIM 代入 OUT = [ ((FLOAT (22) -(-27648.0))/(27648.0-(-27648.0))) * (100-0)] + 0=50.03 已經狠詳細啦! 能看懂吧? 呼呼。。。喘口氣 |
---|---|
本帖最近評分記錄: |