이걸 다시 할 생각을 했다니.. 스스로 너무 많은 숙제를 하다 말았다는 생각이 든다.
배경과 동기
작년 초에 하다가 귀찮아지기도 하고 욕심에 짖눌리는 바람에 포기해버렸던 자동망원경을 다시 보게 되었다.
너무 이것저것 넣으려는 기능이 많아서 그랬던 것 같은데,
정작 필요한 기능은 지구 자전속도에 맞추어서 돌려주는거 아닌가?
그렇다.
센서 캘리브레이션은 정말 추후에 필요하고, 극축 정렬을 잘했다면 지구 자전속도에 맞추어 돌려주기만 하면 된다.
저번엔 궤도역학 공부로 행성의 거동 예측을 시뮬레이션 한 후에, Hard/Soft Ironing 을 공부하다가 공부량이 너무 많아져서 거기서 멈추었던 것 같다.
또한 ESP8266이 지원하는 PWM 핀이 1개 밖에 없는데 초점도 맞추고 적위/적경을 다 돌리고 싶었으니, 다른 추가적인 장치를 달아야한다는 생각때문에 접게되었다.
상황 정리
일단 해놓았던 것을 정리해보니 있는 기능으로도 충분히 지구자전속력을 보상해주는 것은 가능할 것 같다.
시스템 요구사항을 정리하면 다음과 같다.
- 지구 자전 속력을 보상해줄 것
- 가능하다면 달의 회전 속력도 보상해줄 것
작업한 내용을 정리하면 다음과 같다.
- GPS으로 위/경도 알아내기 -> 라이브러리 & 구현으로 해결
- IMU로 가속도, 각속도 얻어서 상보 필터로 롤/피치 각도 구하기 -> 라이브러리 & 구현으로 해결
- SSD1306으로 간단한 디스플레이 구현하기 -> 라이브러리 & 구현으로 해결
- PWM 신호 생성하기 (모터 회전수 조절)
- 로터리 버튼 인식하기 (인터럽트로 처리해서 클릭만 잘 되고 회전은 잘 안된다)
- 소프트웨어로 간단한 스케쥴러 구현 -> 구현으로 해결
오늘 (1월 21일 기준) 미구현된 기능 요구사항을 정리하면 다음과 같다.
- PWM 신호로 모터 회전수를 조절 할 수 있도록 할 것 (모터 드라이버 제어) -> 24.01.21 완료
- 로터리 버튼의 회전으로 회전속력을 조절할 수 있을 것 -> 24.01.21 완료
- 자세 추정을 통해서 롤/피치 자세각의 소숫점 첫째 자리까지 정확도를 확보할 것 ->
- 지구 자전과 달의 공전을 고려하여 현재 회전축을 알려줄 것 ->
- 메뉴판 구현 -> 24.01.27 구현 완료
- EEPROM에 캘리브레이션, 칼만 필터 데이터 저장
요정도로 정리해볼 수 있을 것 같다.
4번째 달 공전에 따른 회전축을 알려주는 이유는 다른 항성들이나 태양계 행성들은 지구 자전속력에 비해서는 매우 느리게 움직이기 때문에 지구의 자전속력이 지배적이다. 그래서 이 글 처럼 적경 축이 북극성을 바라보도록 하는 극축 정렬을 한다. 비슷하게, 달의 궤도 특성을 정리한 글 으로부터 지구의 자전 벡터와 달의 공전 벡터를 가지고 뭔가 계산하면 적경 축 정렬 방향을 구할 수 있을 것 같다!
기능적 구현과는 별개로 망원경에 AddOn으로 붙일 하드웨어 설계는 또 한참 걸릴 것 같다.
구성품을 정리하면 다음과 같다.
- NewNode V3 (ESP-12E)
- Adafruit Ultimate GPS Breakout V3
- MPU6500 -> ICM 20948
- SSD1306
- RotaryEncoder
- L298n DC Motor Driver
- JGY370 WormGeared DC Motor
- 5V Regulator
하드웨어 장착물은 다음과 같이 정리된다.
- Main Unit
- NewNode V3
- GPS Breakout V3
- SSD1306
- L298n DC Motor Driver
- JGY370 WormGeared DC Motor
- 5V Regulator
- Battery Connector
- IMU Unit
- MPU 6500 -> ICM 20948
- User Controller Unit
- RotaryEncoder
IMU Unit는 망원경 바디에 직접 부착해서 망원경의 적위, 적경을 측정한다. 방위는 지자계 센서가 있었으면 썼을텐데 없다.
User Controller Unit을 따로 달게 된 이유는 사람이 다이얼을 돌리는 입력 기능 때문에 망원경에 진동이 생기는 것을 최대한 막으려는 목적이다. 컨트롤 유닛은 정리할 때는 Main Unit에 붙일 예정이다.
전체 시스템은 3S 배터리를 연결하여 사용한다.
** EOF **
'개인공부 > 망원경' 카테고리의 다른 글
SimpleGOTO UI 설계 (0) | 2024.01.22 |
---|---|
MPU 6050/9250 등 단종으로 인한 AHRS 센서 선정.. (0) | 2023.01.01 |
자동 망원경을 위한 아두이노 디스플레이 메뉴 UI 설계 (0) | 2022.12.31 |
[작성중] 지자기 센서로부터 자북/진북 방향 얻기 (0) | 2022.12.25 |
[작성중] IMU와 지자계를 이용한 자세 방위 측정 방법에 대한 조사 (0) | 2022.12.23 |