44 changed files with 481 additions and 200 deletions
-
2src/main/java/com/iflytop/gd/app/command/control/DoorCloseCommand.java
-
4src/main/java/com/iflytop/gd/app/command/control/DoorOpenCommand.java
-
31src/main/java/com/iflytop/gd/app/command/control/FilledSolutionStopCommand.java
-
8src/main/java/com/iflytop/gd/app/command/control/SolutionAddCommand.java
-
4src/main/java/com/iflytop/gd/app/command/debug/DebugDoorOpenCommand.java
-
64src/main/java/com/iflytop/gd/app/command/debug/step/DebugShowSmogCommand.java
-
2src/main/java/com/iflytop/gd/app/controller/CraftsController.java
-
22src/main/java/com/iflytop/gd/app/controller/SystemController.java
-
26src/main/java/com/iflytop/gd/app/controller/TestController.java
-
13src/main/java/com/iflytop/gd/app/core/CraftsContext.java
-
2src/main/java/com/iflytop/gd/app/core/aspect/DeviceStateChangeAspect.java
-
10src/main/java/com/iflytop/gd/app/model/bo/status/device/CraftsState.java
-
18src/main/java/com/iflytop/gd/app/model/bo/status/device/DeviceState.java
-
3src/main/java/com/iflytop/gd/app/model/bo/status/device/HeatModuleState.java
-
14src/main/java/com/iflytop/gd/app/model/bo/status/device/TrayState.java
-
3src/main/java/com/iflytop/gd/app/model/bo/status/device/TubeState.java
-
3src/main/java/com/iflytop/gd/app/model/dto/StartCraftsDTO.java
-
2src/main/java/com/iflytop/gd/app/model/vo/SetTrayTubeVO.java
-
65src/main/java/com/iflytop/gd/app/service/api/CraftsService.java
-
2src/main/java/com/iflytop/gd/app/service/api/SystemConfigService.java
-
5src/main/java/com/iflytop/gd/app/service/api/TestService.java
-
5src/main/java/com/iflytop/gd/app/service/api/TrayService.java
-
62src/main/java/com/iflytop/gd/app/service/crafts/CraftsStepService.java
-
18src/main/java/com/iflytop/gd/app/service/device/DeviceCommandTempUtilService.java
-
2src/main/java/com/iflytop/gd/app/service/device/DeviceEmergencyStopService.java
-
10src/main/java/com/iflytop/gd/app/service/device/DeviceStepCommandService.java
-
18src/main/java/com/iflytop/gd/app/service/device/module/CapModuleService.java
-
9src/main/java/com/iflytop/gd/app/service/device/module/DoorModuleService.java
-
2src/main/java/com/iflytop/gd/app/service/device/module/GantryModuleService.java
-
54src/main/java/com/iflytop/gd/app/service/device/module/SolutionModuleService.java
-
16src/main/java/com/iflytop/gd/app/service/scheduled/FetchTemperatureScheduledTask.java
-
66src/main/java/com/iflytop/gd/app/service/scheduled/HeatCountdownScheduledTask.java
-
4src/main/java/com/iflytop/gd/app/ws/client/DeviceEmergencyStopConfig.java
-
2src/main/java/com/iflytop/gd/app/ws/server/WebSocketSender.java
-
8src/main/java/com/iflytop/gd/common/command/DeviceCommandGenerator.java
-
4src/main/java/com/iflytop/gd/common/enums/HeatingType.java
-
2src/main/java/com/iflytop/gd/common/enums/command/CmdAction.java
-
3src/main/java/com/iflytop/gd/common/result/ResultCode.java
-
9src/main/java/com/iflytop/gd/common/utils/LocalDateTimeUtil.java
-
25src/main/java/com/iflytop/gd/hardware/command/handlers/DoorHandler.java
-
5src/main/java/com/iflytop/gd/hardware/drivers/StepMotorDriver/DoorDriver.java
-
2src/main/resources/application-dev.yml
-
8src/main/resources/sql/init.sql
@ -0,0 +1,64 @@ |
|||
package com.iflytop.gd.app.command.debug.step; |
|||
|
|||
import com.iflytop.gd.app.core.BaseCommandHandler; |
|||
import com.iflytop.gd.app.model.bo.Point3D; |
|||
import com.iflytop.gd.app.model.dto.CmdDTO; |
|||
import com.iflytop.gd.app.service.api.DevicePositionService; |
|||
import com.iflytop.gd.app.service.device.DeviceCommandService; |
|||
import com.iflytop.gd.app.service.device.DeviceCommandTempUtilService; |
|||
import com.iflytop.gd.app.service.device.DeviceStateService; |
|||
import com.iflytop.gd.app.service.device.module.CapModuleService; |
|||
import com.iflytop.gd.app.service.device.module.GantryModuleService; |
|||
import com.iflytop.gd.app.service.device.module.HeatModuleService; |
|||
import com.iflytop.gd.app.service.device.module.SolutionModuleService; |
|||
import com.iflytop.gd.common.annotation.CommandMapping; |
|||
import com.iflytop.gd.common.command.CommandFuture; |
|||
import com.iflytop.gd.common.command.DeviceCommandBundle; |
|||
import com.iflytop.gd.common.command.DeviceCommandGenerator; |
|||
import com.iflytop.gd.common.enums.HeatModuleCode; |
|||
import com.iflytop.gd.common.enums.data.DevicePositionCode; |
|||
import com.iflytop.gd.common.utils.CommandUtil; |
|||
import lombok.RequiredArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
import java.util.concurrent.CompletableFuture; |
|||
|
|||
/** |
|||
* 展示烟雾 |
|||
*/ |
|||
@Slf4j |
|||
@Component |
|||
@RequiredArgsConstructor |
|||
@CommandMapping("debug_show_smog") |
|||
public class DebugShowSmogCommand extends BaseCommandHandler { |
|||
private final HeatModuleService heatModuleService; |
|||
private final GantryModuleService gantryModuleService; |
|||
private final DevicePositionService devicePositionService; |
|||
|
|||
@Override |
|||
public CompletableFuture<Void> handle(CmdDTO cmdDTO) { |
|||
String heatId = cmdDTO.getStringParam("heatId"); |
|||
HeatModuleCode heatModuleCode = HeatModuleCode.valueOf(heatId); |
|||
double clawCapPick = devicePositionService.getPosition(DevicePositionCode.clawCapPick).getDistance(); //获取拍子夹取距离 |
|||
double clawCapGrip = devicePositionService.getPosition(DevicePositionCode.clawCapGrip).getDistance(); //获取拍子夹紧距离 |
|||
double trayLift = devicePositionService.getPosition(DevicePositionCode.trayLift).getDistance(); //托盘升降抬升距离 |
|||
double trayLower = devicePositionService.getPosition(DevicePositionCode.trayLower).getDistance(); |
|||
double heatModuleCapMoveHeight = devicePositionService.getPosition(DevicePositionCode.heatModuleCapMoveHeight).getDistance();//加热模块拍子移动高度 |
|||
Point3D heatAreaCapClawPointPoint3D = heatModuleService.getHeatAreaCapClawPointPoint3D(heatModuleCode);//获取指定加热模块拍子上方点位 |
|||
return runAsync(() -> { |
|||
gantryModuleService.gantryMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), heatAreaCapClawPointPoint3D);//将机械臂移动至加热模块拍子上方 |
|||
heatModuleService.heaterMotorMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), heatModuleCode, trayLift);//抬升指定加热位托盘 |
|||
gantryModuleService.clawMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), clawCapPick);//将夹爪打开,准备夹取拍子 |
|||
gantryModuleService.gantryZMove(heatModuleCapMoveHeight);//下降z轴,使夹爪落入加热模块拍子孔位 |
|||
gantryModuleService.clawMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), clawCapGrip);//将夹爪收紧,夹住拍子 |
|||
gantryModuleService.gantryZMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), 0);//抬升z轴 |
|||
Thread.sleep(3000); |
|||
gantryModuleService.gantryZMove(heatModuleCapMoveHeight);//下降z轴,使夹拍子落入加热模块 |
|||
gantryModuleService.clawMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), clawCapPick);//将夹爪打开 |
|||
gantryModuleService.gantryZMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), 0);//抬升z轴 |
|||
heatModuleService.heaterMotorMove(cmdDTO.getCommandId(), cmdDTO.getCommand(), heatModuleCode, trayLower); |
|||
}); |
|||
} |
|||
} |
|||
|
@ -1,13 +1,21 @@ |
|||
package com.iflytop.gd.app.model.bo.status.crafts; |
|||
package com.iflytop.gd.app.model.bo.status.device; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; |
|||
import com.iflytop.gd.app.model.entity.Crafts; |
|||
import com.iflytop.gd.app.model.entity.Ores; |
|||
import com.iflytop.gd.common.enums.automaton.CraftStates; |
|||
import io.swagger.v3.oas.annotations.media.Schema; |
|||
import lombok.Data; |
|||
import lombok.RequiredArgsConstructor; |
|||
import org.springframework.context.annotation.Scope; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
@Schema(description = "工艺") |
|||
@Data |
|||
@Component |
|||
@Scope("prototype") |
|||
@RequiredArgsConstructor |
|||
@JsonIgnoreProperties(value = {"advisors", "frozen", "preFiltered", "proxyTargetClass", "targetSource", "exposeProxy", "advisorCount", "proxiedInterfaces", "targetClass"}) |
|||
public class CraftsState { |
|||
@Schema(description = "工艺状态") |
|||
private CraftStates state; |
Write
Preview
Loading…
Cancel
Save
Reference in new issue