ゆるブロ

ゆる~くてちたのIT系?ブログ

Jetson nanoでTesseract-OCRを試す

はじめに

Jetson nanoを2年ぐらい前に買ったんだけど、タンスの肥やしになっていました。
もったいないので、何かにつかえないかなーと。

あ、この記事と関係ないですが、家のWi-Fiルータを強そうなもの(WXR-5700AX7S)に変えました(笑)
最近ルータに接続させる機器が増えすぎてて、古い機種だと処理しきれていなかったぽい気がしたので。よくよく考えると同時接続数が25ぐらいになるので、30台以上を処理できるものにしました。こっちは後で記事にしようかな?

参考文献

forums.developer.nvidia.com

qiita.com

完走した感想

入力画像

f:id:TeTiTa:20210201111538p:plain

入力画像

出力結果

 

f:id:TeTiTa:20210201111708p:plain

出力結果

動くところまでは持ってこれました
何にどう使うのかはこれから考えるとしましょう

部屋の中を飛び交う赤外線リモコンの情報をかすめ取る

はじめに

なーに言ってるんだという声が聞こえてくるが、とりあえず聞いてくれ。

赤外線リモコンで操作できる機器をグーグルホーム/アレクサから操作できるようになったのは良いのだが、今の状態を知ることができないのが問題としてある。

今の状態を知る第一歩として、部屋の中を飛び交っている赤外線リモコンの情報を可視化できないかなーってことをやってみる。

参考文献

deviceplus.jp

 

nomunomu.hateblo.jp

 

make.bcde.jp

 

完走してない感想

なぜか動きません。

ちゃんと/boot/config.txtに分けて設定書いてるのに/dev/lirc0が生成されないし、lircdはActiveで動いていそうだし、なんだかよくわからんので日を改めることにします。

ラズパイのバックアップをcrontabに仕込む

はじめに

ラズパイが突然死するという噂を聞いていたので、そろそろやばいかなーってところで毎日バックアップをとることにしました。
せっかくデータを取っているので、消えたら悲しいからね。

参考文献

atooshi-note.com

ほぼここ見ればOK。

ただし、NOOBS?で作ったラズパイはうまくクローン出来ず。

パーティションがめっちゃ割れてるからかも。

OSイメージを焼いたほうが2つだったのに対して、NOOBS?は7つでした。

 

完走した感想

クローンできなかったのは、OSのインストールしなおしかなあ・・・

めんちい(笑)

Google Homeに最新の使用電力を教えてもらいたい!第二回/全二回

はじめに

タイトルの使用電力量⇒使用電力と修正します。そのうち30分電力量も知りたいけどね!

第一回では、とりあえずやりたいことを図にすることでゴールを意識づけしました。

さて、第二回ですが・・・ひとまず完成しちゃいました!

ゴールに行き着くまでの道のりは変わりましたが、ゴールがぶれなかったので何とかできました。実は今日までに使用電力を教えてもらうところまでどうにか作りたいという野望があったので、多少の妥協は仕方ないとしました。

今後は教えてもらう内容を変えたりしてブログは更新していきます。

参考文献

先日から少しだけ実現方法が変わりました。

f:id:TeTiTa:20200802233819p:plain

前回のやりたいこと図

f:id:TeTiTa:20200803224648p:plain

今回実現したやり方図

どうしてこうなったのかというと、Dialogflowから外部ネットワークに対してWebhookをするためには、「課金」が必要だったため、ひとまず今回はやめたということでした。

気が付いたタイミングとしては、Diarogflowの設定をひとしきり終えた後でした。DialogflowのWebhookの応答が以下となり、にっちもさっちもいかなくなっていました。

"webhookStatus": {
    "code": 14,
    "message": "Webhook call failed. Error: UNAVAILABLE."

 いろいろと漁った結果、同じような状況に陥っている人がいました。

stackoverflow.com

It isn't clear exactly when/where you're getting the "UNAVAILABLE" error, but one likely cause if you're using Dialogflow's Inline Editor is that it is using the Firebase "Spark" pricing plan, which has limitations on network calls outside Google's network.

無料会員のままじゃつかえないよと言われていました。

ということで、Dialogflowを使う方針からIFTTTで連携させる方針に変更しました。

ここからは各種参考文献の紹介に移ります。

IFTTT、Webhook

IFTTTの登録

登録は前からやってたので、割愛で(笑)
多分すぐに登録できると思う。

レシピのCreate

if+This⇒Google Assistantを選択

f:id:TeTiTa:20200803231317p:plain

if+this

then⇒webhookでリクエストを送信

f:id:TeTiTa:20200803231450p:plain

then

IFTTTは癖があるけど単純なものはほんと簡単にできるよね~。

ラズパイ/Network

今回使ったラズパイちゃんはrasberry pi zero WH(マルツオンラインで2200円)でした。
ラズパイのセットアップはここでは割愛します(笑)
特別にやったことは、バックアップの作成ぐらいかな?

www.fabshop.jp

ネットワークについては、外部からアクセスさせる必要がありました。たまたまうちのNASちゃん(Synology製)がDDNSサービスを無料で展開してくださっているので活用させてもらいました(VPNと一緒ですね)。
外部から宅内LANのNASにつながるので、そのパケットのうちとあるポートを指定したパケットだけをラズパイちゃんのNode-REDのポートへ転送するようにルータに手を入れました。

Node-RED

 今回だいぶお世話になったNode-RED。めっちゃ楽だね!ほとんどプログラミングしてないし。

導入はこの辺。

qiita.com

qiita.com

www.1ft-seabass.jp

 

メインのwebhookを受け取ってからgoogle homeをしゃべらせるまではこの辺。

qiita.com

www.gesource.jp

qiita.com

qiita.com

blue.hatenadiary.jp

flows.nodered.org

flows.nodered.org

 

 おまけ

qiita.com

 

出来上がったノードは以下の形(かなり適当にできているのであしからず)

f:id:TeTiTa:20200803234857p:plain

node

injectはデバッグ用にとりあえずトリガ引くため。http(200)も同じ。

postgrestorは適当に公開されていたものを拝借。おしゃべりマンはcastですね。

中身はQiitaで公開かな。あっちのほうが技術寄り寄りだしね。

完走した感想

いやーーーーーうれしいですね~~~。

二日間だったけどここまでできるとほんと楽しい。

できたことだけではなくて、やっぱりゴールを意識するのって大事なんだなあと再確認させられました。

さて、やりたかったことはどんな感じになったかな?

  • google アシスタント経由でDialogFlowを操作
    ⇒DialogFlowからIFTTTに変更
  • Webhookで家内LANのラズパイにアクセス
    DDNSを使って適当に。
  • ラズパイにwebサーバを立てておく
    ⇒Node-REDでらくちん!
  • ラズパイからDBにアクセスしてデータ取得
    ⇒Node-REDからできちゃうなんで!すごい!
  • ラズパイアクセスはホワイトリストで制限
    ⇒かなりのガバなので・・・ちゃんとやらなきゃなあ(白目)

 2日間にしては、いい感じかな?

今後は30分電力量をうまいこと教えてもらうことや、温度と湿度を取り始めたのでそのデータ集めをしたらもっといいことできそう?

夢が広がるので、時間が無限にほしいいいいい~~~。

Google Homeに最新の使用電力量を教えてもらいたい!第一回/全??回

はじめに

ということで、夏季休暇のお遊び第二弾ですね~~。

これができたらマジで達成感パないっすよ。

正直めっちゃ長くなったので、複数回に分けて投稿です。長いと読みにくい気がしたからね。さて、何回になることやら・・・

 

今回やりたいことを一般化すると、「GoogleHomeに任意の文字列をしゃべってもらう」といったところ。独自のAPIをたたいて、帰り値をもらえればOK。

全面的に参考になりそうなブログをみつけまんた。

ct-innovation01.xyz

同じように、やりたいことを図にしてみました。

 

f:id:TeTiTa:20200802233819p:plain

やりたいこと図

ちなみに、図面はdrow.ioを使用しました。使い方はここでは触れないこととします。

app.diagrams.net

図に起こしてみると必要な機能が見える化できますね。ちなみにラズパイは余っていたRaspberry pi zero WHを使います。ちょっとしたwebサーバだけだし非力でも大丈夫なはず!

  • google アシスタント経由でDialogFlowを操作
  • Webhookで家内LANのラズパイにアクセス
  • ラズパイにwebサーバを立てておく
  • ラズパイからDBにアクセスしてデータ取得
  • ラズパイアクセスはホワイトリストで制限

 

懸念点としては、家内LANにあるラズパイにどうやってDialogFlowからアクセスするのか、セキュリティをホワイトリストで本当にカバーできるのか、といったところでしょうかね。

そのうち自分の家内LANにハッキング仕掛けて、セキュリティが大丈夫なのか試してみたいですね、自分のスキルアップも兼ねて。

 

てか、google アシスタントとDialogFlow相当のアプリケーションが宅内LAN内で完結するならば、外に出ていく必要がないんだけどね。さすがにそんなパワーがあるものはないよね、って話。ちょっとしたシングルボードマシンでできるなら教えてちょ。

参考文献

文中参照

完走していない感想

まだ走り出してもいないって感じです(笑)

いやーーーたのしみ!!!!

Google Homeを使ったスマートホームってやつを導入しました

はじめに

おそらく一年ぐらい前に買ったGoogle Homeの封をやっとこ開いて、スマートホーム化をしました。

やる気が出てきたということは、もちろん夏季休暇に入ったからです。

今年は東京オリンピックの影響でこんなことになっています。

やることとしては下記になります。

  • google Homeを設定する
  • Switch Botと連携
  • リビングの電気を声で変えられるようにする

参考文献

www.switchbot.jp

公式が一番そろっている気がする。

公式通りにやったら、ものの1時間ぐらいでしたね。

完走した感想

OK, google. リビングを消して」

これで操作できます。素晴らしい。

細かいことは難しいけど、今はこれで十分な気がする。

次やりたいことも見えているし、がんばるぞーーー!

できたら記事にします~

Grafanaを使った電気の見える化

はじめに

1年ぐらい前?から目をつけていたけど、やっとできたーマン。

Grafanaってかっこいいよね。

LiveDemoで遊べるので、画像のリンクから飛んでね!

f:id:TeTiTa:20200505175255p:plain

ログイン画面

f:id:TeTiTa:20200505174651p:plain

GrafanaのLive Demo

参考文献

Dockerイメージがあるので、ポーンと建てるだけ。

qiita.com

blog.serverworks.co.jp

www.s-style.co.jp

とりあえずのダッシュボードを作成!
GrafanaのダッシュボードとDBの中身を一度に見てみるといい感じに動いているのが見えました。上で表示する範囲が変えられるし、カーソル合わせればその値も見える。
700Wぐらいになっているのがドライヤーを中でつけたとき、1400Wを超えたのが電気ケトルをつけたときですね~。

f:id:TeTiTa:20200505182234g:plain

ダッシュボード

完走した感想

ついにここまで来ました・・・!
GW中にここまでこれてヨカタ。
今後は、ダッシュボードいじいじおじさんだな。
Metabaseは過去データの解析、Grafanaで現状を可視化といった感じでしょうか。

夢が広がるぞ~~~

アップロードはTwtterに上げてリンク張ったほうが良いか??