From 98e96b71e1866cf1f3315d15b5ae7ced6447519e Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期六, 04 一月 2025 08:25:16 +0800
Subject: [PATCH] #
---
app/src/main/java/com/example/agvcontroller/protocol/HandleCmdType.java | 18 +++
app/src/main/java/com/example/agvcontroller/MainActivity.java | 269 ++++++++++++++++++++++++++++++++---------------------
gradle/wrapper/gradle-wrapper.properties | 3
3 files changed, 183 insertions(+), 107 deletions(-)
diff --git a/app/src/main/java/com/example/agvcontroller/MainActivity.java b/app/src/main/java/com/example/agvcontroller/MainActivity.java
index dff8a4c..6157c46 100644
--- a/app/src/main/java/com/example/agvcontroller/MainActivity.java
+++ b/app/src/main/java/com/example/agvcontroller/MainActivity.java
@@ -67,6 +67,13 @@
private Button turnLeftBtn;
private Button turnRightBtn;
+ private Button cameraResetBtn;
+ private Button loadResetBtn;
+ private Button forkResetBtn;
+ private Button gyroResetBtn;
+ private Button liftResetBtn;
+ private Button allResetBtn;
+
private Button bodySwitchBtn; // 搴曠洏/璐у弶鍒囨崲
private Socket socket;
@@ -77,7 +84,8 @@
private RelativeLayout layout_reset;
int liftHeight = 400;
- int extendWidth = 0;
+ int extendWidth = -450;
+ int angle = -91; // 7 搴�
SocketManager socketManager;
@@ -107,6 +115,7 @@
+ // 搴曠洏鍓嶈繘銆佸悗閫�銆佸乏鏃嬭浆銆佸彸鏃嬭浆
private Handler handler = new Handler(new Handler.Callback() {
@Override
public boolean handleMessage(Message msg) {
@@ -118,7 +127,7 @@
.setVal(1)
.bodySync((action) -> action.setPwd((short) 10));
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
- handler.sendEmptyMessageDelayed(0, 100);
+ handler.sendEmptyMessageDelayed(0, 100); // 100ms 鍚庡彂閫佷笅涓�鏉℃秷鎭�
}
if (isGoBackward) {
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
@@ -301,6 +310,16 @@
layout_single = findViewById(R.id.layout_single);
layout_reset = findViewById(R.id.layout_reset);
+
+ cameraResetBtn = findViewById(R.id.btn_camera_reset);
+ loadResetBtn = findViewById(R.id.btn_load_reset);
+ forkResetBtn = findViewById(R.id.btn_fork_reset);
+ gyroResetBtn = findViewById(R.id.btn_gyro_reset);
+ liftResetBtn = findViewById(R.id.btn_lift_reset);
+ allResetBtn = findViewById(R.id.btn_all_reset);
+
+
+
Intent intent = getIntent();
clientId = intent.getStringExtra("message");
Log.i("message1",clientId);
@@ -380,7 +399,7 @@
if (vibrator != null && vibrator.hasVibrator()) {
vibrator.vibrate(500);
}
- if (liftHeight >= 3200) {
+ if (liftHeight <= 3200) {
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
AgvAction agvAction = new AgvAction<>(HandLift.class)
.setAgvNo(AgvNo)
@@ -426,7 +445,7 @@
if (vibrator != null && vibrator.hasVibrator()) {
vibrator.vibrate(500);
}
- if (liftHeight >= 3200) {
+ if (extendWidth <= 450) {
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
AgvAction agvAction = new AgvAction<>(HandExtendCollect.class)
.setAgvNo(AgvNo)
@@ -434,7 +453,7 @@
.setVal(1)
.bodySync((action) -> action.setPwd((short) 21));
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
- liftHeight += 100;
+ extendWidth += 50;
} else {
DialogUtil.showAlertDialog(MainActivity.this, "鎻愮ず", "宸茶秴鏈�澶у�硷紒");
}
@@ -442,53 +461,171 @@
}
});
- // 鏀惰捣
- frontPaddleExtendBtn.setOnClickListener(new View.OnClickListener() {
+ // 鏀跺弶
+ collectForkBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (vibrator != null && vibrator.hasVibrator()) {
vibrator.vibrate(500);
}
- String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
- AgvAction agvAction = new AgvAction<>(HandExtendCollect.class)
- .setAgvNo(AgvNo)
- .setSerialNo(substring)
- .setVal(1)
- .bodySync((action) -> action.setPwd((short) 21));
- nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ if (extendWidth >= -450) {
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(HandExtendCollect.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 21));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔埛绔�
+ extendWidth -= 50;
+ } else {
+ DialogUtil.showAlertDialog(MainActivity.this, "鎻愮ず", "宸茶秴鏈�澶у�硷紒");
+ }
}
});
// 宸︽棆
- frontPaddleExtendBtn.setOnClickListener(new View.OnClickListener() {
+ turnLeftBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (vibrator != null && vibrator.hasVibrator()) {
vibrator.vibrate(500);
}
- String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
- AgvAction agvAction = new AgvAction<>(HandForkRotatopn.class)
- .setAgvNo(AgvNo)
- .setSerialNo(substring)
- .setVal(1)
- .bodySync((action) -> action.setPwd((short) 21));
- nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ if (angle <= 91) {
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(HandForkRotatopn.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 21));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ angle += 7;
+ } else {
+ DialogUtil.showAlertDialog(MainActivity.this, "鎻愮ず", "宸茶秴鏈�澶у�硷紒");
+ }
}
});
// 鍙虫棆
- frontPaddleExtendBtn.setOnClickListener(new View.OnClickListener() {
+ turnRightBtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (vibrator != null && vibrator.hasVibrator()) {
+ vibrator.vibrate(500);
+ }
+ if (angle >= -91) {
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(HandForkRotatopn.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 21));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ angle -= 7;
+ } else {
+ DialogUtil.showAlertDialog(MainActivity.this, "鎻愮ず", "宸茶秴鏈�灏忓�硷紒");
+ }
+
+ }
+ });
+
+ // 鐩告満澶嶄綅鎸夐挳
+ cameraResetBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (vibrator != null && vibrator.hasVibrator()) {
vibrator.vibrate(500);
}
String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
- AgvAction agvAction = new AgvAction<>(HandForkRotatopn.class)
+ AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
.setAgvNo(AgvNo)
.setSerialNo(substring)
.setVal(1)
- .bodySync((action) -> action.setPwd((short) 21));
+ .bodySync((action) -> action.setPwd((short) 1));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ }
+ });
+
+ // 璺緞娓呴櫎鎸夐挳
+ loadResetBtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (vibrator != null && vibrator.hasVibrator()) {
+ vibrator.vibrate(500);
+ }
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 1));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ }
+ });
+
+ // 璐у弶褰掗浂鎸夐挳
+ forkResetBtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (vibrator != null && vibrator.hasVibrator()) {
+ vibrator.vibrate(500);
+ }
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 1));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ }
+ });
+
+ // 闄�铻轰华澶嶄綅鎸夐挳
+ gyroResetBtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (vibrator != null && vibrator.hasVibrator()) {
+ vibrator.vibrate(500);
+ }
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 1));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ }
+ });
+
+ // 鍗囬檷褰掗浂鎸夐挳
+ liftResetBtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (vibrator != null && vibrator.hasVibrator()) {
+ vibrator.vibrate(500);
+ }
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 1));
+ nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
+ }
+ });
+
+ // 鏁存満澶嶄綅鎸夐挳
+ allResetBtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (vibrator != null && vibrator.hasVibrator()) {
+ vibrator.vibrate(500);
+ }
+ String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16);
+ AgvAction agvAction = new AgvAction<>(FrontPaddle.class)
+ .setAgvNo(AgvNo)
+ .setSerialNo(substring)
+ .setVal(1)
+ .bodySync((action) -> action.setPwd((short) 1));
nettyServerHandler.sendMessageToClient(clientId, agvAction); // 鍙戦�佹秷鎭埌瀹㈡埛绔�
}
});
@@ -610,87 +747,7 @@
isRotatopnRight = false;
}
}
-// else if (view.getId() == R.id.btn_front_paddle_extend) {
-// // 鍓嶆嫧鏉嗕几鍑�
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isFrontPaddleExtendBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isFrontPaddleExtendBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_front_paddle_collect) {
-// // 鍓嶆嫧鏉嗘敹璧�
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isFrontPaddleCollectBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isFrontPaddleCollectBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_back_paddle_extend) {
-// // 鍚庢嫧鏉嗕几鍑�
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isBackPaddleExtendBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isBackPaddleExtendBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_back_paddle_collect) {
-// // 鍚庢嫧鏉嗘敹璧�
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isBackPaddleCollectBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isBackPaddleCollectBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_rise) {
-// // 涓婂崌
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isRiseBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isRiseBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_drop) {
-// // 涓嬮檷
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isDropBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isDropBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_extend_fork) {
-// // 浼稿弶
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isExtendForkBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isExtendForkBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_collect_fork) {
-// // 鏀跺弶
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isCollectForkBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isCollectForkBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_turn_left) {
-// // 宸︽棆杞�
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isTurnLeftBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isTurnLeftBtn = false;
-// }
-// } else if (view.getId() == R.id.btn_turn_right) {
-// // 宸︽棆杞�
-// if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) {
-// isTurnRightBtn = true;
-// handler.sendEmptyMessage(0);
-// } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) {
-// isTurnRightBtn = false;
-// }
-// }
+
return false;
diff --git a/app/src/main/java/com/example/agvcontroller/protocol/HandleCmdType.java b/app/src/main/java/com/example/agvcontroller/protocol/HandleCmdType.java
index f961e6a..291998d 100644
--- a/app/src/main/java/com/example/agvcontroller/protocol/HandleCmdType.java
+++ b/app/src/main/java/com/example/agvcontroller/protocol/HandleCmdType.java
@@ -1,15 +1,21 @@
package com.example.agvcontroller.protocol;
+import com.example.agvcontroller.action.AllResetAction;
import com.example.agvcontroller.action.BackPaddle;
+import com.example.agvcontroller.action.CameraResetAction;
import com.example.agvcontroller.action.ForceStopAction;
import com.example.agvcontroller.action.ForceSwitchAction;
+import com.example.agvcontroller.action.ForkResetAction;
import com.example.agvcontroller.action.ForwardBackAction;
import com.example.agvcontroller.action.FrontPaddle;
+import com.example.agvcontroller.action.GyroResetAction;
import com.example.agvcontroller.action.HandExtendCollect;
import com.example.agvcontroller.action.HandForkRotatopn;
import com.example.agvcontroller.action.HandInAction;
import com.example.agvcontroller.action.HandLift;
import com.example.agvcontroller.action.HandOutAction;
+import com.example.agvcontroller.action.LiftResetAction;
+import com.example.agvcontroller.action.LoadResetAction;
import com.example.agvcontroller.action.RotatopnLeftRight;
import com.example.agvcontroller.action.SingleSwitchAction;
import com.example.agvcontroller.action.SingleSwitchRunAction;
@@ -28,6 +34,18 @@
FORCE_STOP(0xF0, "鎬ュ仠", ForceStopAction.class),
+ ALL_RESET(0x60, "鏁存満澶嶄綅", AllResetAction.class),
+
+ CAMERA_RESET(0x61, "鐩告満澶嶄綅", CameraResetAction.class),
+
+ GYRO_RESET(0x62, "闄�铻轰华澶嶄綅", GyroResetAction.class),
+
+ LOAD_RESET(0x65, "娓呴櫎璺緞", LoadResetAction.class),
+
+ FORK_RESET(0x66, "璐у弶褰掗浂", ForkResetAction.class),
+
+ LIFT_RESET(0x68, "鍗囬檷褰掗浂", LiftResetAction.class),
+
FORWARD_BACK(0x81, "鐐瑰姩鍓嶈繘锛堝悗閫�锛�", ForwardBackAction.class),
ROTATOPN_LEFT_RIGHT(0x82, "鐐瑰姩鏃嬭浆锛堝簳鐩橈級", RotatopnLeftRight.class),
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 37b9952..03b3571 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,7 @@
#Mon Jul 29 18:35:09 CST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
+#distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
+distributionUrl=file:///D:/workspace/AGV_Controller/gradle/wrapper/gradle-8.0-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
--
Gitblit v1.9.1