From acc2096d7b1e91a5531d1102d8c26519ac6deaa7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=B5=B7=E5=BA=8A=E5=B0=B1=E7=8A=AF=E5=9B=B0?=
<11730503+psx123456@user.noreply.gitee.com>
Date: Mon, 11 Aug 2025 15:07:21 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E9=80=9F=E5=BA=A6=E8=AE=A1?=
=?UTF-8?q?=E7=AE=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
APP/Device/Device_speed/speed_to_bldc.c | 27 +++++++++++++++++++++++--
PROJECT/OS2.ewp | 10 ++++-----
2 files changed, 30 insertions(+), 7 deletions(-)
diff --git a/APP/Device/Device_speed/speed_to_bldc.c b/APP/Device/Device_speed/speed_to_bldc.c
index 913f112..06796c7 100644
--- a/APP/Device/Device_speed/speed_to_bldc.c
+++ b/APP/Device/Device_speed/speed_to_bldc.c
@@ -550,11 +550,22 @@ static void ptz_hori_pid_task()
g_ptz.hori_pid.hall_h2_count +
g_ptz.hori_pid.hall_h3_count;
+ static uint32_t time, lastTime, horiTime;
+ time = OSTimeGet();
+ horiTime = time - lastTime;
+ if (horiTime < 0) {
+ continue;
+ }
+ lastTime = time;
+
if(g_ptz.hori_pid.hall_h123_count >= 2)
{
+ // g_ptz.hori_pid.hall_h123_motor_speed =
+ // 60000.0 * (float)(g_ptz.hori_pid.hall_h123_count/* - 1*/) /
+ // (float)PTZ_HORI_PID_T / PTZ_HORI_ONE_CYCLE_HALL_NUM;
g_ptz.hori_pid.hall_h123_motor_speed =
60000.0 * (float)(g_ptz.hori_pid.hall_h123_count/* - 1*/) /
- (float)PTZ_HORI_PID_T / PTZ_HORI_ONE_CYCLE_HALL_NUM;
+ (float)horiTime / PTZ_HORI_ONE_CYCLE_HALL_NUM;
}
@@ -1191,11 +1202,23 @@ static void ptz_vert_pid_task()
g_ptz.vert_pid.hall_h2_count +
g_ptz.vert_pid.hall_h3_count;
+ static uint32_t time, lastTime, vertTime;
+ time = OSTimeGet();
+ vertTime = time - lastTime;
+ if (vertTime < 0) {
+ continue;
+ }
+ lastTime = time;
+
if(g_ptz.vert_pid.hall_h123_count >= 2)
{
+ // g_ptz.vert_pid.hall_h123_motor_speed =
+ // 60000.0 * (float)(g_ptz.vert_pid.hall_h123_count /*-1*/) /
+ // (float)PTZ_VERT_PID_T / PTZ_VERT_ONE_CYCLE_HALL_NUM;
+
g_ptz.vert_pid.hall_h123_motor_speed =
60000.0 * (float)(g_ptz.vert_pid.hall_h123_count /*-1*/) /
- (float)PTZ_VERT_PID_T / PTZ_VERT_ONE_CYCLE_HALL_NUM;
+ (float)vertTime / PTZ_VERT_ONE_CYCLE_HALL_NUM;
}
diff --git a/PROJECT/OS2.ewp b/PROJECT/OS2.ewp
index 1498948..0ee287b 100644
--- a/PROJECT/OS2.ewp
+++ b/PROJECT/OS2.ewp
@@ -74,7 +74,7 @@