본문 바로가기
하만 세미콘 아카데미/Embedded (STM32)

[Embedded] STM32 - Servo Motor

by smileww 2024. 5. 31.

이번 프로젝트에서는 서보모터를 PWM으로 제어하는 코드를 작성해보도록 하겠습니다.

 

 

 

 

 

  • PWM (Pulse Width Modulation) 신호: 오렌지 색 선
  • 전원 (Vcc): 빨간색 선으로, 일반적으로 +4.8V에서 +6V 사이
  • 접지 (Ground): 갈색 선

PWM 신호 특성

  • 주기 (Period): 20ms (50Hz의 주파수)
  • 펄스 폭 (Duty Cycle): 1ms에서 2ms 사이
    • 1ms 펄스 폭은 서보 모터를 한 방향 (예: 0도)으로 회전시킵니다.
    • 2ms 펄스 폭은 서보 모터를 반대 방향 (예: 180도)으로 회전시킵니다.
    • 펄스 폭을 1ms에서 2ms 사이로 변화시키면, 서보 모터의 각도도 그에 따라 조절됩니다.

 

 

 

 

IOC 설정에서 Timer로 PWM을 제어할 수 있습니다. Tim1의 Channel1 에서 PWM Generation CH1을 선택해주시고 나머지 사항으로는 PSC와 ARR을 적당한 값으로 세팅 후 PWM을 설정하도록 합니다.

 

설정을 마쳤으면 Generation하여 코드에 설정을 반영해줍니다.