/// <summary> /// 设置插补坐标系 /// </summary> /// <param name="nCardNum"></param> /// <param name="crd"></param> /// <param name="nDim">坐标系维数</param> /// <param name="synVelMax">坐标系的最大合成速度</param> /// <param name="synAccMax">坐标系的最大合成加速度</param> /// <param name="evenTime">坐标系的最小匀速时间</param> /// <param name="profile">规划器对应的轴</param> /// <returns></returns> public override short SetLineOrdi(short nCardNum, short crd, short nDim, double synVelMax, double synAccMax, short evenTime, short[] profile) { short nRtn = 0; var crdPrm = new CMc.CRD_PRM(); crdPrm.m_dimension = nDim; // 建立二/三/四维的坐标系 crdPrm.m_synVelMax = synVelMax; // 坐标系的最大合成速度是: 500 pulse/ms crdPrm.m_synAccMax = synAccMax; // 坐标系的最大合成加速度是: 2 pulse/ms^2 crdPrm.m_evenTime = evenTime; // 坐标系的最小匀速时间为0 crdPrm.m_profile1 = profile[0]; crdPrm.m_profile2 = profile[1]; crdPrm.m_profile3 = profile[2]; crdPrm.m_profile4 = profile[3]; crdPrm.m_profile5 = profile[4]; crdPrm.m_profile6 = profile[5]; crdPrm.m_profile7 = profile[6]; crdPrm.m_profile8 = profile[7]; crdPrm.m_setOriginFlag = 1; // 需要设置加工坐标系原点位置 crdPrm.m_originPos1 = 0; // 加工坐标系原点位置在(0,0),即与机床坐标系原点重合 crdPrm.m_originPos2 = 0; crdPrm.m_originPos3 = 0; crdPrm.m_originPos4 = 0; crdPrm.m_originPos5 = 0; crdPrm.m_originPos6 = 0; crdPrm.m_originPos7 = 0; crdPrm.m_originPos8 = 0; nRtn |= CMc.GT_SetCrdPrm(nCardNum, 1, ref crdPrm); return(nRtn); }