LoginSignup
108
103

More than 3 years have passed since last update.

ラズパイ使って、外からでもテレビを消せる様にしてやる!

Last updated at Posted at 2020-01-24

はじめに


趣味で宇宙開発を行う団体「リーマンサット・プロジェクト」がお送りする新春アドベントカレンダー No.14です。

就職してからずっと非エンジニアで、2017年暮れからラズパイいじり始めたばかりなのに、2018年1月からrsp-00の開発チーム(ミッション系)に入れてもらい、開発に少し携わることができました。

マジ楽しかったです!リーマンサット、特にrsp-00開発チームの皆様には本当に本当に感謝です!

(この記事の) サマリー


  • 2018年に宇宙に放出されたrsp-00では、ラズパイ(ゼロ)を使ってる
  • 人工衛星 → 遠隔操作 → 「家でリモコン」だよね

という無理矢理な連想と、勉強もせずテレビばかり見ている子供にムカつき、
ラズパイ使って、外からでもテレビを消せる様にしてやる!というものです。

構成図.png

折角なので、スピーカーも追加して「勉強しろ!オラァ」と外からでも言える様にもします。
あと、勉強も兼ねてwifiスマホリモコンもやりました。

構成


ビギナーがゼロから開発するのはムリがあります。偉大なる先人の方々のお知恵を参考に、というかそれらをつぎはぎしながら行なっていきました。ハードもまずはブレッドボードでやりました。

rpi_remocon_bread_edited.jpg

(1) リモコン機能

LIRC面倒なので、rsp-00開発時にも検討したPiGPIOでやりました。

以下サイトで、用意するモノを含め、丁寧に解説してくれています。私もラズパイゼロを使用し、テレビに加え、DVDプレイヤー、エアコンも操作できる様にしました。

格安スマートリモコンの作り方

(2) スマホリモコン画面

webiopiを使いました。以下等を参考にしながら、初めてcssやりました(今はこれが限界。。)。

webiopiを使ってブラウザから遠隔操作

rpi-remocon_edited.png

(3) 音声出力

秋月電子で、スピーカーPAM8012アンプモジュールを購入。

音声出力は、以下等を参考にしました。ラズパイゼロには、Audioジャックがないので、GPIOで接続します。

Raspberry Pi 2 をアンプ基板+スピーカーのコンパクト構成でお喋りさせる

(4) 外からリモコン: slackbot

ポート開放等、自宅のwifi設定はいじりたくないけど、ビギナーなこともあってサーバーとかも面倒。。。調べた結果、slackbotが一番簡単そう!と思い、以下等を参考にしてやってみたところ、それ程引っかからず上手くできました。

PythonのslackbotライブラリでSlackボットを作る

完成!

rpi_remocon_2_edited.jpg

 デモ


「外から、テレビがついているかどうかどうやってわかるの?」
については、以下ご参照ください(音声は出力されません)。

ラズパイ+VNCで外から監視するカメラシステム

「外からリモコン」のデモとして、スマホから4Gでやってます。
チコちゃんにお願いすることも可能にしました^^

 tips


完成まで、つまづきまくりでしたが、PiGPIOに関する日本語情報が比較的少ないので、本プロジェクトでのポイント2点を以下ご紹介。

(1) 自動起動化
systemd等いくつか方法がありますが、私の場合は以下でいけました。

#ユニットがserviceとして認識されているか確認
$ sudo systemctl list-unit-files --type=service | grep pigpiod

#認識されていれば、enableコマンドで自動起動
$ sudo systemctl enable pigpiod.service

(2) 音声出力設定

GPIOピン#19で、結論としてはストレートに以下設定でいきました。

pi.set_mode(19, pigpio.OUTPUT)
pi.hardware_PWM(19, cfreq, 1000000)

上の「GPIOで接続」でALT設定云々と言っていることもあり、OUTPUTの代わりにalt5設定にすると、音は出るのですが、その後TVの操作ができなくなったりとかして、つまづきました。

あとがき


というような感じですので、rsp-00の開発では、実際には、からあげクンの買出しや休日奮闘する開発メンバーの送迎だったような。。。

昨年から、公私とも少し慌ただしいので、今は特定のプロジェクトに参加していませんが、落ち着いたらまた参加したいと思っています。自分のペースで参加できるのも、「リーマンサット・プロジェクト」の良いとこかと。

尚、子供達はテレビを見れなくなっても、youtubeを見るので、このシステムの効果は全くありません。
音声出力も微妙なイントネーションなので、これからはチコちゃんを連発します。


「リーマンサット・プロジェクト」は「普通の人が集まって宇宙開発しよう」を合言葉に活動をしている民間団体です。
他では経験できない「宇宙開発プロジェクト」に誰もが携わることができます。

興味を持たれた方は https://www.rymansat.com/join からお気軽にどうぞ。

新春アドベントカレンダー、次は @rhiro さんの「PlantUMLを使った宇宙服のモデリング」です。お楽しみに!

108
103
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
108
103