最近在研究一台磨床,上磨盘需要有一定的倾斜角,本文阐述了利用三个位移传感器通过测量位移转换成角度并界面化,分享给大家。

正向两个位移传感器,侧面方向一个位移传感器。主要的思路为:正向两个位移传感器取平均值作为正向位移,与侧向位移传感器组成三角函数关系,通过arctan算出夹角,内部红色光标设置成X/Y偏移变量,如图大圆半径为100,对应X偏移量为sina*100,对应Y偏移量为cosa*100。这样不但可以直观的观察角度,而且更能直观的观察红色光标的位置。附代码如下:
/////////位移传感器数值整定
CALL FC 105
IN :=DB41.DBW232
HI_LIM :=2.000000e+000
LO_LIM :=0.000000e+000
BIPOLAR:=FALSE
RET_VAL:=#_RetVal
OUT :=#_Dist_S_Kipp_P2
CALL FC 105
IN :=DB41.DBW234
HI_LIM :=2.000000e+000
LO_LIM :=0.000000e+000
BIPOLAR:=FALSE
RET_VAL:=#_RetVal
OUT :=#_Dist_S_DKipp_P3
CALL FC 105
IN :=DB41.DBW230
HI_LIM :=2.000000e+000
LO_LIM :=0.000000e+000
BIPOLAR:=FALSE
RET_VAL:=#_RetVal
OUT :=#_Dist_S_Dreh_P1
///////////////////////////////////
////////数值校正
L #_Dist_S_Dreh_P1
L #_Zero_Val_S_Dreh_P1
-R
L DB34.DBD 274
*R
NEGR
T #_Skal_Dist_Sensor_Dreh
L #_Dist_S_Kipp_P2
L #_Zero_Val_S_Kipp_P2
-R
L DB34.DBD 278
*R
NEGR
T #_Skal_Dist_Sensor_Kipp
L #_Dist_S_DKipp_P3
L #_Zero_Val_S_DKipp_P3
-R
L DB34.DBD 278
*R
NEGR
T #_Skal_Dist_Sensor_DKipp
L #_Skal_Dist_Sensor_Kipp
L #_Skal_Dist_Sensor_DKipp
+R
L 2.000000e+000
/R
T #_Skal_Mwert_Kipp_DKipp
//////////////////////////////////////////////////////
////////清零操作
A DB34.DBX 268.0
A DB41.DBX 23.7
JCN N4_1
L #_Dist_S_Dreh_P1
T #_Zero_Val_S_Dreh_P1
L #_Dist_S_Kipp_P2
T #_Zero_Val_S_Kipp_P2
L #_Dist_S_DKipp_P3
T #_Zero_Val_S_DKipp_P3
R DB34.DBX 268.0
N4_1: NOP 0
L #_Skal_Mwert_Kipp_DKipp
L 0.000000e+000
>=R
S #iv_jump1 //positiv
L #_Skal_Mwert_Kipp_DKipp
L 0.000000e+000
<R
R #iv_jump1 //neg.
L #_Skal_Dist_Sensor_Dreh
L 0.000000e+000
>=R
S #iv_jump2 //pos.
L #_Skal_Dist_Sensor_Dreh
L 0.000000e+000
<R
R #iv_jump2 //neg.
L #_Skal_Dist_Sensor_Dreh
L 0.000000e+000
==R
JCN n5e
L 1.000000e-006
T #_Skal_Dist_Sensor_Dreh
n5e: NOP 0
//////////////////////////////////////////////////////
///////四个象限,第一象限0-90°
A #iv_jump1
A #iv_jump2
JCN e51
L #_Skal_Mwert_Kipp_DKipp
L #_Skal_Dist_Sensor_Dreh
/R
ATAN
T #_Temp_Winkel_Verh_Y_X //pos Winkel (rad)
L 3.140000e+000
/R
L 1.800000e+002
*R
T #_vi_Winkel_A
L #_Temp_Winkel_Verh_Y_X
COS
L 1.000000e+002 //HMI画的半径
*R
RND
T #_vi_EngsteStelle_X
L #_Temp_Winkel_Verh_Y_X
SIN
L 1.000000e+002
*R
RND
T #_vi_EngsteStelle_Y
e51: NOP 0
////////////////////////////////////////////////
////////其他三个象限同理。