리소스가 제한된 MCU에서 음성 사용자 인터페이스를 구현하는 방법

DigiKey 북미 편집자 제공

스마트 스피커와 기타 연결된 허브는 스마트 홈의 핵심적인 부분으로, 사용자가 장치를 제어하고 인터넷에 접속할 수 있도록 해줍니다 이러한 장치의 사용이 확산되면서 뚜렷해진 두 가지 추세가 있습니다. 사용자가 버튼 누르기나 복잡한 메뉴 시스템보다 음성 제어를 선호한다는 점, 그리고 개인 정보 보호 문제로 인해 클라우드와의 지속적인 연결에 대한 불안감이 증가하고 있다는 점입니다.

그러나 견고하고 안전한 음성 사용자 인터페이스(VUI)를 구현하려면 통상적으로 음성 인식을 위한 강력한 하드웨어와 복잡한 소프트웨어가 필요합니다. 이 부분이 조금만 부족해도 성능이 저하되고 사용자 경험이 불만족스러워질 수 있습니다. 또한 다수의 스마트 스피커와 허브는 배터리로 작동하기 때문에, 한정된 전력 예산 내에서 VUI를 구현해야 합니다. 음성 인터페이스에 대한 경험이 부족한 개발자에게는 이런 고난도의 프로젝트가 부담스러운 작업이 될 수 있습니다.

칩 제조업체들은 공정의 요구 사항을 크게 줄여주는 음소를 기반으로 한 기술을 도입하여 이에 대응하고 있습니다. 그 결과, 친숙한 32비트 마이크로 컨트롤러(MCU)에서 실행할 수 있고 사용하기 쉬운 설계 도구의 지원을 받는 매우 정확하고 효율적인 VUI 소프트웨어가 탄생했습니다.

이 기사에서는 VUI의 과제와 사용 사례에 대해 설명합니다. 그런 다음, 커넥티드 홈 응용 분야를 위한 상용화되고 사용하기 쉬운 MCU 응용 소프트웨어와 로컬 음소 기반 VUI 소프트웨어를 소개합니다. 마지막으로, 개발자가 Renesas MCU, VUI 소프트웨어 및 평가 키트를 사용하여 VUI 프로젝트를 시작하는 방법을 보여 주면서 마무리합니다.

VUI 구축의 당면 과제

VUI는 음성 명령을 사용하여 컴퓨터, 스마트폰, 홈 자동화 시스템 또는 기타 장치와 상호 작용할 수 있는 음성 인식 기술입니다. 이 기술은 초기에 있었던 엔지니어링 문제를 극복한 후 안정적인 제어 인터페이스로 발전했으며, 현재 스마트 스피커 및 기타 스마트 홈 장치에 널리 사용되고 있습니다. VUI의 주요 이점은 편리성입니다. 키보드, 마우스, 버튼, 메뉴 또는 기타 인터페이스를 사용하여 명령을 입력할 필요 없이 음성 범위 내 어디에서나 즉시 제어할 수 있습니다(그림 1).

'VUI 기술이 널리 채택되고 있습니다.' 이미지그림 1: VUI 기술은 편리하고 유연하기 때문에 가정과 스마트 빌딩에서 널리 채택되고 있습니다. (이미지 출처: Renesas)

VUI의 단점은 복잡성입니다. 기존 기술은 특정 단어나 문구만을 사용하는 모델을 장기간 훈련하는 데 기반을 두고 있습니다. 그러나 자연어를 처리하는 과정은 어순과는 별개이므로, 실시간으로 실행하려면 상당한 개발 작업과 막대한 컴퓨팅 성능이 요구됩니다. 이러한 이유로 VUI의 광범위한 채택이 늦어졌습니다.

이제, 신기술을 통해 Arm® 장치와 같이 작고 효율적인 마이크로 컨트롤러(MCU)에서 실행할 수 있을 정도로 VUI 소프트웨어가 간소화되었습니다. 이 기술은 '모든 구어는 음소라는 언어적 소리 단위로 구성되어 있다'는 사실에 근거합니다. 음소의 수는 해당 언어의 단어 수보다 훨씬 적습니다. 영어는 44개, 이탈리아어는 32개, 전통적인 하와이어는 14개의 음소를 가지고 있습니다. VUI가 200개의 단어로 구성된 영어의 명령 집합을 사용하는 경우, 각 단어는 44개의 음소 집합 중 관련된 음소로 분해될 수 있습니다.

그런 다음 VUI 소프트웨어 내에서 각 음소에 숫자 코드(또는 '토큰')를 부여할 수 있으며, 다양한 토큰이 모여 언어를 형성합니다. 단어를 소리로 저장하려면 방대한 연산 리소스가 필요하며, 토큰으로 저장된 음소보다 훨씬 더 많은 메모리 공간을 차지합니다. 음소 토큰(곧, 명령어)을 예상되는 순서대로 처리하면 연산이 더욱 간소화되고, 적당한 크기의 MCU에서 로컬로 VUI 소프트웨어를 실행할 수 있습니다(그림 2).

'음소를 사용하여 단어 표현하기' 이미지그림 2: 더 적은 마이크로 컨트롤러 리소스만으로 음소를 사용하여 단어를 표현할 수 있습니다. (이미지 출처: Renesas)

즉, 음소를 사용해서 얻는 소프트웨어의 효율성을 통해 로컬 프로세스를 실행할 수 있습니다. 클라우드 처리가 필요하지 않다는 것은 사용자 개인정보 보호 및 데이터 보안 문제를 야기하는 지속적인 인터넷 연결이 필요 없다는 것을 의미합니다.

Renesas는 자체 에코시스템의 일부로 음소 원리를 기반으로 하는 상용 VUI 소프트웨어 패키지를 선보였습니다. Cyberon DSpotter라고 하는 이 소프트웨어는 Arm Cortex-M4 및 M33 코어가 탑재된 Renesas RA 계열 MCU에서 실행될 수 있을 만큼 간소화된 VUI 알고리즘을 생성합니다.

Cyberon DSpotter로 개발하기

Cyberon DSpotter는 음소 및 음소 조합 라이브러리를 기반으로 구축되었습니다. 이는 특정 단어를 인식하기 위해 컴퓨팅을 대량 사용하는 기존의 알고리즘 훈련 방식과는 다른 대안적인 접근 방식입니다. 개발자는 DSpotter 모델링 도구를 사용하여 단어를 음소로 분해한 다음 이를 토큰으로 표현할 수 있습니다.

DSpotter는 강력한 잡음 감소 기능을 갖춘 로컬 음성 트리거 및 명령 인식 솔루션으로 기능하는 내장형(비클라우드) 소프트웨어입니다. 이 소프트웨어는 리소스를 최소한으로 소모하며 정확도가 높습니다. 선택한 MCU에 따라 보안 데이터 전송도 구현할 수 있습니다.

DSpotter는 각 명령어나 명령 문구를 요청하고, 이를 도구가 음소로 분해합니다. 그런 다음 VUI의 명령 세트와 지원 데이터는 개발자가 Cyberon 라이브러리와 함께 프로젝트에 포함하는 바이너리 파일로 구축됩니다. 라이브러리와 바이너리 파일은 MCU에서 함께 사용되어 원하는 음성 명령 인식을 지원합니다.

DSpotter 도구는 개발자 프로그램에 의해 논리적으로 연결되어 다양한 수준의 VUI를 만들 수 있는 'CommandSets'를 생성합니다. 이를 통해 '전구를 밝게 설정해 주세요'와 같은 다단계 명령이 가능합니다. 명령 단어는 '전구'이고 그 뒤에 '설정', '밝음'이 옵니다. 그룹의 각 명령은 레벨 내의 각 명령과 마찬가지로 자체 인덱스를 갖습니다.

'DSpotter 도구를 사용하면 'CommandSets'를 만들 수 있습니다.' 이미지그림 3: DSpotter 도구를 사용하면 개발자의 프로그램에서 논리적으로 연결할 수 있는 'CommandSets'를 생성하여 다양한 레벨의 VUI를 만들 수 있습니다. (이미지 출처: Renesas)

DSpotter 라이브러리는 들어오는 소리를 처리하고 데이터베이스에서 명령어와 일치하는 음소를 검색합니다. 일치하는 항목을 찾으면, 인덱스 및 그룹 번호와 함께 결과를 반환합니다. 이러한 배열을 통해 메인 애플리케이션 코드에서 계층적 스위치 명제를 생성하여 명령어/명령 구문이 들어오는 순서대로 처리할 수 있습니다. 위의 결과물 라이브러리는 256KB의 플래시 메모리와 32KB의 SRAM만 있으면 MCU에 장착할 수 있을 정도로 작아집니다. 사용 가능한 메모리가 더 많으면 CommandSet이 커질 수 있습니다.

개발자는 VUI의 음소 방식에 한계가 있음을 인지하는 것이 중요합니다. MCU의 리소스가 상대적으로 제한되어 있기 때문에 Cyberon DSpotter는 음성 인식이 아닌 대화 인식 기능입니다. 이는 소프트웨어가 자연어 처리를 수행할 수 없음을 의미합니다. 따라서 명령어가 논리적 순서를 따르지 않는 경우(예: '전구', '설정', '밝음'의 순서 대신 '밝음', '전구', '설정' 순서), 시스템이 해당 명령을 인식하지 못하고 최상위 레벨로 다시 초기화됩니다.

한 가지 해결 방법으로는 VUI(예: LED)에 시각적 표시기를 추가하여 프로세서가 CommandSet의 최상위 수준에 있다고 가정하고 사용자에게 논리적 순서로 명령을 다시 실행하라는 메시지를 표시하는 것입니다(그림 4).

'체계화된 Cyberon DSpotter의 특성' 이미지그림 4: 체계화된 Cyberon DSpotter의 특성상, 명령은 논리적 순서를 따라야 하며, 그렇지 않으면 명령이 인식되지 않습니다. (이미지 출처: Renesas)

제한된 리소스로 비클라우드 VUI 실행하기

Cyberon DSpotter는 효율성이 뛰어나 Renesas의 RA2, RA4, RA6 Arm Cortex-M MCU 제품군에서 구동됩니다. 이는 다양한 소비자 가전용, 산업용 및 IoT 응용 분야에서 널리 사용되고 있습니다. 사용하기 쉬운 설계 도구가 지원되므로, 광범위한 코딩 경험이나 사내에 별도의 전문 팀이 없어도 비교적 손쉽게 간단한 VUI를 구축할 수 있습니다.

특정 RA 제품군 MCU의 선택은 주로 명령의 복잡성과 Cyberon 라이브러리의 크기에 따라 결정됩니다. 스마트 조명 스위치의 효과적인 작동을 위해 적절한 명령어 세트와 한정된 컴퓨팅 성능이 필요한 경우, RA4 제품군의 R7FA4W1AD2CNG를 기본으로 활용할 수 있습니다. 이 MCU에는 512KB 플래시 메모리와 96KB의 SRAM이 지원하는 배터리 친화적인 48MHz Arm Cortex-M4 코어가 있습니다. 이 제품은 세그먼트 LCD 컨트롤러, 정전 용량 방식 접촉 감지 유닛, Bluetooth Low Energy(Bluetooth LE) 무선 연결, USB 2.0 Full-Speed, 14비트 아날로그 디지털 컨버터(ADC), 12비트 디지털 아날로그 컨버터(DAC)를 갖추었으며, 보안 및 안전 기능이 추가되었습니다(그림 5).

'Renesas R7FA4W1AD2CNG MCU' 구성도그림 5: R7FA4W1AD2CNG MCU는 스마트 조명 스위치와 같은 응용 제품을 위한 비클라우드 VUI를 구축하는 데 필요한 충분한 리소스를 제공합니다. (이미지 출처: Renesas)

스마트 스피커와 같은 응용 제품에는 더 광범위한 Cyberon DSpotter 라이브러리와 더 강력한 코어가 필요합니다. R7FA6M4AF3CFM은 이에 적합한 후보입니다. RA6 제품군에 속하는 이 MCU는 1Mbyte의 플래시 메모리와 256Kbytes의 SRAM으로 지원되는 더욱 강력한 200MHz Arm Cortex-M33 코어를 갖추고 있습니다. CAN 버스, 이더넷, I²C, LIN 버스, 정전 용량 방식 접촉 감지 유닛 및 기타 여러 인터페이스와 주변 장치를 갖추고 있습니다.

RA4 및 RA6 제품군은 평가 기판인 RTK7EKA4W1S00000BJRTK7EKA6M4S00001BE에서 각각 지원되므로 개발자가 MCU의 기능을 실행할 수 있습니다. 각 평가 기판에는 타겟 MCU와 온보드 디버거가 있습니다.

또한 Renesas는 개발을 가속화할 수 있는 VUI 솔루션 키트도 제공합니다. 이 키트는 타겟 장치와 디버거가 통합되어 있다는 점에서 평가 기판과 유사합니다. 또한 이 기판에는 여러 I/O 인터페이스와 4개의 마이크(아날로그 2개, 디지털 2개)가 있습니다.

Cyberon 웹사이트에서 VUI 솔루션 키트로 개발하는 데 필요한 소프트웨어를 이용할 수 있습니다. 여기에는 무료 Cyberon DSpotter 모델링 툴 액세스가 포함되며, 실행 가능한 CommandSet이 포함된 e2 스튜디오 프로젝트가 포함되어 있습니다(e2 스튜디오는 Renesas MCU를 위한 Eclipse 기반 통합 개발 환경(IDE)입니다). 예제 CommandSet은 사용자 지정 음성 명령 시퀀스를 개발하기 위한 템플릿으로 사용할 수 있습니다. 그런 다음 터미널의 창을 사용하여 시스템의 반응을 모니터링할 수 있습니다. 그림 4에 표시된 VUI 구조를 만드는 데 보통 약 15분이 걸립니다.

Cyberon 패키지를 위한 보다 정교한 응용 소프트웨어 설계는 RA 제품군을 사용하는 내장형 시스템 설계를 위한 Renesas Flexible Software Package(FSP)를 통해 지원됩니다. FSP는 개방형 소프트웨어 에코시스템을 기반으로 하며, Azure RTOS 또는 FreeRTOS, 레거시 코드 및 타사 에코시스템을 포함합니다. e2 스튜디오를 포함한 여러 IDE에서 실행할 수 있습니다.

VUI의 성능은 어느 정도인가요?

VUI가 조용한 실험실에서 잘 작동하는 것과 상당한 배경 잡음이 있는 환경에서 정확하게 작동하는 것은 전혀 다른 문제입니다. 스마트 스피커의 통상적인 작동 환경에는 TV나 라디오, 대화, 기타 음악 소스, 가정이나 모임에서 발생하는 일반적인 웅성거림이 포함될 수 있습니다. 또한 VUI는 사투리와 완벽하지 않은 발음에도 대응해야 합니다. 이러한 어려움에도 불구하고 사용자들은 거의 완벽한 성능을 기대합니다.

까다로운 청취 환경에서의 성능을 향상하기 위해, Renesas RA MCU 제품군에서 실행되는 Cyberon DSpotter 소프트웨어에는 최소한의 프로세서 리소스만 요구하는 잡음 내성 기능이 포함되어 있습니다. 그 효과를 입증하기 위해 1.5m와 3m 거리에서 다양한 배경 잡음원과 0dB, 5dB, 10dB의 신호 대 잡음비(SNR)에 노출된 상태에서 Cyberon DSpotter VUI로 명령을 수신하는 테스트를 수행했습니다. 모든 경우에서 VUI는 Amazon Alexa 벤치마크보다 우수한 성능을 보였습니다(표 1).

SNR 배경 잡음 거리 적중률 Alexa 요구 사항
(고요) 없음 1.5m 100.00% 90%
(고요) 없음 3m 100.00% 90%
10dB 떠드는 소리 1.5m 98.55% 80%
10dB 떠드는 소리 3m 98.84% 80%
10dB 음악 1.5m 98.26% 80%
10dB 음악 3m 98.55% 80%
10dB TV 1.5m 98.84% 80%
10dB TV 3m 98.55% 80%
5dB 떠드는 소리 1.5m 98.84% 80%
5dB 떠드는 소리 3m 96.24% 80%
5dB 음악 1.5m 98.84% 80%
5dB 음악 3m 97.08% 80%
5dB TV 1.5m 93.37% 80%
5dB TV 3m 90.72% 80%

표 1: 다양한 배경 잡음원이 있는 경우의 Cyberon 기반 VUI에 대한 명령 성공 테스트 결과입니다. 모든 경우에서 VUI는 Amazon Alexa 벤치마크보다 우수한 성능을 보였습니다. (이미지 출처: Renesas)

결론

VUI는 스마트 장치에서 선호되는 소비자 가전 제어 인터페이스로 빠르게 자리잡고 있습니다. 음소를 명령의 기초로 사용하고 엄격한 명령 구조를 사용하는 음성 제어 접근 방식은 메모리 및 컴퓨팅 요구 사항을 대폭 줄여 리소스가 제한된 소형 MCU에서 로컬로 기술을 실행할 수 있습니다.

DigiKey logo

면책 조항: 이 웹 사이트에서 여러 작성자 및/또는 포럼 참가자가 명시한 의견, 생각 및 견해는 DigiKey의 의견, 생각 및 견해 또는 DigiKey의 공식 정책과 관련이 없습니다.

게시자 정보

DigiKey 북미 편집자