ROS Pythhon에서 Service Call까지의 프로세스
개시하다
로스코어를 실행할 때 자동으로 나타나는
/rosout/get_loggers
와 /rosout/set_logger_level
두 서비스를 예로 들어 ROS Python에서 서비스를 호출할 때의 절차를 정리했다.조사 서비스
1. 우선 확인
Service名
$ rosservice list
/rosout/get_loggers
/rosout/set_logger_level
2.확인Serviceの型
과その型を定義しているパッケージ
서비스 슬래시의 앞부분은 이번에 roscpp
로 확인되었습니다.$ rosservice type /rosout/get_loggers
roscpp/GetLoggers
$ rosservice type /rosout/set_logger_level
roscpp/SetLoggerLevel
3. 최종 확인Serviceの型の構成
$ rossrv show roscpp/GetLoggers
---
roscpp/Logger[] loggers
string name
string level
$ rossrv show roscpp/SetLoggerLevel
string logger
string level
---
Python에서 호출
get_loggers.py
#!/usr/bin/env python
import rospy
from roscpp.srv import GetLoggers
rospy.wait_for_service('/rosout/get_loggers')
get_loggers = rospy.ServiceProxy('/rosout/get_loggers', GetLoggers)
response = get_loggers()
print(response)
set_logger_level.py
#!/usr/bin/env python
import rospy
from roscpp.srv import SetLoggerLevel
rospy.wait_for_service('/rosout/set_logger_level')
set_logger_level = rospy.ServiceProxy('/rosout/set_logger_level', SetLoggerLevel)
set_logger_level("rosout","DEBUG")
참고 자료
Reference
이 문제에 관하여(ROS Pythhon에서 Service Call까지의 프로세스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hoshianaaa/items/6d04acb74c8416f6b1d6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)