- 0
- 곰부리
- 조회 수 9930
매번 전자기어비때문에 헛갈리는 나 자신과 저와 동일한 분을 위해 그리고, 초보분들을 위해 한번 총 정리를 해보았습니다.
이하.. 존칭생략
1. 기본적으로 알아야할 사항들
1.1 서보모터
- 서보모터는 엔코더의 비트수 x 4체제배에 해당하는 펄스수로 1회전한다.(이론적인 이상값, 최대값이다. 그러므로 줄여야 만약의 사태에 대비할 수 있다)
- 세상의 서보모터는 각각 비트수가 다르다(가격 정밀도 요인에 따른 소비자 선택권?)
- 서보 모터를 돌리기 위해선 서보팩(드라이버)가 필요하다
- 서보팩(머리)에서 서보 모터(손,발)를 완벽히 제어한다. 엔코더(신경), 전력선(위장, 대장??) ㅋㅋㅋ
- 엔코더 펄스수(P/R = Rotation per Pulse = 회전당 펄스수) (반드시 메뉴얼참조 계산치가 아님)
13비트 = 2048 x 4 = 8192
16비트 = 16384 x 4 = 65536
17비트 = 32768 x 4 = 131072
- 신기하게도 서보팩은 공장출하시 4체배를 전자기어비에서 제외시켜 비트수만큼의 펄스를 사용하도록 초기화 되어있다. 다시말해 전자기어비의 분자/분모 = 4/1 로 기본 되어있어서 비트수를 펄스입력하면 1회전한다.
- 엔코더 비트수가 높으면 당연히 분해능이 좋다.(더 정밀하다. 그래서 Z축의 모터는 비트가 높을걸 사용한다. 그러나, 노이즈에 취약하다)
1.2 마하3 ( 모터관련만)
- 모터튜닝(서보든 스텝이든)에서 unit 당 스텝(펄스) (A 라고 하자)수로 이동량을 결정한다.
- 즉, 마하3 기본단위가 mm면 1mm움직이는데 펄스수를 맘대로(커널주파수 이하) 설정할 수 있다
예) 난 1mm 움직이는데 2000개의 펄스를 사용할 거야~~
- 3축이라면 컴퓨터 성능에 따라 다르지만 커널스피드 설정에서 25000Hz로 설정되어 있다면 축당 25000/3 = 71000 의 펄스를 분배한다.. (훨씬 작아지므로 50000 이라고 하자)
- 서보 1회전시키려면 A값은 (전자기어비 분자/분모 = 1/1 일 경우)
13비트 = 8192 , 16비트 65536, 17비트 131072 를 입력하면 1회전한다. 그런데 16,17비트는 너무 펄스수가 많아서 마하3가 감당을 못한다.
- 그러면 맨날 13비트만 써야겠네????
- 마하3에서는 피드(움직이는 속도)가 A에 영향을 받는다.
- A 값이 낮으면 10000피드도 가능하다, A 값이 높으면 당연히 피드값이 떨어진다.
- 3축을 동일하게 제어하고 싶으면 이 피드값을 동일시 하는 것이 중요하다.(물론 마하는 제일 낮은 피드값을 기준으로 정해버린다)
- x, y, z 각각 A값을 다르게하면 수동조작시에는 최대피드로 움직이지만, 자동으로 가공시에는 제일 낮은 피드값으로 움직인다 G0, G1 코드에 따라 다르다)
2. 전자기어비가 있으면 좋은 이유
2.1 전자기어비 존재의 이유
- 앞에서 말했듯이 높은 비트수의 고성능의 모터는 고성능의 마하가 필요하다(불가능)
- 모터별 비트수가 제각각이다 ( 통일시키고 싶지 않은가? )
- 피드를 통일시키고 싶다(나도 그러고 싶다. 서보튜닝을 쉽게 하기 위한 초석이다)
- 볼스크류 리드가 x,y,z 제 각각이다 ( 하나씩 다 설정해야하나 ㅠㅠ. 귀찮다 )
- 감속기, 타이밍벨트, 풀리 ( 아이고, 언제 계산해서 마하에 입력하나,, )
- 엔코더 비트수로 1회전 시켜야해??? 꼭??? 난 2000으로 하고 싶은데.. 난 딱 떨어지는 숫자가 좋아.. 방법이 없나? -> 있습니다요
- 예를들어 15mm 리드인 볼스크류를 1회전시키면 15mm이동하고 이때 13비트 모터는 A에 2048을 입력해야하는데 헛갈리니깐 1500개의 펄스로 1회전 못시킬까? -> 있습니다요
- 그래서 나의 선택은 난 모터 1회전시키는데 무조건 마하3의 A값에 2000 넣을꺼야... 감속기든 리드가 다르든, 풀리든지 간에 . 그래야 피드가 동일해~~~ 난 동일 피드가 좋아~~ 무조건 우선이야~~
2.2 전자기어비 설정시 기본 알아야할 사항 (컴퓨터 스팩 같은것임)
- 모터 엔코더 펄스수 ( x4체배 말고 기본 비트수 )
- 모터부터 풀리든, 감속기든, 타이밍벨트든 등등등의 총 감속비 끝........
- 감속비는
모터가 5회전했을때 기구부(예 볼스크류)가 1회전한다? 그럼 5 (감속개념)
모터가 1회전했는데 5회전한다? 그럼 1/5 = 0.2 (증속개념)
수식으로는 모터회전수/최종기구부회전수
3. 설정하기
3.1 16비트 엔코더 서보모터와 리드 10[mm] 볼스크류 예
- 난 마하3에서 A 값에 2000 넣을꺼야. 그러면 1mm이동해 그런데???????? 몇회전 하는거지??(며느리도 몰러~)
- 서보에서 엔코더 펄스를 2000넣으면 1회전시키기로 했으니깐 마하에서 A값 2000넣으면 1mm움직인다는데 1회전이랑 1mm랑 같나????? 다르구나~~~
- 리드1mm볼스크류면 엔코더 2000펄스에 모터도 1회전하고 마하3에서도 A값 2000으로 1mm 이동하고 딱~~~~좋아~딱 떨어져~~~~
- 헉, 내 볼스크류 10mm 리드짜리인데?????한바퀴 돌면 10mm이동하는데?????? 이런 망할..... 리드1mm짜리 볼스크류 사야겠네 ㅠㅠ
- 그래 결정했어 .. 다시 계산하자
1mm리드 볼스크류, 엔코더2000펄스 모터 1회전 -> [실제이동 1mm] 마하3 A값 2000 -> 모터1회전 -> 1mm 좋아
10mm리드 볼스크류, 엔코더2000펄스 모터 1회전 -> [실제이동 10mm] 마하3 A값 2000 -> 모터1회전 -> 1mm 안좋아... 실제이동거리랑 안맞아 ㅠㅠ..
아.... 고민이다..
A값을 200 하면 -> 엔코더 200펄스 -> 모터 1/10회전 -> 실제이동 1mm 인데... 난 A값 2000을 1mm 로 하기로 했는데... 피드도 중요할꺼 같고,,ㅠㅠ
둘중 하나군........
마하3 A값을 X,Y,Z 축 각각 계산해서 넣던가.. 아니면, A값 2000 -> 엔코더 2000펄스로 1/10 회전하게 하던가 둘 중하나네 ~~~~
3.2 전자기어비 설정하기 (감속기 없는 직결의 경우)
- 엔코더 16비트니깐 16384펄스에 1회전( 4/1 공장초기 출하 설정시 ), 이제 조정해야하니깐 공장 출하 설정은 필요없으니 4체배 해야지 65536펄스
- 난 2000펄스에 1mm 이동시킬꺼야..
- 마하3 A 값에 2000넣고 1mm움직일꺼야... 이젠 마하3 니가 주인이당.
- 그럼, 1펄스당 얼마움직이지?? 0.0005 mm 움직이네 .... 내 CNC의 분해능은 0.0005야 대단해(뿌듯)
-
- 이제 회전을 거리mm로 바꿔보장(이게 핵심)
- 10mm리드 볼스크류를 회전체라고 생각하지말고
- 10mm를 움직일면 몇개의 펄스가 필요하지??? 1펄스:0.0005mm = x펄스 : 10 => 10/0.0005 => 20000개 펄스 필요허당
- 10리드 볼스크류는 1회전 하면 10mm 이동하니깐... 20000개의 펄스로 1회전 시키면 되겠네. --> 이것을 부하측1회전당 이동량이라 한다
- 그런데 16비트 65536펄스가 1회전인데 20000개 펄스로 1회전 시키려면 펄스수를 줄여야겠네
엔코더 비트 펄스수 x 4체배 16384 x 4 65536 비트펄스수 x 4 x 분해능
-------------------------------------- = ----------------- = -------------- = --------------------------------- = 전자기어비
부하측1회전당 이동량 10 / 0.0005 20000 볼스크류리드
- 아하~~~~ 이게 전자 기어비구나...
- 이제 볼스크류 리드가 변해도 리드값만 넣고 계산하면 돼겠당... 그럼 분해능값만 0.0005넣고 마하3 A값 2000에 1mm 움직인당......
- 마하3 기준으로 수식을 바꾸면
분자 비트펄스수 x 4 x 1
전자기어비 = ---------- = ------------------------------------------------
분모 볼스크류리드 x 마하3 A
- ㅋㅋㅋ 쉽네
3.3 전자기어비 설정하기 (감속기 있는 경우)
- 위에랑 똑같고 25대1 감속기 쓸경우 ( m/n )
이렇게 정의하자 수식만들기 편하게
모터25회전 m 25
---------------- = ----- = -----
부하1회전 n 1
- 2000펄스에 1mm이동
- 10리드 볼스크류 1회전에 10mm 이동하는데 감속기 물려서 부하1 회전하는데 모터는 25회전해야함, 즉, 펄스수가 25배 더 필요함
- 감속기없을때보다 25배 더 빨리 모터를 돌려야함. 오히려 모터 펄스 증속을 해야함 (서보팩이 알아서해줌 튜닝필요)
- 마하3 기준으로 수식을 바꾸면
분자 비트펄스수 x 4 x 1 x m
전자기어비 = ---------- = ------------------------------------------------
분모 볼스크류리드 x 마하3 A x n
- ㅋㅋㅋ 쉽네
3.4 전자기어비 설정하기 (회전각이 있는 경우 : 원테이블 )
3.5 전자기어비 설정하기 ( 벨트와 풀리가 있는 경우 )
작성자
문의 010-6744-8207