From 9cfafb4c30b532553eda84daa4ff164dc344a642 Mon Sep 17 00:00:00 2001 From: "zhengxuan.zhang" Date: Fri, 12 Jul 2024 17:41:54 +0800 Subject: [PATCH] =?UTF-8?q?#0006:=20=E6=89=AB=E6=8F=8F=E6=97=B6=E9=80=9F?= =?UTF-8?q?=E5=BA=A6=E7=9A=84=E4=BA=A4=E4=BA=92=EF=BC=9F=E5=BA=95=E5=B1=82?= =?UTF-8?q?=E5=90=91metus=E4=BC=A0=E8=BE=93=E6=80=A5=E5=81=9C=E9=94=99?= =?UTF-8?q?=E8=AF=AF=EF=BC=9F=20jerk=20=E5=92=8C=E5=87=8F=E5=87=8F?= =?UTF-8?q?=E9=80=9F=E5=BA=A6=E7=9A=84=E8=AE=BE=E7=BD=AE=EF=BC=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HSI_HexagonMI_EF3/HSI_Motion.cpp | 57 +++++++++--------- HSI_HexagonMI_EF3/version.h | 4 +- .../ACS Motion/bin/x64/Debug/ACS_Motion.exe | Bin 168960 -> 168960 bytes .../ACS Motion/bin/x64/Debug/ACS_Motion.pdb | Bin 62976 -> 65024 bytes 4 files changed, 31 insertions(+), 30 deletions(-) diff --git a/HSI_HexagonMI_EF3/HSI_Motion.cpp b/HSI_HexagonMI_EF3/HSI_Motion.cpp index 9aa6c3f..1113320 100644 --- a/HSI_HexagonMI_EF3/HSI_Motion.cpp +++ b/HSI_HexagonMI_EF3/HSI_Motion.cpp @@ -234,9 +234,9 @@ HSI_Motion::HSI_Motion() //是否启用日志 CTime tm = CTime::GetCurrentTime(); - //CString csTime = tm.Format("%Y-%m-%d_%H-%M-%S"); //构造时间字符串 - CString csTime = tm.Format("%Y-%m-%d"); //构造时间字符串 - CString dir = L"\\Log\\" + csTime += L"_EF3.Log"; + CString csTime = tm.Format("%Y-%m-%d_%H-%M-%S"); //构造时间字符串 + //CString csTime = tm.Format("%Y-%m-%d"); //构造时间字符串 + CString dir = L"\\Log\\" + csTime += L"_Motion.Log"; g_pLogger = new CLogger(dir); g_pLogger2 = new CLogger(L"\\Log\\EF3_SumTime.Log"); @@ -3541,8 +3541,8 @@ HSI_STATUS HSI_Motion::SetPositionXyz(UINT AxisTypes, double PositionX, double P m_SetPotion_DriveSpeed[1], m_SetPotion_DriveSpeed[1] * 10, m_SetPotion_DriveSpeed[1] * 10, - 0, - 0 + m_SetPotion_DriveSpeed[1] * 100, + m_SetPotion_DriveSpeed[1] * 100 }; SetSingleAxisMotionParams(ACSC_AXIS_1, X_SetmotionParam);//设置X轴定位速度 @@ -3552,8 +3552,8 @@ HSI_STATUS HSI_Motion::SetPositionXyz(UINT AxisTypes, double PositionX, double P m_SetPotion_DriveSpeed[2], m_SetPotion_DriveSpeed[2] * 10 , m_SetPotion_DriveSpeed[2] * 10, - 0, - 0 + m_SetPotion_DriveSpeed[2] * 100, + m_SetPotion_DriveSpeed[2] * 100 }; @@ -3561,11 +3561,11 @@ HSI_STATUS HSI_Motion::SetPositionXyz(UINT AxisTypes, double PositionX, double P g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] 设置Z轴定位速度 %d\n", m_SetPotion_DriveSpeed[3]); double Z_SetmotionParam[5] = { - m_SetPotion_DriveSpeed[3], - m_SetPotion_DriveSpeed[3] * 10 , - m_SetPotion_DriveSpeed[3] * 10, - 0, - 0 + m_SetPotion_DriveSpeed[3], //速度 + m_SetPotion_DriveSpeed[3] * 10 ,//加速度 + m_SetPotion_DriveSpeed[3] * 10, //减速度 + m_SetPotion_DriveSpeed[3] * 100,//加加速度 + m_SetPotion_DriveSpeed[3] * 100 //减减速度 }; SetSingleAxisMotionParams(ACSC_AXIS_8, Z_SetmotionParam);//设置Z轴定位速度 @@ -3744,20 +3744,21 @@ HSI_STATUS HSI_Motion::SetSingleAxisParam(int AXIS, double motionParam[5]) //设 rStatus = HSI_ACS_ERROR; ErrorsHandler(); } - //// 杀死速度 - //if (!acsc_SetKillDeceleration(handleACS, AXIS, motionParam[3], nullptr)) - //{ - // g_pLogger->SendAndFlushWithTime(L"[SetSingleAxisParam] acsc_SetKillDeceleration error\n"); - // rStatus = HSI_ACS_ERROR; - // ErrorsHandler(); - //} - ////抖动 - //if (!acsc_SetJerk(handleACS, AXIS, motionParam[4], nullptr)) - //{ - // g_pLogger->SendAndFlushWithTime(L"[SetSingleAxisParam] acsc_SetJerk error\n"); - // rStatus = HSI_ACS_ERROR; - // ErrorsHandler(); - //} + ACSC_WAITBLOCK* Wait = NULL; + // 杀死速度 + if (!acsc_SetKillDeceleration(handleACS, AXIS, motionParam[3], Wait)) + { + g_pLogger->SendAndFlushWithTime(L"[SetSingleAxisParam] acsc_SetKillDeceleration error\n"); + rStatus = HSI_ACS_ERROR; + ErrorsHandler(); + } + //抖动 + if (!acsc_SetJerk(handleACS, AXIS, motionParam[4], Wait)) + { + g_pLogger->SendAndFlushWithTime(L"[SetSingleAxisParam] acsc_SetJerk error\n"); + rStatus = HSI_ACS_ERROR; + ErrorsHandler(); + } //打印 motionParam[5] g_pLogger->SendAndFlushWithTime(L"[SetSingleAxisParam] AXIS = %d, Vel = %.4f, ACC = %.4f, DCC = %.4f, KillDec = %.4f, Jerk = %.4f\n", @@ -4132,7 +4133,7 @@ HSI_STATUS HSI_Motion::Load_EF3_Motion_Inifile(CString GoogolIniFile) /*m_JogDriveSpeed[j][i] = GetPrivateProfileInt(L"JOG_SPEED", L"JOG_DRIVESPEED_" , 10, csAppPath);*/ //m_JogDriveSpeed[j][i] = speed / (m_Resolution[j] * 50);//速度转换为脉冲 m_JogDriveSpeed[j][i] = speed; //直接读取速度 - g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Motion_Inifile] m_JogDriveSpeed[%d][%d]: %ld %ld\n", i, j, + g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Motion_Inifile] m_JogDriveSpeed[%d][%d]: %ld %ld\n", j, i, speed, m_JogDriveSpeed[j][i]); //打印配置文件 档位速度 GetPrivateProfileString(L"JOG_SPEED", L"JOG_STARTSPEED_" + strGear[i] + axisNum[j], L"10", @@ -7796,7 +7797,7 @@ HSI_STATUS HSI_Motion::GetSpeedXyz(int AxisNum, double& Speed) short AxisNumber = AxisConvertIndex(AxisNum); //将轴号转换为 平台轴号 Speed = m_SetPotion_DriveSpeed[AxisNumber]; //从m_SetPotion_DriveSpeed[AxisNumber]中获取速度 - g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] AxisNum = %d, Speed=%d\n", AxisNumber, m_SetPotion_DriveSpeed[AxisNumber]); + g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] AxisNum = %d, Speed=%d\n", AxisNumber, Speed); //g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] Out\n"); return rStatus; diff --git a/HSI_HexagonMI_EF3/version.h b/HSI_HexagonMI_EF3/version.h index 5eba0b4..fd4f92a 100644 --- a/HSI_HexagonMI_EF3/version.h +++ b/HSI_HexagonMI_EF3/version.h @@ -12,5 +12,5 @@ #define HSI_VERSION_REVNUM #define HSI_VERSION_BUILD_DATE _T(__DATE__ ) #define HSI_VERSION_BUILD_TIME _T(__TIME__ ) -#define HSI_FILE_DESCRIPTION "周四 2.24.06 / 14:56 " -#define HSI_FILE_CSDESCRIPTION _T("周四 2.24.06 / 14:56 ") +#define HSI_FILE_DESCRIPTION "周五 2.24.07 / 17:38 " +#define HSI_FILE_CSDESCRIPTION _T("周五 2.24.07 / 17:38 ") diff --git a/Motion/ACS Motion/bin/x64/Debug/ACS_Motion.exe b/Motion/ACS Motion/bin/x64/Debug/ACS_Motion.exe index b807b43968af0f321394fe1be7ce3a7f7f5bb5fa..e62b219172be2701c3a9a60750e8955362bede16 100644 GIT binary patch delta 6812 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 V9ToCEk8IRd@_D?`wVGeG{TH^jcZdK0 delta 6668 zcmcJUeO#1P+Q+YRX6Bw@hIwP=z6TW)L_|@9K}A`06TvNXbpdVBTo+#|HD3S$6+v&1 zDD!32J?W!akC~ZRnJFe>TA43^>4xQ++M1f?%O|yEv&>5Oxz07y2iE8L=lOhg;p6xI zT`%W4=Un$;=AN;l##&KhUAfqJRp~o<)v`BDr(fd`A)@aL6s63^Tw)cQ>pQs_;N-&q z3;?_A}L{|e*;0;{ai4~)p7K`P@ zHZP3gTRfs+q2FFd9^5 zdqul)zbCa#U^iCsn9ouTAX zSlILiK35ed^&!ggfaj$}34EO@jxF-@ZL0X^B26SN>c)4dV(cQn=Wv^%@^HzbyDF1- zlPa!M`t9f1gg+EXm0kHoRg9_hds^BA9hvNk=GYXHiFS ze|8V1iTI*{wQ5y=E|yi>&GN-S%ik;}RCf|1s@sWm)%#hz$bBXe`7E)Hc=efdmR#H8 z*%0=twfJ%rvk=F50ABT>9#uSh+N>$~2MkaXj|fNKqobf^2mro_LCnLCW@g}Z&k!+d zaf+!Q%5<@H@gO}tOo2sK$;=RUm=msHVFi|i>~tvb1Mv)TnpJxG5=Rm@l7CJ}7aVIQ z?n93iF56o?4#>A9n;fv$Bl!p7NTdRny+w8fp70gft>Cn`=pHLP=WOwWLB3l>S07&s zdZxK0dypPa>`Z(bGp#U)^iZS%|Lu|Go^r}X%y$;q9Wcz8Y_h_$9+|lY>40XM{t$7l zGuadd=Upm}x?xEV(-k;lDYA!w8j|f+peOb~forbG$RC}n92$&prP(xyccj_EV5&vM z%<&qW7hJF_u0fhsPn$Sj-GW4zsv?QN3xLwh1`hbAGHn`Lx> zZk7Q*@e>NaWRgj1h%1N|yY%cf^g)g#-sV!56OBa8B+J=p8mCFt9PE{&zM=eXMw$Ol zReD0G=3tA=`Pr_^%Q7azp~PFp{;2nBl5whxnrTmVDpW(0B@y>fzSAowj&sS(Lq<74 zXPO|M*q?Gf09l_Ad)Q^>aOz5`y_=3kKbs84nI$KAB^R3{t9`QcQCj;tn*J)4`!nea zqz97DC*7CyXSBGfLzBR}&utsZFF^H1-23I)=D~mhv+3G%eyg^4}sRkSCl*>E|hF7%`o=h`4}K=McZ5 zy?#M#ropkqd&KXFImDTiGo193q#vOQXX#`#laAzaldBcEff}7Ixwe65oDCf;0~9_? z{=JH9m%$(h^rPO~C;dJ3rUR3INO4@|Y-f^*#8}$E2Z8B{hiTM)8a09V6LqwT)A^rD zVH>#wwbVnzS9vUYmC9|PX+o&&iAK5hrCd($A+D#TBv57}O_@bJO*@`Iyg*&)ON^rC zFERAd4Q}|meJGMyh9QqDzcVOM;~9m#?rh<|=u@a4iNY5{cqaTLzELq~CaV%Qn{sg( z^I~MI6858IfYm|k3R))E6|{aInrkq_1^m1sGo5IKfVF4WfO*v+F072ua}74w6&G-o z+j0$d7}z6V)mz-$344OpW0pKz?K3?Cv0IqwftQ2UeY8~A8?^j5j}MxH*5hckgBw9> z8D@5X3j7EuSJW{yS2sjLQm=sdBBpkN3qfl;TG22#F%TPyRt(extyi2+7-FFuKU2yw zyU~h+EPufIwd)B(cbE~hN^o2ccsw}}TZ~o$R0ORx-kAnH5k~h31edvU4SuKzTJ_dk zLvLv88;GsLb@zp-_{1+KY(%RctPEN!jU|Ru_%>*5$JnnRLOyR{W}&g%Fc2z&)*_s6 z5Yz;%3z+$k4o~+Fq-OhEkOsTRIs};(6^6i#U~Ijr;8VwfO)_&8ggMH1I;$_X~oC5lWrG2y-B7L(}M+k{^3aOKu;X%Eye_>XD7vp)sgyoZ6q|Y`Sy`;f@QHBjDBa# zMSe)5UUQ6xGjP>22`;iOwvlj#)tjcmb!PJ6vmRUxl{|%iOD*iAHWS)0vsqUA)LRB_ z{ugs4);Wcb(I;S>ORgbaTMN-F(Xjz@{_cDQJ)k?cz($azud{EpT6C@O)j>NhJqOsU znhQOTIO>oyh+~LHL#5{p%g3+-?kT5G_i{>)m)PEX4ktM4y^fycmT!T*mdZu48zP( zws_2(@0L5B?tKiSZ@Ti3^{y$*&t|&H*$M1f1?DK;YV?%4mLT&L6*qQ@MDjeJqp9TaeA=tvtXy=8srC>qw{IvNpR{Pqkz%-s|QSeB}7sEoVpnzV=XPR%ZY&;ovSQDL+i^TfC zi6OQSPayBJGo-H*?-CiEwgYUCrr^Y9Jx2ZSkprB?$hYM*Y`7-xD&2M>Q;zhv2u`S@?*MM3l{wSf?FUIE+JiT4e3R82LWzV zFR;NOLoe{aabyR$fsBFgkUgM-u^03v4j`tJe>g;=e-wGf5hp_`dZxo4w;Ex=0=6c{%JSp{{*gQPDJ!BhqX!uCQ3eFa;~Hn9)cC+u@}jVvC0VfIkS{*|ZU z%W>d`;iVYAwTT)kKV#w7Kd8g^1ayiRuzn5eSNq9&gRQpZwRbv+vyGYsABIej_t9AK zV`E2aZ~U74i{Eb;RbL=RH+B~9HQL0w##r&E#&8=xnV83dV>GN}VtPXdknG##;t zD9q!H9+$fqo`88!jE^Syc=d~q8)71`o@X*l#mHp5XTbGoNxwy zX@HMNhUn?+UwpU^(-<+JAy)Kh&_tJpFrhWLgo6LRKjIQsj<{G#?PpDX=DIL3cWKwc zl(d!iwq^EtE2gkE{G(aSYByW#VTBxj#HwRaW~=ozBv&vV?yEL?J-E+KzuZdvG>Kx1X HKg|CFT0n84 diff --git a/Motion/ACS Motion/bin/x64/Debug/ACS_Motion.pdb b/Motion/ACS Motion/bin/x64/Debug/ACS_Motion.pdb index 9a612fd0510cfec3a5d61725678865be076269a6..839961b41fb42365d2381917c24b24a0170f3633 100644 GIT binary patch delta 9737 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