RasberryPi4のこと

アイディア:温度・湿度・気圧のデータをLINEで確認する→WEBでグラフ表示

アイディア:サーボでネギ振り+

アイディア:(ラズパイじゃないけど)車載CO2センサーで疲れ居眠防止

アイディア:(ラズパイじゃないけど)撮影画像から距離測定(車載)

セットアップ

面倒だったのでスタータキット購入したため、何もしてない。

設定など

アップデート

sudo apt update
sudo apt full-upgrade -y
sudo apt autoremove -y
sudo apt clean

マウスが遅い

設定ファイルに記述します

sudo vi /boot/cmdline.txt

以下を追加

usbhid.mousepoll=0

i2c

センサーとのベーシックな通信方法。

有効化

i2cインターフェースがデフォルトで無効になってるので有効化する。

sudo raspi-config

Interface Option → I2C (EnableとかはいとかYESとかする)

参考:https://rb-station.com/blogs/article/raspberry-pi-i2c-activation

ツール

apt-getでi2cのチェックツールをインストール

sudo apt-get update
sudo apy-get install i2c-tools

センサ

BME280を使う

スイッチサイエンスの「BME280搭載 温湿度・気圧センサモジュール」

ライブラリをインストール

sudo pip3 install smbus2

なお、スイッチサイエンスのGitHubリポリトジにサンプルコードあり。ただし、Python2.xのサンプルなので、Python3.xで実行の場合は、”Print”部分を関数にしてやる必要あり。
https://github.com/SWITCHSCIENCE/BME280

参考:https://qiita.com/yukataoka/items/8f9046587c978e91f689

WEB関連

(この項目はいづれ分離させるのが良いと思われ)

nginx

Flask

vi→https://docs.oracle.com/cd/E19253-01/816-3946/editorvi-tbl-83/index.html

取り合えずFlask付属のhtmlサーバーを使う。https://aiacademy.jp/media/?p=57←ここの手順通りにする。ただし、app.run引数に「host='0.0.0.0'」を追加する

https://taku-info.com/flaskapp-raspberypicontroller/

LINE

登録とかは検索すればページが大量にあるのでそれを見て登録する。「LINE IDでログイン」しておくのが無難。
プッシュ通知は、適当なプログラムから送ればいいが、ユーザーからのメッセージを受けるには「受ける」ためのWEBサーバーが必要になるので必要に応じて建てる。

LINE Bot API (Python):https://github.com/line/line-bot-sdk-python

Messaging APIリファレンス(プッシュメッセージの場所への直リンク):https://developers.line.biz/ja/reference/messaging-api/#send-push-message

サンプルなどは、実は公式のドキュメント・リファレンスが充実しているので、そこを漁った方が案外手間がかからないかも。

Microsoft Azure

大クラウド時代!AWSを使わないのは、やはりWindows系・Office系との連携のしやすさ(いつかするかもしれないからね)
(MSFTの株主だからというのもありますが…)

LINEのボットを作成するには「Azure Function」を使うようです。 この説明が一番しっくり来たので載せておきます(リンク先より)

「Azure Functions」は、さまざまなイベントによって駆動し、
サーバーの構築や保守をすることなくプログラムを実行できるサービスで
Azure Portal画面から作成できる。

https://www.purin-it.com/azure-portal-functions

参考情報1→https://matsujirushi.hatenablog.jp/entry/2017/09/02/224305

参考情報2→https://qiita.com/mstakaha1113/items/1c9b8f61452147a87640

IoT HUB→デバイスのデータ送信はサンプルが少ない。→ https://cloudsteady.jp/post/14723/

参考情報3→https://www.cloudou.net/azure-iot-suite/iot003/

Visual Studio Code

サンプルがあったのでこれでやってみました。

https://zenn.dev/mochan_tk/articles/d01a24bb576d18

VSCodeにAzureのプラグイン導入→ローカルでプロジェクト作ってコーディング→(Azureに接続して)ローカルで作ったプロジェクトをデプロイ(アップロード)

Azure Portalいろいろいじってたら、Visual Studio Codeで「No subscriptions were found」とか、「Select subscription…」といったような、サブスクリプションの状態がうまく読めていないような感じになった。→[Ctrl]+[Shift]+[P]でコマンド「Azure: Sign in」入力実行でブラウザ開いてログインすると復旧した。

https://docs.microsoft.com/ja-jp/azure-stack/user/azure-stack-dev-start-vscode-azure?view=azs-2108

pc/raspi.txt · 最終更新: 2022/03/22 13:20 by wtaki
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0