From 868b60ff67eb21ad0442356b702c6788f82d1c7c Mon Sep 17 00:00:00 2001
From: tangchao0503 <735056338@qq.com>
Date: Fri, 15 Mar 2024 14:45:33 +0800
Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E5=A4=8Dbug=EF=BC=9A?=
=?UTF-8?q?=E5=85=B3=E9=97=AD-=E6=89=93=E5=BC=80=E9=A9=AC=E8=BE=BE?=
=?UTF-8?q?=E7=94=B5=E6=BA=90=E5=90=8E=EF=BC=8C=E6=80=BB=E6=9C=89=E4=B8=80?=
=?UTF-8?q?=E4=B8=AA=E9=A9=AC=E8=BE=BE=E8=BF=9E=E6=8E=A5=E4=B8=8D=E4=B8=8A?=
=?UTF-8?q?=EF=BC=8C=E9=80=9A=E8=BF=87=E5=88=A0=E6=8E=89=E9=87=8D=E5=BB=BA?=
=?UTF-8?q?=E9=A9=AC=E8=BE=BE=E5=AF=B9=E8=B1=A1=E8=A7=A3=E5=86=B3=EF=BC=9B?=
=?UTF-8?q?=202=E3=80=81=E5=B0=86=E4=BB=BB=E6=80=BB=E7=9A=84=E9=A9=AC?=
=?UTF-8?q?=E8=BE=BE=E6=8E=A7=E5=88=B6=E5=BA=93=E5=8A=A0=E5=85=A5=E6=9C=AC?=
=?UTF-8?q?=E5=B7=A5=E7=A8=8B=EF=BC=9B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
HPPA.sln | 23 +++++++++++++--
HPPA/HPPA.cpp | 75 ++++++++++++++++++++++++++++++++++++++---------
HPPA/HPPA.h | 2 ++
HPPA/HPPA.vcxproj | 6 ++--
HPPA/about.ui | 2 +-
5 files changed, 88 insertions(+), 20 deletions(-)
diff --git a/HPPA.sln b/HPPA.sln
index 908f7ad..45ff640 100644
--- a/HPPA.sln
+++ b/HPPA.sln
@@ -1,20 +1,39 @@

Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 15
-VisualStudioVersion = 15.0.28307.1267
+# Visual Studio Version 17
+VisualStudioVersion = 17.5.33502.453
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HPPA", "HPPA\HPPA.vcxproj", "{E7886664-B69E-4781-BCBE-804574FB4033}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B12702AD-ABFB-343A-A199-8E24837244A3} = {B12702AD-ABFB-343A-A199-8E24837244A3}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vincecontrol", "..\..\cpp_project_vs2019\vincecontrol\vincecontrol\vincecontrol.vcxproj", "{B12702AD-ABFB-343A-A199-8E24837244A3}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
Release|x64 = Release|x64
+ Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{E7886664-B69E-4781-BCBE-804574FB4033}.Debug|x64.ActiveCfg = Debug|x64
{E7886664-B69E-4781-BCBE-804574FB4033}.Debug|x64.Build.0 = Debug|x64
+ {E7886664-B69E-4781-BCBE-804574FB4033}.Debug|x86.ActiveCfg = Debug|x64
+ {E7886664-B69E-4781-BCBE-804574FB4033}.Debug|x86.Build.0 = Debug|x64
{E7886664-B69E-4781-BCBE-804574FB4033}.Release|x64.ActiveCfg = Release|x64
{E7886664-B69E-4781-BCBE-804574FB4033}.Release|x64.Build.0 = Release|x64
+ {E7886664-B69E-4781-BCBE-804574FB4033}.Release|x86.ActiveCfg = Release|x64
+ {E7886664-B69E-4781-BCBE-804574FB4033}.Release|x86.Build.0 = Release|x64
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.ActiveCfg = Debug|x64
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.Build.0 = Debug|x64
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x86.ActiveCfg = Debug|Win32
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x86.Build.0 = Debug|Win32
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.ActiveCfg = Release|x64
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.Build.0 = Release|x64
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.ActiveCfg = Release|Win32
+ {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/HPPA/HPPA.cpp b/HPPA/HPPA.cpp
index 39b7794..7c09a00 100644
--- a/HPPA/HPPA.cpp
+++ b/HPPA/HPPA.cpp
@@ -105,12 +105,10 @@ HPPA::HPPA(QWidget *parent)
- //Âí´ï
- m_xMotor = new VinceControl(NETTCP, 6002);//Ïà»úÖá
- m_yMotor = new VinceControl(NETTCP, 6001);//Ô±¾£º6001£»º«¹¤²âÊÔ£º6003
- m_xConnectCount = 0;
- m_yConnectCount = 0;
-
+
+ m_xMotor = nullptr;
+ m_yMotor = nullptr;
+ newMotor();
//m_TestXmotorStausThread = new MotorWorkerThread(m_xMotor);
@@ -179,7 +177,6 @@ HPPA::HPPA(QWidget *parent)
connect(ui.graphicsView->imager, SIGNAL(leftMouseButtonPressed(int, int)), this, SLOT(onimagerSimulatorMove(int, int)));
- connect(m_xMotor, SIGNAL(SendLogToCallClass(QString)), this, SLOT(OnSendLogToCallClass(QString)));
//¹æ»®²É¼¯Ïß
ui.recordLine_tableWidget->setFocusPolicy(Qt::NoFocus);
@@ -275,13 +272,16 @@ HPPA::~HPPA()
if (m_Imager != nullptr)
m_Imager->~ResononImager();//ÊÍ·Å×ÊÔ´
- if (isMotorConnected(m_xMotor))
+ if (m_xMotor != nullptr && m_yMotor != nullptr)
{
- m_xMotor->StopMotormove();
- }
- if (isMotorConnected(m_yMotor))
- {
- m_yMotor->StopMotormove();
+ if (isMotorConnected(m_xMotor))
+ {
+ m_xMotor->StopMotormove();
+ }
+ if (isMotorConnected(m_yMotor))
+ {
+ m_yMotor->StopMotormove();
+ }
}
}
@@ -407,6 +407,11 @@ void HPPA::onStartRecordStep1()
void HPPA::onStartRecordStep2(int lineNumber)
{
+ if (m_xMotor == nullptr && m_yMotor == nullptr)
+ {
+ return;
+ }
+
if (lineNumber >= 0)
{
m_numberOfRecording = lineNumber;
@@ -637,6 +642,12 @@ void HPPA::timerEvent(QTimerEvent *event)
{
try
{
+ if (m_xMotor == nullptr || m_yMotor == nullptr)
+ {
+ qDebug() << "Motor pointer is null!!!!!";
+ return;
+ }
+
if (!m_xMotor->IsMotorInit)
{
//return;
@@ -644,7 +655,7 @@ void HPPA::timerEvent(QTimerEvent *event)
}
ByteBack xMotorState = m_xMotor->GetState();//Ö´ÐÐÓÐÎÊÌâ
- std::cout << "------------------------------------------Âí´ïËÙ¶È£º" << xMotorState.Speed << std::endl;
+ std::cout << "------------------------------------------xÂí´ïËÙ¶È£º" << xMotorState.Speed << std::endl;
if (xMotorState.Speed == -1000000)
{
@@ -1638,12 +1649,48 @@ void HPPA::onMotorPowerOpen_btn()
{
QString xx = "http://192.168.1.3/setshutter?Portname=1&Value=1";
getRequest(xx);
+
+ newMotor();
}
void HPPA::onMotorPowerClose_btn()
{
QString xx = "http://192.168.1.3/setshutter?Portname=1&Value=0";
getRequest(xx);
+
+ deleteMotor();
+}
+
+void HPPA::newMotor()
+{
+ if (m_xMotor != nullptr && m_yMotor != nullptr)
+ {
+ return;
+ }
+
+ //Âí´ï
+ m_xMotor = new VinceControl(NETTCP, 6002);//Ïà»úÖá
+ m_yMotor = new VinceControl(NETTCP, 6001);//Ô±¾£º6001£»º«¹¤²âÊÔ£º6003
+ m_xConnectCount = 0;
+ m_yConnectCount = 0;
+
+ connect(m_xMotor, SIGNAL(SendLogToCallClass(QString)), this, SLOT(OnSendLogToCallClass(QString)));
+ connect(m_yMotor, SIGNAL(SendLogToCallClass(QString)), this, SLOT(OnSendLogToCallClass(QString)));
+}
+
+void HPPA::deleteMotor()
+{
+ disconnect(m_xMotor, SIGNAL(SendLogToCallClass(QString)), this, SLOT(OnSendLogToCallClass(QString)));
+ disconnect(m_yMotor, SIGNAL(SendLogToCallClass(QString)), this, SLOT(OnSendLogToCallClass(QString)));
+
+ delete m_xMotor;
+ delete m_yMotor;
+
+ m_xMotor = nullptr;
+ m_yMotor = nullptr;
+
+ xmotor_state_label1->setStyleSheet("QLabel{background-color:rgb(255,0,0);}");
+ ymotor_state_label1->setStyleSheet("QLabel{background-color:rgb(255,0,0);}");
}
void HPPA::requestFinished(QNetworkReply* reply) {
diff --git a/HPPA/HPPA.h b/HPPA/HPPA.h
index 9c4386b..aae701d 100644
--- a/HPPA/HPPA.h
+++ b/HPPA/HPPA.h
@@ -203,6 +203,8 @@ private:
QString operateWidget;//µ±Ç°²Ù×÷µÄ¿Ø¼þÃû
//Âí´ï
+ void deleteMotor();
+ void newMotor();
bool isMotorConnected(VinceControl *motor);//ÅжÏÂí´ïÊÇ·ñ¶Ï¿ª£ºÈç¹û¶Ï¿ª·µ»Øtrue£»·ñÔò·µ»Øfalse
void SetXMotorWidgetEnable(bool enable);
void SetYMotorWidgetEnable(bool enable);
diff --git a/HPPA/HPPA.vcxproj b/HPPA/HPPA.vcxproj
index d90fa8f..c21bf05 100644
--- a/HPPA/HPPA.vcxproj
+++ b/HPPA/HPPA.vcxproj
@@ -55,8 +55,8 @@
- D:\cpp_library\vincecontrol_vs2017;D:\cpp_library\gdal2.2.3_vs2017\include;C:\Program Files\ResononAPI\include;D:\cpp_library\opencv3.4.11\opencv\build\include;D:\cpp_library\opencv3.4.11\opencv\build\include\opencv;D:\cpp_library\opencv3.4.11\opencv\build\include\opencv2;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL\SDKs\PCOMM\Include;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL\SDKs\PortControl;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL;D:\cpp_project_vs2022\HPPA\HPPA;D:\cpp_library\libconfig-1.7.3\lib;$(IncludePath)
- D:\cpp_library\opencv3.4.11\opencv\build\x64\vc15\lib;D:\cpp_library\vincecontrol_vs2017;D:\cpp_library\gdal2.2.3_vs2017\lib;C:\Program Files\ResononAPI\lib64;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\x64\Debug;D:\cpp_library\libconfig-1.7.3\build\x64;$(LibraryPath)
+ D:\cpp_library\gdal2.2.3_vs2017\include;C:\Program Files\ResononAPI\include;D:\cpp_library\opencv3.4.11\opencv\build\include;D:\cpp_library\opencv3.4.11\opencv\build\include\opencv;D:\cpp_library\opencv3.4.11\opencv\build\include\opencv2;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL\SDKs\PCOMM\Include;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL\SDKs\PortControl;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL;D:\cpp_project_vs2022\HPPA\HPPA;D:\cpp_library\libconfig-1.7.3\lib;D:\cpp_project_vs2022\HPPA - 副本\vincecontrol;$(IncludePath)
+ D:\cpp_library\opencv3.4.11\opencv\build\x64\vc15\lib;D:\cpp_library\gdal2.2.3_vs2017\lib;C:\Program Files\ResononAPI\lib64;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\x64\Debug;D:\cpp_library\libconfig-1.7.3\build\x64;D:\cpp_project_vs2022\HPPA - 副本\vincecontrol\x64\Debug;$(LibraryPath)
D:\cpp_library\vincecontrol_vs2017;D:\cpp_library\gdal2.2.3_vs2017\include;C:\Program Files\ResononAPI\include;D:\cpp_library\opencv3.4.11\opencv\build\include;D:\cpp_library\opencv3.4.11\opencv\build\include\opencv;D:\cpp_library\opencv3.4.11\opencv\build\include\opencv2;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL\SDKs\PCOMM\Include;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL\SDKs\PortControl;D:\cpp_project_vs2022\AutoFocus_InspireLinearMotor_DLL\AutoFocus_InspireLinearMotor_DLL;D:\cpp_project_vs2022\HPPA\HPPA;D:\cpp_library\libconfig-1.7.3\lib;$(IncludePath)
@@ -64,7 +64,7 @@
- opencv_world3411.lib;opencv_world3411d.lib;vincecontrol.lib;gdal_i.lib;resonon-basler.lib;AutoFocus_InspireLinearMotor_DLL.lib;libconfig++d.lib;%(AdditionalDependencies)
+ opencv_world3411.lib;opencv_world3411d.lib;gdal_i.lib;resonon-basler.lib;AutoFocus_InspireLinearMotor_DLL.lib;libconfig++d.lib;vincecontrol.lib;%(AdditionalDependencies)
%(PreprocessorDefinitions)
diff --git a/HPPA/about.ui b/HPPA/about.ui
index bd4cbf6..c569f1f 100644
--- a/HPPA/about.ui
+++ b/HPPA/about.ui
@@ -70,7 +70,7 @@
- 版本:1.5
+ 版本:1.6