LoginSignup
6
7

More than 3 years have passed since last update.

1000円で作る日本語音声合成装置

Last updated at Posted at 2019-07-07

音声合成装置を作るといっても、それほど難しいことをするわけではありません。基本的には買って、つないで、終わりです。


- ATP3011(850円)を使用する

ATP3011という音声合成チップは、単体で音声合成ができます(出力はごく小さいのでアンプ付きスピーカーで出力する必要があります)。
I-05665.jpeg

ATP3011F1-PUはいわゆるゆっくりボイスです。
yukkuri.png

I2CまたはシリアルでArduinoやRaspberryPiからコントロール可能です。
今回はArduino Unoを使用しました。

ATP3011.png

接続したらサンプルのスケッチをArduino Unoに書き込みます

#include <SoftwareSerial.h>

int count;
SoftwareSerial softSerial(12,13); //RX, TX

void setup() {
  count = 0;
  delay(100);
  softSerial.begin(9600);
  delay(10);
  softSerial.print("?");
  delay(100);
}

void loop() {
  count++;

  String str = "<NUMK VAL="+String(count)+" COUNTER=funn>+ke-'ka"; 
  softSerial.print(str+"\r");
  delay(2000);
}

最初に"?"を送信することでATP3011の受信レートを自動で変更しているようです。

"<NUMK VAL="+String(count)+" COUNTER=funn>+ke-'ka";

のようにするだけで 「サンプン」「ゴフン」「ジュップン」など読み分けてくれるので、数値の読み上げなどには便利なんじゃないかと思います。
細かい発話方法などはデータシートに載っています。

動画


- ATP3012(900円)+あちゃんでいいの(99円)を使用する

ATP3012はATP3011より高音質ですが外部クロックが必要です。
今回は外部クロック用に、100円で購入できるあちゃんでいいのを使用しました。
ATP3011,ATP3012はArduino UnoのコアチップであるATMega328と互換(ATMega328にファームウェアとして書き込んだもの)なので、あちゃんでいいのを組み立ててATP3012を挿すだけで使えます。

IMG_7591.png

またATP3011とスピーカーOUTのピンが異なっている点も注意が必要です。
ATP3012.png

スケッチはATP3011と同じものが使えます。

動画

6
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
7