| | |
| | | package com.example.agvcontroller; |
| | | |
| | | import static android.content.ContentValues.TAG; |
| | | |
| | | import androidx.appcompat.app.AppCompatActivity; |
| | | import androidx.recyclerview.widget.RecyclerView; |
| | | |
| | |
| | | import android.view.MotionEvent; |
| | | import android.view.View; |
| | | import android.widget.Button; |
| | | import android.widget.CompoundButton; |
| | | import android.widget.GridLayout; |
| | | import android.widget.RelativeLayout; |
| | | import android.widget.Switch; |
| | | |
| | | import com.example.agvcontroller.action.AllResetAction; |
| | | import com.example.agvcontroller.action.BackPaddle; |
| | | import com.example.agvcontroller.action.CameraResetAction; |
| | | 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.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; |
| | | import com.example.agvcontroller.protocol.AgvAction; |
| | | import com.example.agvcontroller.action.ForceSwitchAction; |
| | | import com.example.agvcontroller.action.HandOutAction; |
| | | import com.example.agvcontroller.socket.NettyServerHandler; |
| | | import com.example.agvcontroller.socket.SocketManager; |
| | |
| | | private Button goBackwardBtn; // 后退 |
| | | private Button modelSwitchBtn; // 进入、退出 手动 |
| | | |
| | | private Button frontPaddleExtendBtn; |
| | | private Button frontPaddleCollectBtn; |
| | | private Button backPaddleExtendBtn; |
| | | private Button backPaddleCollectBtn; |
| | | private Button riseBtn; |
| | | private Button dropBtn; |
| | | private Button extendForkBtn; |
| | | private Button collectForkBtn; |
| | | 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 Switch switchBtn1; // 单轴使能 |
| | | private Switch switchBtn2; // 单轴使能 |
| | | private Switch switchBtn3; // 单轴使能 |
| | | private Switch switchBtn4; // 单轴使能 |
| | | private Switch switchBtn5; // 单轴使能 |
| | | private Switch switchBtn6; // 单轴使能 |
| | | private Switch switchBtn7; // 单轴使能 |
| | | private Switch switchBtn8; // 单轴使能 |
| | | private Switch switchBtn9; // 单轴使能 |
| | | |
| | | private Button axleFrontBtn1; |
| | | private Button axleBackBtn1; |
| | | private Button axleFrontBtn2; |
| | | private Button axleBackBtn2; |
| | | private Button axleFrontBtn3; |
| | | private Button axleBackBtn3; |
| | | private Button axleFrontBtn4; |
| | | private Button axleBackBtn4; |
| | | private Button axleFrontBtn5; |
| | | private Button axleBackBtn5; |
| | | private Button axleFrontBtn6; |
| | | private Button axleBackBtn6; |
| | | private Button axleFrontBtn7; |
| | | private Button axleBackBtn7; |
| | | private Button axleFrontBtn8; |
| | | private Button axleBackBtn8; |
| | | private Button axleFrontBtn9; |
| | | private Button axleBackBtn9; |
| | | |
| | | |
| | | |
| | | private Button bodySwitchBtn; // 底盘/货叉切换 |
| | | private Socket socket; |
| | | private String AgvNo = "12"; |
| | | private String AgvNo = "1"; |
| | | private RelativeLayout layout_bottom; |
| | | private RelativeLayout layout_top; |
| | | private RelativeLayout layout_single; |
| | | private GridLayout layout_single; |
| | | private RelativeLayout layout_reset; |
| | | |
| | | int liftHeight = 400; |
| | | int extendWidth = -450; |
| | | int angle = -91; // 7 度 |
| | | |
| | | |
| | | SocketManager socketManager; |
| | | |
| | | |
| | | // 按钮长按事件 |
| | | private int autoVal = 1; |
| | | private boolean isAuto = true; |
| | | private boolean isGoForward = false; |
| | | private boolean isGoBackward = false; |
| | | private boolean isRotatopnRight = false; |
| | | private boolean isRotatopnLeft = false; |
| | | private boolean isFront1 = false; |
| | | private boolean isBack1 = false; |
| | | private boolean isFront2 = false; |
| | | private boolean isBack2 = false; |
| | | private boolean isFront3 = false; |
| | | private boolean isBack3 = false; |
| | | private boolean isFront4 = false; |
| | | private boolean isBack4 = false; |
| | | private boolean isFront5 = false; |
| | | private boolean isBack5 = false; |
| | | private boolean isFront6 = false; |
| | | private boolean isBack6 = false; |
| | | private boolean isFront7 = false; |
| | | private boolean isBack7 = false; |
| | | private boolean isFront8 = false; |
| | | private boolean isBack8 = false; |
| | | private boolean isFront9 = false; |
| | | private boolean isBack9 = false; |
| | | |
| | | |
| | | |
| | | |
| | | // 底盘前进、后退、左旋转、右旋转 |
| | | private Handler handler = new Handler(new Handler.Callback() { |
| | | @Override |
| | | public boolean handleMessage(Message msg) { |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16); |
| | | short pwd = 0; |
| | | if (isGoForward) { |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16); |
| | | AgvAction agvAction = new AgvAction<>(ForwardBackAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 10)); |
| | | .bodySync((action) -> action.setPwd((short) 50)); |
| | | 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); |
| | | AgvAction agvAction = new AgvAction<>(ForwardBackAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) -10)); |
| | | .bodySync((action) -> action.setPwd((short) -50)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | handler.sendEmptyMessageDelayed(0, 100); |
| | | } |
| | | if (isRotatopnRight) { |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16); |
| | | AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 10)); |
| | | .bodySync((action) -> action.setPwd((short) 50)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | handler.sendEmptyMessageDelayed(0, 100); |
| | | } |
| | | if (isRotatopnLeft) { |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16); |
| | | AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) -10)); |
| | | .bodySync((action) -> action.setPwd((short) -50 )); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | handler.sendEmptyMessageDelayed(0, 100); |
| | | } |
| | | |
| | | if (isRotatopnRight) { |
| | | AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 50)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | handler.sendEmptyMessageDelayed(0, 100); |
| | | } |
| | | if (isRotatopnLeft) { |
| | | AgvAction agvAction = new AgvAction<>(RotatopnLeftRight.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) -50 )); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | handler.sendEmptyMessageDelayed(0, 100); |
| | | } |
| | |
| | | rotatopnRightBtn = findViewById(R.id.btn_rotatopn_right); |
| | | modelSwitchBtn = findViewById(R.id.btn_model_switch); |
| | | |
| | | frontPaddleExtendBtn = findViewById(R.id.btn_front_paddle_extend); // 前拨杆 |
| | | frontPaddleCollectBtn = findViewById(R.id.btn_front_paddle_collect); // 前拨杆 |
| | | backPaddleExtendBtn = findViewById(R.id.btn_back_paddle_extend); // 后拨杆 |
| | | backPaddleCollectBtn = findViewById(R.id.btn_back_paddle_collect); // 后拨杆 |
| | | riseBtn = findViewById(R.id.btn_rise); |
| | | dropBtn = findViewById(R.id.btn_drop); |
| | | extendForkBtn = findViewById(R.id.btn_extend_fork); |
| | | collectForkBtn = findViewById(R.id.btn_collect_fork); |
| | | turnLeftBtn = findViewById(R.id.btn_turn_left); |
| | | turnRightBtn = findViewById(R.id.btn_turn_right); |
| | | |
| | | bodySwitchBtn = findViewById(R.id.btn_body_switch); |
| | | |
| | | layout_bottom = findViewById(R.id.layout_bottom); |
| | |
| | | layout_single = findViewById(R.id.layout_single); |
| | | layout_reset = findViewById(R.id.layout_reset); |
| | | |
| | | switchBtn1 = findViewById(R.id.switch1); |
| | | switchBtn2 = findViewById(R.id.switch2); |
| | | switchBtn3 = findViewById(R.id.switch3); |
| | | switchBtn4 = findViewById(R.id.switch4); |
| | | switchBtn5 = findViewById(R.id.switch5); |
| | | switchBtn6 = findViewById(R.id.switch6); |
| | | switchBtn7 = findViewById(R.id.switch7); |
| | | switchBtn8 = findViewById(R.id.switch8); |
| | | switchBtn9 = findViewById(R.id.switch9); |
| | | |
| | | axleFrontBtn1 =findViewById(R.id.btn_axle_1_front); |
| | | axleBackBtn1 =findViewById(R.id.btn_axle_1_back); |
| | | axleFrontBtn2 =findViewById(R.id.btn_axle_2_front); |
| | | axleBackBtn2 =findViewById(R.id.btn_axle_2_back); |
| | | axleFrontBtn3 =findViewById(R.id.btn_axle_3_front); |
| | | axleBackBtn3 =findViewById(R.id.btn_axle_3_back); |
| | | axleFrontBtn4 =findViewById(R.id.btn_axle_4_front); |
| | | axleBackBtn4 =findViewById(R.id.btn_axle_4_back); |
| | | axleFrontBtn5 =findViewById(R.id.btn_axle_5_front); |
| | | axleBackBtn5 =findViewById(R.id.btn_axle_5_back); |
| | | axleFrontBtn6 =findViewById(R.id.btn_axle_6_front); |
| | | axleBackBtn6 =findViewById(R.id.btn_axle_6_back); |
| | | axleFrontBtn7 =findViewById(R.id.btn_axle_7_front); |
| | | axleBackBtn7 =findViewById(R.id.btn_axle_7_back); |
| | | axleFrontBtn8 =findViewById(R.id.btn_axle_8_front); |
| | | axleBackBtn8 =findViewById(R.id.btn_axle_8_back); |
| | | axleFrontBtn9 =findViewById(R.id.btn_axle_9_front); |
| | | axleBackBtn9 =findViewById(R.id.btn_axle_9_back); |
| | | |
| | | |
| | | |
| | | |
| | | 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"); |
| | | clientId = intent.getStringExtra("ip"); |
| | | AgvNo = intent.getStringExtra("agvNo"); |
| | | Log.i("message1",clientId); |
| | | |
| | | // 强制模式开关 |
| | | // forceSwitchBtn.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<>(HandOutAction.class) |
| | | // .setAgvNo(AgvNo) |
| | | // .setSerialNo(substring) |
| | | // .setVal(1) |
| | | // .bodySync((action) -> action.setPwd((short) 21)); |
| | | // nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | // } |
| | | // }); |
| | | // 前拨杆伸出 |
| | | frontPaddleExtendBtn.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); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | // 前拨杆收起 |
| | | frontPaddleCollectBtn.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) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | // 后拨杆伸出 |
| | | backPaddleExtendBtn.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<>(BackPaddle.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | // 后拨杆收起 |
| | | backPaddleCollectBtn.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<>(BackPaddle.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | // 上升 |
| | | riseBtn.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | if (liftHeight <= 3200) { |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16); |
| | | AgvAction agvAction = new AgvAction<>(HandLift.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) liftHeight)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | liftHeight += 100; |
| | | } else { |
| | | DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最大值!"); |
| | | } |
| | | |
| | | } |
| | | }); |
| | | |
| | | // 下降 |
| | | dropBtn.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | |
| | | if (liftHeight >= 400) { |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16); |
| | | AgvAction agvAction = new AgvAction<>(HandLift.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) liftHeight)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | liftHeight -= 100; |
| | | } else { |
| | | DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最小值!"); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | // 伸出 |
| | | extendForkBtn.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | 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) extendWidth)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | extendWidth += 50; |
| | | } else { |
| | | DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最大值!"); |
| | | } |
| | | |
| | | } |
| | | }); |
| | | |
| | | // 收叉 |
| | | collectForkBtn.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | 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) extendWidth)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端户端 |
| | | extendWidth -= 50; |
| | | } else { |
| | | DialogUtil.showAlertDialog(MainActivity.this, "提示", "已超最大值!"); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | // 左旋 |
| | | turnLeftBtn.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, "提示", "已超最大值!"); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | // 右旋 |
| | | 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<>(CameraResetAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .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<>(LoadResetAction.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<>(ForkResetAction.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<>(GyroResetAction.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<>(LiftResetAction.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<>(AllResetAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | // 手自动模式开关 |
| | | modelSwitchBtn.setOnClickListener(new View.OnClickListener() { |
| | |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | boolean result = false; |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0,16); |
| | | if (isAuto) { |
| | | AgvAction agvAction = new AgvAction<>(HandInAction.class) |
| | |
| | | .setVal(autoVal) |
| | | .bodySync((action) -> action.setPwd((short) 21)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | result = true; |
| | | isAuto = !isAuto; |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(HandOutAction.class) |
| | | .setAgvNo(AgvNo) |
| | |
| | | .setVal(autoVal) |
| | | .bodySync((action) -> action.setPwd((short) 21)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | result = true; |
| | | isAuto = !isAuto; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | boolean result = false; |
| | | long timestamp = System.currentTimeMillis(); |
| | | |
| | | Log.i("substring",substring); |
| | | while (System.currentTimeMillis() - timestamp < 5000) { |
| | | |
| | | Object o = map.get(substring); |
| | | |
| | | if (null != o) { |
| | | result = true; |
| | | isAuto = !isAuto; |
| | | map.remove(o); |
| | | break; |
| | | } |
| | | } |
| | | // long timestamp = System.currentTimeMillis(); |
| | | // while (System.currentTimeMillis() - timestamp < 5000) { |
| | | // |
| | | // Object o = map.get(substring); |
| | | // |
| | | // if (null != o) { |
| | | // result = true; |
| | | // isAuto = !isAuto; |
| | | // map.remove(o); |
| | | // break; |
| | | // } |
| | | // } |
| | | |
| | | if (result) { |
| | | // alert ok 修改按钮样式 名称 |
| | |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | axleFrontBtn1.setVisibility(View.VISIBLE); |
| | | axleBackBtn1.setVisibility(View.VISIBLE); |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | axleFrontBtn1.setVisibility(View.GONE); |
| | | axleBackBtn1.setVisibility(View.GONE); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(2) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(2) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn3.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(3) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(3) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn4.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(4) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(4) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn5.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(5) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | axleFrontBtn5.setVisibility(View.VISIBLE); |
| | | axleBackBtn5.setVisibility(View.VISIBLE); |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(5) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | axleFrontBtn5.setVisibility(View.GONE); |
| | | axleBackBtn5.setVisibility(View.GONE); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn6.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(6) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(6) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn7.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(7) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(7) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn8.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(8) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(8) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | } |
| | | }); |
| | | |
| | | switchBtn9.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { |
| | | @Override |
| | | public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { |
| | | Log.d(TAG, "onCheckedChanged: " + isChecked); |
| | | String substring = String.valueOf(new SnowflakeIdWorker().nextId()).substring(0, 16); |
| | | if (isChecked) { |
| | | if (vibrator != null && vibrator.hasVibrator()) { |
| | | vibrator.vibrate(500); |
| | | } |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(9) |
| | | .bodySync((action) -> action.setPwd((short) 0)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } else { |
| | | AgvAction agvAction = new AgvAction<>(SingleSwitchAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(9) |
| | | .bodySync((action) -> action.setPwd((short) 1)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | } |
| | | }); |
| | | |
| | | |
| | | axleFrontBtn1.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn1.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(1) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn2.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(2) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn2.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(2) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn3.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(3) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn3.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(3) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn4.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(4) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn4.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(4) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn5.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(5) |
| | | .bodySync((action) -> action.setPwd((short) 99)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn5.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(5) |
| | | .bodySync((action) -> action.setPwd((short) -99)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn6.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(6) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn6.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(6) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn7.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(7) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn7.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(7) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn8.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(8) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn8.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(8) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleFrontBtn9.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(9) |
| | | .bodySync((action) -> action.setPwd((short) 100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | axleBackBtn9.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<>(SingleSwitchRunAction.class) |
| | | .setAgvNo(AgvNo) |
| | | .setSerialNo(substring) |
| | | .setVal(9) |
| | | .bodySync((action) -> action.setPwd((short) -100)); |
| | | nettyServerHandler.sendMessageToClient(clientId, agvAction); // 发送消息到客户端 |
| | | } |
| | | }); |
| | | |
| | | // 点动按钮 |
| | | stopBtn.setOnTouchListener(new CarTouchButton()); |
| | | goForwardBtn.setOnTouchListener(new CarTouchButton()); |
| | | goBackwardBtn.setOnTouchListener(new CarTouchButton()); |
| | | rotatopnLeftBtn.setOnTouchListener(new CarTouchButton()); |
| | | rotatopnRightBtn.setOnTouchListener(new CarTouchButton()); |
| | | |
| | | axleFrontBtn1.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn1.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn2.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn2.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn3.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn3.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn4.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn4.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn5.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn5.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn6.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn6.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn7.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn7.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn8.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn8.setOnTouchListener(new CarTouchButton()); |
| | | axleFrontBtn9.setOnTouchListener(new CarTouchButton()); |
| | | axleBackBtn9.setOnTouchListener(new CarTouchButton()); |
| | | |
| | | |
| | | } |
| | | |
| | |
| | | } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) { |
| | | isGoBackward = false; |
| | | } |
| | | |
| | | } else if (view.getId() == R.id.btn_rotatopn_left) { |
| | | // 左旋转 |
| | | if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) { |
| | |
| | | } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) { |
| | | isRotatopnLeft = false; |
| | | } |
| | | |
| | | } else if (view.getId() == R.id.btn_rotatopn_right) { |
| | | // 右旋转 |
| | | if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) { |
| | |
| | | } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) { |
| | | isRotatopnRight = false; |
| | | } |
| | | } else if (view.getId() == R.id.btn_rotatopn_right) { |
| | | // 轴动按钮 |
| | | if (motionEvent.getAction() == KeyEvent.ACTION_DOWN) { |
| | | isRotatopnRight = true; |
| | | handler.sendEmptyMessage(0); |
| | | } else if (motionEvent.getAction() == KeyEvent.ACTION_UP) { |
| | | isRotatopnRight = false; |
| | | } |
| | | } |
| | | |
| | | |
| | | return false; |
| | | |
| | | } |