공식 위키에서이 문서의 http://wiki.ros.org/ROS/Tutorials/UnderstandingServicesParams
- ROS 서비스 (서비스)
서비스는 ROS의 통신 메커니즘이지만, 게시 및 가입 테마 다른 서비스는 "요청 (요청) - 응답 (응답)"을 채택 데이터 교환을위한 메커니즘을.
그리고 서비스 관련 기능은 rosservice 명령을 사용하여 수행 할 수있다.
rosservice 목록은 활성 서비스 정보 나열 주어진 매개 변수라는 서비스를 호출 rosservice 서비스의 유형을 rosservice 형 인쇄를 서비스의 지정된 유형 찾기 위해 찾아 rosservice rosservice의 URI 인쇄 서비스 ROSRPC 소스를
- rosservice 목록
이 명령은 같은 작은 거북이의 예에서와 같이 현재 활성화 된 서비스를 나열, 우리는 rosservice 목록이 실행
다음을 반환합니다 :
$의 rosservice 목록 / 투명 / 죽 / 리셋 / rosout / get_loggers / rosout / set_logger_level / rostopic_21128_1568429034667 / get_loggers / rostopic_21128_1568429034667 / set_logger_level / rostopic_25467_1568471203069 / get_loggers / rostopic_25467_1568471203069 / set_logger_level / rqt_gui_py_node_25560 / get_loggers / rqt_gui_py_node_25560 / set_logger_level / rqt_gui_py_node_25926 / get_loggers / rqt_gui_py_node_25926 / set_logger_level / 산란 / teleop_turtle / get_loggers / teleop_turtle / set_logger_level / turtle1 / set_pen / turtle1 / teleport_absolute / turtle1 / teleport_relative / turtlesim / get_loggers / turtlesim / set_logger_level
- rosservice 입력
서비스의 종류를 볼 수 있습니다 rosservice 유형을 사용 후 :
$의 rosservice 형 / 투명 std_srvs / 빈
빈은 서비스, 지정 매개 변수없이 데이터하지 않고, 해당 동작하는 기능을 반환하고 있음을 나타냅니다.
- rosservice 호출
서비스를 호출 할 수 있습니다 rosservice 호출을 사용하여.
사용법은 다음과 같습니다rosservice 호 [서비스 [인수]
예를 들어, / 명확한 호출 할, 다음 문을 사용합니다 :
rosservice 호출 클리어 /
그것은 작은 거북이 이동 트랙을 떠나 제거됩니다.
우리는 매개 변수 서비스 / spwan의 매개 변수를 볼 수 있습니다 :
$의 rosservice 타입 / 산란 | 보여 rossrv float32 X float32 Y float32 세타 문자열 이름 --- 문자열 이름을
그것은 세 float32 위치 (X, Y)과 대향 세타 문자열 이름을 나타내는 이름으로 표시되는 데이터의 타입 / 스폰 서비스 파라미터를 알 수있다.
다음 명령을 사용하여 서비스를 호출합니다 :rosservice 전화 / 산란 2 2 0.2 ""
또 다른 작은 거북이를 생산하는 것입니다 :
- rosservice 목록
- ROS 매개 변수 (rosparam)
rosparam는 ROS 매개 변수 서버 (수 매개 변수 서버 저장) 및 (개인 이해 전역 변수 프로그램과 같은) 작동 매개 변수를. : 서버 매개 변수는 다음과 같은 데이터 유형 저장하기 위해 YAML 마크 업 언어를 취할
정수 (정수), 수레 (부동 소수점), 부울 (부울), 사전 (사전 (키 타입)) 및 목록 (목록 유형). 다음과 같이 rosparam 명령을 사용하여 매개 변수 관련 작업이 사용됩니다 :
rosparam는 매개 변수 값을 설정 매개 변수 값을 얻을 수 rosparam 파일에서 rosparam 부하 부하 매개 변수 파일에 rosparam 덤프 저장 매개 변수를 매개 변수 삭제 삭제 rosparam 나열되어 있습니다 rosparam 목록 매개 변수 이름을
- rosparam 목록
이 명령은 모든 매개 변수 이름을 나열 할 수 있습니다 :
$의 rosparam 목록 / background_b / background_g / background_r / rosdistro / roslaunch / URI에 / host_localhost__35773 / rosversion / run_id
-
rosparam GET rosparam 설정
값이 설정 예를 들어, 다음의 명령 (200)의 적색 채널 값의 배경색을 설정 rosparam 매개 변수를 설정할 수있다 :rosparam 세트 / background_r 200
그런 배경을 새로 명확한 서비스를 호출해야합니다 :
$의 rosservice 호출 클리어 /
배경은 분홍색으로 변합니다
녹색의 배경을 얻기 위해 다음 명령을 사용하여
$ rosparam GET / background_g (86)
/ 모든 명령 매개 변수 값을 사용할 수 rosparam 사용
$ rosparam GET / background_b : 255 background_g : 86 background_r : 200 rosdistro '운동 ' roslaunch : URI를 : {host_localhost__35773 '에 http : // localhost를 : 35773 /'} rosversion : '1.12.14 ' run_id : d0977b84-d694-11e9 -b3cd-502b73e82f34
-
rosparam 덤프 및 rosparam 부하
덤프 저장 매개 변수 rosparam 부하 하중 매개 변수를 rosparam 수 있습니다 :rosparam 덤프 [file_name]과 [네임 스페이스] rosparam 부하 [file_name]과 [네임 스페이스]
당신은 파일 이름과 네임 스페이스 매개 변수를 지정할 수 있습니다
현재 네임 스페이스의 모든 매개 변수 params.yaml 파일을 작성하는 명령을 다음과 같이.$ rosparam 덤프 params.yaml
params.yaml에서 파일 이름 공간을 복사하려면 다음 명령 모든 매개 변수를로드합니다.
$ rosparam 부하 params.yaml 복사
그런 다음 매개 변수 공간을 읽을 수 :
$ rosparam GET / 복사 / background_b
255
- rosparam 목록