« ADコンバータMAX11198を動かす | トップページ | 90個のピンの電源電圧を測れるようになった »

2023.04.21

喋る半導体検査プログラムを作りたい

BGAの端子を1本1本検査する際に、ピンにプローブを当てながらオシロを見たり、テスターを見たりするのは効率が悪いので、プログラムに喋らせることができないかと考えています。

音声合成はVisual C#(というか.NET)にもともとあるようで、簡単に使えることがわかりました。

やりかたはすごく簡単でした。

まず、

using System.Speech.Synthesis;

をします。

このままだとSystem.Speech.Synthesisが見つからないというエラーが出るので、System.Speechの参照の追加を行います。

ソリューションエクスプローラで、参照→参照の追加→アセンブリを行い、System.Speechを追加します。

Refspeech2

ソリューションエクスプローラにSystem.Speechが出てくればOKです。

Refspeech

C#のプログラムは、

SpeechSynthesizer speech;
speech = new SpeechSynthesizer();
speech.SetOutputToDefaultAudioDevice();
speech.Speak("A1 3.2ボルト");
speech.Speak("A2 0.03ボルト");
speech.Speak("A3 3.2ボルト");

とします。

これでSpeak関数の中身で書いたとおりに喋ってくれます。

どんな声が使えるかというと、speech.GetInstalledVoiceで調べられるのですが、戻りの型がよくわからいので、

Object var = speech.GetInstalledVoice();

とやってデバッガでウォッチしていみます。

調べてみると、

Microsoft Zira Desktop

Microsoft Haruka Desktop

という2つの音声がインストールされているようです。

話者は

speech.SelectVoice("Microsoft Haruka Desktop");

または

speech.SelectVoice("Microsoft Zira Desktop");

で切り替えられます。

デフォルトはHarukaのようです。萌え系的な要素はまったくありません。

Harukaは数字などを日本語で読み上げてくれますがZiraは英語で読むようです。

ちょっとぎこちないですが、無料でVisual Studioの機能だけで使えるので、超おすすめです。

 

|

« ADコンバータMAX11198を動かす | トップページ | 90個のピンの電源電圧を測れるようになった »

コメント

コメントを書く



(ウェブ上には掲載しません)




« ADコンバータMAX11198を動かす | トップページ | 90個のピンの電源電圧を測れるようになった »