1
1
#!/usr/bin/env python
2
2
from jason_ros .hw_controller import *
3
3
import rospy
4
+ import rosparam
4
5
import argparse
5
6
import std_msgs .msg
6
7
import jason_ros_msgs .msg
@@ -15,7 +16,7 @@ def arg_parser():
15
16
parser .add_argument ("-p" , "--perception" ,
16
17
help = "Perception manifest path" , nargs = 1 , type = str )
17
18
parser .add_argument (
18
- "-r" , "--param" , help = "Rosparam .yaml" , nargs = 1 , type = str )
19
+ "-r" , "--param" , help = "Rosparam.yaml" , nargs = 1 , type = str )
19
20
20
21
args , unknown = parser .parse_known_args ()
21
22
return vars (args )
@@ -38,22 +39,27 @@ def main():
38
39
print ("Starting HwBridge node." )
39
40
rospy .init_node ('HwBridge' )
40
41
42
+ actions_manifest_file = rospy .get_param (rospy .get_name () + "/actions_manifest" , "actions_manifest" )
43
+ perceptions_manifest_file = rospy .get_param (rospy .get_name () + "/perceptions_manifest" , "perceptions_manifest" )
44
+ agent_name = rospy .get_param (rospy .get_name () + "/agent_name" , "" )
45
+
41
46
args = arg_parser ()
42
47
if args ["param" ] is not None :
43
48
import yaml
44
- import rosparam
45
49
with open (args ["param" ][0 ], 'r' ) as stream :
46
50
try :
47
51
yaml_file = yaml .safe_load (stream )
48
52
rosparam .upload_params ("/" , yaml_file )
49
53
except yaml .YAMLError as exc :
50
54
print (exc )
51
55
52
- action_controller = ActionController ()
53
56
if args ["action" ] is not None :
54
- action_controller .read_manifest (args ["action" ][0 ])
55
- else :
56
- action_controller .read_manifest ()
57
+ actions_manifest_file = args ["action" ][0 ]
58
+ if args ["perception" ] is not None :
59
+ perceptions_manifest_file = args ["perception" ][0 ]
60
+
61
+ action_controller = ActionController ()
62
+ action_controller .read_manifest (actions_manifest_file )
57
63
58
64
jason_actions_status_pub = rospy .Publisher (
59
65
'jason/actions_status' ,
@@ -64,15 +70,10 @@ def main():
64
70
jason_action_sub = rospy .Subscriber (
65
71
'jason/actions' ,
66
72
jason_ros_msgs .msg .Action ,
67
- act , (action_controller , jason_actions_status_pub ))
68
-
69
- perception_controller = PerceptionController ()
70
-
71
- if args ["perception" ] is not None :
72
- perception_controller .read_manifest (args ["perception" ][0 ])
73
- else :
74
- perception_controller .read_manifest ()
73
+ act , (action_controller , jason_actions_status_pub , agent_name ))
75
74
75
+ perception_controller = PerceptionController (agent_name )
76
+ perception_controller .read_manifest (perceptions_manifest_file )
76
77
perception_controller .start_perceiving ()
77
78
78
79
jason_percepts_pub = rospy .Publisher (
0 commit comments