Arduino를 이용한 로버 제어(실기편)
테마 기사 링크
아래의 기사에는 이번 테마를 설정한 목적이나 관련 기사가 정리되어 있습니다. 자신이 보고 싶은 항목이 있는 경우는 이용해 주세요. 자작 로봇(로버)의 ROS 대응
목차
준비하는 것
ArduinoIDE
ros_lib 생성
ArduinoIDE에서 쓰기 설정
로버의 동작 점검
넘어진 부분
준비하는 것
준비하는 것
ArduinoIDE
ros_lib 생성
ArduinoIDE에서 쓰기 설정
로버의 동작 점검
넘어진 부분
준비하는 것
ArduinoIDE
Arduino의 통합 개발 환경.
공식 사이트 에서 Linux 64bit를 클릭하고 기부할지 묻는 질문을 극복하십시오.
다운로드한 파일을 확장하고 설치합니다.
$ cd Downloads
$ tar Jxfv arduino-1.8.10-linux64.tar.xz
$ cd arduino-1.8.10-linux64
$ ./install.sh
이렇게하면 홈 디렉토리에 Arduino 폴더가 생성됩니다. Arduino/libraries 폴더에 적절하게 사용하는 라이브러리를 넣으면 ros 패키지 등을 사용할 수 있습니다.
ros_lib 생성
ROS Melodic의 경우
rosserial 및 rosserial_aruduino 패키지를 설치합니다.
$ sudo apt-get install ros-melodic-rosserial-arduino
$ sudo apt-get install ros-melodic-rosserial
그런 다음 arduino 측면에서 사용할 ros 패키지를 준비합니다.
$ wget https://downloads.arduino.cc/arduino-1.8.13-linux64.tar.xz
$ tar Jxfv arduino-1.8.13-linux64.tar.xz
$ cd arduino-1.8.13-linux64.tar.xz/libraries
$ rosrun rosserial_arduino make_libraries.py .
$ cp -r ros_lib ~/Arduino/libraries
ArduinoIDE에서 쓰기 설정
툴 탭의 보드, Clock, 시리얼 포트를 이하의 설정으로 한다.
- 보드: ATmega328P
- Clock: 8MHz/X'tal
- 시리얼 포트 : dev/ttyUSB0(사용하는 환경에 따라)
로버의 동작 점검
판매원이 구매자에게만 소스 코드나 매뉴얼을 공개하고 있다. 따라서 라이브러리가 없으면 소스 코드를 컴파일 할 수 없습니다. 양해 바랍니다.
다음 소스 코드를 clone하고 rover/arduino_scripts/rover_sirial IDE로 컴파일 한 다음 로버에 씁니다.
Arduino IDE의 시리얼 모니터로부터 커멘드(r, f등)를 입력해 선회, 전진하면 성공.
2020/11/27 덧붙여 : melodic라면, 왠지 스크립트로 설정한 통신 속도에 어긋남이 발생하고 있다. 스크립트로 설정한 통신 속도의 배로 시리얼 모니터측의 통신 속도를 설정함으로써 정상적으로 동작한다.
예 : 스크립트에서 "node_handle.getHardware () -> setBaud (9600);"로 설정하면 직렬 모니터는 19200bps로 설정합니다.
$ git clone https://github.com/NaotakaKawata/rover.git rover
넘어진 부분
$ cd Downloads
$ tar Jxfv arduino-1.8.10-linux64.tar.xz
$ cd arduino-1.8.10-linux64
$ ./install.sh
ROS Melodic의 경우
rosserial 및 rosserial_aruduino 패키지를 설치합니다.
$ sudo apt-get install ros-melodic-rosserial-arduino
$ sudo apt-get install ros-melodic-rosserial
그런 다음 arduino 측면에서 사용할 ros 패키지를 준비합니다.
$ wget https://downloads.arduino.cc/arduino-1.8.13-linux64.tar.xz
$ tar Jxfv arduino-1.8.13-linux64.tar.xz
$ cd arduino-1.8.13-linux64.tar.xz/libraries
$ rosrun rosserial_arduino make_libraries.py .
$ cp -r ros_lib ~/Arduino/libraries
ArduinoIDE에서 쓰기 설정
툴 탭의 보드, Clock, 시리얼 포트를 이하의 설정으로 한다.
- 보드: ATmega328P
- Clock: 8MHz/X'tal
- 시리얼 포트 : dev/ttyUSB0(사용하는 환경에 따라)
로버의 동작 점검
판매원이 구매자에게만 소스 코드나 매뉴얼을 공개하고 있다. 따라서 라이브러리가 없으면 소스 코드를 컴파일 할 수 없습니다. 양해 바랍니다.
다음 소스 코드를 clone하고 rover/arduino_scripts/rover_sirial IDE로 컴파일 한 다음 로버에 씁니다.
Arduino IDE의 시리얼 모니터로부터 커멘드(r, f등)를 입력해 선회, 전진하면 성공.
2020/11/27 덧붙여 : melodic라면, 왠지 스크립트로 설정한 통신 속도에 어긋남이 발생하고 있다. 스크립트로 설정한 통신 속도의 배로 시리얼 모니터측의 통신 속도를 설정함으로써 정상적으로 동작한다.
예 : 스크립트에서 "node_handle.getHardware () -> setBaud (9600);"로 설정하면 직렬 모니터는 19200bps로 설정합니다.
$ git clone https://github.com/NaotakaKawata/rover.git rover
넘어진 부분
판매원이 구매자에게만 소스 코드나 매뉴얼을 공개하고 있다. 따라서 라이브러리가 없으면 소스 코드를 컴파일 할 수 없습니다. 양해 바랍니다.
다음 소스 코드를 clone하고 rover/arduino_scripts/rover_sirial IDE로 컴파일 한 다음 로버에 씁니다.
Arduino IDE의 시리얼 모니터로부터 커멘드(r, f등)를 입력해 선회, 전진하면 성공.
2020/11/27 덧붙여 : melodic라면, 왠지 스크립트로 설정한 통신 속도에 어긋남이 발생하고 있다. 스크립트로 설정한 통신 속도의 배로 시리얼 모니터측의 통신 속도를 설정함으로써 정상적으로 동작한다.
예 : 스크립트에서 "node_handle.getHardware () -> setBaud (9600);"로 설정하면 직렬 모니터는 19200bps로 설정합니다.
$ git clone https://github.com/NaotakaKawata/rover.git rover
넘어진 부분
→필자는 타이어와 DC 모터 사이에 설치하는 알루미늄 허브의 구멍 직경이 다르기 때문에 한 번 반송하고 있다. 정중한 대응이었기 때문에 그 점은 만족하고 있다.
Reference
이 문제에 관하여(Arduino를 이용한 로버 제어(실기편)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Naotaka_Kawata/items/f0e03ecb685ea0fbbc3b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)