更新了 add_walkers
This commit is contained in:
parent
f2df712f2e
commit
2ac24bad61
|
@ -208,23 +208,22 @@ class Scene:
|
|||
else:
|
||||
return True
|
||||
|
||||
def add_walker(self, X, Y, Yaw):
|
||||
if self.use_offset:
|
||||
X, Y = X + loc_offset[0], Y + loc_offset[1]
|
||||
if self.reachable_check(X, Y, Yaw):
|
||||
stub.AddWalker(
|
||||
GrabSim_pb2.WalkerList(
|
||||
walkers=[
|
||||
GrabSim_pb2.WalkerList.Walker(
|
||||
id=0,
|
||||
pose=GrabSim_pb2.Pose(
|
||||
X=X, Y=Y, Yaw=Yaw
|
||||
), # Parameter id is useless
|
||||
)
|
||||
],
|
||||
scene=self.sceneID,
|
||||
)
|
||||
)
|
||||
def add_walkers(self,walker_loc=[[0, 880], [250, 1200], [-55, 750], [70, -200]]):
|
||||
print('------------------add_walkers----------------------')
|
||||
walker_list = []
|
||||
for i in range(len(walker_loc)):
|
||||
loc = walker_loc[i] + [0, 0, 100]
|
||||
action = GrabSim_pb2.Action(scene=self.sceneID, action=GrabSim_pb2.Action.ActionType.WalkTo, values=loc)
|
||||
scene = stub.Do(action)
|
||||
print(scene.info)
|
||||
if (str(scene.info).find('unreachable') > -1):
|
||||
print('当前位置不可达,无法初始化NPC')
|
||||
else:
|
||||
walker_list.append(
|
||||
GrabSim_pb2.WalkerList.Walker(id=i + 5, pose=GrabSim_pb2.Pose(X=loc[0], Y=loc[1], Yaw=90)))
|
||||
|
||||
scene = stub.AddWalker(GrabSim_pb2.WalkerList(walkers=walker_list, scene=self.sceneID))
|
||||
return scene
|
||||
|
||||
def remove_walker(self, *args): # take single walkerID or a list of walkerIDs
|
||||
remove_list = []
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
具体描述:设计一套点单规则(如菜单包含咖啡、水、点心等),按照规则拟造随机的订单。在收到订单后,通过大模型让机器人输出合理的备餐计划,并尝试在模拟环境中按照这个规划实现任务。
|
||||
|
||||
"""
|
||||
import time
|
||||
|
||||
# todo: 接收点单信息,大模型生成任务规划
|
||||
|
||||
|
@ -23,11 +24,12 @@ class SceneOT(Scene):
|
|||
]
|
||||
|
||||
def _reset(self):
|
||||
scene = self.add_walker(0, 0, 0)
|
||||
print("我有点热,能开个空调吗?")
|
||||
# print("scene.walkers:",scene.walkers)
|
||||
# cont = scene.walkers[0].name+":我有点热,能开个空调吗?"
|
||||
# self.control_robot_action(0,3,cont)
|
||||
scene = self.add_walkers([[0, 0], [250, 1200], [-55, 750], [70, -200]])
|
||||
# time.sleep(2.0)
|
||||
# print("我有点热,能开个空调吗?")
|
||||
print("scene.walkers:",scene.walkers)
|
||||
cont = scene.walkers[0].name+":我有点热,能开个空调吗?"
|
||||
self.control_robot_action(0,3,cont)
|
||||
# self.control_walker([self.walker_control_generator(0, False, 100, 755, 1900, 180)])
|
||||
pass
|
||||
|
||||
|
|
Loading…
Reference in New Issue