View  Edit  Attributes  History  Attach  Print  Search

Discussion technique pour PC embarqué sur base ITX

PC embarqué

  • La discussion ici a pour but de donner les éléments importants à prendre en compte pour monter un système avec PC embarqué pour utilisation en robotique couplé avec une carte Arduino.
  • Les fonctionnalités essentielles recherchées ici pour le PC embarqué sont :
    • une communication par réseau wifi du système embarqué, permettant :
      • l'accès au bureau distant sans fil
      • la programmation distante de la carte Arduino
      • le contrôle complet sans fil du PC embarqué et du robot
      • le retour vidéo de la webcam embarquée
    • carte son permettant l'utilisation des logiciels de synthèse vocale et lecture de fichiers sons standards
    • l'implémentation embarquée de Java nécessaire pour Arduino et Processing
    • l'implémentation embarquée de l'interface Processing permettant l'utilisation programmée :
      • des fonctions de calcul mathématique avancées
      • la reconnaissance visuelle de forme ou de visage
      • le traitement d'image et la capture vidéo
      • la gestion des applications du système Gnu/Linux embarqué
      • le contrôle de la carte Arduino à partir d'une interface Graphique PC
      • la gestion de communication réseaux
    • l'implémentation embarqué de l'interface Arduino permettant :
      • la programmation distante
      • l'utilisation en embarqué des programmes développés en local

etc....

La carte mère (1) : le processeur


  • pour profiter à plein d'une distribution Linux stable et évoluée telle qu'Ubuntu, il faut être sur une base dite x86. Certes des versions base "ARM" d'Ubuntu sont disponibles, mais çà n'est pas encore totalement mature...
  • la puissance de calcul est un élément essentiel du choix pour une base embarquée en robotique et/ou médicenter. Pour obtenir une reconnaissance visuelle suffisamment rapide et des opérations de traitement d'image rapide, un multicoeur est souhaitable, tel que Atom Dual Core D525 ou D510...
  • fréquence : plus la fréquence est élevée, plus les calculs seront rapides, mais plus la consommation sera élevée à priori... prendre 1,6 Ghz...
  • IMPORTANT : le ventilateur ou dissipateur passif :
    • bien veiller à ce que la carte mère soit "fanless", autrement dit sans ventilateur, avec évacuation par un radiateur pour un PC embarqué silencieux et plus économe en énergie. Sera un peu plus lourd ?
    • par contre, si le poids est la priorité, un ventilateur est peut-être mieux... mais conso en plus ?

Un dissipateur passif suppose un boitier très ouvert et aéré qui peut être incompatible en cas d'utilisation en milieu humide...

La carte mère (2) : la connectique interne


Connecteurs SATA

  • au moins 1 nécessaire pour le disque dur.

Connecteurs mini-PCI

  • idéalement, un connecteur mini-PCI est bienvenu

La carte mère (3) : la connectique externe


carte graphique avec sortie VGA :

  • doit être présente pour permettre l'utilisation d'un écran en phase de mise au point. L'accès au bureau distant sera également possible grâce à elle. Le seul impératif : compatibilité avec le système Gnu/Linux installé.

port USB :

  • essentiel pour la communication avec la carte Arduino. Plus il y en a, mieux c'est, notamment pour les compléments tels que webcam, etc...

carte son et sortie/entrée son:

  • doit être présente pour permettre l'utilisation des sons, notamment la synthèse vocale ou l'utilisation de fichiers sonores.

carte réseau ethernet

  • quasi-indispensable pour les phases de mise au point car permet connexion à un routeur pour accès internet.
  • à noter qu'une connexion réseau ethernet permettra aussi des mini-PC communiquant par bloc CPL au sein d'une alimentation électrique.

+/- PS2 souris et clavier :

  • ç'est potentiellement utile en phase de mise au point de pouvoir connecter simplement un clavier et une souris.

+/- sortie vidéo :

  • pas necesaire pour un robot. Souhaitée pour certaines applications embarquées avec vidéo.

+/- port série RS-232 :

  • pas necessaire à priori. Arduino communique par USB.

L'alimentation ATX embarquée pour la carte mère


  • il faut impérativement utiliser une alimentation miniature ATX telles que les pico PSU pour garder le gain de l'embarqué... une "grosse" alimentation ATX faisant évidemment perdre l'intérêt de l'embarqué...
  • tension d'entrée de l'alimentation ATX :
    • l'alimentation miniature selon les modèles devra être alimentées en 12V (avec une tolérance de 10% à priori...soit jusqu'à 13V... ce qui est compatible avec une batterie embarquée...
    • d'autres modèles permettent l'utilisation de tension d'entrée de 12-24V ou 6-24V, 2 fois plus chères mais permettant d'être embarquée dans un véhicule par exemple, la tension de la batterie pouvant monter à 14 V ou +
  • Bien prendre en compte la tension d'entrée de l'alimentation mini-ATX utilisée : certaines (picoPSU sont prévues pour être alimentées en 12V...tolérance +10% soit jusqu'à 13V et ne conviendront pas si utilisation dans un véhicule où la tension grimpe jusqu'à 14V et + Les alimentations 6-24V sont plus chères mais son passe-partout...
  • En cas d'alimentation sur bloc secteur, utiliser un bloc capable de fournir 4 ou 5A sous 12V...
  • puissance de l'alimentation :
    • prendre une alimentation supportant une puissance suffisante pour la carte utilisée. Avec un Atom, une picoPSU 80W semble suffire
    • attention : l'alimentation d'entrée utilisée pour l'alimentation ATX devra supporter plusieurs A (3 à 4 en pointe). Sur batterie, cela veut dire une capacité de plusieurs Ah (théoriquement, 3 fois l'intensité de pointe)
  • connectique de l'alimentation ATX embarquée : à prendre en compte : il faut que l'alimentation utilisée dispose d'un connecteur SATA pour le disque dur, éventuellement d'un connecteur molex selon périphérique utilisé... voire pour alimenter un shield Arduino associé...

Le stockage de masse = disque dur ou SSD

  • il faut un disque dur SATA. 3 versions de SATA existent : I, II, III. Version actuelle = SATA II. A noter que le câblage SATA peut être fournit avec la carte Mère, notamment carte mère Intel Atom.

C'est tout bête, mais quand vous achetez un disque dur, vérifier bien que c'est un SATA !!

  • premier critère de choix : la taille du disque dur . Au choix 2,5" ou 3,5"... choisir 2,5", les plus petits, les moins lourds..
  • deuxième critère de choix : la vitesse de rotation. Au choix 5400, 7200, 10000 rpm (tour par minutes). Choisir le 5400 pour l'embarqué, çà consomme moins d'énergie !
  • 3ème critère de choix : la capacité du disque dur. A titre indicatif, une installation d'Ubuntu tient sur 2 Go ... Donc, un petit disque dur 40 Go suffit amplement sur un système embarqué !! Si on a des besoins particuliers de stockage de données (vidéos, etc..) on peut prendre plus... mais de base ce n'est pas utile.
  • 4ème critère de choix : le cache du disque dur... pas vraiment essentiel à priori ici...
  • En clair, un disque dur SATA II, de 40Go, 2"5, 5400rpm à 30 € fera l'affaire.
  • Idéalement, un disque dur SSD permettra de s'affranchir des risques de panne mécanique d'un disque dur classique. Mais cela reste franchement plus cher (Juin 2011).

La RAM pour la carte mère.

  • Pour une Ubuntu, il faut idéalement 1Go de RAM pour être bien. Le prix n'est pas un critère de choix entre le 512Mo et le 1024Mo (=1Go), puisque la différence de prix n'est pas énorme.
  • il est essentiel que le type de RAM soit compatible avec la carte mère... :
    • utiliser DDR2 ou autre selon fiche technique carte mère.
    • utiliser la bonne vitesse (667Mhz ou 800Mhz ou autre) selon la fiche technique de la carte mère
  • le format physique de la RAM doit également être le même que la carte mère : DIMM (le plus courant), SO-DIMM (plus petit)...

Vérifiez bien que vous achetez une RAM compatible avec la carte mère au niveau :

  • de la vitesse (667/800Mhz)
  • du type (DDR2)
  • du format (DIMM ou SO-DIMM)

Conclusion provisoire...

  • Carte Mère "Fanless" + Alim ATX miniature + Disque Dur + RAM = Avec çà on a la base pour un système embarqué sur base PC qui démarre... et pourra recevoir Ubuntu.

Compléments

Après, on peut ajouter ce qu'on veut selon les besoins. Donner la priorité aux solutions USB permettra de choisir des matériels compatibles Gnu/Linux.

Webcam USB

  • webcam USB : si capture vidéo

Wifi USB ou mini-PCI

  • wifi USB : indispensable pour accès au bureau distant. De toutes petites clés USB existent. Sinon, si la portée doit être importante, on choisit une solution avec antenne externe. Anoter que l'on peut aussi utiliser des cartes wifi mini-PCI. Attention aux problèmes de drivers...

Enceintes +/- ampli alimenté par USB +/- micro (seulement pour enregistrement sonores)

Boîtier

  • il existe des Boitiers spéciaux pour carte mère ITX... notamment le M350 qui est très polyvalent.
  • l'utilisation d'un tel boitier peut avoir des inconvénients :
    • majoration du prix de 30% de la solution embarquée sans amélioration des possibilités techniques embarquées (50€ minimum)
    • en métal, le boitier alourdit aussi le poids de la solution embarquée...
    • ne protège pas de l'humidité en cas de solution "fanless"
  • l'utilisation d'un boitier a des avantages :
    • aspect fini et propre
    • protection physique du matériel utilisé
  • l'absence de boitier entraîne la nécessité de prévoir la fixation des éléments sur un châssis dès lors "ouvert" et moins protecteur...
  • A discuter donc selon les projets...