public FootstepTiming(double swingTime, double transferTime) { setTimings(swingTime, transferTime); }
public FootstepTiming(double swingTime, double transferTime) { setTimings(swingTime, transferTime); }
public FootstepTiming(double swingTime, double touchdownTime, double transferTime) { setTimings(swingTime, touchdownTime, transferTime); }
private FootstepTiming createFootstepTiming(FootstepDataCommand footstep) { FootstepTiming timing = new FootstepTiming(); if (footstep.hasTimings()) timing.setTimings(footstep.getSwingTime(), footstep.getTransferTime()); else { if (upcomingFootstepTimings.isEmpty()) timing.setTimings(defaultSwingTime.getDoubleValue(), defaultInitialTransferTime.getDoubleValue()); else timing.setTimings(defaultSwingTime.getDoubleValue(), defaultTransferTime.getDoubleValue()); } if (footstep.hasAbsoluteTime()) timing.setAbsoluteTime(timing.getSwingStartTime()); return timing; }
private void initiateFootLoadingProcedure(RobotSide swingSide) { loadFoot.set(true); loadFootStartTime.set(getTimeInCurrentState()); balanceManager.clearICPPlan(); footstepTiming.setTimings(loadFootDuration.getDoubleValue(), loadFootTransferDuration.getDoubleValue()); balanceManager.addFootstepToPlan(walkingMessageHandler.getFootstepAtCurrentLocation(swingSide), footstepTiming); balanceManager.setICPPlanSupportSide(supportSide); double defaultSwingTime = loadFootDuration.getDoubleValue(); double defaultTransferTime = loadFootTransferDuration.getDoubleValue(); double finalTransferTime = walkingMessageHandler.getFinalTransferTime(); balanceManager.initializeICPPlanForSingleSupport(defaultSwingTime, defaultTransferTime, finalTransferTime); balanceManager.freezePelvisXYControl(); } }
@Override public void doTransitionIntoAction() { super.doTransitionIntoAction(); balanceManager.enablePelvisXYControl(); balanceManager.setNextFootstep(null); feetManager.handleFootTrajectoryCommand(walkingMessageHandler.pollFootTrajectoryForFlamingoStance(swingSide)); footstepTiming.setTimings(Double.POSITIVE_INFINITY, walkingMessageHandler.getDefaultTransferTime()); balanceManager.addFootstepToPlan(walkingMessageHandler.getFootstepAtCurrentLocation(swingSide), footstepTiming); balanceManager.setICPPlanSupportSide(supportSide); double defaultSwingTime = Double.POSITIVE_INFINITY; double defaultTransferTime = walkingMessageHandler.getDefaultTransferTime(); double finalTransferTime = walkingMessageHandler.getFinalTransferTime(); balanceManager.initializeICPPlanForSingleSupport(defaultSwingTime, defaultTransferTime, finalTransferTime); pelvisOrientationManager.setToHoldCurrentDesiredInSupportFoot(supportSide); comHeightManager.setSupportLeg(getSupportSide()); loadFoot.set(false); }
@Override public void doTransitionIntoAction() { super.doTransitionIntoAction(); if (!comHeightManager.hasBeenInitializedWithNextStep()) { TransferToAndNextFootstepsData transferToAndNextFootstepsDataForDoubleSupport = walkingMessageHandler.createTransferToAndNextFootstepDataForDoubleSupport(transferToSide); double extraToeOffHeight = 0.0; if (feetManager.willDoToeOff(null, transferToSide)) extraToeOffHeight = feetManager.getWalkOnTheEdgesManager().getExtraCoMMaxHeightWithToes(); comHeightManager.initialize(transferToAndNextFootstepsDataForDoubleSupport, extraToeOffHeight); } // Transferring to execute a foot pose, hold current desired in upcoming support foot in case it slips pelvisOrientationManager.setToHoldCurrentDesiredInSupportFoot(transferToSide); footstepTiming.setTimings(Double.POSITIVE_INFINITY, walkingMessageHandler.getDefaultTransferTime()); balanceManager.addFootstepToPlan(walkingMessageHandler.getFootstepAtCurrentLocation(transferToSide.getOppositeSide()), footstepTiming); balanceManager.setICPPlanTransferToSide(transferToSide); double defaultSwingTime = Double.POSITIVE_INFINITY; double defaultTransferTime = walkingMessageHandler.getDefaultTransferTime(); double finalTransferTime = walkingMessageHandler.getFinalTransferTime(); balanceManager.initializeICPPlanForTransfer(defaultSwingTime, defaultTransferTime, finalTransferTime); } }
footstepTiming.setTimings(swingTime, defaultTransferTime); nextFootstep = balanceManager.createFootstepForRecoveringFromDisturbance(swingSide, defaultSwingTime); nextFootstep.setTrajectoryType(TrajectoryType.DEFAULT);
footstepTiming.setTimings(swingTime, walkingMessageHandler.getDefaultTransferTime());