자이카 내장 패키지

전종원·2022년 11월 14일
0

1. 자이카 내부 ROS 노드 리스트

1.1. xycar_motor(모터제어기)

  • 사용토픽: /xycar_motor

  • 속력을 조절하는 구동모터와 조향각을 조절하는 조향모터를 제어

  • 모터제어기 노드는 xycar_ws/src/xycar_device 패키지 아래 있다.

  • rosmsg show xycar_msgs/xycar_motor

  • 노드 실행 후 rostopic echo /xycar_motor: 실시간을 발행되는 토픽들의 정보를 보여줌.

  • 구동모터범위: (후진) -50 ~ 50 (전진)

  • 조향각 범위: (좌) -50 ~ 50 (우)

  • 모터구동 실습코드(8_drive.py)

#! /usr/bin/env python

import rospy
import time
from xycar_msgs.msg import xycar_motor

motor_control = xycar_motor()

rospy.init_node('auto_driver')

pub = rospy.Publisher('xycar_motor', xycar_motor, queue_size=1)

def motor_pub(angle, speed):
	global pub
    global motor_control
    
    motor_control.angle = angle
    motor_control.speed = speed
    
    pub.publish(motor_control)

speed = 3
while not rospy.is_shutdown():
	angle = -50
    for i in range(40):
    	motor_pub(angle, speed)
        time.sleep(0.1)
        
    angle = 0
    for i in range(30):
    	motor_pub(angle, speed)
        time.sleep(0.1)
        
    angle = 50
    for i in range(40):
    	motor_pub(angle, speed)
        time.sleep(0.1)
    
    angle = 0
    for i in range(30):
    	motor_pub(angle, speed)
        time.sleep(0.1)
  • 모터구동 실습코드(8_drive.launch)
<launch>
  <!-- motor node -->
  <include file="$(find xycar_motor)/launch/xycar_motor.launch"/>
  
  <!-- auto driver -->
  <node name="auto_driver" pkg="my_motor" type="8_drive.py" output="screen"/>
</launch>

1.2. xycar_lidar(라이다)

  • 사용토픽: /scan

1.3. usb_cam(카메라)

  • 사용토픽: /usb_cam/image_raw

1.4. xycar_ultrasonic(초음파센서)

  • 사용토픽: /xycar_ultrasonic

1.5. xycar_imu(IMU센서)

  • 사용토픽: /imu

1.6. camera/realsense2_camera(Depth 카메라)

  • 사용토픽: /camera/depth/image_rect_raw

0개의 댓글