GNSSの応用

Abstract#

小さな安価コンピューター。でも結構機能がそろっている。遊んでみたのでその記録を。

Topics#

きっかけ#

  • ラジコンを作りたい
ラズパイを使って、ラジコンを作りたい。
初心者なので、「親子で電子工作入門 ラズパイとスマホでラジコン戦車を作ろう![1]」を使ってチャレンジ。

動かない#

FTAをやろうとしたら、配線間違えに気づき、あっさり解決。動きました。
  • BlueTooth接続が不安定。(-)
  • Androidアプリがちゃんとコマンド送れているのか?(-)
  • ラズパイは、受け取れているのか?(-)
  • ラズパイはそれを正しくモータ制御回路に信号を出せているのか?(-)
  • 配線が間違えているのでは?(○)
ラズパイの6ピンをGNDに落とさないといけないのに、2ピンを落としていました。うーん、ちゃんと確認しないと。
  • モーターが壊れているとかない?(×)
これは、もう一度直接電圧をかけたら、左右両方のモーターが回ったので、壊れていない。

早速改造しよう#

  • まずラズパイにログインしたい
ローカル線経由でSSHでログイン。巷にあふれているラズパイの初期パスワードでいけた。乗っ取られたらいやだから変えておくか。あと念のため、apt-get updateとupgradeをやっておく。うーん、結構時間かかる。やっと終えて、接続してみると、BlueToothがつながらない。。。あまりわかっていない状態で、変なアップデートはやめたほうがいいみたい。もとに戻します。
  • 改造の方向性
しゃべらせたい。→OpenJtalk?[6]
スピーカーをつなぎたい。
コマンドを受けたときにまず鳴くようにしたい。
  • 制御プログラムの再コンパイル
Makefile発見。非常にシンプルだ。ただ、makeすればいい。なんか懐かしい。
  • C言語で音を出すには
aplayコマンドを呼び出そう[2]。wavファイルしか再生できないっぽいので、作ってSCPでラズパイに送り込んで、aplayを打ってみる。Playing WAVE 'IC_A_002.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Monoってでできたので、再生しているっぽいけど、聞こえない。alamixerで大きくしてみてもだめ。なんでだろう[3]。イヤホン側で音を絞っていたのがわかりました。。それを大きくすると無事聞こえました。Cからコマンドを呼び出すにはsystem関数を使うようです。後はスピーカーだな。

他設定関係#

  • WIFIに接続したい
$ sudo iwlist wlan0 scan | grep ESSID
 
を打って、WIFI(WLAN0)が生きているか、お目当てのWIFIのSSIDが見えるかを確認[4]
/etc/wpa_supplicant/wpa_supplicant.confにSSIDとPSKを設定。
/etc/network/interfacesでwlan0の部分でiface wlan0 inet manualとなっているところのmanualをdhcpに。
$ sudo wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.confを打ってみる。
うまくいくと ifconfigコマンドを打つとwlan0にIPが割り振られているのがわかる。
固定IPはそのうちやろう。
  • Textエディタ
viに慣れていない人だったら、nanoがいいかも[5]
  • マイク
ほんの少しだけ面倒だったけど、[7]の方法でWAV録音成功できました。
AIとしゃべるためにGoogle Assistant APIを試してみたい。

Reference#

  1. [#1]秀和システム, 2020年8月12日アクセス, 親子で電子工作入門 ラズパイとスマホでラジコン戦車を作ろう!https://www.shuwasystem.co.jp/support/7980html/5020.html
  2. [#2]kaiware007, 2015年7月12日, Raspberry Pi 2を喋らせる, https://kaiware007.hatenablog.jp/entry/2015/07/12/233958
  3. [#3]yuyakato, 2018年06月05日, Raspberry Piでオーディオデバイスが期待通りに動作しなかったときに確認したnつのこと, https://qiita.com/yuyakato/items/76a3d46d1bf57c6a4da6
  4. [#4]SIN, 2018年9月29日、Raspberry Pi Wi-FiやIPアドレスの設定を行う方法, https://dev.classmethod.jp/articles/raspberrypi-remote-connect/
  5. [#5]たぷん, 2015-12-10, Raspberry Pi | viより直感的!標準エディタ”nano”の使い方ガイド, http://www.tapun.net/raspi/raspberry-pi-nano-guide
  6. [#6]くらげ, 2019/06/15, RaspberryPiを音声合成でしゃべらせよう, https://jellyware.jp/kurage/raspi/raspi_speech_synthesis.html
  7. [#7]@t_oginogin, 2016年05月16日, Raspberry Piで音声認識, https://qiita.com/t_oginogin/items/f0ba9d2eb622c05558f4