천체 사진 촬영용 로테이터를 만들었습니다.
로테이더가 필요한 이유는 당연히 구도 때문이지요..하지만 일반 카메라 처럼 그냥 손에 들고 휙휙 돌리면서 구도를 맞출수가 없습니다.
망원경을 들고 찍는게 아니니까요...
대부분의 망원경에는 로테이터가 붙어 있습니다. 나사를 풀고 수동으로 카메라를 돌려서 원하는 구도를 맞추는 방식이지요
하지만 이 로테이터가 정밀하지 않으면 카메라를 돌렸을때 틸트가 생기게 됩니다. 그래서 왠만큼 정밀하게 만든 로테이터를 장착한게 아니면 거의 사용하지 않습니다. 촬영 중간에는 손을 안대는게 상책이지요...
물론 고가의 망원경에 장착된 로테이터는 틸트가 발생안될정도의 정밀도를 제공하지만요...역시 비싼게..
그리고 수동으로 돌려줘야 한다는건 꽤 귀찮습니다. 사진을 몇장씩 찍으면서 원하는 구도가 나올때까지 반복을 해야 하거든요
게다가 하룻밤만 찍을 대상이 아니라 다음에도 같은 구도로 사진을 찍을때도 카메라를 분리하지 않고 그냥 망원경에 회전한 상태 그대로 보관할게 아니면 정확한 각도를 맞추기가 꽤 귀찮습니다.
요즘은 N.I.N.A 같은 촬영프로그램에서 수동로테이터를 지원합니다. 사진을 찍으면 원하는 각도까지의 차이를 보여줘서 그나마 직관적으로 구도를 맞출 수 있도록 도와줍니다. 그래도 귀찮은건 뭐 마찬가지지만요...
그래서 전동 로테이터 라는것이 나왔습니다. 오토 포커서 처럼 모터를 이용해서 돌려주는 것이죠. 프로그램에서 각도를 입력하면 정확하게 그 각도로 돌아가는 장치가 로테이터 입니다. 하지만 이 로테이터가 너무 비쌉니다. 왜냐면 구동을 하는 기계인데 틸트가 안생길정도로 정밀해야 하거든요 그래서 저렴한 전동 로테이터들은 유격이 생겨서 특정 각도에서 틸트가 생기기도 합니다.
역시나 이것도 비싼거는 괜찮습니다. 하지만 그 가격이 너무 비싸서 문제죠...거의 카메라 가격과 맞먹습니다. =_=
그래서 많은 사람들이 직접 만들어 쓰는 DIY를 하거나 오픈소스로 제공되는 DIY소스를 받아 만들어서 사용합니다.
하지만 이 오픈소스 로테이터도 문제가 좀 있습니다. 가장 기본적인 회전한다. 라는 목적이라 다양한 기능들이 부족합니다.
예를 들어 180도 제한 90도 제한 단방향 이동 최단거리 이동 등...
로테이터에 가장 필요한 기능을 정리해 보면
1. 각도 제한 - 원하지 않는 각도까지 돌게되면 케이블이 꼬여서 장비에 심각한 데미지를 입힐 수 있습니다.
2. 최단거리 이동 - ascom 드라이버는 - 음수 를 지원하지 않기 때문에 320도로 돌리려고 하면 그냥 320도로 돌게됩니다. 하지만 이렇게 되면 케이블이 거의 한바퀴 돌게 되면서 문제가 될 수 있습니다. 최단거리 이동은 -40도만 이동하여 320도를 맞추는 기능입니다.
3. 홈포지션 제공 - 영점이 있어야 항상 같은 기준으로 동일한 구도를 촬영할 수 있습니다. 대부분 DIY는 홈포지션 센서가 없어 그냥 대충 눈으로 맞추는 수준입니다.
4. 망원경 마다 다른 외경 기어비가 다르니 그때 그때 맞춰서 스텝값을 정확히 계산해줘야 정확한 각도로 돌아갑니다. 스텝값을 계산할수 있는 기능이 필요
5. 최소 두께 - DIY의 가장큰 걸림돌입니다. 얇게 만들기가 너무 어려우니 두꺼워지면 리듀서의 백포커스를 초과해 버려서 사용을 못하는 상황이 많습니다.
대충 이런 기능이 필요해서 그냥 직접 만들기로 했습니다. 포커서도 만들고 오토플랫도 만들었더니 대충 만들면 되겠거니 해서 가볍게 시작했는데 함정이었습니다. ㅋㅋ =_=


맨 처음 3D 프린터로 출력하여 제작한 로테이터 입니다. 회전축은 볼베어링을 사용했는데 그것을 3D출력물로 하우징을 만들었습니다. 하지만 베어링 두께가 10mm 다 보니 하우징까지 만들어 붙이니 20mm가 넘게 되었습니다. 아무래도 3D 출력물로 만들다 보니 얇게 만들기에는 한계가 명확했습니다. 카메라와 필터휠까지 뒤에 붙게 되니 그 하중까지 다 견디면서 틸트도 없어야 하는데...이건 무리였습니다.
거기다 사용하는 RC10 망원경용으로 만들고 있는데 이게 리듀서가 포커서 안으로 들어가는 방식이라 작은 베어링은 사용할 수가 없습니다. 외경이 더 커져야 합니다.
새로운 베어링을 찾아보는데 두께가 6.35mm 밖에 안되는 초박형 베어링을 발견했습니다.
알리에서 어쩌다 찾아서 구매했는데 국내에서 구매하려니 개당 30만원은 하더군요 -_- 특수 베어링이라....

이번엔 베어링을 감싸는 하우징은 알루미늄 가공을 합니다. 하지만 이것도 쉽지 않더군요 베어링이 흔들리면 안되니까 베어링과 하우징이 억지끼움이 될수있도록 정밀한 가공이 필요했습니다. 비싸다는 말입니다. -_-;;;;

실제로 만들기 전에 도면을 먼저 만들어서 리듀서 백포커스 (74mm) 를 맞출수 있는지 OAG와의 간섭은 없는지 확인합니다.
다행히 아슬아슬하게 제작이 가능할 거 같습니다.

장착을 하면 이런 모양이 될겁니다. 포커서에 부착하는 방식이라 리듀서 백포커스에는 영향이 없고 다만 포커서에 장착하는거다 보니 구경이 커지고 포커서 튜브의 이동거리가 12mm 줄어듭니다. 그래도 얇아서 다행이네요.

제어는 아두이노 나노 와 모터는 28BYJ-48 을 ULN2003드라이버를 사용합니다. 5V 모터라서 따로 전원선이 필요없이 간단하게 아두이노 나노에 전원이 들어가면 끝나는 간단한 회로 입니다.

0.35인치 OLED버전으로 처음엔 회로도를 만들었는데...좀더 크고 아름다운 디스플레이를 발견하여...TFT 디스플레이를 사용하는 버전도 만들었습니다.

확실히 디스플레이가 크고 색상 표현이 가능하니 이쁘긴 한데 이 디스플레이를 쓰면서 개삽질을 시작합니다. -_-
SPI디스플레이는 자원을 너무 먹습니다. 그나마도 없는 아두이노 나노의 용량이 너무 빡빡합니다. 어떻게든 구겨 넣으려고 별 짓을 다 해봤습니다. 결국엔 그냥 화려한 효과는 다 제거하고 그냥 표시만 하는것으로 마무리 하는....그냥 큰 디스플레이가 전부인 그런것 입니다...
그냥 OLED 0.35인치 썼으면 2일이나 고생안해도 됐을텐데....

JLCPCB에 주문한 PCB가 왔네요. 파란건 0.35인치 OLED용..빨간건 1.69인치 TFT LCD용...입니다. 두가지 다 만들지 뭐...
어차피 핀맵만 바꿔주면 되기 때문에 펌웨어도 맞춰서 두개 만들면 되고 ...


PCB에 부품들을 붙여 봅니다. 최대한 작게 만들었다 보니 납땜하기 힘드네요 -_-;;;
그리고...회로도 그리다 실수해서 모터 연결 핀 하나가 누락됐습니다. ㅋㅋ PCB새로 주문하기엔 귀찮고 돈도 아까우니 그냥 점프케이블로 대충 이어줍니다. -_-;;

케이스를 출력하고 부품들을 넣어서 조립을 해봅니다. 너무 빡빡하게 만들어서 조립도 힘드네요 -_-;;;;
그래도 작은 모터 에 작은 기판 최대한 줄여서 케이스도 생각보다 크지 않아서 다행입니다.
중앙 쓰레드 사이즈가 M75인거에 비하면 아담한 편이네요...


망원경에 장착한 모습 생각보다 아담하네요...망원경이 커서 더 작아 보이기도 합니다만...-_- 뭐 그래도 필터휠이랑 비슷한 크기니까 벨런스는 좋아 보이네요 ㅎㅎ
디스플레이 맘에 드네요...물론 밤에 사진찍을때는 거의 꺼져있을겁니다만..-_-;;
기능 및 스펙 정리 - Software
- ASCOM Driver 지원 - N.i.n.a 지원
- 회전 속도 가감속 이동 및 정속 지원 (가감속 구동 - 구동시 처음은 높은 토크로 구동 후 빠른 구동 정지하기전 다시 속도 줄여서 정확성 확보)
- 최단호 거리 이동 지원 - 180도 기준 이하면 +이동(시계반대방향) 180이상 -이동(330도 이동시 -30도 이동)
- 이동거리는 상대거리기준 10도 이동후 20도 이동하면 20도 이동함 (기존 ascom 드라이버는 절대거리 기준이라 30도로 이동함)
- 긴급정지 지원
- 전원연결시 물리적 홈버튼으로 홈복귀 가능 (ascom driver 없이 단독 실행 가능)
- Ascom Driver 셋업창에서 외부 기어비 및 캘리브레이션 가감속 설정 수정 가능
- 360도 캘리브레이션 - 캘리브레이션 실행후 실측값을 입력하면 정확한 스텝값을 자동 적용 하여 정밀한 각도계산 정밀도 0.003도
스펙 - Hardware
- 두께 - 스레드 장착부분 두께 12mm 포커스 튜브에 장착 스레드 M75 대형 스레드 케이스 두께 30mm
- 전원 - USB-C 5V
- 폴리기어 8:1 x 모터 64:1 코일파워off로 발열없음
- 초박형 고정밀 볼베어링 및 억지맞춤 알루미늄 CNC가공 제로 틸트
- 홀센서 홈포지션 - 물리적 홈버튼, Ascom driver 셋업창에서 홈버튼 사용가능
- 1.69인치 TFT LCD 로 직관적으로 각도 확인가능
- 케이스 - 3D 프린트 출력물 PETG
정리 해놓고 보니 뭐 이것저것 많이 해놓은거 같긴 하네요..=_= 거의 3일 밤새면서 디버깅하면서 죽는줄 알았네...
몇번 만들어봐서 Ascom Driver 는 이게 익숙한가 했는데 로테이터가 함정이었음...간단하지가 않더라구요
뭔가 니나 로테이터의 명령어가 ascom 이랑 다른지 명령어 안먹히는것도 있고 구조가 너무 상식적이지 않아서 더 어려웠던거 같네요. 특히 절대거리 기준이 머리아팠고...위치 이동 값이랑 거기에 물리적인 값이 따로 있어서 이거 맞추는것도 쉽지 않았고..
결국엔 그냥 상대거리 기준으로 바꾸고 물리적 거리는 실제 스텝값을 적용하는거지만 제대로 안나와서 실제 각도값을 그냥 강제로 끼워넣어 버렸음 이게 더 직관적이고 사용하기 편한거 같음..
거기다 - 음수를 지원하지 않아서 매우 귀찮았네요. 최단호 거리로 이동하는 것도 쉽지않았고...
이밖에 원인을 알수 없었던 각종 버그들...ㅠ_ㅠ 머리 깨지는줄 알았네요.
특히...괜히 SPI TFT LCD사용한다고 해서 안그래도 빡빡한 아두이노 용량 터져서 최적화 하는것도 눈빠지는 줄 알았네요..-_-
다 완성하고 쓸데없는 코드들 다 지워서 정리했는데도 90% 사용...ㅎㅎㅎㅎ -_- 이렇게 어렵게 어렵게 SPI를 사용했는데 용량때문에 결국엔 그냥 정지화면만 쓸수 밖에 없다는 현실...이럴거면 뭐하러 이 디스플레이를 썼나 싶네요...SPI로 애니메이션돌릴려면 최소 ESP32 쓰는게 좋습니다...그런데 이놈의 ESP32는 보드가 불량이 너무 많아서 쓰기가 싫다는 점이...후..-_-
어쨋든 간에
그래도 완성!
3일동안 사무실에서 먹고자고 힘들었다...후...집에가서 자야지 =_=