Coder Social home page Coder Social logo

mikanmi / cgir Goto Github PK

View Code? Open in Web Editor NEW

This project forked from indoorcorgi/cgir

0.0 0.0 0.0 31 KB

Raspberry Piで赤外線送受信、データ解析をするPythonライブラリとコマンドラインツールです。The python library and command line tool to send, receive and analyze infrared signals.

License: Apache License 2.0

Python 100.00%

cgir's Introduction

概要

Raspberry Piで赤外線送受信、データ解析をするPythonパッケージとコマンドラインツールです。以下のことが可能になります。Raspberry Pi単体では赤外線送受信機能がないので、拡張基板(HAT)や外付け回路が必要です。赤外線は38kHzに対応しています。

  • Raspberry Piからエアコン、テレビ、照明などを赤外線で操作
  • リモコンで送信した赤外線データを記録する
  • 記録した赤外線データを解析し、一部(エアコンの設定温度など)を変更して送信する

他のソフトウェアやセンサーと組み合わせることで、スマホから家電を操作するシステムや、室温が一定以上になったらエアコンを自動で入れる熱中症防止システムなどの応用も可能になります。

以前のバージョンからの変更点

以前はモジュールcgir.pyとツールcgirtool.pyを単体で配布していましたが、手動でモジュールを配置したりパスを通する必要がありました。

そこで、pipを使ってインストールできるようにパッケージ化しました。これによりインストールが簡単になったほか、cgirコマンドやimport cgirによりパスを気にすることなく利用できるようになりました。

パッケージ化に伴いファイルの構成が変わっていますが、使用方法は変わりません。以前のバージョンはv2020_903タグを参照して下さい。

動作環境

Raspberry Pi OSの動作しているRaspberry Piと、赤外線送受信機能のある以下の拡張基板の組み合わせを想定しています。GPIO番号を変更することで他の拡張基板、HAT、自作回路でも利用可能です。

  • Raspberry Pi用 温度/湿度/気圧/明るさ/赤外線 ホームIoT拡張ボード「RPZ-IR-Sensor

  • Raspberry Pi用 温度/湿度/気圧/赤外線 ホームIoT拡張ボード「RPi TPH Monitor

動作確認済Raspberry Pi

  • Raspberry Pi 4 Model B
  • Raspberry Pi 3 Model B/B+
  • Raspberry Pi Zero W/WH
  • Raspberry Pi Zero

必要なソフトウェア

  • Raspberry Pi OS
  • Python3
  • pigpioサービス

インストール

以下のコマンドでインストール/アップグレードできます。

sudo python3 -m pip install -U cgir

前準備

本ソフトウェアはpigpioサービスを利用します。 サービスを開始するには以下のコマンドを実行します。

sudo systemctl start pigpiod

Raspberry Pi起動時に自動的にpigpioを開始するには、以下のコマンドを実行します。

sudo systemctl enable pigpiod

使い方

コマンドラインツール

インストールすると、cgirコマンドが使用可能になり、ターミナル等から赤外線送受信が可能になります。

コマンドラインツールの使い方はcgir -hもしくは解説記事を参照して下さい。

Pythonパッケージ

python3のスクリプトからはimport cgirとすることでパッケージの機能を利用できます。使い方の詳細はソースコードを参照して下さい。

送信しても機器が反応しない場合

一部環境で、pigpioのクロックソースがPCMの場合、意図した周波数にならず送信に失敗(機器が反応しない)する現象を確認しています。その場合は以下をお試しください。

スーパーユーザーで /lib/systemd/system/pigpiod.service ファイルを開き、ExecStart行の最後に「-t 0」を追加します。編集後にRasbperry Piを再起動します。

ExecStart=/usr/bin/pigpio -l -t 0

注意事項

赤外線送受信はメーカーや機器によって仕様が異なります。全ての機器での動作を保証するものではありません。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.