private MomentumBasedControllerFactory createDRCControllerFactory(DRCRobotModel robotModel, PacketCommunicator packetCommunicator) { ContactableBodiesFactory contactableBodiesFactory = robotModel.getContactPointParameters().getContactableBodiesFactory(); ArmControllerParameters armControllerParameters = robotModel.getArmControllerParameters(); WalkingControllerParameters walkingControllerParameters = robotModel.getWalkingControllerParameters(); final HighLevelState initialBehavior; CapturePointPlannerParameters capturePointPlannerParameters = robotModel.getCapturePointPlannerParameters(); ICPOptimizationParameters icpOptimizationParameters = robotModel.getICPOptimizationParameters(); initialBehavior = HighLevelState.WALKING; // HERE!! SideDependentList<String> feetContactSensorNames = sensorInformation.getFeetContactSensorNames(); SideDependentList<String> feetForceSensorNames = sensorInformation.getFeetForceSensorNames(); SideDependentList<String> wristForceSensorNames = sensorInformation.getWristForceSensorNames(); MomentumBasedControllerFactory controllerFactory = new MomentumBasedControllerFactory(contactableBodiesFactory, feetForceSensorNames, feetContactSensorNames, wristForceSensorNames, walkingControllerParameters, armControllerParameters, capturePointPlannerParameters, initialBehavior); controllerFactory.createControllerNetworkSubscriber(new PeriodicNonRealtimeThreadScheduler("CapturabilityBasedStatusProducer"), packetCommunicator); controllerFactory.setICPOptimizationControllerParameters(icpOptimizationParameters); // controllerFactory.addHighLevelBehaviorFactory(new JointPositionControllerFactory(true)); if (!USE_GUI) controllerFactory.createComponentBasedFootstepDataMessageGenerator(true, null); return controllerFactory; } }
SideDependentList<String> wristForceSensorNames = sensorInformation.getWristForceSensorNames(); MomentumBasedControllerFactory controllerFactory = new MomentumBasedControllerFactory(contactableBodiesFactory, feetForceSensorNames, feetContactSensorNames, wristForceSensorNames, walkingControllerParameters, armControllerParameters, capturePointPlannerParameters, HighLevelState.WALKING);
SideDependentList<String> wristForceSensorNames = sensorInformation.getWristForceSensorNames(); controllerFactory = new MomentumBasedControllerFactory(contactableBodiesFactory, feetForceSensorNames, feetContactSensorNames, wristForceSensorNames, walkingControllerParameters, armControllerParameters, capturePointPlannerParameters, HighLevelState.WALKING); controllerFactory.attachControllerFailureListeners(controllerFailureListeners);
SideDependentList<String> wristForceSensorNames = sensorInformation.getWristForceSensorNames(); MomentumBasedControllerFactory controllerFactory = new MomentumBasedControllerFactory(contactableBodiesFactory, feetForceSensorNames, feetContactSensorNames, wristForceSensorNames, walkingControllerParameters, armControllerParameters, capturePointPlannerParameters, HighLevelState.WALKING);
SideDependentList<String> wristForceSensorNames = sensorInformation.getWristForceSensorNames(); controllerFactory = new MomentumBasedControllerFactory(contactableBodiesFactory, feetForceSensorNames, feetContactSensorNames, wristForceSensorNames, walkingControllerParameters, armControllerParameters, capturePointPlannerParameters, HighLevelState.WALKING); controllerFactory.attachControllerFailureListeners(controllerFailureListeners);
SideDependentList<String> feetContactSensorNames = sensorInformation.getFeetContactSensorNames(); SideDependentList<String> wristForceSensorNames = sensorInformation.getWristForceSensorNames(); MomentumBasedControllerFactory momentumBasedControllerFactory = new MomentumBasedControllerFactory(contactableBodiesFactory, footSensorNames, feetContactSensorNames, wristForceSensorNames, walkingControllerParameters, armControllerParameters, capturePointPlannerParameters, HighLevelState.DO_NOTHING_BEHAVIOR);
SideDependentList<String> feetContactSensorNames = sensorInformation.getFeetContactSensorNames(); SideDependentList<String> wristForceSensorNames = sensorInformation.getWristForceSensorNames(); MomentumBasedControllerFactory momentumBasedControllerFactory = new MomentumBasedControllerFactory(contactableBodiesFactory, footSensorNames, feetContactSensorNames, wristForceSensorNames, walkingControllerParameters, armControllerParameters, capturePointPlannerParameters, HighLevelState.DO_NOTHING_BEHAVIOR);