RobAIR-ICSOC12: Difference between revisions
No edit summary |
No edit summary |
||
| Line 12: | Line 12: | ||
==Summary== |
==Summary== |
||
We demonstrate the interoperability and the dynamism |
We demonstrate the interoperability and the dynamism |
||
capabilities in SCA-based systems in the context of smart habitats. These capabilities |
capabilities in SCA-based systems in the context of robotic for smart habitats. These capabilities |
||
are due to two developed tools: a Python-based OSGi runtime and service-oriented |
are due to two developed tools: a Python-based OSGi runtime and service-oriented |
||
component model (Pelix and iPOPO, respectively) and a tool to publish |
component model (Pelix and iPOPO, respectively) and a tool to publish |
||
| Line 21: | Line 21: | ||
Keywords: SCA, Service-Oriented Architectures, Component-Based Design, Dynamic |
Keywords: SCA, Service-Oriented Architectures, Component-Based Design, Dynamic Adaptation, Smart Habitats, Service Robotic |
||
Adaptability, Smart Habitats |
|||
==Hardware== |
==Hardware== |
||
| Line 37: | Line 35: | ||
* Odometer |
* Odometer |
||
For the demonstration, we have plugged several sensors on the available USB ports (''remark: USB hubs are not correctly managed by the current OS distribution'') |
For the demonstration, we have plugged several sensors on the available USB ports (''remark: USB hubs are not correctly managed by the current OS distribution''). Several analog and digital sensors are soldered on an Arduino shield piggybacked on an [[Arduino]] UNO board. |
||
* [[Geiger counter]] Sensor |
* [[Geiger counter]] Sensor |
||
* Gas sensors (Arduino board) |
* Gas sensors (Arduino board) |
||
| Line 43: | Line 41: | ||
Extra sensors are |
Extra sensors are |
||
* [[XBox Kinect]] for depth |
* [[XBox Kinect]] for depth images and webcam |
||
* [[139741 Arduino Infrared Obstacle Avoidance Detection Photoelectric Sensor]] for stair/hall detection |
* [[139741 Arduino Infrared Obstacle Avoidance Detection Photoelectric Sensor]] for stair/hall detection (Arduino board) |
||
* [[135038 Arduino Flame Detection Sensor Module]] |
* [[135038 Arduino Flame Detection Sensor Module]] for flame detection (Arduino board) |
||
Extra |
Extra actuators are |
||
* [[135038 Arduino Flame Detection Sensor Module]] (Arduino board) |
* [[135038 Arduino Flame Detection Sensor Module]] (Arduino board) |
||
* [http://www.seeedstudio.com/depot/scream-out-loud-110dba-fixed-tone-siren-p-301.html?cPath=156_159 scream out loud - 110dBA fixed tone Siren] (controlled by a relay on the Arduino board) |
* [http://www.seeedstudio.com/depot/scream-out-loud-110dba-fixed-tone-siren-p-301.html?cPath=156_159 scream out loud - 110dBA fixed tone Siren] (controlled by a relay on the Arduino board) |
||
| Line 54: | Line 52: | ||
The robot's embedded software and the pilot's console are developed using SCA components in Python and in Java/OSGi. |
The robot's embedded software and the pilot's console are developed using SCA components in Python and in Java/OSGi. |
||
The SCA components containers are : NaSCAR for Java/OSGi and [http://ipopo.coderxpress.net iPOPO/Pelix] for Python |
The SCA components containers are : NaSCAR for Java/OSGi and [http://ipopo.coderxpress.net iPOPO/Pelix] for Python |
||
==References== |
|||
* Calmant, T., Américo, J.C., Gattaz, O., Donsez, D., and Gama, K.: A dynamic and service-oriented component model for Python long-lived applications. In Proceedings of the 15th ACM SIGSOFT Symposium on Component-Based Software Engineering (2012) pp. 35–40. |
|||
* Américo, J.C., and Donsez, D.: Service Component Architecture Extensions for Dynamic Systems. Accepted for the 10th Int’l Conference on Service-Oriented Computing (2012) |
|||
Revision as of 15:08, 9 August 2012
DEMO FOR ICSOC 2012 http://www.icsoc.org
VIDEO : COMING SOON
Summary
We demonstrate the interoperability and the dynamism capabilities in SCA-based systems in the context of robotic for smart habitats. These capabilities are due to two developed tools: a Python-based OSGi runtime and service-oriented component model (Pelix and iPOPO, respectively) and a tool to publish SCA services as OSGi services (NaSCAr). By this, we have developed a robot service and a pilot' user-agent, which can dynamically add and remove sensors and widgets. This use case follows and responds to the ubiquitous computing trend and the runtime adaptivity needed in such systems.
Keywords: SCA, Service-Oriented Architectures, Component-Based Design, Dynamic Adaptation, Smart Habitats, Service Robotic
Hardware
RobAIR is based on the Wifibot robot. The Wifibot had a chassis with 4 wheels geared by 4 DC motors with hall encoders. The Wifibot is controlled by an Atom D510 main board running Linux (Ubuntu) or Windows CE.
Wifibot' nuiltin sensors are
- PTZ webcamLogitech QuickCam® Orbit AF ou Logitech Quickcam Sphere AF
- Hokuyo Lidar (URG-04LX-UG01)
- Infrared sensors (left and right)
- Battery level sensors
- Odometer
For the demonstration, we have plugged several sensors on the available USB ports (remark: USB hubs are not correctly managed by the current OS distribution). Several analog and digital sensors are soldered on an Arduino shield piggybacked on an Arduino UNO board.
- Geiger counter Sensor
- Gas sensors (Arduino board)
- 133696 HC-SR04 Ultrasonic Sensor Distance Measuring Module (Arduino board)
Extra sensors are
- XBox Kinect for depth images and webcam
- 139741 Arduino Infrared Obstacle Avoidance Detection Photoelectric Sensor for stair/hall detection (Arduino board)
- 135038 Arduino Flame Detection Sensor Module for flame detection (Arduino board)
Extra actuators are
- 135038 Arduino Flame Detection Sensor Module (Arduino board)
- scream out loud - 110dBA fixed tone Siren (controlled by a relay on the Arduino board)
Software
The robot's embedded software and the pilot's console are developed using SCA components in Python and in Java/OSGi. The SCA components containers are : NaSCAR for Java/OSGi and iPOPO/Pelix for Python
References
- Calmant, T., Américo, J.C., Gattaz, O., Donsez, D., and Gama, K.: A dynamic and service-oriented component model for Python long-lived applications. In Proceedings of the 15th ACM SIGSOFT Symposium on Component-Based Software Engineering (2012) pp. 35–40.
- Américo, J.C., and Donsez, D.: Service Component Architecture Extensions for Dynamic Systems. Accepted for the 10th Int’l Conference on Service-Oriented Computing (2012)