-
AK Series CAN protocol Instruction 코드 정리(1)한국과학기술연구소 인턴 2023. 3. 8. 11:38
배경
T-motor 사에서 제공하는 AK 모터를 CAN 통신을 사용해 제어하는 매뉴얼을 코드위주로 정리했습니다.
초기에 모터-컴퓨터 연결 계획도
SPECIAL CAN CODE
모터에 제어 신호를 가하기 전에 Control Mode(입력 모드) 상태로 돌입해야 하며 추가적으로 코드를 입력해서 동작제어가 가능합니다.
DATA Frame
사용자->모터 제어시 총 8byte로 이루어져 있으며 제어값으로는 위치(16bit), 속도(12bit), KP(12bit), KD(12bit), Current [Torque](12bit)로 이루어져 있습니다. 상위(H)/하위(L) 비트로 나누어져 있는 모습을 볼 수 있는데 8bit보다 더 큰 값을 표현하기 위해 추가적으로 비트를 할당한 모습을 볼 수 있습니다.
모터->사용자 모터가 사용자에게 제어 신호에 대한 결과 값을 전달합니다. 각각의 제어값으로는 모터 드라이버 ID(8bit), 위치(16bit), 속도(12bit), Current[Torque](12bit)이 있고 이를 상위/하위/ 비트로 나누어 사용자에게 송신합니다.
Parameter Range
위에 보이시는 표 값의 범위 이내로 desired 값을 설정하여야 합니다. 저희가 사용하는 모터 제품은 AK 10-9입니다.
Internal Controller PID scematic
제어 루프 원리 이번에는 AK 모터가 어떤 식으로 제어값을 입력받고 그로 인해 어떻게 동작하는 지를 기술했습니다. CAN 통신을 통해 보내는 변수 값들과 그로 인해 파생되는 모터 동작들은 다음과 같습니다.
- Commands set via CAN
- Pdes : Desired Position
- Vdes : Desired Speed
- Feedforward torque : Desired Torque made by Input Current
- control premeter : KP, KD
- Control results
- Only Postition Control(KD=0)
- Only Speed Control(KP=0)
- Only Torque Control
- Position + Torque Control
- Speed + Torque Control
'한국과학기술연구소 인턴' 카테고리의 다른 글
uCAN Converter (Data Type) (0) 2023.03.17 AK Series CAN protocol Instruction 코드 정리(2) (0) 2023.03.09 CAN Protocol(2) (0) 2023.03.02 CAN protocol(1) (0) 2023.03.01 위치 제어 (0) 2023.02.28