https://kmong.com/gig/465716?selfMarketingCode=HskZcR53S1
서론
세상에는 여러 종류의 모터가 있습니다. 그 종류는 크게 서보모터, DC모터, BLDC, AC모터 그리고 이번에 다뤄 볼 엔코더 모터가 있습니다. 엔코더 모터는 DC모터에 엔코더가 부착되어 있는 모터로 속도 제어, 위치 제어에 용이합니다. 이번 시리즈는 위치제어보다는 속도제어에 초점을 맞춰 글을 풀어 나갈 예정입니다.
엔코더 모터 (Encoder motor)
엔코더 모터 (Encoder motor)
엔코더 모터는 위에서 말했던 것처럼 위치제어와 속도제어가 요구되는 곳에 사용됩니다. 엔코더에서 나오는 펄스의 개수로 위치제어를 할 수 있으며, 펄스 사이의 시간 간격을 이용하여 속도제어를 할 수 있습니다.
Pulse Per Revolution 즉, PPR이라는 것은 엔코더를 한 바퀴 회전시켰을 때 한 채널에서 발생되는 펄스의 개수 입니다. PPR이 11이면 한 바퀴당 11개의 펄스가 나온다는 뜻이고, 400이면 400개의 펄스가 나온다는 의미이죠. 엔코더 모터는 이 PPR을 기준으로 몇 바퀴 돌았는지, 회전속도는 어느 정도인지 등을 알려주는 모터입니다.
위의 사진은 제가 이번에 사용할 엔코더 모터입니다. 11 PPR이며 2개의 채널이 있기 때문에 총 22 PPR입니다. 3.3v ~ 5v의 전압은 엔코더 용으로 사용되며, 12v로 동작하는 모터입니다.
다음은 엔코더 모터에서 펄스 개수와 회전 속도를 출력하는 영상입니다.
방향성
이번 시리즈는 엔코더 모터에서 각도를 계산하는 방법에서부터, 속도 측정 그리고 PID제어를 통한 위치와 속도 제어를 할 예정입니다.
stm32f103zet6를 사용할 예정이지만, 범용적으로 설명하는 부분과 stm32f103zet6만의 특별한 기능 둘 모두 설명할 것이기 때문에 아두이노 등 다른 MCU를 사용하시는 분들께도 도움이 되기를 기원합니다.
진행 과정
준비물
명칭 | 용도 | URL |
stm32f103zet6 | MCU | STM32F103ZET6 STM32F103 STM32 ARM Cortex M3 개발 보드 + PL2303 USB UART 모듈 키트 = Open103Z 표준|반도체 집적회로| - AliExpress |
JGB37-5520 | Encoder motor (12v 330) | JGB37 520 인코더 모터 스마트 자동차 모터 DC 6V 12V 24V 소형 모터 자동차 키트 속도 모터|직류 전동기| - AliExpress |
PL2303 | UART (stm32f103zet6 URL에 동봉되어 있음) | - |
ST-Link V2 | Uploader | ST LINK V2 (CN) ST LINK V2 STM32 STM8 USB JTAG 프로그래머 인서 킷 디버거 100% 오리지널 무료 배송|반도체 집적회로| - AliExpress |
LM298N | 모터 드라이버 | |
12v 어뎁터 | 전원 |
Continue
https://kmong.com/gig/465716?selfMarketingCode=HskZcR53S1
'stm32 > 실전' 카테고리의 다른 글
엔코더 모터 제어 (2. 속도 계산) (4) | 2021.03.16 |
---|---|
엔코더 모터 제어 (1. 펄스및 위치 측정) (6) | 2021.03.04 |
02 쉬운 stm32 버튼 제어 (0) | 2018.11.20 |
01. 쉬운 stm32 GPIO, LED제어 (0) | 2018.11.19 |
stm32사용하기 LED & KEY (0) | 2018.10.26 |