From 0d41f9169a84eb0082585d55af5785d020628bca Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 27 三月 2025 18:04:24 +0800
Subject: [PATCH] 1.增加人工处理(移除、抱走)物料功能,以便和机器中的实物丰符合。 2.Port1 ~ Port4,type, mode, cassette type, transfer mode, enable mode, type auto change mode数据获取。 3.增加通用的读取cc-link int数据的CEqReadIntStep

---
 SourceCode/Bond/Servo/CMaster.cpp |  224 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 224 insertions(+), 0 deletions(-)

diff --git a/SourceCode/Bond/Servo/CMaster.cpp b/SourceCode/Bond/Servo/CMaster.cpp
index 145531f..ba4be00 100644
--- a/SourceCode/Bond/Servo/CMaster.cpp
+++ b/SourceCode/Bond/Servo/CMaster.cpp
@@ -378,6 +378,230 @@
 			}
 		}
 
+		// Port1
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d1f);
+			pStep->setName(STEP_EQ_PORT1_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x80);
+			if (pEquipment->addStep(0x3e0, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d20);
+			pStep->setName(STEP_EQ_PORT1_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x88);
+			if (pEquipment->addStep(0x3e8, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d21);
+			pStep->setName(STEP_EQ_PORT1_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x90);
+			if (pEquipment->addStep(0x3f0, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d23);
+			pStep->setName(STEP_EQ_PORT1_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x98);
+			if (pEquipment->addStep(0x3f8, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d24);
+			pStep->setName(STEP_EQ_PORT1_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa0);
+			if (pEquipment->addStep(0x400, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d25);
+			pStep->setName(STEP_EQ_PORT1_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa8);
+			if (pEquipment->addStep(0x408, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
+		// Port2
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d2f);
+			pStep->setName(STEP_EQ_PORT2_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x81);
+			if (pEquipment->addStep(0x3e1, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d30);
+			pStep->setName(STEP_EQ_PORT2_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x89);
+			if (pEquipment->addStep(0x3e9, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d31);
+			pStep->setName(STEP_EQ_PORT2_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x91);
+			if (pEquipment->addStep(0x3f1, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d33);
+			pStep->setName(STEP_EQ_PORT2_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x99);
+			if (pEquipment->addStep(0x3f9, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d34);
+			pStep->setName(STEP_EQ_PORT2_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa1);
+			if (pEquipment->addStep(0x401, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d35);
+			pStep->setName(STEP_EQ_PORT2_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa9);
+			if (pEquipment->addStep(0x409, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
+		// Port3
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d3f);
+			pStep->setName(STEP_EQ_PORT3_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x82);
+			if (pEquipment->addStep(0x3e2, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d40);
+			pStep->setName(STEP_EQ_PORT3_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x8a);
+			if (pEquipment->addStep(0x3ea, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d41);
+			pStep->setName(STEP_EQ_PORT3_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x92);
+			if (pEquipment->addStep(0x3f2, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d43);
+			pStep->setName(STEP_EQ_PORT3_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x9a);
+			if (pEquipment->addStep(0x3fa, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d44);
+			pStep->setName(STEP_EQ_PORT3_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa2);
+			if (pEquipment->addStep(0x402, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d45);
+			pStep->setName(STEP_EQ_PORT3_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xaa);
+			if (pEquipment->addStep(0x40a, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
+		// Port4
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d4f);
+			pStep->setName(STEP_EQ_PORT4_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x83);
+			if (pEquipment->addStep(0x3e3, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d50);
+			pStep->setName(STEP_EQ_PORT4_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x8b);
+			if (pEquipment->addStep(0x3eb, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT32, 0x4d51);
+			pStep->setName(STEP_EQ_PORT4_CASSETTE_TYPE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x93);
+			if (pEquipment->addStep(0x3f3, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d53);
+			pStep->setName(STEP_EQ_PORT4_TRANSFER_MODE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0x9b);
+			if (pEquipment->addStep(0x3fb, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d54);
+			pStep->setName(STEP_EQ_PORT4_ENABLE);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xa3);
+			if (pEquipment->addStep(0x403, pStep) != 0) {
+				delete pStep;
+			}
+		}
+		{
+			CEqReadIntStep* pStep = new CEqReadIntStep(__INT16, 0x4d55);
+			pStep->setName(STEP_EQ_PORT4_TYPE_ATUO);
+			pStep->setListener(listener);
+			pStep->setWriteSignalDev(0xab);
+			if (pEquipment->addStep(0x40b, pStep) != 0) {
+				delete pStep;
+			}
+		}
+
 		pEquipment->init();
 		LOGE("已添加“EFEM(ROBOT)”.");
 		return 0;

--
Gitblit v1.9.3