palais descongrèsParis7, 8 et 9février 2012
.NET Microframework, lesjoies de lélectronique etdu code pour tous(EMB105)2010-02-07Laurent EllerbachAudience Marketing Di...
Agenda  .NET Microframework  Démo « Hello Led »  Démo « Mon premier serveur  HTTP »  Démo « Gérer mon arrosage  automatiqu...
.NET Micro Framework .NET pour les processeurs à bas      .NET Microframework pour coûts • Directement sur du métal • Peti...
NETMF Modèle Open Source  Open Source collaboratif  Release History    V. 4.0 (Nov 2009) entièrement Microsoft    V. 4.1...
Partial implementationNamespaces                                 Same as .NET Fx  System.Windows            System.Windows...
Par où commencer?  1 board tel que Netduino    Prendre la version     Netduino Plus avec suport     réseau et SD pour 50€...
Mon premier projet : Hello Led
Un peu de Hard   Tout ce qu’il y a connaître : U = R x I  Utiliser une led sur un output pin (3,3V sur  Netduino)  1 led ...
Plus de Hard  Réutilisation d’un  capteur compte tour  sur un vieux disque  dur d’il y a 15 ans   Faire clignoter la led ...
Example d’entrée analogique  Capteur de lumière agit  comme une résistance 1M Ω  (noir complet) à 100 Ω  (lumière intense)...
Mon premier serveur Web
Implémenté un serveur Web   Partir de l’exemple Web Server Comment ça fonctionne   1 thread par protocole = 1 pour http   ...
Simplifier le serveur Web  Enlever le code lié à https  Enlever le code lié à POST si GET uniquement utilisé  Enlever le c...
Gérer mon arrosageautomatique
Comment ça marche?                                  Netduino                        http  Client utilisant un  simple navi...
Illuminer ma ville Lego
Comment ça marche ?  Web Server avec                           Netduino  pages ASP.NET          http      http            ...
Trucs et astuces  Try catch partout…  Les buffers sont limités (1024 in most small ARM)  System.Threading.Thread.Sleep(100...
Resources  SDK download: http://netmf.codeplex.com/releases/view/52341  .NET Microframework sources: http://netmf.codeplex...
QUESTIONSLaurent Ellerbachlaurelle@microsoft.comhttp://blogs.msdn.com/laurelle
Pour aller plus loin                                               Prochaines sessions des Dev Camps  Chaque semaine, les ...
Prochain SlideShare
Chargement dans…5
×

.NET Microframework, les joies de l'électronique et du code pour tous

388 vues

Publié le

Le .NET Microframework est une plateforme avec laquelle n'importe quel geek un peu développeur peut prendre son pied :-) Pas besoin d'OS, le .NET Microframework fonctionne directement sur des petites cartes électroniques pas cher, et il permet de faire plein de choses... très geeks : automatiser son arrosage automatique, éclairer sa ville Lego, renvoyer les images de sa Webcam, etc Cette session sera un aperçu technique du .NET Microframework, technologie que Microsoft a mis en Open Source, avec démonstration (en code) des cas réels d'utilisation, dont on peut voir une preview ici: http://blogs.msdn.com/laurelle Les aspects pédagogiques de cet environnement seront également démontrés, car le .NET Microframework est une plateforme idéale pour apprendre à programmer mais aussi pour de la robotique simple et efficace.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
388
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
4
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

.NET Microframework, les joies de l'électronique et du code pour tous

  1. 1. palais descongrèsParis7, 8 et 9février 2012
  2. 2. .NET Microframework, lesjoies de lélectronique etdu code pour tous(EMB105)2010-02-07Laurent EllerbachAudience Marketing DirectorMicrosoft Central and Eastern Europe
  3. 3. Agenda .NET Microframework Démo « Hello Led » Démo « Mon premier serveur HTTP » Démo « Gérer mon arrosage automatique » Démo « Eclairer ma ville Lego »
  4. 4. .NET Micro Framework .NET pour les processeurs à bas .NET Microframework pour coûts • Directement sur du métal • Petite et configurable empreinte • ARM7 @ 20-40 Mhz • ARM9 @ 200 Mhz • ~ 300 Ko de RAM • 1 Mo de mémoire Flash/ROM Compatibilité .NET • Différentes versions • Sélections des classes clientes • Support spécifique pour l’embarqué • Un jeu de classe limité mais très riche
  5. 5. NETMF Modèle Open Source Open Source collaboratif Release History  V. 4.0 (Nov 2009) entièrement Microsoft  V. 4.1 (Juin 2010) petites contributions communautaires  V 4.2 (Eté 2011) > 30% contributions communautaires  Site hébergé sur un domaine non-Microsoft – netmf.com  Partenaires communautaires  tinyclr.com, netduino.com Portages de Atmel, NXP, Renasas, TI, ST Micro, …
  6. 6. Partial implementationNamespaces Same as .NET Fx System.Windows System.Windows.Controls Window Border ListViewSystem.Windows.Input Button RadioButton System.Data Keyboard/GPIO CheckBox ScrollViewer Mouse Panel StackPanel System.XML Stylus Image TextBox Reader ListBox UIElement Writer System.Forms System.Drawing System Collections Globalization DiagnosticsSystem.Service.Model Security Reflection Runtime DPWS Discovery Remoting Threading IO Serialization DPWS Eventing Resources NET/HTTP Compiler Svcs DPWS Addressing Managed Drivers DPWS Transfer SerialPort I2C/SPI A/D Power Mgmt Proxy Discovery USB GPIO PWM Watchdog
  7. 7. Par où commencer? 1 board tel que Netduino  Prendre la version Netduino Plus avec suport réseau et SD pour 50€ environ Le SDK  Gratuit Processeur et mémoire Visual Studio Express (C#) Atmel 32-bit microcontroller  Gratuit Vitesse : 48MHz, ARM7 Espace de stockage pour le code: 64 KB, sans réseau: 128…et surtout une bonne idée KBpour construire quelque chose RAM: 28 KB, sans réseau: 60de sympa  KB
  8. 8. Mon premier projet : Hello Led
  9. 9. Un peu de Hard  Tout ce qu’il y a connaître : U = R x I Utiliser une led sur un output pin (3,3V sur Netduino) 1 led = 2 V environ, courant 0,02A R = (3,3 – 2)/0,02 = 65 Ohms
  10. 10. Plus de Hard Réutilisation d’un capteur compte tour sur un vieux disque dur d’il y a 15 ans  Faire clignoter la led quand le capteur de lumière est obturé 2V (red) Digital IO (yellow) Ground (black)
  11. 11. Example d’entrée analogique Capteur de lumière agit comme une résistance 1M Ω (noir complet) à 100 Ω (lumière intense) R = √(1M x 100) = 10K Ω Entrée analogique = +3.3V 3.3/(1+R/RL) 10KΩ R Varie de 0.0323V (lumière intense) à 3.23V (noir) Entrée analogique RL Ground
  12. 12. Mon premier serveur Web
  13. 13. Implémenté un serveur Web Partir de l’exemple Web Server Comment ça fonctionne 1 thread par protocole = 1 pour http 1 handler pour processer toutes les requêtes (GET et POST) 1 fonction pour processer GET 1 fonction pour processer POST 1 fonction pour retourner un fichier du stockage (par morceau car la taille des buffers est limitée) 1 fonction d’upload de fichier vers le stockage (par morceau car la taille des buffers est limitée) Plein d’autres fonctions pour faire fonctionner le tout Très bon exemple complet qui implémente beaucoup de bonnes pratiques
  14. 14. Simplifier le serveur Web Enlever le code lié à https Enlever le code lié à POST si GET uniquement utilisé Enlever le code lié au transfère de fichier si non utilisé Enlever le code lié à la gestion des répertoires et stockage si pas besoin d’accès aux fichiers Enlever ce genre de choses  Ajouter une fonction qui permet de lire les paramètres passer en URL Ajouter du code pour gérer les pages en GET Ajouter du code pour gérer vos propres pages
  15. 15. Gérer mon arrosageautomatique
  16. 16. Comment ça marche? Netduino http Client utilisant un simple navigateur 2 Pages pour gérer le calendrier et la programmation 1 Page pour ouvrir/fermer les arroseurs 1 Page pour gérer la programmation Timer pour lancer les arrosages
  17. 17. Illuminer ma ville Lego
  18. 18. Comment ça marche ? Web Server avec Netduino pages ASP.NET http http Pour allumer/éteindre les led Client utilisant Page pour retourner le un simple paramrétrage et l’état navigateur
  19. 19. Trucs et astuces Try catch partout… Les buffers sont limités (1024 in most small ARM) System.Threading.Thread.Sleep(100); Compromis entre joli code et code efficace: la taille, ça compte La sécurité, c’est important, à prendre en compte dès le design U=RI if (Microsoft.SPOT.Hardware.SystemInfo.IsEmulator) strDefaultDir = "WINFS"; else strDefaultDir = "SD"; localhost:81 utilisé par l’émulateur pour un serveur web
  20. 20. Resources SDK download: http://netmf.codeplex.com/releases/view/52341 .NET Microframework sources: http://netmf.codeplex.com/ Visual Studio Express: http://www.microsoft.com/visualstudio/en-us/products/2010- editions/express Netduino: http://www.netduino.com/ Blogs et liens utiles:  http://www.netmf.com  http://blogs.msdn.com/netmf  http://blogs.msdn.com/netmfteam  http://www.tinyclr.com/  http://nerduino.wordpress.com/  http://www.ghielectronics.com/downloads/FEZ/Beginners%2 0guide%20to%20NETMF.pdf  http://www.ghielectronics.com/catalog/category/265/
  21. 21. QUESTIONSLaurent Ellerbachlaurelle@microsoft.comhttp://blogs.msdn.com/laurelle
  22. 22. Pour aller plus loin Prochaines sessions des Dev Camps Chaque semaine, les 10 Live Open Data - Développer des applications riches avec le février DevCamps 2012 16 Meeting protocole Open Data ALM, Azure, Windows Phone, HTML5, OpenData février Live Meeting Azure series - Développer des applications sociales sur la plateforme Windows Azure 2012 http://msdn.microsoft.com/fr-fr/devcamp 17 Live Comprendre le canvas avec Galactic et la librairie février Meeting three.js 2012 Téléchargement, ressources 21 février Live La production automatisée de code avec CodeFluent Meeting Entities et toolkits : RdV sur MSDN 2012 2 mars Live Comprendre et mettre en oeuvre le toolkit Azure pour http://msdn.microsoft.com/fr-fr/ 2012 Meeting Windows Phone 7, iOS et Android 6 mars Live Nuget et ALM 2012 Meeting Les offres à connaître 9 mars 2012 Live Meeting Kinect - Bien gérer la vie de son capteur 90 jours d’essai gratuit de Windows 13 mars 2012 Live Meeting Sharepoint series - Automatisation des tests Azure 14 mars Live TFS Health Check - vérifier la bonne santé de votre www.windowsazure.fr 2012 Meeting plateforme de développement 15 mars Live Azure series - Développer pour les téléphones, les 2012 Meeting tablettes et le cloud avec Visual Studio 2010 Jusqu’à 35% de réduction sur Visual 16 mars Live Applications METRO design - Désossage en règle dun Studio Pro, avec l’abonnement MSDN 2012 Meeting template METRO javascript 20 mars Live Retour dexpérience LightSwitch, Optimisation de www.visualstudio.fr 2012 Meeting laccès aux données, Intégration Silverlight 23 mars Live OAuth - la clé de lutilisation des réseaux sociaux dans 2012 Meeting votre application

×