/// <summary> /// 圆弧插补 不能用于描述整圆 数据FIFO追加 /// </summary> /// <param name="x"></param> /// <param name="y"></param> /// <param name="radius"></param> /// <param name="dir"></param> public static void Circle_R_FIFO(decimal x, decimal y, decimal radius, short dir) { //向缓存区写入一段插补数据 Gts_Return = MC.GT_ArcXYR( 1, //坐标系--1 Convert.ToInt32(-x * Para_List.Parameter.Gts_Pos_reference), Convert.ToInt32(-y * Para_List.Parameter.Gts_Pos_reference), //插补圆弧终点坐标 [-1073741823,1073741823] Convert.ToDouble(radius * Para_List.Parameter.Gts_Pos_reference), //圆弧半径 dir, //圆弧方向0-顺时针,1-逆时针 Convert.ToDouble(Para_List.Parameter.Circle_synVel / Para_List.Parameter.Gts_Vel_reference), //插补合成速度 [0-32767] Convert.ToDouble(Para_List.Parameter.Circle_synAcc / Para_List.Parameter.Gts_Acc_reference), //插补合成加速度 Convert.ToDouble(Para_List.Parameter.Circle_endVel / Para_List.Parameter.Gts_Vel_reference), //插补终点速度 0 ); Log.Commandhandler("Line_Interpolation--向缓存区写入一段圆心插补数据", Gts_Return); }