Mission file: missions/mapir_sancho_demo_granada_04-2010/demo_granada1.moos



Mission file Short description Modules
missions/mapir_sancho_demo_granada_04-2010/demo_granada1.moos (no description) Domotics_IpPower , GenericSensor , JoystickControl , LocalizationFusion, LocalizationPF, LookAtPoint , MobileRobot_Pioneer , MOOSDB, NavigatorReactivePTG , Neck , RobotGUI2010 , Vision

Mission modules graph:

Raw file contents:

/////////////////////////////////////////////
// Antler configuration  block

ProcessConfig = ANTLER
{
	MSBetweenLaunches 	= 200
	ExecutablePath		= 
	
	//crucial processes

	Run = MOOSDB        @  NewConsole = false

	Run = pGenericSensor       @	NewConsole=true ~ LASER_FRONT
	Run = pGenericSensor       @	NewConsole=false ~ LASER_REAR
//	Run = pGenericSensor       @	NewConsole=false ~ LASER_BOTTOM
//	Run = pGenericSensor       @	NewConsole=true ~ SONAR_RIG
//	Run = pGenericSensor       @	NewConsole=false ~ IR_RIG
	Run = pMobileRobot_Pioneer @	NewConsole=false
	

	Run = pVision     @   NewConsole =false

	Run = iRobotGUI2010     @   NewConsole =false

	Run = pLookAtPoint   @ NewConsole=false

	Run = pLocalizationPF        @   NewConsole =false
	Run = pLocalizationFusion     @   NewConsole =false

	Run = pJoystickControl     @   NewConsole =false
	Run = pNavigatorReactivePTG  @   NewConsole =true
	Run = pNeck       @       NewConsole=false

	Run = pDomotics_IpPower       @       NewConsole=false
 
		
	// MOOS-Scope: Visualizer of MOOS-DB	
	//Run = uMS       @       NewConsole=false
}

ProcessConfig = pMobileRobot_Pioneer
{
	CommsTick = 15
	AppTick = 15

	driver			= CActivMediaRobotBase

	robotPort_WIN 		= COM9
	robotPort_LIN 		= /dev/ttyUSB0
	robotBaud		= 115200

	enableSonars        	= 1     ; 0:Disabled (default), 1: Enabled
}

ProcessConfig = pLocalizationFusion
{
	CommsTick = 30
	AppTick = 30
}


ProcessConfig = pLocalizationPF
{
	CommsTick = 2
	AppTick = 2

	// The map used as a reference for localization
	// ---------------------------------------------------------
	// If "simplemap_file" is present, the other map entries are ignored.
	simplemap_file = granada_22MAR2010.simplemap
//	simplemap_file = 26_MAY_2009_sancho_lab_seminario_pasillo.simplemap


	//gridmap_image_file	= example_map1.png
	//gridmap_image_res	= 0.05		// Resolution: Size of each pixel (meters)
	//gridmap_image_cx	= 100		// Pixel coordinates of the origin (0,0)
	//gridmap_image_cy	= 100		//  If not present, use the image center.

	// Initial uniform distribution:
	X_MIN		= -20
	X_MAX		= -14
	Y_MIN		= 12
	Y_MAX		= 19

	// Number of initial particles
	sampleSize=200000

	// The Particle Filter algorithm:
	//	0: pfStandardProposal	  ***
	//	1: pfAuxiliaryPFStandard
	//	2: pfOptimalProposal    
	//	3: pfAuxiliaryPFOptimal	  ***
	//
	PF_algorithm=0

	// The Particle Filter Resampling method:
	//	0: prMultinomial
	//	1: prResidual
	//	2: prStratified
	//	3: prSystematic
	resamplingMethod=0

	// Set to 1 to enable KLD adaptive sample size:
	adaptiveSampleSize=1

	// Only for algorithm=3 (pfAuxiliaryPFOptimal)
	pfAuxFilterOptimal_MaximumSearchSamples=250

	// Resampling threshold
	BETA=0.5

	// KLD-sampling
	KLD_binSize_PHI_deg=2.5
	KLD_binSize_XY=0.07
	KLD_delta=0.01
	KLD_epsilon=0.01
	KLD_maxSampleSize=40000
	KLD_minSampleSize=150

	// ====================================================
	//            MULTIMETRIC MAP CONFIGURATION
	// ====================================================
//	[MetricMap]
	// Creation of maps:
	occupancyGrid_count = 1 
	gasGrid_count       = 0
	landmarksMap_count  = 0
	pointsMap_count     = 0
	beaconMap_count     = 0

	// Selection of map for likelihood: (fuseAll=-1,occGrid=0, points=1,landmarks=2,gasGrid=3)
	likelihoodMapSelection=-1

	// ====================================================
	//   MULTIMETRIC MAP: OccGrid #00
	// ====================================================
	// Creation Options for OccupancyGridMap 00:
	//	[MetricMap_occupancyGrid_00_creationOpts]
	resolution=0.10

	// Insertion Options for OccupancyGridMap 00:
	//	[MetricMap_occupancyGrid_00_insertOpts]
	mapAltitude=0
	useMapAltitude=0
	maxDistanceInsertion=15
	maxOccupancyUpdateCertainty=0.55
	considerInvalidRangesAsFreeSpace=0
	minLaserScanNoiseStd=0.001

	// Likelihood Options for OccupancyGridMap 00:
	//	[MetricMap_occupancyGrid_00_likelihoodOpts]
	likelihoodMethod=4		// 0=MI, 1=Beam Model, 2=RSLC, 3=Cells Difs, 4=LF_Trun, 5=LF_II

	LF_decimation=20
	LF_stdHit=0.20
	LF_maxCorrsDistance=0.30
	LF_zHit=0.95
	LF_zRandom=0.05
	LF_maxRange=80
	LF_alternateAverageMethod=0
}


ProcessConfig = pJoystickControl
{
	CommsTick = 10
	AppTick = 10

	max_v	= 0.3	// Maximum linear speed (m/s)
	max_w	= 40	// Maximum angular speed (deg/s)
}


ProcessConfig = LASER_FRONT
{
	CommsTick = 100
	AppTick = 200

	driver			= CHokuyoURG
	process_rate		= 90		; Hz
	grab_decimation		= 3

	sensorLabel  		= LASER1
	pose_x			= 0.14	; Laser range scaner 3D position in the robot (meters)
	pose_y			= 0
	pose_z			= 0.29

	pose_yaw		= 0	; Angles in degrees
	pose_pitch		= 0
	pose_roll		= 0

	COM_port_WIN	= COM7
	COM_port_LIN	= ttyACM_FRONT

	// Optional: Exclusion zones to avoid the robot seeing itself:
	//exclusionZone1_x = -0.0.20 0.30 0.30 0.20
	//exclusionZone1_y = 0.20 0.30 0.30 0.20

	// Optional: Exclusion zones to avoid the robot seeing itself:
	exclusionAngles1_ini = 110  // Deg
	exclusionAngles1_end =-110  // Deg

}

ProcessConfig = LASER_REAR
{
	CommsTick = 100
	AppTick = 200

	driver			= CHokuyoURG
	process_rate		= 90		; Hz
	grab_decimation		= 3

	sensorLabel  		= LASER2
	pose_x			= -0.23	; Laser range scaner 3D position in the robot (meters)
	pose_y			= 0
	pose_z			= 0.29
	pose_yaw		= 180	; Angles in degrees
	pose_pitch		= 0
	pose_roll		= 0

	COM_port_WIN	= COM8
	COM_port_LIN	= ttyACM_REAR

	exclusionAngles1_ini = 90  // Deg
	exclusionAngles1_end =-90  // Deg
}

ProcessConfig = LASER_BOTTOM
{
	CommsTick = 100
	AppTick = 200

	driver			= CHokuyoURG
	process_rate		= 90		; Hz
	grab_decimation		= 4

	sensorLabel  		= LASER3
	pose_x			= 0.15	; Laser range scaner 3D position in the robot (meters)
	pose_y			= 0.17
	pose_z			= 0.02
	pose_yaw		= 0	; Angles in degrees
	pose_pitch		= 0
	pose_roll		= 180

	COM_port_WIN	= COM6
	COM_port_LIN	= ttyACM_BOTTOM


	exclusionAngles1_ini = 56  // Deg
	exclusionAngles1_end =-130  // Deg

	// Optional: Exclusion zones to avoid the robot seeing itself:
	//exclusionZone1_x = -0.0.20 0.30 0.30 0.20
	//exclusionZone1_y =  0.20 0.30 0.30 0.20

}


ProcessConfig = iRobotGUI2010
{
	CommsTick = 4
	AppTick = 4

	// The 3D model of the robot (empty: default model)
	robot_3DS_model_file = ./mapir_sancho_robot.3ds.gz

}


ProcessConfig = pNavigatorReactivePTG
{
	CommsTick = 10
	AppTick = 10


	// [xs...; ys...; zs...]
	virtual_obstacles_file = granada_virtual_obs.txt

	//[ROBOT_NAME]

	Name=SANCHO

	save_log	= true	// true/false

	//[GLOBAL_CONFIG]
	// 0: VFF,  1: ND
	HOLONOMIC_METHOD=1	// Optional: Exclusion zones to avoid the robot seeing itself:
	//exclusionZone1_x = -0.0.20 0.30 0.30 0.20
	//exclusionZone1_y = 0.20 0.30 0.30 0.20

	debugWindows=0
	ALARM_SEEMS_NOT_APPROACHING_TARGET_TIMEOUT=100

	// ----------------------------------------------------
	//	Parameters for the "Nearness diagram" Holonomic method
	// ----------------------------------------------------
	//[ND_CONFIG]
	factorWeights=[0.8,0.5,2.5,0.15]
	// 1: Free space
	// 2: Dist. in sectors
	// 3: Closer to target (euclidean)
	// 4: Hysteresis

	WIDE_GAP_SIZE_PERCENT=0.50
	MAX_SECTOR_DIST_FOR_D2_PERCENT=0.25
	RISK_EVALUATION_SECTORS_PERCENT=0.4
	RISK_EVALUATION_DISTANCE=0.15		
	TARGET_SLOW_APPROACHING_DISTANCE=0.15
	TOO_CLOSE_OBSTACLE=0.02	

	// ----------------------------------------------------
	//	Parameters for the navigation on the ROBOT
	// ----------------------------------------------------
	//[THE_ROBOT]
	weights=[0.2, 0.05, 0.5, 2.0, 0.15, 0.1]
	// 1: Free space
	// 2: Dist. in sectors			
	// 3: Heading toward target
	// 4: Closer to target (euclidean)
	// 5: Hysteresis
	// 6: Security Distance

	DIST_TO_TARGET_FOR_SENDING_EVENT=1.25	
	// Minimum. distance to target for sending the end event. Set to 0 to send it just on navigation end

	MinObstaclesHeight=0.01
	// Minimum coordinate in the "z" axis for an obstacle to be taken into account.

	MaxObstaclesHeight=1.20 		
	//Maximum coordinate in the "z" axis for an obstacle to be taken into account.

	robotMax_V_mps=0.80			
	//Speed limits

	robotMax_W_degps=40

	ROBOTMODEL_DELAY=0			
	// The delay until motor reaction

	ROBOTMODEL_TAU=0			
	// The TAU time constant ofttyACM_FRONT a first order lowpass filter

	MAX_REFERENCE_DISTANCE= 8 
	WIDE_GAP_SIZE_PERCENT=0.40
	RISK_EVALUATION_DISTANCE=0.6
	RISK_EVALUATION_SECTORS_PERCENT=0.70
	MAX_SECTOR_DIST_FOR_D2_PERCENT=0.25
	RESOLUCION_REJILLA_X=0.03
	RESOLUCION_REJILLA_Y=0.03

	PTG_COUNT=3

	// 		C-PTGs:
	// ------------------------------------
	PTG0_Type=1
	PTG0_nAlfas=300
	PTG0_v_max_mps=0.8
	PTG0_w_max_gps=40	Run = pNeck       @       NewConsole=false

	PTG0_K=1.0

	PTG1_Type=1
	PTG1_nAlfas=300
	PTG1_v_max_mps=0.4
	PTG1_w_max_gps=40
	PTG1_K=-1.0

	//	     a-A type PTGs:
	// ------------------------------------
	PTG2_Type=2
	PTG2_nAlfas=300
	PTG2_v_max_mps=0.8
	PTG2_w_max_gps=40
	PTG2_cte_a0v_deg=50
	PTG2_cte_a0w_deg=50

	RobotModel_shape2D_xs=[-0.35, 0.35, 0.4, 0.35, -0.35]
	RobotModel_shape2D_ys=[0.3, 0.3, 0,  -0.3, -0.3]

}


ProcessConfig = pNeck
{
	CommsTick = 10
	AppTick = 10

	filterDepth = 2
	truncateFactor = 0.5
}


ProcessConfig = SONAR_RIG
{
	CommsTick = 10
	AppTick = 10

	driver			= CBoardSonars
	process_rate		= 10		; Hz
	sensorLabel  		= SONAR1

	USB_serialNumber	= SONAR001
	gain			= 5		// Value between 0 and 16, for analog gains between 40 and 700.
	maxRange		= 7.0		// In meters, used for device internal timer.
	minTimeBetweenPings	= 0.15		// In seconds

	// The order in which sonars will be fired, indexed by their I2C addresses [0,15]
	// Up to 16 devices, but you can put any number of devices (from 1 to 16).
	firingOrder=0 11 2 4 3 5 1 10 6 8 7 9

	// The individual gains of the sonars, indexed by their I2C addresses [0x00, 0x16] Typical: 0x05
	//  Up to 16 devices, but you can put any number of devices (from 1 to 16).
	sonarGains=5 5 5 5 5 5 3 3 3 3 5 5

	// The poses of the sonars: x[m] y[m] z[m] yaw[deg] pitch[deg] roll[deg]
	//  Up to 16 devices, but you can put any number of devices (from 1 to 16).
	pose0  = 0.2 -0.16 0.76 -10 0 0
	pose1  = 0.2 0.16 0.76 10 0 0
	pose2  = 0.2 -0.16 0.56 -5 0 0
	pose3  = 0.2 0.16 0.56 5 0 0
	pose4  = -0.03 0.2 0.76 90 0 0
	pose5  = -0.03 -0.2 0.76 -90 0 0
	pose6  = 0.2 0.19 0.12 2 0 0
	pose7  = 0.2 -0.19 0.12 -2 0 0
	pose8  = -0.27 -0.13 0.11 180 0 0
	pose9  = -0.27 0.13 0.11 180 0 0
	pose10 = -0.27 -0.13 0.55 180 0 0
	pose11 = -0.27 0.13 0.55 180 0 0

}


ProcessConfig = IR_RIG
{
	CommsTick = 20
	AppTick = 20

	driver			= CBoardIR
	process_rate		= 10		; Hz
	sensorLabel  		= INFRARED1

	COM_port_WIN	= COM1
	COM_port_LIN	= ttyUSB1

	baudRate	= 4800


	// The poses of the IR sensors: x[m] y[m] z[m] yaw[deg] pitch[deg] roll[deg]
	//  Up to 6 devices, but you can put any number of devices (from 1 to 16).
	pose0  = -0.2 -0.1 0.05 180 0 0
	pose1  = -0.2 +0.1 0.05 180 0 0
	pose2  = 0.23 0.21 0.05 0 0 0
	pose3  = 0.33 0.05 0.05 0 0 0
	pose4  = 0.33 -0.05 0.05 0 0 0
	pose5  = 0.23 -0.21 0.05 0 0 0

}

ProcessConfig = pDomotics_IpPower
{
	CommsTick = 10
	AppTick = 10

	// IP address of the IP Power server
	IP		= 192.168.0.200
	user		= admin
	password	= 

}

ProcessConfig = pLookAtPoint
{
	CommsTick = 10
	AppTick = 10

	maxRotationSpeed  = 120
	maxAngleNeck      = 10

}


ProcessConfig = pVision
{
	CommsTick = 20
	AppTick = 40

	// If desired, some vision sub-modules can be set to be enabled at start-up 
	//  (default is all disabled at start-up).
	// One or more names, separated by spaces and/or commas, from this list:
	//   DISPLAY_IMAGE
	//   CAMSHIFT 
	active_modules		= 
  //DISPLAY_IMAGE      //DISPLAY_IMAGE //, CAMSHIFT


	// -----------------------------------------------------------------
	// MRPT's CCameraSensor-compatible configuration block to select
	//  which video source to open:
	// -----------------------------------------------------------------
	driver			= CCameraSensor
	sensorLabel		= CAMERA1
	grab_decimation		= 3

	//bumblebee_frame_width   = 640
	//bumblebee_frame_height  = 480

	// Type of camera driver:
	grabber_type		= opencv
//	grabber_type		= bumblebee
//	grabber_type		= ffmpeg

	cv_camera_index		= 0		// [opencv] Number of camera to open
//	ffmpeg_url		= /media/ALMACENAMIENTO/Videos/Bienvenidos.Al.Norte.avi  // [ffmpeg] The video file or IP camera to open


	// =============== Params for DISPLAY_IMAGE  ====================


	// =============== Params for CAMSHIFT  ====================
	
	// =============== Params for FACEDETECTOR  ====================
	
	cascadeName		= ./haarcascade_frontalface_alt.xml
	nestedCascadeName	= ./haarcascade_eye_tree_eyeglasses.xml
	useNestedCascade	= 0
	framesRepeatDetect	= 200
	scale			= 1
	thresholdSameFace	= 1
	scaleSearchFace		= 0.6
	numGeneralSearch	= 4
	displayMode		= 1
	traceMode		= 1
	thresholdExistFace	= 3
	minSizeDetector		= 3
	cameraIndex  		= 0
	cameraWidth		= 640
	cameraHeight		= 480
	saveVideo		= 0

	neckTrackMode		= true
	neckMovFreq		= 1

 



}





Page generated by Mooxygen 1.1.0 at Mon May 26 00:30:12 2014
Valid HTML 4.01 Transitional