Diego Colombo & Antonio Cisternino VisualStorms Tools Growth Another Brick in the Robot... Università degli Studi di Pisa.

Slides:



Advertisements
Similar presentations
Using.NET Platform Note: Most of the material of these slides have been taken & extended from Nakov’s excellent overview for.NET framework, MSDN and wikipedia.
Advertisements

© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.
Design Patterns CMPS Design Patterns Consider previous solutions to problems similar to any new problem ▫ must have some characteristics in common.
22/06/2003http://dotnet.di.unipi.it/R2D2/ R2d2 project Università degli Studi di Pisa How to build a wheeled PC.
JACK Intelligent Agents and Applications Hitesh Bhambhani CSE 6362, SPRING 2003 Dr. Lawrence B. Holder.
Experiences with an Architecture for Intelligent Reactive Agents By R. Peter Bonasso, R. James Firby, Erann Gat, David Kortenkamp, David P Miller, Marc.
Antonio Cisternino & Diego Colombo VisualStorms Tools Another Brick in the Robot... Università degli Studi di Pisa.
Page 1 Building Reliable Component-based Systems Chapter 4 - Component Models and Technology Chapter 4 Component Models and Technology.
Efficient Runtime Code Generation in Rotor Antonio Cisternino 23/4/2003 Università di Pisa Supported by Microsoft Research grant.
The course builder architecture & project planning presented by: Bahareh Agha Jafari.
Tahir Nawaz Visual Programming C# Week 2. What is C#? C# (pronounced "C sharp") is an object- oriented language that is used to build applications for.
Biointelligence Laboratory School of Computer Science and Engineering Seoul National University Cognitive Robots © 2014, SNU CSE Biointelligence Lab.,
The chapter will address the following questions:
Behavioral Patterns  Behavioral patterns are patterns whose purpose is to facilitate the work of algorithmic calculations and communication between classes.
Polish Infrastructure for Supporting Computational Science in the European Research Space Policy Driven Data Management in PL-Grid Virtual Organizations.
Fault Models and Injection Strategies in SystemC Specifications ANTONIO MIELE Dipartimento di Elettronica e Informazione
© 2008 Dr. Paul Walcott – The University of the West Indies: Cave Hill CampusDr. Paul Walcott COMP6325 Advanced Web Technologies Dr. Paul Walcott The University.
The Metadata System1. 2 Introduction Metadata is data that describes data. Traditionally, metadata has been found in language- specific files (e.g. C/C++
Appendix D: Microsoft.NET Framework Overview. Overview.NET Framework Architecture.NET Namespaces.
Lesley Bross, August 29, 2010 ArcGIS 10 add-in glossary.
An Introduction to MBT  what, why and when 张 坚
Chapter 10 Introduction to Components. Process Phases Discussed in This Chapter Requirements Analysis Design Implementation ArchitectureFramework Detailed.
International Workshop on Web Engineering ACM Hypertext 2004 Santa Cruz, August 9-13 An Engineering Perspective on Structural Computing: Developing Component-Based.
Computer Science Victoria University of Wellington Copyright: david streader, Victoria University of Wellington Simple Design COMP
Raffaele Di Fazio Connecting to the Clouds Cloud Brokers and OCCI.
Cooperating AmigoBots Framework and Algorithms
Software Framework for Teleoperated Vehicles Team Eye-Create ECE 4007 L01 Karishma Jiva Ali Benquassmi Safayet Ahmed Armaghan Mahmud Khin Lay Nwe.
Active Monitoring in GRID environments using Mobile Agent technology Orazio Tomarchio Andrea Calvagna Dipartimento di Ingegneria Informatica e delle Telecomunicazioni.
Towards Cognitive Robotics Biointelligence Laboratory School of Computer Science and Engineering Seoul National University Christian.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
SIoT: Giving a Social Structure to the Internet of Things
Self-Contained CLI Assemblies Dipl.-Inf. Bernhard Rabe Operating Systems & Middleware Group Hasso-Plattner-Institute University of Potsdam.
Component frameworks Roy Kensmil. Historical trens in software development. ABSTRACT INTERACTIONS COMPONENT BUS COMPONENT GLUE THIRD-PARTY BINDING.
Java2C# Antonio Cisternino Part V. Outline Assembly & co. Visual Studio environment Example: using DirectX from C#
A CASE Tool For Robot Behavior Development The KSE CASE Tool - Liveness Formula Editor, text editor ‐ Liveness2IAC transformation tool ‐ Graphical Statechart.
SWE 316: Software Design and Architecture Objectives Lecture # 18 Introduction to Components SWE 316: Software Design and Architecture To learn:  benefits.
Chapter 38 Persistence Framework with Patterns 1CS6359 Fall 2011 John Cole.
Aspect-Oriented Programming and Modular Reasoning G. KiczalesM. Mezini Presented by Alex Berendeyev.
SpecC stands for “specification description language based on C”.
Programming language. Definition Programming language is a formal language designed to communicate instructions to a computer. Programming languages can.
The course. Description Computer systems programming using the C language – And possibly a little C++ Translation of C into assembly language Introduction.
Riga Technical University Department of System Theory and Design Usage of Multi-Agent Paradigm in Multi-Robot Systems Integration Assistant professor Egons.
1 Object-Oriented Reengineering © S. Demeyer, S.Ducasse, O. Nierstrasz Lecture 3 Radu Marinescu Detailed Model Capture  Details matter  Pay attention.
Intelligent Agent Framework1 From Chapter 7 of Constructing Intelligent Agents with Java.
Semantically Federating Multi- Agent Organizations R. Cenk ERDUR, Oğuz DİKENELLİ, İnanç SEYLAN, Önder GÜRCAN. AEGEANT-S Group, Ege University, Dept. of.
ROBOT VISION LABORATORY 김 형 석 Robot Applications-B
CPSC 873 John D. McGregor Session 9 Testing Vocabulary.
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
Design Reuse Earlier we have covered the re-usable Architectural Styles as design patterns for High-Level Design. At mid-level and low-level, design patterns.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Structured Component Composition Frameworks for Embedded System Design Sandeep Shukla, Virginia Tech. Frederic Doucet, Rajesh Gupta University of California,
USB for Audio There are also several USB Audio chips. You install a custom driver on the host computer, and the USB sound device appears as a Windows (or.
Aspect Oriented Programming in.NET with CodeBricks Antonio Cisternino Academic Days Milan, 2004 Università di Pisa Supported by Microsoft Research grant.
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.
Kyung Hee University Class Diagramming Notation OOSD 담당조교 석사과정 이정환.
Computer Science Victoria University of Wellington Copyright: david streader, Victoria University of Wellington Simple Design COMP
CPSC 372 John D. McGregor Module 8 Session 1 Testing.
Investor Summary ROS-Industrial Conference
.NET Omid Darroudi.
Andreas Hoffmann Andreas Ropers Tim Kogel Stefan Pees Prof
Automation as the Subject of Mechanical Engineer’s interest
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Object Oriented Concepts -I
Module 1: Getting Started
More Model Elements.
JavaServer Faces: The Fundamentals
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
JINI ICS 243F- Distributed Systems Middleware, Spring 2001
Presentation transcript:

Diego Colombo & Antonio Cisternino VisualStorms Tools Growth Another Brick in the Robot... Università degli Studi di Pisa

Diego Colombo & Antonio Cisternino BT RunTime Exposes devices as services IDiscoverME as the COM IUnknown interface Storage for a.NET assembly Some intelligence to implement the service protocol Based on BTNodes from ETH (Zurich)

Diego Colombo & Antonio Cisternino Architecture BTNode HW (Mindstorms... ) IDiscoverME Application BTRuntime Protocol Assembly Protocol

Diego Colombo & Antonio Cisternino Benefits Agent based model Agents can cooperate through bt interfaces PC / Server

Diego Colombo & Antonio Cisternino Interfaces, interfaces, interfaces, … What kind of interfaces are used? What is their semantics? As COM taught us, standard interfaces are required There is no easy-technical-only solution to this problem because we aren’t able to express program semantics So we will try to abstract devices by means of interfaces and custom attributes (reflection) We would also like to annotate methods bodies (CIL) with information to help understand their meaning (as we did for VStorms compiler)

Diego Colombo & Antonio Cisternino Annotating Code Why Jini didn’t succeed? A common protocol for interaction it’s necessary but not enough to make devices interact! Interfaces and methods are useful because of metadata BUT THERE IS A LACK OF SEMANTICS ANNOTATIONS there. What if we extend the idea of custom annotations to the CIL? We would be able do provide fine grain annotations (and thus less standard elements)

Diego Colombo & Antonio Cisternino Example [Gripper, DOF(5), IK] class Arm { void Grab(int x, int y, int z) { [Open]{} OpenDevice(); int speed = CalculateSpeed(); //… [Grab(x, y, z)] { [Move(x, y, z)] { // IK solver and move } [CloseGripper] { // Code for gripper } } // Other code here [Close]{} }

Diego Colombo & Antonio Cisternino BT and Multiagents Each item is just a part of an experiment Each agent takes its part in the execution All the agents can discover their behavior by introspecting code AND traditional metadata They must share fewer notions (the atomic actions) in order to understand services provided by other agents With annotated code, shipping the assembly becomes more useful: the whole assembly becomes the description of agents’ behavior

Diego Colombo & Antonio Cisternino Medialab is working on.. IK Solver for LynxMotion robotic arms SSC12.NET interface ER1.NET interface Velocity Obstacle Planner Agent SDK –WiFi agent –BobyMap –KB Exploration Planning Command – Action - Task Stack

Diego Colombo & Antonio Cisternino ER1 Laptop on wheels.NET framework Vision IR Sensor Gripper Easy coding Easy to expand

Diego Colombo & Antonio Cisternino LynxMotion Arm RS232 Interface Easy to use controller (SSC 12) Pure C# interface 5 DOF and gripper