Mul$-‑protocol ¡gateway ¡and ¡ interface ¡for ¡transparent ¡data ¡ access ¡for ¡AAL ¡applica$ons ¡ By: ¡ Ye-‑Qiong ¡Song ¡and ¡Mou$e ¡Chehaider ¡ ¡ LORIA ¡and ¡Université ¡de ¡Lorraine ¡– ¡MADYNES ¡Team ¡ ¡ Workshop ¡PAL2012, ¡Nancy, ¡Nov. ¡19-‑20, ¡2012 ¡ 1 ¡
Context ¡and ¡problems: ¡ ¡ low ¡cost ¡smart ¡home ¡system ¡for ¡elderly ¡ The ¡fact: ¡ -‑ Home ¡automaPon ¡ sensors/actuators ¡(KNX) ¡ -‑ Biomedical ¡sensors ¡(BT) ¡ -‑ Other ¡emerging ¡sensors ¡ (e.g. ¡Zigbee) ¡ -‑ Robots ¡(with ¡WiFi) ¡ Single ¡technology ¡does ¡not ¡ encompass ¡all ¡the ¡AAL ¡needs ¡ Using ¡ heterogeneous ¡sensors ¡ greatly ¡saves ¡the ¡cost. ¡ Challenge ¡1: ¡interoperability ¡ WSN/ZigBee ¡ KNX ¡ Bluetooth ¡ Wifi ¡ In ¡line ¡with ¡CONTINUA ¡ 2 ¡
-‑ ¡Wireless ¡soluPon ¡reduces ¡cabling ¡ cost ¡ -‑ ¡WSN ¡technology ¡is ¡promising ¡ Challenge ¡2: ¡ ¡ ¡ ¡ ¡ ¡Energy ¡vs. ¡communica$on ¡QoS ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Hot ¡topic ¡in ¡WSN ¡research ¡ 3 ¡
LORIA ¡smart ¡apartment ¡for ¡concept ¡and ¡ technology ¡validaPon ¡ (Madynes ¡and ¡Maia ¡Teams) ¡ 4 ¡
Architecture ¡of ¡MPIGate: ¡ ¡ M ulP ¡ P rotocol ¡ I nterface ¡and ¡ Gate way ¡ ¡ for ¡Tele-‑homecare, ¡Environment ¡Monitoring ¡and ¡ ApplicaPons ¡(e.g. ¡acPmetry) ¡ Control ¡ Request/Read ¡ ¡MulP-‑sensors ¡ Request/Read ¡ Fusion ¡ ConfiguraPon ¡ AcPmetry ¡ ConfiguraPon ¡interface ¡ User ¡interface ¡ gateway/ ¡ AbstracPon ¡ Server ¡ Protocol ¡abstracPon ¡ ¡ Data ¡ (KNX ¡– ¡ZigBee ¡– ¡Bluetooth ¡– ¡Wifi ¡– ¡ BD ¡ processing ¡ Ethernet) ¡ ZigBee ¡ Bluetooth ¡ Wifi ¡ KNX ¡ Query ¡manager ¡ Data ¡collecPon ¡ ZigBee ¡ Wifi ¡ Bluetooth ¡ Ethernet ¡ KNX ¡ 5 ¡
MPIGate at http://mpigate.loria.fr 6 ¡
AcPmetry ¡using ¡heterogeneous ¡ sensor ¡data ¡ Example ¡of ¡database ¡access ¡and ¡connexion ¡to ¡Google ¡Agenda ¡ 7 ¡
MPIGate ¡– ¡AbstracPon ¡level ¡ • Three ¡opPons ¡have ¡been ¡implemented ¡at ¡the ¡abstracPon ¡level ¡ • A ¡light-‑weight ¡ad ¡hoc ¡soluPon ¡using ¡SQL-‑request ¡and ¡hep ¡command ¡ • A ¡DDS ¡(Data ¡DistribuPon ¡Service ¡of ¡OMG) ¡middleware-‑based ¡soluPon ¡ for ¡handling ¡the ¡QoS, ¡above ¡publisher-‑subscriber ¡model ¡ • A ¡ROS ¡(Robot ¡OperaPng ¡System) ¡middleware-‑based ¡soluPon ¡for ¡easing ¡ the ¡interacPon ¡with ¡robots, ¡also ¡above ¡publisher-‑subscriber ¡model ¡ 8 ¡
MPIGate ¡architecture ¡using ¡ROS ¡ Users ¡ WEB ¡ [JavaScript, ¡WebSockets] ¡ DiaSuite ¡ [Java] ¡ Other ¡processing ¡ [C++] ¡ Interfaces ¡: ¡ ConfiguraPon ¡/ ¡ Applica$ons ¡ Applica$on ¡ UPlisaPon ¡/ ¡Service ¡state ¡ M ¡P ¡I ¡G ¡A ¡T ¡E ¡ Database ¡: ¡ Abstrac$on ¡of ¡data ¡ ROS ¡Bridge ¡ API ¡ [C++, ¡JAVA] ¡ ROS ¡Shell ¡ Historics ¡/ ¡Log ¡ Request: ¡ sensor ¡query/ ¡ ROS ¡ ROS ¡Middleware ¡ Real-‑Pme ¡data ¡distribuPon ¡ Command: ¡ to ¡actuators ¡ Master ¡ Drivers ¡ Drivers: ¡ ¡ ¡ Module ¡de ¡communicaPon ¡des ¡différents ¡protocoles ¡ Communica;on ¡ KNX ¡ WPAN ¡ Bluetooth ¡ WIFI ¡ Ethernet ¡ protocols ¡ Sensors ¡ CAP ¡ CAM ¡ CAP ¡ CAP ¡ CAP ¡ ACT ¡ ROBOT ¡ Actuators ¡ 9 ¡
Data distribution models with ROS Client/server ¡(using ¡RPC) ¡ Publishers/subscribers ¡(TCP ¡push) ¡ Frame ¡1 ¡ Frame ¡3 ¡ Subscriber ¡ Node ¡Zigbee’’ ¡ • ApplicaPon ¡DiaSuite ¡ Topic ¡« ¡Z ¡» ¡ ¡ • [Java] ¡in ¡Linux ¡ • [JavaScript] ¡websocket ¡ LAN ¡of ¡the ¡apartment ¡ Frame ¡2 ¡ ¡ ROS ¡MASTER ¡ Subscriber ¡ ¡ /Nodes ¡ Topic ¡« ¡Z ¡» ¡ ¡ /Services ¡ Topic ¡« ¡Z ¡» ¡ ¡ /Topics ¡ /MSG ¡ /SRV ¡ Node ¡Zigbee’ ¡ • ApplicaPon ¡SQL ¡ • [C] ¡in ¡Linux ¡ Node ¡Zigbee: ¡ Topic ¡« ¡Z ¡» ¡ ¡ • Driver ¡ZigBee ¡ ¡ Service ¡registraPon, ¡ Publisher ¡ • [C] ¡in ¡Linux ¡ ¡ nodes ¡… ¡ ¡ Transmission ¡of ¡data ¡ Frame ¡1 ¡ Frame ¡2 ¡ Frame ¡3 ¡ Frame ¡4 ¡ 10 ¡
MPIGate ¡-‑ ¡API ¡ Concept of SCC [Pheonix team, INRIA Bordeaux] v Paradigm ¡Sense/Compute/Control ¡ ¡ ConcepPon: ¡DiaSpec ¡(Language ¡of ¡specificaPon) ¡ § ImplementaPon: ¡DiaSuite ¡(Framework ¡of ¡programmaPon) ¡ § Ac$on: ¡ Node ¡KNX ¡ Home ¡automa;on ¡actuator: ¡ Regula$on ¡ Light ¡variator ¡ Environment ¡ DiaSuite ¡ Compute ¡intensity ¡ ZigBee ¡sensor: ¡ Luminosity ¡ Sensor ¡data ¡ Sensor: ¡ ZigBee ¡node ¡ 11 ¡
MPIGate ¡-‑ ¡API ¡ DiaSpec diagram [Pheonix team, INRIA Bordeaux] Controller ¡ Regulateur ¡{ ¡ ¡ ¡ ¡ ¡ ¡context ¡Varia$onLum ; ¡ ¡ ¡ ¡ ¡ ¡acPon ¡VarierIntensiter ¡on ¡Lampe; ¡ ¡ } ¡ Device ¡ CapteurDeLuminosite ¡{ ¡ ¡ ¡ ¡ ¡ ¡source ¡ luminosité ¡as ¡ float; ¡ ¡ } ¡ ¡ Context ¡ LumPourcent ¡{ ¡ Device ¡ TableauDeBord ¡{ ¡ ¡ ¡ ¡ ¡ ¡source ¡ luminosité ¡from ¡ CapteurDeLuminosite; ¡ ¡ ¡ ¡ ¡ ¡source ¡ reference ¡ as ¡integer; ¡ } ¡ } ¡ ¡ ¡ Context ¡Varia$onLum ¡{ ¡ Ac$on ¡ VarierIntensiter ¡{ ¡ ¡ ¡ ¡ ¡ ¡source ¡ reference ¡ from ¡ TableauDeBord; ¡ ¡ ¡ ¡ ¡ ¡augmenter(); ¡ ¡ ¡ ¡ ¡ ¡context ¡ LumPourcent; ¡ ¡ ¡ ¡ ¡ ¡diminuer(); ¡ } ¡ ¡ } ¡ ¡ Device ¡ Lampe ¡{ ¡ ¡ ¡ ¡ ¡ ¡ac$on ¡ VarierIntnesiter; ¡ } ¡ 12 ¡
Performance ¡issues ¡of ¡ROS ¡data ¡distribuPon ¡ -‑ ¡∆clock ¡ Average ¡local ¡latency: ¡0.4ms ¡ Average ¡distant ¡latency ¡(through ¡a ¡LAN): ¡4.5ms ¡ ¡ 13 ¡
Conclusion ¡and ¡future ¡work ¡ • MPIGate ¡defines ¡a ¡AAL ¡suited ¡gateway ¡architecture ¡ – Interconnects ¡heterogeneous ¡devices ¡and ¡networks ¡ – Integrates ¡exisPng ¡middleware ¡soluPons ¡ – Proposes ¡an ¡applicaPon ¡specificaPon ¡and ¡development ¡framework ¡ (based ¡on ¡Phoenix ¡Diaspec) ¡ • Transparent ¡data ¡access ¡is ¡achieved ¡ • Network ¡aspect: ¡QoS ¡and ¡energy ¡issues ¡need ¡to ¡be ¡integrated ¡ • ApplicaPon ¡issues: ¡ROS-‑based ¡PALGate ¡for ¡integraPng ¡other ¡PAL ¡ partners’ ¡services ¡ • Final ¡goal: ¡Toward ¡a ¡common ¡plavorm ¡for ¡third-‑party ¡ applicaPons ¡( ∼ AAL ¡App ¡store)? ¡ 14 ¡
Recommend
More recommend