200 likes | 368 Views
DIOS – A Distributed Intelligent Operating Schema. Dr. Reuven Granot and Chad Trytten Spark Robotics Inc. Machines for Risky Intervention. Autonomous and human supervised autonomous robots for risky intervention require intelligent capabilities executed by machines in a timely fashion .
E N D
DIOS – A Distributed Intelligent Operating Schema Dr. Reuven Granot and Chad Trytten Spark Robotics Inc. Spark Robotics RISE08
Machines for Risky Intervention • Autonomous and human supervised autonomous robots for risky intervention require intelligent capabilities executed by machines in a timely fashion. • Machine intelligence may be achieved by the interaction of control agents acting in a dynamic environment. • Let’s consider an example: Neutralization of an Improvised Explosive Device (IED). Spark Robotics RISE08
Example: Neutralization of a CBRN-E device. • The scenario of a terror attack using an IED is today a major concern in Europe and in the rest of the world. • In the near future it may contain Chemical, Biological, Radiological or Nuclear (CBRN-E ) agents • It is also reasonable to be used as a tool for threat and as such may be found before its activation. Spark Robotics RISE08
The Problem • Unknown structure and design • As an improvised device presents the human operator team with unknown and unexpected situations. • Needs more accurate technical treatment than neutralization of usual explosive devices in order to reduce to zero the possibilities of human error. • A lot of general information is available • large variety of information data bases for situation analysis • integration of a large variety of tools for sensing or acting Spark Robotics RISE08
The Problem • The neutralizing device should be assembled and integrated from several systems. • Connection to device information databases over the Internet. • Sensors and actuators required to perform the task should be handy. However, • before the incident occurs, only some of the sensors to be used for analysis, can be allocated. • while actuators and sensors to be used during the neutralization phase can be allocated only after the analysis phase is completed. • The operating system has to be built on the spot and under the constraints of a crisis situation, in a timely fashion and with extremely high quality assurance. • This is of course a very demanding task. Spark Robotics RISE08
The neutralization robot • Is developed beforehand, but its functionality has to be flexible enough to be adapted to very different situations. • From some aspects it should be possible to reintegrate its components according to the specific scenario. Spark Robotics RISE08
The Intelligent Command, Communication and Control System • The responsibility to control and monitor the Global Goal in a very professional and reliable manner. • Will perform under a Human Autonomous Supervisory Control regime. • Will include numerous agents and modules • reliably communicate and exchange information. • Enforce • a reliable fault tolerant system • trustable communication • messaging server • process manager to ensure system safety • System Builder tool to integrate the sub-systems Spark Robotics RISE08
Introducing DISTRIBUTED INTELLIGENT OPERATING SCHEMA: DIOSTM • The machine has to be capable to integrate into a working system several different and frequently new sensors or actuators • as the existing ones may be replaced by a new product or an updated version of the same product. • Assembling a system to be able to deal with complex situations requires integration of very different subsystems. • An Operating Schema to serve as a tool to make that task doable under the stressed situation of a crisis is not a luxury, but a necessity. Spark Robotics RISE08
DIOSTMVISION STATEMENT To enable the creation of a new generation of better connected, more intelligent, cost effective, reliable and of on the spot assembled robotic vehicles. To be the widely accepted tool for development of distributed systems, using application agents for information exchange in robotic control systems and intelligent devices. Spark Robotics RISE08
How DIOSTM works • Hide the details of the specification from the particular application. • Does not tie an application to a specific type of hardware. • Allow Agents to be created in multiple programming languages • C for microcontrollers used in Hardware Interface Modules (HIM), • C++, Python, and Java (more in the future) • Automatically generates code to standardize communication and prevent dependency issues between Agents • SPEED UP DEVELOPMENT Spark Robotics RISE08
DISTRIBUTED INTELLIGENT OPERATING SCHEMA SPECIFICATION Spark Robotics RISE08 Specifies what information can be broadcast/ listened to. Does not distinguish between “real world” components (sensors, actuators) and “virtual components” in software (behaviors, decisions). Real-time requirement for guaranteed message delivery
DISTRIBUTED INTELLIGENT OPERATING SCHEMA FRAMEWORK Spark Robotics RISE08 Software medium through which all Agents communicate with each other. Invisible to the application developer and end user. Fully distributed – ability to create applications with no single point of failure. Commercial robotics framework developed for the QNX Real-Time OS.
DISTRIBUTED INTELLIGENT OPERATING SCHEMA AGENTS Spark Robotics RISE08 • Units of FUNCTIONALITY • Perform on behalf of a supervisory unit (agent or human operator) • Are • Autonomous • Situated (in the environment) • Reactive • Pro-active (make decisions to achieve goals)
The System Builder • The purpose is to simplify and automate the task of • defining, • creating, • maintaining, and • arranging Agents for use in a DIOS-enabled system. • Acts as a repository for all DIOS-enabled software and the management thereof. • Projects are comprised of many Agents using shared Models. Spark Robotics RISE08
DIOS™ System Builder Works on: Spark Robotics RISE08 Allows the developer to use whatever specification it choose.
The System Builder requires that the user specify the information that an Agent requires in order to function and complete its task. • By defining an Agent with the above properties, the System Builder then auto-generates all of the code required for communication along with the programming stub for the Agent. Agent definition screen of the SystemBuilder running under OSX 10.4 Tiger. Spark Robotics RISE08
DIOS™ System Builder C C++ Spark Robotics RISE08 Allow Agents to be created in multiple programming languages
The hierarchal organization of software objects composed of data-type fields are defined in the "Information Model".This is necessary to let System Builder connect parts according to their hierarchy. The Information Model definition screen of the SystemBuilder running under Windows 6.0 Vista. Spark Robotics RISE08
Using the SystemBuilder Steps: 1. define agents 2. define information models 3. associate information models with Agents 4. Generate code (in C++) for the keyboard driver 5. Use the keyboard driver to control a simulated robot 6. Show the auto generated Java keyboard driver code 7. Show the simulated robot controlled by the java driver Spark Robotics RISE08
Contact Information Spark Robotics Technology Inc. 1160 Seymour Street Vancouver, BC Canada V6B 3N3 USA +1-619-955-6675 Canada +1-604-495-1861 Israel +972-4-824-8701 Fax +1-604-648-9544 Email info@sparkrobotics.com www.sparkrobotics.com Spark Robotics RISE08