ROS小练习(服务通信)

输入

mkdir ser_cli_ws
cd ser_cli_ws/
mkdir src
atkin_make
cd src
catkin_create_pkg ser_cli roscpp rospy std_msgs
cd ser_cli
mkdir srv
mkdir scripts
cd ..
code .
int32 num
---
string dec
#!/usr/bin/env python
import rospy
from ser_cli.srv import Love,LoveRequest
import sys


if __name__ == '__main__':
    if len(sys.argv)!= 2 :
        rospy.logerr('参数输入错误')
        sys.exit(1)
    rospy.init_node('cli')
    client = rospy.ServiceProxy('love',Love)
    client.wait_for_service()
    rep = LoveRequest()
    rep.num = int(sys.argv[1])
    resq = client.call(rep)
    rospy.loginfo('收到的回复是:%s',resq.dec)
    
#!/usr/bin/env python
import rospy
from ser_cli.srv import Love,LoveRequest,LoveResponse

def doCli(req):
    income = 2000
    sum = income + req.num
    if(sum<10000):
        rospy.loginfo('工资和是:%d,不够生活',sum)
        return "我不愿意"
    else:
        rospy.loginfo('工资和是:%d,够生活',sum)
        return"我愿意"
    
if __name__ == '__main__':
    rospy.init_node("ser")
    rospy.Service('love',Love,doCli)
    rospy.spin()
  <build_export_depend>message_generation</build_export_depend>
  <exec_depend>message_runtime</exec_depend>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值