机械臂和光谱仪联动,右下角机械臂控制窗口不会触发相机采集;

This commit is contained in:
tangchao0503
2025-04-16 16:25:51 +08:00
parent f6138dd2ed
commit 20848bef1a
7 changed files with 530 additions and 210 deletions

View File

@ -18,6 +18,7 @@
#include <QTimer>
#include "ui_RobotArmControl.h"
#include "fileOperation.h"
struct ECData
@ -93,29 +94,38 @@ public:
bool connectToRobot(const QString& ip, quint16 port = 8055);
void disconnectFromRobot();
void sendCommand(const QString& cmd, const QJsonValue& params = QJsonArray(), int id = 1);
bool processResponse(QJsonObject response, QString& re);
bool processResponse_getJbiState(QJsonObject response, QString& result);
void getRobotPose();
void getRobotState();//ֹͣ״̬ 0<><30><EFBFBD><EFBFBD>ͣ״̬ 1<><31><EFBFBD><EFBFBD>ͣ״̬ 2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ 3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ 4<><34><EFBFBD><EFBFBD>ײ״̬ 5
void getJbiState();//0 ֹͣ״̬,1 <20><>ͣ״̬,2 <20><>ͣ״̬,3 <20><><EFBFBD><EFBFBD>״̬,4 <20><><EFBFBD><EFBFBD>״̬
void getCurrentJobLine();
void getRobotMode();//ʾ<><CABE>ģʽ 0<><30><EFBFBD>Զ<EFBFBD>ģʽ 1<><31>Զ<EFBFBD><D4B6>ģʽ 2
void runJbi(const QString& jbiFilename);
void pauseTask();
void run();
void continueTask();
void setRobotPowerStatus(int status);
bool getRobotPose(QJsonObject& re);
bool getRobotState(QJsonObject& re);//ֹͣ״̬ 0<><30><EFBFBD><EFBFBD>ͣ״̬ 1<><31><EFBFBD><EFBFBD>ͣ״̬ 2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ 3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ 4<><34><EFBFBD><EFBFBD>ײ״̬ 5
bool getJbiState(QJsonObject& re);//0 ֹͣ״̬,1 <20><>ͣ״̬,2 <20><>ͣ״̬,3 <20><><EFBFBD><EFBFBD>״̬,4 <20><><EFBFBD><EFBFBD>״̬
bool getCurrentJobLine(QJsonObject& re);
bool getRobotMode(QJsonObject& re);//ʾ<><CABE>ģʽ 0<><30><EFBFBD>Զ<EFBFBD>ģʽ 1<><31>Զ<EFBFBD><D4B6>ģʽ 2
bool checkJbiExist(const QString& jbiFilename, QJsonObject& re);
bool setServoStatus(int status, QJsonObject& re);
bool runJbi(const QString& jbiFilename, QJsonObject& re, bool isRecordHsi);
bool pauseTask(QJsonObject& re);
bool run(QJsonObject& re);
bool continueTask(QJsonObject& re);
bool setRobotPowerStatus(int status, QJsonObject& re);
signals:
void commandResponse(bool success, const QJsonObject& response);
private slots:
void onReadyRead();
void getPoint();
bool onReadyRead(QJsonObject& re);
private:
QTcpSocket* socket;
QTimer* timer;
QTimer* m_timer;
int m_iTimeout = 3000;
int m_iCurrentJbiJobLine = 0;
int m_iFileCounter = 0;
signals:
void commandResponse(bool success, const QJsonObject& response);
void hsiRecordSignal(int);
private slots:
void getPoint();
};
class RobotArmControl : public QDialog
@ -127,14 +137,16 @@ public:
~RobotArmControl();
RobotController* robotController;
void onCommandResponse(QString str, const QJsonObject& response);
public Q_SLOTS:
void onCommandResponse(bool success, const QJsonObject& response);
void getTaskList();
void getPose();
void connectRobotArm();
void executeTask();
void executeTaskWithHyperImager();
void executeTaskWithoutHyperImager();
void pauseTask();
void continueTask();