아두이노를 처음 접했던 일을 설명한 적이 있다(관련 글). 이제껏 나의 개발 능력을 키워주는 것에 일조했던 아두이노지만, 오늘은 아두이노를 접했던 것을 후회할 수 밖에 없었다. 아두이노밖에 없다고 생각했던 것이 너무 바보 같았다.
아두이노 외에도 간단한 개발을 할 수 있는 보드들은 꽤 다양하게 있다. 그래픽을 지원하는 라즈베리파이나, 한국에서 만든 오드로이드, 그리고 오늘 사용한 Teensy 보드와 더 고급 버전인 STM. 모두들 용도가 조금씩 다르기는 하지만, 아두이노와 Teensy는 살짝 포지션이 겹친다. 둘 다 센서나 서보 모터 등 외부 기기를 다루는 것에 최적화된 보드이기 때문이다.
둘의 가장 큰 차이점은 속도이다. 단순하게 클럭 속도를 비교하자면, 아두이노의 경우 16MHz이다. 초당 1600만 회의 연산(엄밀히 따지면 연산은 아니지만 그렇게 비교하도록 하자)을 할 수 있다는 것이다.
아두이노밖에 모르던 과거의 나라면, "이야 초당 1600만 번이면 정말 빠르구나. 세상이 이렇게 좋아졌어" 라고 하겠지만 이제는 다르다. 오늘 사용한 Teensy의 경우 600MHz 이기 때문이다. 처음에는 내가 잘못 봤겠거니 싶었다. 아니 이렇게 성능차이가 난다고? 그럼 그 동안 나 아두이노 왜 썼어?
그 동안 아두이노를 썼던 이유는, 아두이노만으로 충분했기 때문이다. 하지만, 현재 아두이노가 사용된 프로젝트는 하나의 아두이노로 처리하기가 벅차서 두 개의 아두이노 메가를 쓰던 참이었다. 그런데 그 마저도 연산 처리가 너무나도 느려서 센서 값을 받아오는게 12Hz 정도밖에 되지 않았던 것이다. 16MHz와 실제 센서를 읽는 성능에 이렇게 큰 차이가 나는 이유는 잘 모르겠지만, 아무튼 12Hz 정도면 내가 입으로도 셀 수 있을 법한 정도이다.
반면에 Teensy는 위 성능비교에서 볼 수 있듯이 간단한 명령어를 수행하는 것이 두 배 정도 더 빠르다. 사실 위 사진을 편집할 때까지만 해도 "와 Teensy 진짜 빠르다. 앞으로 Teensy만 써야지" 하는 생각을 가지고 있었는데, 생각이 바뀌었다. 아니 내가 원하는 성능은 초당 100Hz는 나와줘야 하는데, 기존에 아두이노로 12Hz 정도 나왔으면 틴지 써봤자 24Hz 나온다는 거 아닌가?
게다가 기존에 아두이노로 짜놓았던 배선을 틴지에 맞추어 몽땅 바꿔줘야 하기 때문에 여간 시간이 오래 걸리는 작업이 아니다. 오늘도 배선 작업을 열심히 하다가 망쳐놓고 원상복구 시키느라고 굉장히 늦게 하교했더랬다. 더 큰 문제는 원상복구에 실패해서 주말에 또 얼마나 삽질을 해야 할지 모른다는 것이다. 이거 틴지 써보기도 전에 지치는 거 아냐?
그래도 내가 만약 아두이노 대신 틴지를 먼저 알았더라면, 틴지만 써왔을 테다. 가격도 비슷하고(정품으로만 비교하면 비슷하다. 2~3만원 선) 속도는 훨씬 빠르고(아직 검증하진 못했지만) 크기도 더 작은데 하나의 핀이 멀티태스킹을 해줘서 웬만하 우노 못지 않다. 하지만 이런 찬양은 일단 주말동안 틴지 테스트를 해보고 나서 더 해야겠다.
'트렌드 한눈에 보기 > 학계 트렌드' 카테고리의 다른 글
다시 한 번, 책상 위에 서서 생각할 수 있는 방법 (0) | 2021.06.03 |
---|---|
걸으면서 전기를 만들어내는 슈트의 개발 (0) | 2021.06.02 |
강화학습(SAC)을 활용한 코로나 대응 정책 만들기 - Sony AI (0) | 2021.05.23 |
일론 머스크가 직접 설명해주는 로켓 과학 (0) | 2021.05.09 |
Hill's Muscle Model 공부 후기 (0) | 2021.05.08 |