Example #1
0
 /// <summary>
 /// 整圆插补 数据FIFO追加
 /// </summary>
 /// <param name="x"></param>
 /// <param name="y"></param>
 /// <param name="Center_Start_x"></param>
 /// <param name="Center_Start_y"></param>
 /// <param name="dir"></param>
 public static void Circle_C_FIFO(decimal x, decimal y, decimal Center_Start_x, decimal Center_Start_y, short dir)
 {
     //向缓存区写入一段插补数据
     Gts_Return = MC.GT_ArcXYC(
         1,                                                                                                                                                    //坐标系--1
         Convert.ToInt32(-x * Para_List.Parameter.Gts_Pos_reference), Convert.ToInt32(-y * Para_List.Parameter.Gts_Pos_reference),                             //插补圆弧终点坐标 [-1073741823,1073741823]
         Convert.ToDouble(-Center_Start_x * Para_List.Parameter.Gts_Pos_reference), Convert.ToDouble(-Center_Start_y * 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);
 }