mbed, Arduino et l'abstraction matérielle
Répondre à la discussion
Affichage des résultats 1 à 12 sur 12

mbed, Arduino et l'abstraction matérielle



  1. #1
    aurel94100

    mbed, Arduino et l'abstraction matérielle


    ------

    Bonjour à tous,
    Je travaille actuellement sur les IoT (internet of things) c’est-à-dire sur les objets connectés. plus spécifiquement sur les OS et le développement d’application associée.

    Plus je me plonge dans le monde des microcontrôleurs, des constructeurs, des IDE plus j’ai l’impression de ne plus rien y comprendre tant les opinions sont divergentes.
    J’ai codé à l’école sur un microcontrôleur LPC dont j’avoue ne pas me souvenir le nom, dans ce code la moindre action nécessitait un minimum l’électronique programmée telle qu’on l’a connais (timer, interruption, bitwise etc…). Je codais pour info avec Keil uvision.

    Depuis que je travaille sur les IoT je me rends compte que la plupart des constructeurs se jettent dans ce domaine en proposant des IDE très intuitif avec des bibliothèques élaborées qui permettent de s’affranchir des contraintes matérielles. On peut prendre pour exemple les SoC Artik compatible avec l’IDE Arduino ou la plateforme mbed qui propose aussi un IDE avec de nombreuses bibliothèques déjà construites. Toutes ces solutions sont pratiques pour réaliser un prototype facilement et tester tous les périphériques de son application mais ma question est la suivante :
    Pourrait-on créer un objet connecté fiable destiné à être industrialisé en s’affranchissant des contraintes matérielles et en se contentant d’Arduino ou mbed ?

    Pour moi ce serait non car coder sur des couches aussi abstraite rend le programme peu optimal (temps d’exécution, consommation d’énergie …).
    Les bibliothèques sont optimisées pour la facilité de développement mais pas pour la performance
    Du coup je ne comprends pas beaucoup l’intérêt de mbed OS par exemple… Pour moi on code notre prototype muni de mbed OS et compatible avec mbed IDE et après une fois qu’on l’a testé on se base uniquement sur le microcontrôleur utilisé en reconstruisant un hardware autour pour créer notre objet. Ensuite on se jette sur la doc constructeur avec le bon IDE (Atmel Studio pour du Atmel, CodeWarrior pour Freescale …) et on code une solution en plus bas niveaux ? Est-ce la démarche pour créer des objets connectés aujourd’hui ou je me trompe complètement ? Du coup les OS comme mbed OS, Windows 10 IoT core etc sont seulement utiles pour faire des prototypes ?

    Je reconnais que ma question est vaste mais j’aimerais comprendre la démarche des industriels dans l’électronique programmée avec des microcontrôleurs. Si je peux avoir des réponses de gens qui travaillent dans ce type d’industrie ce serait top.

    Merci d’avance

    -----

  2. #2
    vincent66

    Re : mbed, Arduino et l'abstraction matérielle

    Bonsoir,
    1) Tu OUBLIES l'idée d'industrialiser qqch sur une base Arduino...!!
    2) Un OS, surtout rtos utilise les ressources internes surtout les timers d'un micro et n'apporte pas de contraintes quant-au hardware externe...
    3) Pour le moment il n'y a pas de monopole arduiniste, rien ne t'empêche de choisir TON uC, TON hardware et d'écrire TON code, heureusement...
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

  3. #3
    aurel94100

    Re : mbed, Arduino et l'abstraction matérielle

    Serait il possible d'avoir plus de précisions s'il vous plait . Je ne comprends pas bien votre réponse.

  4. #4
    QuentinC

    Re : mbed, Arduino et l'abstraction matérielle

    Bonjour,

    La question m'intéresse bien aussi !
    Je travaille beaucoup sur Arduino, et il me semble qu'en s'affranchissant de leur notion de "board", on peut avoir quelque chose de très "industriel".
    Il est tout à fait possible de travailler sur le contrôlleur: ATMEGA328P, avec son quartz, sur une carte faite maison !

    On peut même aller plus loin en s'affranchissant de l'IDE Arduino et en passant sur AVR Studio !

    Alors, pourriez-vous détailler un peu plus votre réponse ?

    Merci !!

  5. A voir en vidéo sur Futura
  6. #5
    aurel94100

    Re : mbed, Arduino et l'abstraction matérielle

    Je travaille beaucoup sur Arduino, et il me semble qu'en s'affranchissant de leur notion de "board", on peut avoir quelque chose de très "industriel".
    Il est tout à fait possible de travailler sur le contrôlleur: ATMEGA328P, avec son quartz, sur une carte faite maison !

    On peut même aller plus loin en s'affranchissant de l'IDE Arduino et en passant sur AVR Studio !
    QuentinC si tu travailles avec une carte faite maison en utilisant AVR Studio tu n'utilises plus les bibliothèques extrêmement haut niveau d'Arduino et du coup ton système n'est plus un Arduino (ni au niveau du code, ni au niveau du matériel). Tu utiliseras les registres du uc pour coder ton application.
    Ma question était plus orientée peut on coder une application industrielle avec des bibliothèque surpuissantes dans lesquels on ne touche pas au registre du microcontrôleur etc... Car les fonctions de la bibliothèque le fait pour nous. Arduino est dans ce cas là mais il y a aussi mbed, Windows 10 IoT core...

    En fait ça me parait dangereux au niveau de l'optimisation et de la consomation d'énergie mais je me trompe peut être...

  7. #6
    Yoruk

    Re : mbed, Arduino et l'abstraction matérielle

    Citation Envoyé par aurel94100 Voir le message
    les bibliothèques extrêmement haut niveau d'Arduino
    N’exagérons rien...

    Citation Envoyé par aurel94100 Voir le message
    et du coup ton système n'est plus un Arduino (ni au niveau du code, ni au niveau du matériel).
    Au niveau matériel, la carte reste ce qu'elle est, programmée avec l'IDE arduino ou autre (AVR studio...)

    Citation Envoyé par aurel94100 Voir le message
    Tu utiliseras les registres du uc pour coder ton application.
    Et donc ? Quel est le problème ? Travailler directement avec les registres du micro n'a rien de compliqué et permet de faire les choses proprement, plutôt que d'utiliser une bibliothèque universelle qui va alourdir le truc.

    Citation Envoyé par aurel94100 Voir le message
    Ma question était plus orientée peut on coder une application industrielle avec des bibliothèque surpuissantes dans lesquels on ne touche pas au registre du microcontrôleur etc... Car les fonctions de la bibliothèque le fait pour nous. Arduino est dans ce cas là mais il y a aussi mbed, Windows 10 IoT core...
    Tu fais des choses beaucoup plus propres (et plus "industrielles") en utilisant directement les registres du micro et en effectuant une programmation "bas niveau" plutôt que d'empiler des bibliothèques qui vont servir uniquement à surcharger/ralentir le code et qui ne serons pas forcément optimisées pour ton micro !

    Citation Envoyé par aurel94100 Voir le message
    En fait ça me parait dangereux au niveau de l'optimisation et de la consomation d'énergie mais je me trompe peut être...
    Au contraire...
    La robotique, c'est fantastique !

  8. #7
    aurel94100

    Re : mbed, Arduino et l'abstraction matérielle

    Tu fais des choses beaucoup plus propres (et plus "industrielles") en utilisant directement les registres du micro et en effectuant une programmation "bas niveau" plutôt que d'empiler des bibliothèques qui vont servir uniquement à surcharger/ralentir le code et qui ne serons pas forcément optimisées pour ton micro !
    Merci pour ta réponse Yoruk. Du coup mbed OS ou Arduino est utilisé seulement pour du prototypage ?

  9. #8
    antek

    Re : mbed, Arduino et l'abstraction matérielle

    Citation Envoyé par aurel94100 Voir le message
    Merci pour ta réponse Yoruk. Du coup mbed OS ou Arduino est utilisé seulement pour du prototypage ?
    Pour faire un prototype on construit une carte avec ses propres schémas ou bien on utilise une carte de prototypage (pour commencer).
    Avec arduino on peut commencer le débugage du programme si on n'a pas encore la carte (mais je vois pas l'intérêt).

  10. #9
    QuentinC

    Re : mbed, Arduino et l'abstraction matérielle

    Citation Envoyé par antek Voir le message
    Avec arduino on peut commencer le débugage du programme si on n'a pas encore la carte (mais je vois pas l'intérêt).
    Pour le coup j'utilise principalement Arduino pour les librairies...
    Je ne prétend pas en faire grand chose, mais quand il s'agit de piloter un écran oled, ou de décoder une trame GPS, c'est du code assez lourd à écrire.
    Bien sur, tout est relatif !! Mais dans la mesure ou je fais en général ces montages pour moi, et tout seul c'est une aide considérable !!

    J'ai tendance à penser qu'il ne faut pas juger trop vite. En fait, j'ai tendance à penser qu'on ne sait pas ce que vaut ces librairies, dans la mesure où les sources sont multiples, et qu'aucun test complet n'est disponible. C'est ces raisons qui me ferait dire que ce n'est pas viable dans l'industrie (encore que tout est là aussi relatif, et une librairie peut des fois fonctionner mieux qu'un programme perso...)

    Pour ce qui est des cartes Arduino je suis très mitigé, c'est gros (même les pro mini), et finalement utile uniquement pour du travail sur labdec.
    Par exemple, je travaille sur l'électronique embarquée dans une fusée expérimentale (CF planète sciences), c'est pas imaginable d'y mettre une ou des cartes arduino ! Et encore moins des Uno !

  11. #10
    antek

    Re : mbed, Arduino et l'abstraction matérielle

    Citation Envoyé par QuentinC Voir le message
    Pour le coup j'utilise principalement Arduino pour les librairies...
    Je parlais d'utiliser une carte arduino pour débugger un programme en C ou assembleur, pas pour utiliser l'IDE arduino !

  12. #11
    QuentinC

    Re : mbed, Arduino et l'abstraction matérielle

    Citation Envoyé par antek Voir le message
    Je parlais d'utiliser une carte arduino pour débugger un programme en C ou assembleur, pas pour utiliser l'IDE arduino !
    Ah ! Ok pas de soucis ^^

  13. #12
    Yoruk

    Re : mbed, Arduino et l'abstraction matérielle

    Citation Envoyé par QuentinC Voir le message
    Pour le coup j'utilise principalement Arduino pour les librairies...
    Je ne prétend pas en faire grand chose, mais quand il s'agit de piloter un écran oled, ou de décoder une trame GPS, c'est du code assez lourd à écrire.
    Bien sur, tout est relatif !! Mais dans la mesure ou je fais en général ces montages pour moi, et tout seul c'est une aide considérable !!

    J'ai tendance à penser qu'il ne faut pas juger trop vite. En fait, j'ai tendance à penser qu'on ne sait pas ce que vaut ces librairies, dans la mesure où les sources sont multiples, et qu'aucun test complet n'est disponible. C'est ces raisons qui me ferait dire que ce n'est pas viable dans l'industrie (encore que tout est là aussi relatif, et une librairie peut des fois fonctionner mieux qu'un programme perso...)
    100% d'accord avec toi... Bien évidemment que les cartes arduino ne sont pas à jeter à la poubelle, est qu'il est parfois plus rapide de passer avec un code et une librairie arduino existante plutôt que de commencer un projet C brut en partant de rien.

    Tout dépend effectivement de plein de paramètres différents. A titre perso, j'utilse environ 50% du temps une arduino, et le reste c'est du C ou de l'assembleur "bas niveau".

    Mais pour une application pro, mieux vaut laisser la arduino dans le tiroir !
    La robotique, c'est fantastique !

Discussions similaires

  1. microcontroleur MBED NXP LPC1768
    Par iboulb dans le forum Électronique
    Réponses: 1
    Dernier message: 19/01/2024, 13h36
  2. [UML] Niveau d'abstraction
    Par Mcflys dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 30/09/2012, 13h29
  3. Abstraction
    Par invite48969fb6 dans le forum Epistémologie et Logique (archives)
    Réponses: 19
    Dernier message: 20/05/2011, 16h51
  4. Projet IRIS - Arduino/Base Matérielle ?
    Par invite1ce14b65 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 0
    Dernier message: 22/06/2010, 19h32
  5. Qu'est-ce que le goût de l'abstraction ?
    Par invitec31af991 dans le forum Orientation avant le BAC
    Réponses: 3
    Dernier message: 06/03/2010, 23h39
Découvrez nos comparatifs produits sur l'informatique et les technologies.