Jetson/Gimbal_with_Jetson

PWM제어 with Jetson Nano

찬영_00 2024. 11. 19. 01:29

PWM을 Jetson Nano에서 제어해보려한다.

Jetson Nano에는 이미 PWM제어가 있다.

하지만 서보모터를 동작하는데 문제가 있다.

 

그레서 PCA9685 를 활용하여 PWM제어를 해보겠다.

https://www.devicemart.co.kr/goods/view?no=1382245&srsltid=AfmBOoq1vCPe9eJRk-9fzMbXnfXOYFOP1hIDVGrSf2uxJtvVgB3-eh0t

 

PCA9685 16채널 12비트 PWM 서보 드라이버 [TS0185]

MCU를 위한 PWM 출력 핀이 부족할 때 유용 / 제어방식 : I2C / PWM 드라이버가 내장되어 있어 TLC5940 제품군과 달리 마이크로컨트롤러에서 지속적으로 신호를 보낼 필요가 없음 / 구동전압 : 3.3V, 5V

www.devicemart.co.kr

 

먼저 Jetson Nano와 PCA9685를 연결하고 그 뒤 서보모터를 제어해보자

 

먼저 외부 전압을 하강시켜 PCA9685에 전압을 전달하고, PCA9685를 Jetson Nano와 i2c연결을 진행해준다.

그리고 연결된 것을 확인한다.

sudo i2cdetect -r -y 1

연결이 되면 다음과 같이 표시된다.

 

이후 서보모터와 PCA9685를 연결해준다.

 

 

  갈색 빨강 주황
서보모터 GND VCC PWM
PCA9685 0 0 0

 

PCA9685 0번 채널에 연결했다.

 

코드를 작성해서 구동시키자

 

https://github.com/PCY00/Ubicomp_Lab/tree/main/AIoT/U-Neck/MotorControl/Servo

 

Ubicomp_Lab/AIoT/U-Neck/MotorControl/Servo at main · PCY00/Ubicomp_Lab

started 2022.06. Contribute to PCY00/Ubicomp_Lab development by creating an account on GitHub.

github.com

여기에 코드를 올려두었다. 코드는 여기서 참고하자

 

0도였다가, 2초뒤 120도 가고 다시 2초뒤 0도로 가고 이걸 반복하는 코드를 만들었다.

아래는 실행 결과이다.

 

https://youtube.com/shorts/A5QvF3nxO9o?feature=share

 

이걸 가지고 추후 프로젝트에 적용해보겠다.

'Jetson > Gimbal_with_Jetson' 카테고리의 다른 글

Gimbal with Servo -2  (0) 2024.12.06
Gimbal with Servo -1  (0) 2024.12.04
PWM제어 with Jetson Nano 3)  (0) 2024.11.28
PWM제어 with Jetson Nano 2)  (0) 2024.11.27