nbv_sim/sim_grasp.py
Michel Breyer 9a03a26172 Cleanup
2021-07-06 14:00:04 +02:00

50 lines
1.0 KiB
Python

import argparse
import rospy
import std_srvs.srv as std_srvs
from controller import GraspController
from policies import get_policy
class SimGraspController(GraspController):
def __init__(self, policy):
super().__init__(policy)
self.reset_sim = rospy.ServiceProxy("/reset", std_srvs.Trigger)
def reset(self):
req = std_srvs.TriggerRequest()
self.reset_sim(req)
rospy.sleep(1.0) # wait for states to be updated
def create_parser():
parser = argparse.ArgumentParser()
parser.add_argument(
"--policy",
type=str,
choices=[
"single-view",
"top",
"alignment",
"random",
"fixed-trajectory",
],
)
return parser
def main():
rospy.init_node("active_grasp")
parser = create_parser()
args = parser.parse_args()
policy = get_policy(args.policy)
controller = SimGraspController(policy)
while True:
controller.run()
if __name__ == "__main__":
main()