private boolean hasWalkingControllerParameters(Class<?> managerClass) { if (walkingControllerParameters != null) return true; missingObjectWarning(WalkingControllerParameters.class, managerClass); return false; }
public void setupHighLevelStates(HighLevelHumanoidControllerFactory controllerFactory, SideDependentList<String> feetForceSensorNames, HighLevelControllerName fallbackControllerState) { controllerFactory.useDefaultDoNothingControlState(); controllerFactory.useDefaultWalkingControlState(); controllerFactory.addRequestableTransition(DO_NOTHING_BEHAVIOR, WALKING); controllerFactory.addRequestableTransition(WALKING, DO_NOTHING_BEHAVIOR); controllerFactory.addControllerFailureTransition(DO_NOTHING_BEHAVIOR, fallbackControllerState); controllerFactory.addControllerFailureTransition(WALKING, fallbackControllerState); controllerFactory.setInitialState(HighLevelControllerName.WALKING); }
public void setupHighLevelStates(HighLevelHumanoidControllerFactory controllerFactory) { controllerFactory.useDefaultDoNothingControlState(); controllerFactory.useDefaultWalkingControlState(); controllerFactory.addRequestableTransition(DO_NOTHING_BEHAVIOR, WALKING); controllerFactory.addRequestableTransition(WALKING, DO_NOTHING_BEHAVIOR); }
public TransferState(RobotSide transferToSide, WalkingStateEnum transferStateEnum, WalkingMessageHandler walkingMessageHandler, HighLevelHumanoidControllerToolbox momentumBasedController, HighLevelControlManagerFactory managerFactory, WalkingFailureDetectionControlModule failureDetectionControlModule, YoVariableRegistry parentRegistry) { super(transferStateEnum, parentRegistry); this.transferToSide = transferToSide; this.walkingMessageHandler = walkingMessageHandler; this.failureDetectionControlModule = failureDetectionControlModule; this.momentumBasedController = momentumBasedController; comHeightManager = managerFactory.getOrCreateCenterOfMassHeightManager(); balanceManager = managerFactory.getOrCreateBalanceManager(); pelvisOrientationManager = managerFactory.getOrCreatePelvisOrientationManager(); feetManager = managerFactory.getOrCreateFeetManager(); }
@Override public double getEstimatedJointTorqueOffset(OneDoFJointBasics joint) { DiagnosticsWhenHangingHelper helper = helpers.get(joint); return helper == null ? Double.NaN : helper.getTorqueOffset(); }
public void createComponentBasedFootstepDataMessageGenerator() { createComponentBasedFootstepDataMessageGenerator(false, null); }
public double getEstimatedTorque(OneDoFJointBasics oneDoFJoint) { DiagnosticsWhenHangingHelper diagnosticsWhenHangingHelper = helpers.get(oneDoFJoint); if (diagnosticsWhenHangingHelper != null) return diagnosticsWhenHangingHelper.getEstimatedTorque(); return 0.0; }
public YoDouble getTorqueOffsetVariable(OneDoFJointBasics oneDoFJoint) { DiagnosticsWhenHangingHelper diagnosticsWhenHangingHelper = helpers.get(oneDoFJoint); if (diagnosticsWhenHangingHelper != null) { return diagnosticsWhenHangingHelper.getTorqueOffsetVariable(); } return null; }
public void setAppliedTorque(OneDoFJoint oneDoFJoint, double appliedTorque) { DiagnosticsWhenHangingHelper diagnosticsWhenHangingHelper = helpers.get(oneDoFJoint); if (diagnosticsWhenHangingHelper != null) { diagnosticsWhenHangingHelper.setAppliedTorque(appliedTorque); } }
public YoDouble getEstimatedTorqueYoVariable(OneDoFJointBasics oneDoFJoint) { DiagnosticsWhenHangingHelper diagnosticsWhenHangingHelper = helpers.get(oneDoFJoint); if (diagnosticsWhenHangingHelper != null) return diagnosticsWhenHangingHelper.getEstimatedTorqueYoVariable(); return null; }
public CenterOfMassHeightManager getOrCreateCenterOfMassHeightManager() { if (centerOfMassHeightManager != null) return centerOfMassHeightManager; if (!hasMomentumBasedController(CenterOfMassHeightManager.class)) return null; if (!hasWalkingControllerParameters(CenterOfMassHeightManager.class)) return null; centerOfMassHeightManager = new CenterOfMassHeightManager(momentumBasedController, walkingControllerParameters, registry); return centerOfMassHeightManager; }
public void setICPOptimizationControllerParameters(ICPOptimizationParameters icpOptimizationParameters) { managerFactory.setICPOptimizationParameters(icpOptimizationParameters); }
private void createControllerRobotMotionStatusUpdater(MomentumBasedControllerFactory controllerFactory, final RobotMotionStatusHolder controllerRobotMotionStatusHolder) { RobotMotionStatusChangedListener controllerRobotMotionStatusUpdater = new RobotMotionStatusChangedListener() { @Override public void robotMotionStatusHasChanged(RobotMotionStatus newStatus, double time) { controllerRobotMotionStatusHolder.setCurrentRobotMotionStatus(newStatus); } }; controllerFactory.attachRobotMotionStatusChangedListener(controllerRobotMotionStatusUpdater); }
private void createControllerRobotMotionStatusUpdater(HighLevelHumanoidControllerFactory controllerFactory, final RobotMotionStatusHolder controllerRobotMotionStatusHolder) { RobotMotionStatusChangedListener controllerRobotMotionStatusUpdater = new RobotMotionStatusChangedListener() { @Override public void robotMotionStatusHasChanged(RobotMotionStatus newStatus, double time) { controllerRobotMotionStatusHolder.setCurrentRobotMotionStatus(newStatus); } }; controllerFactory.attachRobotMotionStatusChangedListener(controllerRobotMotionStatusUpdater); }
public void createComponentBasedFootstepDataMessageGenerator(boolean useHeadingAndVelocityScript) { createComponentBasedFootstepDataMessageGenerator(useHeadingAndVelocityScript, null); }
public DoubleYoVariable getTorqueOffsetVariable(OneDoFJoint oneDoFJoint) { DiagnosticsWhenHangingHelper diagnosticsWhenHangingHelper = helpers.get(oneDoFJoint); if (diagnosticsWhenHangingHelper != null) { return diagnosticsWhenHangingHelper.getTorqueOffsetVariable(); } return null; }
private boolean hasArmControllerParameters(Class<?> managerClass) { if (armControllerParameters != null) return true; missingObjectWarning(ArmControllerParameters.class, managerClass); return false; }
private boolean hasMomentumBasedController(Class<?> managerClass) { if (momentumBasedController != null) return true; missingObjectWarning(HighLevelHumanoidControllerToolbox.class, managerClass); return false; }
private boolean hasCapturePointPlannerParameters(Class<?> managerClass) { if (capturePointPlannerParameters != null) return true; missingObjectWarning(CapturePointPlannerParameters.class, managerClass); return false; }
private boolean hasMomentumOptimizationSettings(Class<?> managerClass) { if (momentumOptimizationSettings != null) return true; missingObjectWarning(MomentumOptimizationSettings.class, managerClass); return false; }