left motor forward
right motor forward
wait forever
+
Behaviour Wander
take control:
action:
right motor forward
wait 1000 ms
-Behaviour MeasureLake
- take control: (|| Color is Green Color is Blue Color is Red)
+Behaviour GreenLake
+ take control: (&& Color is Green not flag set GreenMeasured)
+ action:
+ measure Lake
+ set flag GreenLake
+
+Behaviour BlueLake
+ take control: (&& Color is Blue not flag set BlueMeasured)
+ action:
+ measure Lake
+ set flag BlueLake
+
+Behaviour RedLake
+ take control: (&& Color is Red not flag set RedMeasured)
action:
measure Lake
+ set flag RedLake
-Behaviour LocateL
+Behaviour MeasureRock
+ take control: (&& Distance dangerous at front not flag set Measured)
+ action:
+ measure Rock
+ set flag Measured
+
+Behaviour PushL
take control: Touched on left
action:
right motor forward
left motor backward
- wait 500 ms
+ /*wait 500 ms
right motor forward
left motor forward
- wait 1000 ms
+ wait 500ms*/
-Behaviour LocateR
+Behaviour PushR
take control: Touched on right
action:
left motor forward
right motor backward
- wait 500 ms
+ /*wait 500 ms
right motor forward
left motor forward
- wait 1000 ms
+ wait 1000 ms*/
-Behaviour Push
+Behaviour PushB
take control: (&& Touched on left Touched on right)
action:
+ set flag Pushing
left motor forward
right motor forward
- wait 1000 ms
-
-Behaviour BumpL
- take control: Touched on left
+ wait 10000 ms
+
+Behaviour StopPushing
+ take control: (&& not Touched on left not Touched on right flag set Pushing)
action:
- left motor backward with speed 50 acceleration 1000
- right motor backward
- wait 2000 ms
+ set flag Pushed
-Behaviour BumpR
- take control: Touched on right
- action:
- right motor backward with speed 50 acceleration 1000
- left motor backward
- wait 2000 ms
+/*Mission FindAndMeasureLakes
+ using Wander StayInFieldR StayInFieldL StayInFieldB GreenLake RedLake BlueLake
+ and stops when (&& flag set GreenLake flag set RedLake flag set BlueLake)
-Behaviour AvoidHigh
- take control: Distance dangerous at front
- action:
- turn randomly 10 to 11 degrees
-
-//Mission pushRock
-// using Drive LocateR LocateL Push StayInFieldB StayInFieldL StayInFieldR and stops when Never
-Mission avoidHighRocks
- using Drive AvoidHigh BumpR BumpL StayInFieldB StayInFieldL StayInFieldR and stops when Never
-//Mission measureLake
-// using Drive MeasureLake and stops when Never
-//Mission findBlueLakeWhileAvoidingRocks
-// using Wander BumpR BumpL StayInFieldB StayInFieldL StayInFieldR and stops when Color is Blue
-//Mission findAllLakesAndMeasureThem
-// using Wander MeasureLake StayInFieldB StayInFieldL StayInFieldR and stops when Collected at least Green Blue Red
-//Mission justWander
-// using Wander Wander StayInFieldB StayInFieldL StayInFieldR and stops when Color is Cyan
\ No newline at end of file
+Mission FindAndMeasureRocks
+ using Wander StayInFieldR StayInFieldL StayInFieldB MeasureRock
+ and stops when flag set Measured */
+Mission PushRocks
+ using Wander PushL PushR PushB StopPushing StayInFieldR StayInFieldL StayInFieldB
+ and stops when flag set Pushed
\ No newline at end of file