日記帳
本ページはプロモーションが含まれています
カテゴリー
Links
blog(ブログ)マスター
アンドロイドの巣
ゼロから始めるベランダ菜園
タイトル
2024年11月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

パナソニック 照明リモコンフォーマット

カテゴリー: General
2016-10-14
パナソニック 照明リモコンフォーマット

フォーマットは、家製協リモコンフォーマット

フレームの開始データ: 8T(1)+4T(0)
+ データ
+ フレームの終了データ : 8ms以上無信号

送信方法は、家製協リモコンフォーマット準じる.
※ 家製協リモコンフォーマットに準じたプログラムから
データ部分だけ変更すれば、ほかのリモコン用アプリを流用できるということ。

・データ
共通部分最初の3バイト(24bit)
16bitのカスタマーコード + 4bitのパリティ + data0 4bit(バイト調整の捨てデータ) + data1
0111 0100 0100 1010 1001 0000 + data1

データ1
 const char *SW1_brightness_inc = "0011 0100 0100 1010 1001 0000 0101 0100 1100 0100"; // 明るい
const char *SW1_brightness_dec = "0011 0100 0100 1010 1001 0000 1101 0100 0100 0100"; // 暗い
const char *SW1_power_max = "0011 0100 0100 1010 1001 0000 0011 0100 1010 0100"; // 全灯
const char *SW1_power_on = "0011 0100 0100 1010 1001 0000 1011 0100 0010 0100"; // 点灯(お好み)
const char *SW1_power_small = "0011 0100 0100 1010 1001 0000 0111 0100 1110 0100"; // 常夜灯
const char *SW1_power_off = "0011 0100 0100 1010 1001 0000 1111 0100 0110 0100"; // 消灯
const char *SW1_power_sleep30 = "0011 0100 0100 1010 1001 1100 1000 0101 0001 1001"; // おやすみ30分

const char *SW2_brightness_inc = "0011 0100 0100 1010 1001 0000 0100 1100 1101 1100"; // 明るい
const char *SW2_brightness_dec = "0011 0100 0100 1010 1001 0000 1100 1100 0101 1100"; // 暗い
const char *SW2_power_max = "0011 0100 0100 1010 1001 0000 0010 1100 1011 1100"; // 全灯
const char *SW2_power_on = "0011 0100 0100 1010 1001 0000 1010 1100 0011 1100"; // 点灯(お好み)
const char *SW2_power_small = "0011 0100 0100 1010 1001 0000 0110 1100 1111 1100"; // 常夜灯
const char *SW2_power_off = "0011 0100 0100 1010 1001 0000 1110 1100 0111 1100"; // 消灯
const char *SW2_power_sleep30 = "0011 0100 0100 1010 1001 1100 0101 0101 1100 1001"; // おやすみ30分

const char *SW3_brightness_inc = "0011 0100 0100 1010 1001 0000 0101 1100 1100 1100"; // 明るい
const char *SW3_brightness_dec = "0011 0100 0100 1010 1001 0000 1101 1100 0100 1100"; // 暗い
const char *SW3_power_max = "0011 0100 0100 1010 1001 0000 0011 1100 1010 1100"; // 全灯
const char *SW3_power_on = "0011 0100 0100 1010 1001 0000 1011 1100 0010 1100"; // 点灯(お好み)
const char *SW3_power_small = "0011 0100 0100 1010 1001 0000 0111 1100 1110 1100"; // 常夜灯
const char *SW3_power_off = "0011 0100 0100 1010 1001 0000 1111 1100 0110 1100"; // 消灯
const char *SW3_power_sleep30 = "0011 0100 0100 1010 1001 1100 1100 1101 0101 0001"; // おやすみ30分
// 注意: avrは、バイト順がリトルエディアンなので、数値型として変数に格納する場合は、上位下位4bitの順番に注意

const char *SW1_change_chanel = ""; // チャンネル確定
const char *SW2_change_chanel = ""; // チャンネル確定
const char *SW3_change_chanel = ""; // チャンネル確定

unsigned short setDataFromBitString(unsigned char data[],
                               const char *select,
                               const short n)
{
    unsigned short ret = 0;
    data[0] = 0;
        for(int i=0; n>0 && i<n && select[i]!= 0; i++) {
                if (select[i] == '0' || select[i] == '1') {
                data[ret] = select[i];
                        ret ++;
                }
        }
        return ret;
}

セット dataSize = (unsigned short) setDataFromBitString(data, SW1_power_off, sizeof(SW1_power_off)-1);
以下でも可能
char * p = (char *) SW1_power_on;
// リーダー送信
while(p !=0 p[0]!=0)
{
switch (p[0])
{
case '1':
//ここにhigh送信
_delay_ms(T)
break;
case '0':
//ここにlow送信
break;
}
p++;
}
// フレーム終了送信


作成方法については、以下の2ブログを参考にすれば簡単に作れます
  • AVRマイコンでTVリモコンを作成
    • http://usicolog.nomaki.jp/engineering/avr/makeRemoteController.html
    • データ部分を変更するだけでリモコンテストできます
  • 赤外線リモコンの通信フォーマット
    • http://elm-chan.org/docs/ir_format.html



バイト 1 2 3 4 5
ビット 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
  全40bit(5バイト)
  カスタマーコード (0011 0100 0100 1010) パリティ(1001) データ(20bit)
                                          data0 data1 data2
  固定値 (0011 0100 0100 1010 1001)   サブモード CH モード パリティ bit
16進値 3 4 4 A 9 0
C
    17-20
xor 25-28
21-24
xor 29-32
2進値 0 0 1 1 0 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 0 0 0 3bit     2bit   3bit     3バイト目 xor 4バイト目
                                  各4bitのxor 1 1 0 0 2bit   3bit     3bit    

家電協フォーマット
T0搬送波 940nm(900-950)
T1副搬送波 38kHz(33~40kHz), 1 0^6(u sec)/26(u sec)=38.4kHz
T2変調時間 425 (330~500)μs
値1 high(1T) + low(1T)
値0 high(1T) + low(3T, 1275us)

リーダー 8T(high:3400us) + 4T(low:1700us)
 
トレーラー 1T(high:425us) + 1T(low:425us) + 8ms
+75ms
rest delay 132ms – 送信時間 = 132 - (118*T2 ~ 158*T2) / 1000
  132-(78 + sum(dataの各ビット is 0)*4 + sum(dataの各ビット is 1)*2 )*T2/1000 ms
  65 (65 ~ 82) msec



ちゃちな850円くらいにしか見えないパナソニック照明純正リモコンが
2800円もします。

本体が8900円(リモコン付き)なのに高すぎでしょ
去年の型おくれだと本体(リモコン付き)5600円で流通してますし。

材料費全部(箱、電池含む)で
パナソニック照明対応リモコンを1個530円
で 自作しました

作成にかかる時間・労力考えると
純正と同じもの作っても意味がないので
純正にはない機能をいくつか搭載しました

出入り口の壁、ねどこの床そば、隣の部屋 いろいろなところに配置できます。




PR

[PR]