다양한 프로젝트를 위한 FFT 사운드 스펙트럼 분석기를 직접 만들어 보세요.

다양한 오디오 기반 라즈베리 파이 프로젝트들이 존재하지만, 때로는 더 전문적이고 특화된(niche) 무언가가 필요할 때가 있습니다. 오늘 저희가 소개할 작품은 Dan McCreary가 제작한 것으로, Raspberry Pi Pico 2를 활용하여 맞춤형 FFT 사운드 스펙트럼 분석기를 구동하는 장치입니다. 이 장치는 소리 파형을 실시간으로 시각화된 출력으로 제공하며, 무엇보다도 사용자가 직접 제작할 수 있다는 장점이 있습니다.
이 용어에 익숙하지 않다면, FFT는 "Fast Fourier Transform(고속 푸리에 변환)"의 약자입니다. 이는 마이크와 같은 입력 장치에서 수집된 음성 데이터를 받아 실시간으로 화면에 시각적인 사운드 파형으로 변환할 수 있는 알고리즘입니다. 사소한 조정만으로 이 프로젝트는 레이더와 같은 다른 시스템에서도 작동하도록 수정될 수 있습니다.
McCreary는 이 프로젝트의 작동 방식과 현재의 기술적 제한 사항에 대한 상세한 내용을 아낌없이 공유해 주었습니다. 프로젝트 설명에 따르면, FFT 분석기는 약 17밀리초(milliseconds) 주기로 작동하도록 설계되었습니다. 이 알고리즘은 Peter Hinch가 개발한 FFT 라이브러리를 사용하여 ARM 어셈블리어를 기반으로 구동됩니다.
‘광기 과학자’가 아타리 2600이 ROM에서 데이터를 가져오는 과정을 시각화하여 황홀한 라이트 쇼를 구현하다
앞서 언급했듯이, 이 프로젝트의 메인 구동 보드는 Raspberry Pi Pico 2입니다. 이 Pico는 128 x 64px의 해상도를 가진 2.42인치 I2C OLED 디스플레이에 연결되어 작동하며, SSD1306 드라이버를 사용합니다. 오디오 입력을 위해서는 초당 8K 샘플을 제공할 수 있는 마이크가 사용됩니다.
프로젝트 코드는 MicroPython을 사용하여 작성되었습니다. McCreary는 GitHub에 이 프로젝트를 구현하는 방법에 대한 세부 자료를 공유했으며, 여기에는 하드웨어 구성은 물론 FFT 분석기 시스템을 구축하는 데 필요한 모든 정보가 포함되어 있습니다. 또한, 제작 과정과 완성된 시스템의 작동 모습이 담긴 비디오도 YouTube에 공개했습니다.
이 라즈베리 파이 프로젝트에 대해 더 자세히 알고 싶다면, GitHub와 YouTube에 공유된 프로젝트 페이지를 참고하십시오. 이곳에서 제작에 대한 상세 정보는 물론, 독자 스스로 FFT 시스템을 처음부터 개발하기 위한 단계별 가이드와 추가 리소스까지 모두 찾아볼 수 있습니다.