IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Embarqué Discussion :

S'auto-former en embarqué


Sujet :

Embarqué

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 19
    Points : 37
    Points
    37
    Par défaut S'auto-former en embarqué
    Bonjour,

    Je m'intéresse depuis un moment à l'informatique embarquée sans jamais avoir franchis le pas, je pense notamment aux cartes Raspberry Pi et Arduino. Mais voila, mon domaine de compétence c'est plutôt le web et l'informatique non embarquée si je peux utiliser ce terme ! J'ai un BTS IG et une licence générale en informatique. Pour des raisons de santé j'ai du arrêter ma 5 année d'école d'info', plutôt orienté systèmes d'information / développement. Je ne reprendrai pas mes études dans l'immédiat et je cherche actuellement un emploi, mais stage après stage, je me suis rendu compte que le domaine du web et de l'informatique de gestion ce n'était pas pour moi. Et à tel point que j'ai pensé quitter le secteur de l'informatique... Mais après avoir longuement réfléchis et pris du recul, je me suis rendu compte que les domaines qui m'intéressaient le plus en dehors de l'informatique étaient la physique et l'électronique. Alors pourquoi ne pas tenter l'informatique embarquée ?

    J'ai eu des modules de C avancé en L3, de microprocesseur et automatisme et j'ai fais un peu d'assembleur et de VHDL. Mon dernier stage s'est résumé à 4 mois de C++ (apli mobile avec Cocos2d-x).

    Tout ça pour vous dire que je penser me former dans l'espoir de trouver un emploi dans l'embarqué, dans le pire des cas un stage. Et c'est là que j'ai besoin de vous ! J'ai pensé au livre "Linux embarqué" qui m'a l'air une valeur sure, ainsi qu'à "Embedded Systems: Introduction to Arm® Cortex(TM)-M Microcontrollers", orienté clairement vers les cartes ARM. Sur quelques offre d'emploi que j'ai trouvé, les architectures ARM sont revenus plusieurs fois. Après, niveau langage, j'ai cru comprendre que le C était plus utilisé, mais j'hésite à me focaliser sur le C ou le C++. Je suis plus compétent en C mais mon dernier stage portait sur du C++. Sinon j'a lu sur un topic de ce forum que les cartes ARM, ce n'était pas l'idéal pour débuter, qu'il fallait mieux privilégier des cartes plus accessibles.

    Qu'est ce vous en penser, dans l'optique donc d'une recherche d'emploi dans l'embarqué pour quelqu'un comme moi dont ce n'est pas la spécialité. Quels livres / architectures / technologies me conseillerez-vous ? Et çà vous semble jouable au vu de mon profil, ou je me fais des illusions ?

    Merci

  2. #2
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 190
    Points : 11 573
    Points
    11 573
    Par défaut
    Salut,
    Citation Envoyé par hidelov_U Voir le message
    je me suis rendu compte que les domaines qui m'intéressaient le plus en dehors de l'informatique étaient la physique et l'électronique. Alors pourquoi ne pas tenter l'informatique embarquée ?
    J'ai eu des modules de C avancé en L3, de microprocesseur et automatisme et j'ai fais un peu d'assembleur et de VHDL. Mon dernier stage s'est résumé à 4 mois de C++ (apli mobile avec Cocos2d-x).
    C'est un bon début.

    Citation Envoyé par hidelov_U Voir le message
    Tout ça pour vous dire que je penser me former dans l'espoir de trouver un emploi dans l'embarqué, dans le pire des cas un stage. Et c'est là que j'ai besoin de vous ! J'ai pensé au livre "Linux embarqué" qui m'a l'air une valeur sure, ainsi qu'à "Embedded Systems: Introduction to Arm® Cortex(TM)-M Microcontrollers", orienté clairement vers les cartes ARM.
    Tu as différent niveau d'embarqué.
    - L'embarqué proche de l'électronique : Arduino + shields et les petits micro-contrôleurs 8 et 16 bits, leurs applications/programmes et hardware sont ciblés sur une problématique. Généralement tu n'as pas de système d'exploitation et l'informatique embarqué est en "front end" du monde physique (capteur intelligent , sonde de mesure, ...) et les contraintes temporelles sont fortes. Dans ce domaine, c'est là où j'étais dans mon ancien boulot, il te faut les compétences électronique et informatique. Les langages dominant, et le mot est faible, c'est le C et l'assembleur.

    - L'embarqué proche de l'informatique : Raspberry et gros micro 32 bits à architecture ARM mais pas que ! Bien souvent tu as un OS Linux, FreeRTOS, Android ou autre. Les applications sont génériques, évolutives, souples et complexes comme dans la téléphonie mobile, Raspberry, les box internet, centrale d'acquisition. Tu es souvent en "back end", sauf dans le cas du temps réel, car tu disposes de puissance de calculs et de stockage. Les langages de programmation sont aussi variés que dans l'informatique non embarqué.


    A ta place, je me poserai tout de suite cette question : Vers quelle couche de l'embarqué me diriger ? Quelques éléments que j'ai pu observer dans mon ancien job.

    Toutes les entreprises d'électronique font forcément de l'embarqué sur micro-contrôleur (et ce, depuis bien avant que le mot "embarqué" ne soit à la mode) puisqu'il y en a partout maintenant. Donc en faisant de l'embarqué tu peux viser deux secteurs d'emploi. Dans mon parcours scolaire en électronique, j'ai fait un croché par une licence pro informatique pour cette raison.

    Dans beaucoup d'équipements que tu as chez toi, il y a de l'électronique et des micro-contrôleurs (cafetière, machine a laver, réveil, télé, chaudière, thermostat, tes clefs de voiture, voiture, démodulateur canal sat ou box, montre, rasoir électrique, ...) mais en réalité très peu embarquent des OS car ils ne se justifient pas. Chez toi, tu as probablement : ton PC, ta box internet, ton téléphone portable et peut être ta télé. Comparé à toutes l'électronique dans le reste de ton environnement les OS embarqués sont encore marginales.

    Ensuite, un phénomène prend de l'ampleur : IoT objets connectés et des OS commencent à s'intégrer dans différentes choses comme les frigos, les montres etc...

    [ATTENTION AVIS PUREMENT PERSONNEL] Cependant, c'est un phénomène de mode et surtout le rêve des agences de pubs ou marketing qui voudraient que dès que votre matelas soit usé, que vous en receviez un dès le lendemain car le magasin du coin aura reçu une commande automatiquement. Ou bien le rêve de votre assureur qui pourra vous appliquer du bonus/malus en fonction de ce que dira votre voiture hyper connectée... on se demande comment ça va se passer si jamais vous prêtez votre bagniole à un pote qui ferait une infraction ou que vous soyez obligé de conduire très vite votre enfant ou votre femme sur le point d'accoucher, à l'hôpital. Cette IoT là, va vite s’essouffler mais par contre l'IoT, le vrai, celui qui s'annonce ce n'est pas du tout le slip connecté et encore moins le papier cul intelligent !!! Ce sera des millions de capteurs un peu sur tout avec des concentrateurs de données. Exemple, la gestion des ordures ménagères dans certaine ville, des capteurs intelligents RFID ou NFC sont placés dans les containers enterrés et collectés par le centre de ramassage qui peut, grâce a ces données, optimiser les collectes des camions. Ou des capteurs sur des produits recyclables afin de contrôler ceux qui pourraient être perdus dans la nature. Ou les compteurs intelligents pour mieux gérer les réseaux électriques. Ou l'agriculture intelligente. Ou le trafic routier commandé par le taux de pollution. Ou encore les applications médicales... et à mon avis, il n'y a pas lieu d'avoir un dynamisme effréné des OS embarqué dans l'avenir. Il y en aura oui mais pas dans chaque objet connecté qui sortira.
    [/ATTENTION AVIS PUREMENT PERSONNEL]

    Il faut que tu saches vers quelle embarqué tu souhaites aller sachant que les deux à la fois est possible mais tu devras apprendre l'électronique + l'informatique. Dans tous les cas connaître l'architecture ARM est nécessaire puisque c'est elle qui prédomine le monde des micros 32 bits.

    Citation Envoyé par hidelov_U Voir le message
    Sur quelques offre d'emploi que j'ai trouvé, les architectures ARM sont revenus plusieurs fois. Après, niveau langage, j'ai cru comprendre que le C était plus utilisé, mais j'hésite à me focaliser sur le C ou le C++. Je suis plus compétent en C mais mon dernier stage portait sur du C++. Sinon j'a lu sur un topic de ce forum que les cartes ARM, ce n'était pas l'idéal pour débuter, qu'il fallait mieux privilégier des cartes plus accessibles.
    Si tu travailles sur un micro ou PSOC avec un OS (Linux ou Android) alors je pense qu'il est mieux d'apprendre plusieurs langages mais si tu n'as pas d'OS alors reste en C c'est beaucoup mieux car proche du langage machine. Sur un micro, tu peux être amener à optimiser des fonctions ou des bouts de programme directement en assembleur à cause de contraintes de temps, lors d'une interruption par exemple, et dans ce cas il est plus confortable d'être partie sur une langage comme le C plutôt que le C++ qui t'apporte une certaine abstraction que tu devras effacer pour optimiser ton code (je ne vois pas l'intérêt si ce n'est le masochisme.)

    Effectivement, commencer l'étude d'un micro-contrôleur par un ARM c'est beaucoup plus compliqué que de commencer avec un micro 8 bits ! Certain ARM comme chez ST (voir les messages, sur ce forum, de Julien Terrier) sont tellement configurable qu'on peut être vite perdu.
    Alors que sur un micro plus petit, il est plus facile de comprendre comment s'articule un TIMER, L'USART, L'oscillateur, etc... à peu de chose prés je dirais que 90% des principes acquis sur un petit micro, sont applicables sur un très gros. Pour te donner une image dans ton domaine actuel, c'est un peu comme ci tu souhaitais apprendre le C par deux approches différentes : La première en regardant le source d'une grosse application avec toute la complexité qu'il va falloir assimiler avant de commencer a comprendre. La deuxième, en regardant une multitude d'exemples simples. Les deux approches fonctionnent pour apprendre le C par exemple mais nous sommes tous d'accord pour dire que l'une des deux risque fortement d'aboutir vers un découragement total !

    Citation Envoyé par hidelov_U Voir le message
    Qu'est ce vous en penser, dans l'optique donc d'une recherche d'emploi dans l'embarqué pour quelqu'un comme moi dont ce n'est pas la spécialité. Quels livres / architectures / technologies me conseillerez-vous ? Et çà vous semble jouable au vu de mon profil, ou je me fais des illusions ? Merci
    C'est tout à fait faisable. Spécialisé ou pas, lors d'un entretien d'embauche on voit très vite celui qui sait de quoi il parle et celui qui ne maîtrise rien ! Si tu t'y mets sérieusement et que tu réalises des maquettes ou des projets alors le recruteur le ressentira.

    Tu peux démarrer par Arduino, il y a des tutoriels de f-leb sur Arduino, ils sont très biens fait car il entre dans le détail du hard mais aussi du soft (protocole I2C entre autre et pour ne citer que son dernier tuto) en expliquant les choses. Ça c'est la bonne approche de Arduino !
    Par contre, tu ne pourra pas rester bien longtemps sur cette philosophie car pour en faire ton boulot, tu devra creuser un minimum sous la couche d'abstraction de Arduino et comprendre pourquoi ça paraît si simple et comment le micro fonctionne en dessous !

    A+
    Vincent
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  3. #3
    Membre actif
    Homme Profil pro
    Technicien Layout
    Inscrit en
    Août 2015
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien Layout

    Informations forums :
    Inscription : Août 2015
    Messages : 275
    Points : 292
    Points
    292
    Par défaut
    Bonjour,

    J'ai découvert les µcontrôleurs et une partie sur son mode de fonctionnement a l'école pendant mon BTS Système Electronique. J'ai travaillé sur 2 projets qui m'ont vraiment intéressé et qui m'ont donné l'envie d'en savoir un peu plus.

    Pour ces 2 projets j'ai travaillé avec des pic18f2620 de chez microchip avec pour environnement de développement MPLAB

    Post BTS et encore aujourd'hui le travail que j'effectue est loin de ce que j'ai étudié et de ce que j'étudie encore aujourd'hui car et cela reste mon avis si tu veux te servir de µcontroleur pour tes futures projets ton apprentissage va durer un moment ( ca reste ma philosophie c'est un peu pareil pour tous les domaines quand tu veux aller au bout des choses idem si tu commences a apprendre l'anglais tu ne seras jamais bilingue).

    En faite je fais de la maintenance industriel (méca,electrotech,optique, un peu d'élec..) et pour joindre l'utile a l'agréable j'essaye de faire des projets qui me permettront d'acquérir des connaissances en systèmes embarqués et qui seront utile dans mon environnement de travail. Il y a toujours des choses a contrôler, a améliorer. Par exemple en ce moment je travaille sur un projet ou j'utilise un µcontroleur STM32F429ZI (Cortex-M4 ARM) avec un afficheur LCD et le projet consiste a venir récupérer du code ASCII et l'afficher en temps réel sur l’écran LCD. Ensuite dans ma zone il y a 25 technicien et il n'y a personne qui sait utiliser un µcontroleur ce que je veux dire par là c'est que en partant sur cette voie tu vas gagner en compétence et les compétences c'est ce que les recruteurs recherches.

    Ensuite je vais partager la raison pour laquelle je suis attiré par les "systèmes embarqués".

    Premièrement je trouve fascinant qu'un petit circuit intégré comme les µcontroleur puissent réaliser autant de fonctions => DAC/ADC/TIMER/PWM/Oscillateur... une multitude de protocole de communication SPI/I2C/CAN/LIN/U(s)ART/USB de quoi dialoguer avec a peu près avec tout ce qui existe et j'en passe sur ses possibilités car d'ailleurs je ne les connais pas toutes.

    J'en suis qu'au début de l'aventure cela fait que 4 ans que j'ai découvert l'existence de ces composants. Je me considère comme un débutant avec peu d'expérience et malgré cela je commence déjà a les mettre en oeuvre pour des applications industrielle par exemple.

    Mettre un pied dans l'embarqué c'est un peu comme faire partie du futur, c'est faire partie des gens qui mettront en oeuvre de nouvelle façon de vivre ( on en est pas la encore ), de consommer, de se divertir etc... je ne sais pas si tu vois ou je veux en venir?

    Pour moi ce qui est intéressant dans les systèmes embarqués c'est la possibilité d’interagir avec les µcontroleur et de pouvoir les implémenter afin qu'il exécute une ou plusieurs taches selon ta volonté, il t'offrent la possibilité d'effectuer des opérations binaires (comme un processeur) et ajoute également de nombreux périphérique comme ceux que j'ai cité plus haut (ce que ne permet pas un processeur) si j'essaye de comparer un µcontroleur avec un processeur pour moi le processeur et super puissant en calcul mais par contre il peut interagir avec un nombre limité de module tandis qu'un µcontroleur lui a des possibilités de calcul plus réduites (quoiqu'en expansion) mais permet de se détacher plus aisément du matériel afin d'endosser différentes fonction, il est un peu plus passe partout...
    Ensuite tu pourras facilement et concrètement faire fonctionner tout ce beau monde et pour pas trop chère en utilisant des cartes de devellopement-decouverte ARDUINO/MICROCHIP/STMICROELECTRONICS

    Et puis ce n'est pas si accessible que cela, mon opinion est qu'il faut connaitre ou apprendre en parallèle trois domaines afin de maîtriser l'embarqué ==> L’électronique (notion, pas besoin de savoir ce qu'est un ampli op multivibrateur astable ) / la programmation++(C/C++/Assembleur) / l'anglais+ (obligatoire pour comprendre les manuels et aller a la pêche au info )

    Pour terminer, j'ai pu remarqué que de manière général les personnes intéressés par ces domaines englobant, programmation (C,JAVA,PYTHON etc...)/embarqué-electronique/impression 3d etc.. de manière général les "TECH-SAVVY" partagent connaissances et compétences facilement si tu est cohérent dans tes demandes. Je ne peux m’empêcher de penser a un certains VINCENT PETIT qui a beaucoup de compétence pour son jeune ages et qui les mets a disposition simplement par passion.

    Pour revenir un peu plus a tes demandes lol je suis parti dans tous les sens comme d'hab lol, par exemple il faut savoir que si tu utilise un µcontroleur avec un coeur ARM tu ne pourras utiliser que certains IDE embarquant un compilateur compatible comme par exemple keil/IAR (avec licence payante 4000 euros si tu souhaites créer des programmes supérieur a 32ko) ou open source comme Coocox ou encore Eclipse avec STM32 workbench si tu souhaites utiliser des µcontroleurs ST mais bon ca demande un peu plus de temps et de réflexion pour la prise en main, j'ai l'impression que c'est propre a l'open source...

    En termes de lectures je suis sur quelques bouquins afin de trouver un support lorsque je rencontre une difficulté "le guide complet du langage C" (claude delannoy edition eyrolles), Embedded Systems Architectures (Tammy Noergaard, j'en suis au tout début), j'ai mes cours ou quelques fois je vais chercher des infos, puis après les forums comme ici sont super pour partager et apprendre a travers les projets des autres membres.
    Je peux te donner le liens du site de mon ancien prof d'elec il y a des trucs sympa avec des tp etc.. ==> http://genelaix.free.fr/

    Bon ben voila j'ai esssayé de partagé avec toi mon sentiments sur les systèmes embarqués a+
    L’art est une activité humaine, le produit de cette activité ou l'idée que l'on s'en fait s'adressant délibérément aux sens, aux émotions, aux intuitions et à l'intellect. www.elise-galerie.com

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 19
    Points : 37
    Points
    37
    Par défaut
    Merci pour vos réponse très exhaustives ! On sent vraiment la passion là dedans

    J'ai lu la 1ère partie du tuto Arduino et j'ai finalement commandé ma carte Uno. Je vais tester avec un simulateur en attendant de la recevoir, et me remettre au C avec un livre que je n'ai jamais pris le temps de parcourir entièrement (Le Langage C, Norme ANSI).

    Et je prend note de vos conseils et je repasserai surement par ici après avoir fait mes premier pas avec Arduino ! Sinon, est-ce que vous auriez des sites / tutos intéressants dans le domaine des microprocesseurs et de l'électronique ? Ce ne sont pas les ressources qui manquent sur le net, mais certaines sont surement plus pertinentes et accessibles que d'autres. Je n'ai pas encore regardé les cours sur le site de ton ancien prof Julien, mais ça m'a l'air très sympas tout ça !

  5. #5
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 190
    Points : 11 573
    Points
    11 573
    Par défaut
    C'est un bon choix.
    Donc tu t'orientes vers l'embarqué plutôt côté Electronique !
    Personnellement, je programme mon UNO avec Eclipse et GCC-AVR sous Linux, donc en C directement et pas avec l'IDE Arduino et ses bibliothèques.

    Pour des liens... ça va te surprendre mais je n'en connais pas, du moins pas en français et j'ai l'impression que les ressources sont assez faibles dans notre langue.

    Moi, et Julien aussi, on se sers simplement de la Datasheet du micro et des documents que fournis le constructeur (car c'est le mode d'emploi du micro et tout est écrit dedans même si ça fait très peur lorsqu'on l'ouvre la première fois.) C'est de l'anglais technique et pas de la grande littérature. Vu que tu as eu des cours de microprocesseur normalement tu devrais t'y retrouver dans la doc.

    Personnellement je suis plus bouquin que site internet pour apprendre :
    - The Art of Electronics 3rd edition (La bible, tout ceux qui l'on diront comme moi)
    - Practical Electronics for Inventors (très très bien et plus abordable que celui du dessus pour un débutant)
    - Digital Signal Processing: A Practical Guide for Engineers and Scientists (alors là !!!! jamais vu un bouquin aussi clair et avec si peu de math !!! contrairement au bouquin Français du même thème où tu aura plus d'équations que de mots français)
    - Understanding Digital Signal Processing: International Edition (prochain achat)
    - RFID en ultra et super hautes fréquences UHF-SHF : Théorie et mise en oeuvre (prochain achat)
    - NFC (Near Field Communication) - Principes et applications de la communication en champ proche (prochain achat)

    Pour rester dans le coup je suis abonné à :
    - Elektor
    - Hackable magasine
    - Open Silicium
    - des newsletters de fabricants de composant électronique voir Texas Instruments et par thème http://www.ti.com/lsds/ti/newsletter...QS=newsletters
    - des Engineering Journals comme celui de Maxim semiconductor https://www.maximintegrated.com/en/design/techdocs/ejs/

    Après peut être que d'autres auront des sites ou tuto en français ?
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

Discussions similaires

  1. Cherche projet libre pour m'auto-former sur J2EE
    Par jlandrei dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 13/12/2010, 22h03
  2. Comment s'auto-former à Linux?
    Par ceroxono dans le forum Ubuntu
    Réponses: 6
    Dernier message: 08/06/2009, 10h50
  3. Livres pour s'auto-former sur BO
    Par Doom dans le forum Débuter
    Réponses: 5
    Dernier message: 31/07/2008, 22h20
  4. Auto Formation : quels pré-requis il faut avoir pour commencer à se former a WPF ?
    Par tomy29 dans le forum Windows Presentation Foundation
    Réponses: 8
    Dernier message: 29/03/2007, 11h31
  5. [Kylix] Kylix embarqué sur PDA ?
    Par Anonymous dans le forum NoSQL
    Réponses: 10
    Dernier message: 29/11/2002, 13h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo