Upgrade to Pro — share decks privately, control downloads, hide ads and more …

部屋をナイトシフトする in Node-RED UG

部屋をナイトシフトする in Node-RED UG

HomeKit + homebridge + Node-RED + irMagician で部屋の明かりを調光してみた話

Shingo Tamaki

June 27, 2016
Tweet

More Decks by Shingo Tamaki

Other Decks in Technology

Transcript

  1. ෦԰ΛNightShift͢Δ
    in Node-RED UG

    View Slide

  2. ࣗݾ঺հ
    ۄ৓ ৴ޛ
    • iOS ΤϯδχΞ
    • ޷͖ͳiOSͷϑϨʔϜϫʔΫ HomeKit
    • ΨδΣοτ޷͖
    • ిࢠ޻࡞࢝Ί·ͨ͠ɻRaspberry PiɺArduinoɺEdison

    View Slide

  3. ຊ೔ͷςʔϚ
    σόΠε࿈ܞ

    View Slide

  4. γʔϦϯάϥΠτͷ৭Թ౓ௐޫػೳ
    Λ࢖ͬͯ
    φΠτγϑτΛ࣮ݱͯ͠Έ·ͨ͠ɻ

    View Slide

  5. View Slide

  6. ߏ੒
    • iOS HomeKit
    • homebridge
    • Node-RED in Raspberry Pi
    • irMagician
    • γʔϦϯάϥΠτ

    View Slide

  7. irMagician

    View Slide

  8. irMagicianͱ͸ʁ
    • PCରԠܕͷ੺֎ઢϦϞίϯγεςϜ
    • ϗετͱͷ઀ଓ͸USB
    • ΤΞίϯͷϦϞίϯͷֶश͕Մೳ
    • CDC-ACMΛ࠾༻͠ɺओཁͳOS(Windows, MacOSX, Linux,
    ͦͷଞ)ʹରԠ
    • ٕज़ࢿྉΛެ։͍ͯ͠ΔʢΦʔϓϯιʔεԽʣ
    http://www.omiya-giken.com/?page_id=837

    View Slide

  9. ࢖͍ํ
    screen /dev/cu.usbmodem01231 9600
    ※σόΠε໊͸irMagicianͷόʔδϣϯ΍OSʹΑͬͯҟͳΓ·
    ͢ɻ
    ίϯιʔϧʹೖͬͨΒc΍pͰ৴߸ΛΩϟϓνϟɺൃ৴ग़དྷ·͢
    ... Ready
    irMagician 1.0.3-T
    OK
    ... 60
    ... Done !

    View Slide

  10. Node-RED͔Β
    irMagicianΛૢ࡞͢
    Δ
    serialportϊʔυΛ࢖ͬͯirMagicianʹ
    ίϚϯυΛૹΔflowΛ࡞Δࣄ͕Ͱ͖·͢
    ͕ɺ
    ؾܰʹirMagician͕࢖͑Δͱ͸ݴ͑ͳ͍
    ؾ͕͠·ͨ͠

    View Slide

  11. !

    View Slide

  12. ࡞Ε͹͍͍͡Όͳ͍

    View Slide

  13. ࡞Γ·ͨ͠ɻ

    View Slide

  14. ·ͣNodeͷϞδϡʔϧ
    https://www.npmjs.com/package/
    irmagician
    CLIπʔϧͱͯ͠irMagicianΛૢ࡞͢Δ
    ࣄ͕Ͱ͖·͢ɻ

    View Slide

  15. σόΠε৘ใҰཡΛදࣔͨ͠Γ
    $ irMagician info
    -----------------------------------
    [irMagician Infomation]
    0) Version : 1.0.3
    1) IR change point : 60 (3c)
    2) Max of high IR signal : 33578 (832a)
    3) Min of high IR signal : 1178 (49a)
    4) Max of low IR signal : 3819 (eeb)
    5) Min of low IR signal : 1183 (49f)
    6) postScaler : 256 (100)
    7) current bank : 0 (0)
    -----------------------------------

    View Slide

  16. Ωϟϓνϟͨ͠Γ
    $ irMagician capture
    3 'bytes written'
    ...
    ... 62
    ϓϨΠͨ͠Γ
    $ irMagician play

    View Slide

  17. μϯϓͨ͠Γ
    $ irMagician dump
    {"postscale":256,"freq":38,"data":[63,1,141,39,40,12,12,12,12,12,
    28,12,28,12,28,12,28,12,12,12,12,12,162,39,40,12,12,12,12,12,28,
    12,28,12,28,12,28,12,12,12,12,12,160,39,40,12,12,12,12,12,28,12,
    28,12,28,12,28,12,12,12,12,12],"format":"raw"}
    ॻ͖ࠐΜͩΓ
    $irMagician write data.json

    View Slide

  18. HelpݟͨΓ͢Δࣄ͕Ͱ͖·͢
    $ irMagician
    CLI Tool for irMagician
    Usage: irMagician [file]
    Command
    capture Capture a IR data
    play Send a IR data
    dump Dump written data
    write Write a IR data from json
    info Show irMagician Infomation
    showPorts Show device ports
    Options
    -p, --port Device port
    Examples
    irMagician capture
    irMagician dump data.json
    irMagician write data.json

    View Slide


  19. View Slide

  20. Node-REDͰirMagicianΛ
    ѻ͏ͨΊͷΧελϜϊʔυΛ
    ࡞੒͠·ͨ͠
    https://www.npmjs.com/package/
    node-red-contrib-irmagician

    View Slide

  21. View Slide

  22. View Slide

  23. গ͠୤ઢ

    View Slide

  24. ΧελϜϊʔυͷςϯ
    ϓϨʔτੜ੒
    generator-node-red
    ΧελϜϊʔυΛ࡞੒͢Δ৔߹ɺhtmlͱ
    jsΛॻ͘ඞཁ͕͋ΔͷͰ͕͢ɺ
    ͜Ε͕݁ߏ໘౗Ͱ͢ɻyoͷδΣωϨʔλ
    Λ࢖͑͹ςϯϓϨʔτΛੜ੒ͯ͘͠ΕΔ
    ͷͰ
    ΧελϜϊʔυ࡞੒ͷ࠷ॳʹ࢖͏ͱศར
    Ͱ͢ɻ

    View Slide

  25. ͜ͷޙ͸iOSͷ࿩

    View Slide

  26. HomeKit࢖ͬͯ·͔͢ʁ

    View Slide

  27. ͱݴ͏͔

    View Slide

  28. ஌ͬͯ·͔͢ʁ

    View Slide

  29. HomeKit is Կʁ
    HomeKit͸ɺAppleͷHomeKit Accessory ProtocolʹରԠͨ͠
    ϗʔϜΦʔτϝʔγϣϯػثͱ௨৴͠ɺ͜ΕΛ੍ޚ͢ΔͨΊͷ
    ϑϨʔϜϫʔΫͰ͢ɻ(HomeKit Developer GuideΑΓൈਮ)

    View Slide

  30. HomeKitରԠΞϓϦ։ൃͷ໰୊఺
    • ରԠ୺຤͕গͳ͍
    • ֹ͕ۚߴ͍!
    • HomeKit Accessory SimulatorͰ͸ຯؾͳ͍

    View Slide

  31. homebridge

    View Slide

  32. homebridge is Կʁ
    • HomeKitͷԾ૷σόΠεΛΤϛϡϨʔγϣϯ
    • Node.js͕ಈ͘୺຤Λར༻ՄೳɺRaspberry Pi΍Edison͕࢖͑
    Δ

    View Slide

  33. homebridge-cmd
    ಛఆͷίϚϯυΛ࣮ߦͤ͞Δࣄ͕Ͱ͖ΔϓϥάΠ
    ϯ
    ͜ΕʹΑΓSiriܦ༝ͰΠϕϯτΛτϦΨͤͯ͞ޙ
    ͸ࣗ෼ͷ޷͖ͳίϚϯυΛ࣮ߦͰ͖·͢
    https://github.com/senyoltw/
    homebridge-cmd

    View Slide

  34. View Slide

  35. Demo

    View Slide

  36. ࠓޙͷ༧ఆ
    • homebridge-irMagicianͷ։ൃ
    • SwiftʹΑΔγϦΞϧ௨৴ͰirMagicianΛૢ࡞͢Δ
    • iOS10ͷHomeKitͷ৽ػೳΛࢼ͢

    View Slide

  37. Ҏ্

    View Slide