티스토리 뷰
앞으로 파일을 작성할 때 vi에디터를 이용하기 위해 vim을 설치하였다. vi에디터 말고 gedit을 사용해도 된다.
sudo apt -y install vim

1. 파일 생성
~/xycar_ws/src/my_pkg1/src/ 위치에 가서 pub.py 파일을 아래와 같이 작성한다.

#!/usr/bin/env python
import rospy
from geometry_msgs.msg import Twist
rospy.init_node('my_node', anonymous=True)
pub = rospy.Publisher('/turtle1/cmd_vel', Twist, queue_size=10)
msg = Twist()
msg.linear.x = 2.0
msg.linear.y = 2.0
msg.linear.z = 2.0
msg.angular.x = 2.0
msg.angular.y = 2.0
msg.angular.z = 2.0
rate = rospy.Rate(1)
while not rospy.is_shutdown():
pub.publish(msg)
rate.sleep()

2. 파일 실행권한
ls -l
pub.py의 실행권한이 rw-rw-r--이다.
chmod +x pub.py
pub.py의 실행권한에 +x해주었다. x는 execute. 실행가능 권한이다.
ls -l
pub.py의 실행권한이 rwxrwxr-x로 바뀐 것을 확인할 수 있다. 또 파일이름도 녹색으로 바뀌었다. 실행할 수 있다는 의미.

3. 프로그램 실행
터미널#1에서
roscore

터미널#2에서
rosrun turtlesim turtlesim_node

터미널#3에서
rosrun my_pkg1 pub.py

이때 실행이 안된다면 2번에서 chmod +x pub.py 를 실행했는지 확인한다.
터미널#4에서
rqt_graph

내가 만든 노드에서 /turtlesim노드에 /turtle1/cmd_vel 토픽을 발행하는 것을 확인할 수 있다.
여기서 my_node뒤의 숫자는 아까 코드에서 anonymous=True로 설정했기 때문에 랜덤하게 만들어진 숫자이다.
터미널#4에서
rosnode list

여기서 노드들을 다시 한 번 확인할 수 있다.
'ROS' 카테고리의 다른 글
| Ubuntu16.04 ROS Kinetic - roslaunch 생성 및 실습 (0) | 2020.12.22 |
|---|---|
| Ubuntu16.04 ROS Kinetic - subscriber python파일 작성 및 실행 (0) | 2020.12.22 |
| Ubuntu16.04 ROS Kinetic - 패키지 생성 (0) | 2020.12.22 |
| Ubuntu16.04 ROS Kinetic - turtlesim노드 실습 (0) | 2020.12.22 |
| Ubuntu16.04 ROS Kinetic workspace 생성 (0) | 2020.12.22 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- ROS
- 윈도우
- 원격 통신
- 리눅스
- 초음파센서
- vue/cli
- Ubuntu16.04
- Ubuntu20.04
- subscriber
- 윈도우 복구
- VirtualBox
- Python
- sensehat
- HC-SR04
- 프로그래머스
- 8자주행
- filesystem
- 우분투
- VMware
- umount
- C++
- 포트인식문제
- set backspace
- 아두이노 IDE
- Publisher
- Mount
- 코드리뷰
- python3
- 백준알고리즘
- roslaunch
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
글 보관함
