All Downloads are FREE. Search and download functionalities are using the official Maven repository.

APT.all-test.clean-house-new.elaborations.direction-laird@umich.edu,lairdpc1.soar Maven / Gradle / Ivy

sp {robot*elaborate*state*gateway-direction-structures
   (state  ^name robot
              ^superstate nil)
-->
   ( ^gateway-directions 
        ^avoidance-turning )
   ( ^south   #values are opposite - which direction to head to go through gateway that is on that side
         ^north 
         ^east 
         ^west )
   ( ^value 0
           ^min -5
           ^max 5
           ^x-displace -1.5
           ^y-displace 0)
   ( ^value 180
           ^min-pos 175
           ^max-pos 180
           ^max-neg -175
           ^min-neg -180
           ^x-displace 1.5
           ^y-displace 0)
   ( ^value 90
            ^min 85
            ^max 95
            ^x-displace 0
            ^y-displace -1.5)
   ( ^value -90
            ^min -95
            ^max -85
            ^x-displace 0
            ^y-displace 1.5)
   ( ^item     )
   ( ^id -2
         ^turn -80)
   ( ^id -1
         ^turn -50)
   ( ^id 2
         ^turn 80)
   ( ^id 1
         ^turn 50)
   ( ^id 0
         ^turn 0)
}

sp {robot*elaborate*state*directions
   (state  ^name robot
              ^superstate nil)
-->
   ( ^directions )
   ( ^nnw 22.5
          ^nw 45
          ^wnw 67.5
          ^wsw 112.5
          ^sw 135
          ^ssw 157.5
          ^sse -157.5
          ^se -135
          ^ese -112.5
          ^ene -67.5
          ^ne -45
          ^nne -22.5)
}

sp {robot*elaborate*state*directions*eswn
   (state  ^name robot
              ^superstate nil)
-->
   ( ^directions    )
   (  ^value north ^opposite south)
   ( ^value south ^opposite north)
   (  ^value east  ^opposite west)
   (  ^value west  ^opposite east)
}

sp {robot*elaborate*direction*north1
   (state  ^name robot
              ^directions 
             -^io.input-link.self.pose.yaw > 
             -^io.input-link.self.pose.yaw <= )
   ( ^nw 
          ^ne )
-->
   ( ^direction north)
}

sp {robot*elaborate*direction*east
   (state  ^name robot
              ^directions 
             -^io.input-link.self.pose.yaw > 
             -^io.input-link.self.pose.yaw <= )
   ( ^ne 
          ^se )
-->
   ( ^direction east)
}

sp {robot*elaborate*direction*south1
   (state  ^name robot
              ^directions 
             -^io.input-link.self.pose.yaw  >  )
   ( ^se 
          ^sw )
-->
   ( ^direction south)
}

sp {robot*elaborate*direction*south2
   (state  ^name robot
              ^directions 
             -^io.input-link.self.pose.yaw  <=  )
   ( ^se 
          ^sw )
-->
   ( ^direction south)
}

sp {robot*elaborate*direction*west
   (state  ^name robot
              ^directions 
             -^io.input-link.self.pose.yaw <= 
             -^io.input-link.self.pose.yaw > )
   ( ^sw 
          ^nw )
-->
   ( ^direction west)
}


sp {robot*elaborate*tight-direction*north
   (state  ^name robot
              ^directions 
              ^io.input-link.self.pose.yaw { <=  >  })
   ( ^nne 
          ^nnw )
-->
   ( ^tight-direction  north)
}

sp {robot*elaborate*tight-direction*east
   (state  ^name robot
              ^directions 
              ^io.input-link.self.pose.yaw { <=  > })
   ( ^nne 
          ^ese )
-->
   ( ^tight-direction  east)
}

sp {robot*elaborate*tight-direction*south1
   (state  ^name robot
              ^directions 
              ^io.input-link.self.pose.yaw <= )
   ( ^sse 
          ^ssw )
-->
   ( ^tight-direction  south)
}

sp {robot*elaborate*tight-direction*south2
   (state  ^name robot
              ^directions 
              ^io.input-link.self.pose.yaw > )
   ( ^sse 
          ^ssw )
-->
   ( ^tight-direction  south)
}
sp {robot*elaborate*tight-direction*west
   (state  ^name robot
              ^directions 
              ^io.input-link.self.pose.yaw { <=  >  })
   ( ^wnw 
          ^wsw )
-->
   ( ^tight-direction  west)
}