2 types de problématiques système dexploitation quel cpu? quelles fonctionnalités? temps-réel?...

Post on 04-Apr-2015

107 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

2

Types de problématiques

Système d’exploitation Quel CPU? Quelles fonctionnalités?

Temps-réel? Stacks réseaux?

Plateforme Applicative Interfaces graphiques? Architectures des composants?

3

Le système d’exploitation

4

Systèmes d’exploitations

Monolithique / General Purpose

Hardware sur étagère

Facilité de développement

Rapidité de développement

La taille peut être un problème

Drivers et flexibilité de l’OS

Monolithique/ Spécialisé

Hardware sur étagère/ Hardware custom

Rapidité de développement pour des

verticaux spécifiques (APIs)

Support Hardware/Driver

Modulaire/ Spécialisé

Hardware sur étagère/ Hardware custom

Nécessite du développement BSP/Driver

Modularité = flexibilité (taille, fonctionnalité)

Image maîtrisée et vérouillée

5

Industrial Automation

MedicalEntertainment

Thin Client

Office Automation

ATM /Kiosk

Consumer

Robotics

Portable media

Industrial Automation Telematics

Thin Client

Windows Embedded

Personal Navigation

Point of Service

Dedicated servers

Kiosks Entertainment

6

Le .NET MicroFramework

7

La plateforme applicative

8

Robotics Developer Studio

Application Robotique

Orchestration Contrôle Capteurs Actuateurs

Services de référence

Services

Services d’édition

Simulation

Visualisation

Capteurs

Actuateurs

Algorithmes

...

Runtime

DecentralizedSoftwareServices

Concurrency andCoordination

Runtime

Diagnostics

Monitoring

Activation

Découverte

UX

Stockage

9

Managed Extensibility FrameworkStéphanie Hertrich

10

Les idées pour la suite

Lync 2010 (ou Messenger) Avec le SDK Lync, on peut connecter le robot à une infra de communications unifiées

Reactive Extensions (Rx) «  LINQ to events » L’asynchronisme à la portée de tous

Kinect et OpenNI !!

Windows Azure (le VM Role pour MSRDS / et le reste)

F#Les langages fonctionnels sont particulièrements adaptés à la robotique

11

.Net duServo au Cerveau

Nicolas CLERCCEO/CTO QuidMind nclerc@quidmind.com

Microsoft Regional Director

12

Nicolas CLERC nclerc@quidmind.com

Architecte logiciel et expert technique reconnu par Microsoft, les Microsoft Regional Director ont pour rôle de vous accompagner à la mise en œuvre des technologies et outils Microsoft, dans le cadre de migrations applicatives, de démarrages de projets ou de prototypages, aussi bien au niveau stratégique et décisionnaire qu’au sein de vos équipes de production.

Regional Director depuis 10ans et créateur de la société d’expertise logicielle QuidMind, Nicolas CLERC est formateur officiel au sein du programme Microsoft Metro (Windows Azure, Silverlight, Unified Communication, …).

www.quidmind.com www.theregion.com

Azure

Windows Phone 7

WPFSensor & MultiTouch

Innovation

R & DSilverlight

RIA ServicesWCF

AppFabric

Architecture

CoachingAccompagnement

stratégiqueVSTO

SOA & architecture distribuéeVeille technologique

Confidentialité Sécurité

13

Agenda

• Le Robot• Le pilotage• La télécommande• Retour d’information

14

Un robot vert ?

CLOud

RObot

FEELing

CloRoFeel

16

Hardware

• Une carte PC s.o.c sous Windows XP allégé : Roboard RB110• Classe x486, 256Mo RAM, 1Ghz• USB, I²C, RJ45, Jtag, SPI,

RS232/485 CMOS/TTL, FTDI• 10*ADC, 16(24)*PWM bidirectionnel• SD Card (4Go)• MiniPci (VGA/Wifi)

• 4 servos à rotation continue pourle déplacement (PWM)

• 1 servo 180° pour l’orientation de la camera (PWM)• Un compas et un accéléromètre (I²C)• Un afficheur LCD TTL 2lignes • Une webcam (USB)• Une clé wifi (USB)• Prévu : senseur de contact , sonar à ultrason (ADC)• Alimentations dissociées servo / électronique• Le tout sur chassis « Custom »

17

Logiciels

• OS : Windows XP Pro allégé• Installation sur SD Card via cle USB• Boot sur SD Card (simulation IDE)

• Librairie native d’accès aux périphériques intégrés• I²C, PWM, ADC

• Librairie d’interopérabilité .Net• Applicatif et services interne CloRoFeel

• .NET 4• Visual Studio 2010• Windows Azure

• Logiciel Client Clorofeel• Une application Windows Phone 7 (Clorofeel Remote)• Une application Silverlight 4 (Clorofeel Viewer)

18

Architecture « POC »

Roboard RB110

PWM USB

Windows XP Pro allégée

RoboIo Lib .Net 4

RoboIO_dotNet

CloRoFeel Main Service

CloRoFeel WebCam Grabber

WCF WCF

19

Les contraintes CloRoFeel• Ressource limitée de Clorofeel• Pilotage du robot à distance

• À partir d’un Windows Phone 7• Mais ouverture vers d’autre plateforme

• Accessibilité lointaine• Au delà de la portée directe d’un

émetteur/récepteur embarqué• Éloignement géographique potentiellement

important et non connu par avance, • Possibilité de pilotage multiple

• Facilité de mise en œuvre

20

CloRoFeel et AppFabric

• Les fonctionnalités de pilotage sont exposé sous forme d’un service WCF• Utilisable localement : connexion directe entre

la télecommande et le robot• Temps de réponse et réactivité amélioré

• Accessible à distance : exposition du service de pilotage via Azure AppFabric• Sécurisation : pas d’accès directe au robot,

pas d’ouverture de port IP au niveau réseau en entrée.

• Gestion de la configuration par code ou par paramétrage (App.Config)

22

Le service de pilotage

• Interface Simple• Intégration d’une sécurité basique

(!=hacking de Robot )• Définition de la vitesse droite et

gauche• Position de la caméra

23

Architecture logicielle

CloRoFeelMain service

AppFabric

CloRoFeelRemote

24

DEMO

• Service de Pilotage• Exposition sur Azure App Fabric• Utilisation du programme de test

25

CloRoFeel Remote

• Application Windows Phone 7• MultiTouch• Transmet au service exposé sur AppFabric les

directives de pilotage du Robot• Vitesse droite• Vitesse gauche• Positionnement

de la camera

26

DEMO

• Pilotage avec CloRoFeel Remote

27

CloRoFeel et la vidéo

• Consommation de temps cpu pour l’acquisition• Consommation de temps CPU et de bande passante pour la

transmission

Utilisation d’un service de diffusion de la vidéo

• Service WCF hébergé dans Azure• Fait office de tampon : CloRoFeel upload une seule fois

l’image, le service la diffuse autant de fois que nécessaire• Le nombre de viewer n’a aucun impact sur CloRoFeel

• Une méthode d’upload d’image sécurisé (token)• Une méthode de download d’image

• Viewer intégré à Clorofeel Remote• Viewer web Silverlight 4

28

Architecture logicielle

CloRoFeelwebCam Grabber Video Service

Web viewer

CloRoFeelRemote

29

Demo

• CloroFeel Remote avec la vidéo• Viewer Silverlight

30

Architecture logicielle

CloRoFeelMain service

CloRoFeelwebCam Grabber

AppFabric

Video Service

Web viewer

CloRoFeelRemote

31

Verdict : Robot & Cloud

Permet de simplifier l’accès à un dispositif embarqué• Multi-technologie et interopérable• ‘Transparent’• Externalisation de traitement couteux,

évolutivité, souplesse et puissance disponible• Technologie de développement maitrisée de

bout en boutMAIS des contraintes spécifiques

• Délai de propagation• Fiabilité des réseaux d’interconnexion• Pas de « temps réel » ni timing garanti

32

Verdict : Robot & Cloud

DONC• Continuer à utiliser l’intelligence locale pour les

comportements « temps réel » sans pour autant négliger l’apport de services et fonctionnalités moins « embarqués »

• Sélectionner un matériel avec un OS adaptés aux besoins mais ouvert• Windows ‘light’, Windows Embedded, Windows CE,

MicroFramework• Camera avec logique de compression embarqué

• Déporter les comportements évolués, non temps réel ou nécessitant de la puissance de calcul/stockage dans le cloud• Mémorisation, Analyse, …• Partage et capitalisation

33

MSDN et TechNet : l’essentiel des ressources techniques à portée de clic

http://technet.com http://msdn.com

Portail administration et infrastructure pour informaticiens

Portail de ressources technique pour développeurs

top related