备份
This commit is contained in:
@@ -292,7 +292,7 @@ void createModbusStrs(const int startPos,double& Value, std::shared_ptr <detData
|
||||
data->writeBack("short", startPos, QString::number(Value < 0 ? 2 : 1));
|
||||
data->writeBack("short", startPos + 1, QString::number(abs(static_cast<int>(Value))));
|
||||
double pvalue = Value - static_cast<int>(Value);
|
||||
data->writeBack("short", startPos + 2, QString::number(static_cast<int>(abs(pvalue * 100))));
|
||||
data->writeBack("short", startPos + 2, QString::number(static_cast<int>(abs(pvalue * 1000))));
|
||||
}
|
||||
|
||||
correctionStruct* correctionData1x = new correctionStruct();
|
||||
@@ -350,6 +350,7 @@ double offsetLimit(double valueIn,double offsetLimitIn)
|
||||
}
|
||||
void ALGO_Correction(std::shared_ptr <detData> data)
|
||||
{
|
||||
//x轴方向为-x 值越大-x越大 y方向为y+,值越大y+越大 z方向为y+,值越大z+越大
|
||||
//data->writeBack("short", 274, "1");
|
||||
//return;
|
||||
CorrectionPoints resultPoints;
|
||||
@@ -378,30 +379,39 @@ void ALGO_Correction(std::shared_ptr <detData> data)
|
||||
double offsetLimit_Y = currentProductConfig._correctionConfigStruct.offsetLimit_Y;
|
||||
double offsetLimit_Z = currentProductConfig._correctionConfigStruct.offsetLimit_Z;
|
||||
|
||||
//计算值
|
||||
double correctionFinalResultX = correction_X - resultPoints.OriginX - baseOffset_X;
|
||||
double correctionFinalResultY = correction_Y - resultPoints.OriginY - baseOffset_Y;
|
||||
double correctionFinalResultZ = correction_Z - resultPoints.OriginZ - baseOffset_Z;
|
||||
|
||||
std::cout << "correctionFinalResultX" << correctionFinalResultX << std::endl;
|
||||
std::cout << "correctionFinalResultY" << correctionFinalResultY << std::endl;
|
||||
std::cout << "correctionFinalResultZ" << correctionFinalResultZ << std::endl;
|
||||
|
||||
//限制小数点后三位
|
||||
correctionFinalResultX = doubleLmit(correctionFinalResultX, 3);
|
||||
correctionFinalResultY = doubleLmit(correctionFinalResultY, 3);
|
||||
correctionFinalResultZ = doubleLmit(correctionFinalResultZ, 3);
|
||||
|
||||
std::cout << "correctionFinalResultX" << correctionFinalResultX << std::endl;
|
||||
std::cout << "correctionFinalResultY" << correctionFinalResultY << std::endl;
|
||||
std::cout << "correctionFinalResultZ" << correctionFinalResultZ << std::endl;
|
||||
|
||||
//限制最大最小值
|
||||
correctionFinalResultX = offsetLimit(correctionFinalResultX, offsetLimit_X);
|
||||
correctionFinalResultY = offsetLimit(correctionFinalResultY, offsetLimit_Y);
|
||||
correctionFinalResultZ = offsetLimit(correctionFinalResultZ, offsetLimit_Z);
|
||||
|
||||
//方向修正
|
||||
correctionFinalResultY = -correctionFinalResultY;
|
||||
correctionFinalResultZ = -correctionFinalResultZ;
|
||||
|
||||
std::cout << "correctionFinalResultX" << correctionFinalResultX << std::endl;
|
||||
std::cout << "correctionFinalResultY" << correctionFinalResultY << std::endl;
|
||||
std::cout << "correctionFinalResultZ" << correctionFinalResultZ << std::endl;
|
||||
|
||||
createModbusStrs(310, correctionFinalResultX, data);
|
||||
createModbusStrs(313, correctionFinalResultY, data);
|
||||
createModbusStrs(316, correctionFinalResultZ, data);
|
||||
|
||||
/*createModbusStrs(319, 0, data);
|
||||
createModbusStrs(322, 0, data);
|
||||
createModbusStrs(325, 0, data);*/
|
||||
|
||||
data->writeBack("short", 274, "1");
|
||||
|
||||
//double offsetRx = data->_productDataStruct.baseRad[0] - point.x;
|
||||
//double offsetRy = data->_productDataStruct.baseRad[1] - point.y;
|
||||
//double offsetRz = data->_productDataStruct.baseRad[2] - point.z;
|
||||
@@ -420,16 +430,8 @@ void ALGO_Correction(std::shared_ptr <detData> data)
|
||||
//offsetRy = doubleLmit(offsetRy, 3);
|
||||
//offsetRz = doubleLmit(offsetRz, 3);
|
||||
|
||||
std::cout << "offsetX:" << data->pointsOffsetStruct_.baseOffsetX << "offsetY:" << data->pointsOffsetStruct_.baseOffsetY << "offsetZ:" << data->pointsOffsetStruct_.baseOffsetZ << std::endl;
|
||||
//std::cout << "offsetX:" << data->pointsOffsetStruct_.baseOffsetX << "offsetY:" << data->pointsOffsetStruct_.baseOffsetY << "offsetZ:" << data->pointsOffsetStruct_.baseOffsetZ << std::endl;
|
||||
//std::cout << "offsetRx:" << offsetRx << "offsetRy:" << offsetRy << "offsetRz:" << offsetRz << std::endl;
|
||||
|
||||
/*createModbusStrs(310, data->pointsOffsetStruct_.baseOffsetX,data);
|
||||
createModbusStrs(313, data->pointsOffsetStruct_.baseOffsetY, data);
|
||||
createModbusStrs(316, data->pointsOffsetStruct_.baseOffsetZ, data);*/
|
||||
|
||||
//createModbusStrs(319, offsetRx, data);
|
||||
//createModbusStrs(322, offsetRy, data);
|
||||
//createModbusStrs(325, offsetRz, data);
|
||||
|
||||
data->writeBack("short", 274, "1");
|
||||
}
|
||||
@@ -6,15 +6,15 @@
|
||||
["800-41485-01","800-103367-01","800-48770-01","800-50688-01"],
|
||||
"Correction":
|
||||
{
|
||||
"correction_X":0,
|
||||
"correction_Y":0,
|
||||
"correction_Z":0,
|
||||
"correction_X":-247.742,
|
||||
"correction_Y":-395.592,
|
||||
"correction_Z":-56.6341,
|
||||
"baseOffset_X":0,
|
||||
"baseOffset_Y":0,
|
||||
"baseOffset_Z":0,
|
||||
"offsetLimit_X":10,
|
||||
"offsetLimit_Y":10,
|
||||
"offsetLimit_Z":10,
|
||||
"offsetLimit_X":30,
|
||||
"offsetLimit_Y":30,
|
||||
"offsetLimit_Z":0,
|
||||
"commit":"limit对基础偏移不生效,单位为mm"
|
||||
},
|
||||
"imgPosPath":"./imgPosTip/Test1.jpg",
|
||||
@@ -23,12 +23,12 @@
|
||||
"baseY":0.00,
|
||||
"baseZ":0.00,
|
||||
"baseRx":0.00,
|
||||
"baseRy":0.00,
|
||||
"baseRy":0.00,
|
||||
"baseRz":0.00,
|
||||
"connectorAmout":-1,
|
||||
"halconAlgoIndex":1,
|
||||
"isBackExist":false,
|
||||
"backArmIndex":-1,
|
||||
"isBackExist":true,
|
||||
"backArmIndex":11,
|
||||
"cameraSetting":
|
||||
{
|
||||
"0":"Gain:60/Expouse:25000"
|
||||
|
||||
Reference in New Issue
Block a user