Arduinoを使用したタブレットからのDIY Dom.ruテレビ制御

「ヒューマンマシン」システムでの相互作用を簡素化するためのユニークなスマートデバイスの動作原理の説明は、ダイエット薬の広告のように見えますが、この場合、このデバイスがなぜ、なぜ、どのように構築されたかを説明する最良の方法です。



この記事ではテレビのトピックには触れません。「ガジェットエンジニアリング」とインターフェイスの開発についてのみ説明します。

この記事の一部は、私の記事「 テレビ用Bluetoothリモートコントロール 」の続きであるため、ここで説明するいくつかの技術的なポイントを参照します。

まず、デバイスの動作を説明します(ビデオでは、Dom.ruレシーバーの隣の左下隅にあります)。



外では、デバイスは次のようになります。



これは分解図です:



ケースとして、私は偽の監視カメラを使用しました。 このようなモデルは、中国のオンラインストアで4〜5ドルで販売されています。 デバイスの設計については、 前の記事 、および受信機を制御するためのボタンコードのスケッチDom.ruを参照してください。
こっち
#include <IRremote.h>

IRsend irsend;

int ledPin = 13;

符号なしlong a;

void setup(){

Serial.begin(9600);

Serial.setTimeout(4);

pinMode(ledPin、OUTPUT);

}

void S1(){irsend.sendNEC(0x8C03F、32); delay(100);}

void S2(){irsend.sendNEC(0x820DF、32); delay(100);}

void S3(){irsend.sendNEC(0x8A05F、32); delay(100);}

void S4(){irsend.sendNEC(0x8609F、32); delay(100);}

void S5(){irsend.sendNEC(0x8E01F、32); delay(100);}



void S6(){irsend.sendNEC(0x810EF、32); delay(100);}

void S7(){irsend.sendNEC(0x8906F、32); delay(100);}

void S8(){irsend.sendNEC(0x850AF、32); delay(100);}

void S9(){irsend.sendNEC(0x8D02F、32); delay(100);}

void S0(){irsend.sendNEC(0x830CF、32); delay(100);}



void Son(){irsend.sendNEC(0x800FF、32); delay(100);}

void Smute(){irsend.sendNEC(0x818E7、32); delay(100);}

void Splus(){irsend.sendNEC(0x8F807、32); delay(100);}

void Sminus(){irsend.sendNEC(0x802FD、32); delay(100);}



ボイドループ()

{

if(Serial.available())

{a = Serial.parseInt();

if(a == 1){S1();}

if(a == 2){S2();}

if(a == 3){S3();}

if(a == 4){S4();}

if(a == 5){S5();}

if(a == 6){S6();}

if(a == 7){S7();}

if(a == 8){S8();}

if(a == 9){S9();}

if(a == 0){S0();}



if(a == 161){Son();}

if(a == 162){Smute();}

if(a == 163){Splus();}

if(a == 164){マイナス();}



}

}



誰かがTricolor TVレシーバーを制御するための同様のデバイスを作成したい場合、ボタンコードのスケッチは次のとおりです。
こっち
#include <IRremote.h>

IRsend irsend;

int ledPin = 13;

符号なしlong a;

void setup(){

Serial.begin(9600);

Serial.setTimeout(4);

pinMode(ledPin、OUTPUT);

}

void S1(){irsend.sendNEC(0x8C03F、32); delay(200);}

void S2(){irsend.sendNEC(0x820DF、32); delay(200);}

void S3(){irsend.sendNEC(0x8A05F、32); delay(200);}

void S4(){irsend.sendNEC(0x8609F、32); delay(200);}

void S5(){irsend.sendNEC(0x8E01F、32); delay(200);}



void S6(){irsend.sendNEC(0x810EF、32); delay(200);}

void S7(){irsend.sendNEC(0x8906F、32); delay(200);}

void S8(){irsend.sendNEC(0x850AF、32); delay(200);}

void S9(){irsend.sendNEC(0x8D02F、32); delay(200);}

void S0(){irsend.sendNEC(0x830CF、32); delay(200);}



void Son(){irsend.sendNEC(0x800FF、32); delay(100);}

void Smute(){irsend.sendNEC(0x818E7、32); delay(100);}

void Splus(){irsend.sendNEC(0x828D7、32); delay(100);}

void Sminus(){irsend.sendNEC(0x848B7、32); delay(100);}



ボイドループ()

{

if(Serial.available())

{a = Serial.parseInt();

if(a == 1){S1();}

if(a == 2){S2();}

if(a == 3){S3();}

if(a == 4){S4();}

if(a == 5){S5();}

if(a == 6){S6();}

if(a == 7){S7();}

if(a == 8){S8();}

if(a == 9){S9();}

if(a == 0){S0();}



if(a == 161){Son();}

if(a == 162){Smute();}

if(a == 163){Splus();}

if(a == 164){マイナス();}



}

}



Tricolor TVを使用したデバイスの操作を示すビデオはこちらです。

他の受信機のボタンコードの読み方は、 以前の記事でも説明されています。

インターフェースについて少し説明します。

まず、インターフェースが作成されました。



しかし、彼は標準のリモートコントロールと比較して大きな利便性を与えませんでした。

次に、目的のチャンネルの検索をもう少し便利にするために、いくつかのボタンに署名しました。



しかし、このオプションはあまり便利でもありませんでした。

今日、インターフェースは次のようになります。



このインターフェースを使用することは非常に便利であることが判明しました。

結論として、App Inventor 2 Androidビジュアル開発環境を使用して、すべてのAndroidアプリケーションを作成したと言えます。

このようなアプリケーションをゼロから作成する方法に興味がある人は誰でも、このトピックに関するビデオを見ることができます(YouTubeで視聴する必要があります)。



PS初心者およびプロ向けのarduinoに関する100以上の教材のコレクションはこちら

PPSオンラインArduino Guictimesコースはこちら。



All Articles