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

Arduino Discussion :

Intégration final Système à base d'Arduino


Sujet :

Arduino

  1. #1
    Candidat au Club
    Homme Profil pro
    Electronicien
    Inscrit en
    Avril 2019
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2019
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Intégration final Système à base d'Arduino
    Bonjour à tous,

    Personnellement je suis électronicien donc un pur Hardeux. La partie soft n'a jamais été mon fort.

    Je suis entrain de développer un système de gestion d'un pylone pour radio-amateur. En deux mots mon cahier des charges est le suivant:
    - Communication avec une interface RS485 afin que le système soit pilotable d'un PC
    - Pilotage de relais HF pour commuter des antennes
    - Lecture de la puissance rayonnée et réfléchie afin de définir le TOS (Taux d'Onde Stationnaire)
    - Gestion d'un Rotor avec commande d'un moteur CC, de switch de fin de course et d'un potentiometre ou codeur optique pour l'asservissement en position
    - Lecture d'un anémometre, thermometre et taux d'humidité.

    En bref j'ai un jolie "tas de fils" sur une base d'arduino Méga

    J'aimerai rassembler tout cela sur un seul et même PCB, arduino compris.
    J'ai déja lu pas mal de chose sur le sujet mais avant de me lancer j'aimerai avoir votre avis.

    La partie Hard ne me fait pas peur du tout mais c'est la partie soft qui me fait douter.
    Dans ma version il vas falloir que je flash le BootLoader avec un programmateur externe ( lequel préconisez vous ?)
    J'aimerai me passer de la liaison USB pour ne garder que le RS485, est ce possible avec ce bootloader ?
    Est que je peux programmer cette nouvelle carte avec le RS485 ou a défaut par le programmateur externe ?

    Merci par avance

  2. #2
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 208
    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 208
    Points : 11 688
    Points
    11 688
    Par défaut
    Salut,
    Joli projet !

    Citation Envoyé par F4HVJ
    Dans ma version il vas falloir que je flash le BootLoader avec un programmateur externe ( lequel préconisez vous ?)
    Certain prenne un Arduino UNO pour jouer le rôle de programmateur (SPI). Ici, dans la première partie, https://www.instructables.com/id/ATM...g-Arduino-UNO/ l'auteur utilise un Arduino UNO pour charger le bootloader (UART) officiel Arduino dans un ATMEGA2560 tout neuf.

    Une fois que le UNO a chargé le bootloader dans le ATMEGA2560, l'auteur retire le microcontrôleur ATMEGA328P du UNO ainsi son UNO ne sert que d'adaptateur USB / Série et il peut envoyer un sketch dans le ATMEGA2560


    Nom : path1196.png
Affichages : 115
Taille : 269,5 Ko

    Citation Envoyé par F4HVJ
    J'aimerai me passer de la liaison USB pour ne garder que le RS485, est ce possible avec ce bootloader ?
    En toute logique comme il s'agit d'un bootloader UART (qu'on charge 1 seule fois via SPI) un simple convertisseur de type MAX485 devrait faire l'affaire côté ATMEGA2560

    Citation Envoyé par F4HVJ
    Est que je peux programmer cette nouvelle carte avec le RS485 ou a défaut par le programmateur externe ?
    Là aussi en toute logique si côté PC tu as un adaptateur RS232 vers RS485 et du côté électronique tu as un MAX485 et un ATMEGA2560 (bootloader UART) ça devrait être complètement transparent.


    Je n'ai jamais fait une telle manipulation, je travaille avec d'autres microcontrôleurs mais ça devrait fonctionner.

  3. #3
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 273
    Points : 4 840
    Points
    4 840
    Par défaut
    Bonsoir

    Vincent a bien résumé, mais il manque le point du Reset.

    l'ISP nécessite la connexion au reset qui sert de /CS Chip Select à la liaison SPI dans le cadre de la programmation ISP.

    Pour la programmation avec le bootloader, il faut aussi une commande du reset pour redémarrer la puce et permettre au bootloader de prendre la main. Avec une liaison RS485, il faut ajouter cette ligne en plus.
    Ensuite le RS485 a le défaut de communiquer sur le même canal dans les deux sens, je ne sais pas si cela est problématique avec le protocole du Bootloader qui passant par le simple série RS232 aux niveaux TTL n'a pas cette contrainte. Pour ce dernier point je ne sais pas si cela passe ou pas.

    Comme Vincent, je n'utilise pas Arduino, mais les microcontrôleurs directement. Les AVR se programment très facilement en ISP et nombre de programmateur sont disponibles sur le net (un simple FTDI suffit). Le programme Arduino se programme facilement par ISP, le bootloader c'est une facilité additionnelle dans le cadre original de l'Arduino : l’enseignement. Cela permet d'avoir le téléversement et la console série sur la même ligne.

    Bonne réalisation

    Delias

  4. #4
    Candidat au Club
    Homme Profil pro
    Electronicien
    Inscrit en
    Avril 2019
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2019
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci pour vos réponses

    Si je vous résume bien: Je n'ai pas besoin de programmer un BootLoader mais grace a l ISP je peux injecter directement le soft dans le micro via le programmateur.
    Dans ce cas j'utilise le fichier ****.standard.hex au lieu du fichier ****.with_bootloader.standard.hex je suppose.

    J'avoue que la programmation via l'ISP m'arrange beaucoup

  5. #5
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 208
    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 208
    Points : 11 688
    Points
    11 688
    Par défaut
    En effet tu n'es pas obligé de programmer un bootloader série, tu peux programmer ton programme directement. Disons que le bootloader série c'est la facilité pour la reprogrammation / mise au point car le micro s'attend a recevoir un programme, à mettre en Flash, en provenance de l'UART et non pas d'un programmateur.

    Pour ma part, et je suis à peu près sur que pour Delias c'est la même chose, nous programmons nos micros avec des outils tels que AVR studio ou Code Composer Studio (pour les MSP430 de chez Texas Instruments) et une sonde de débug qui permet de voir en direct tout ce qui se passe dans le micro (les registres, la mémoire, la pile, l'ALU). Une fois le programme au point, on envoie au préalable dans le micro un bootloader série, puis on balance au bootloader le programme mis au point et plus tard les éventuelles mise à jour. De cette manière on n'est pas obligé de sortir un programmateur pour chaque mise à jour.

    Citation Envoyé par F4HVJ
    J'avoue que la programmation via l'ISP m'arrange beaucoup
    Oui pour mettre au point sur table c'est bien, mais une fois l'engin en haut d'un mat, avoir un bootloader c'est mieux . Dans les appareils électroniques que j'ai conçu (même si j'ai fait moi aussi principalement du hard, j'étais un hardeur ) une fois sur site et en zone ATEX (atmosphère explosive) pas possible de se balader avec un programmateur pour mettre à jour un micro C'est là que le bootloader est intéressant notamment via une liaison série RS485.

    Par contre si le micro n'a pas besoin de mise à jour, ce qui est possible, ou qu'il est facilement accessible en bas de l'installation alors pas besoin de bootloader. Après ça dépend te ton électronique, des contraintes de CEM, de l'emplacement du projet (si tu as des TCXO ou OCXO c'est peut être bien d'avoir l'engin en bas du mat et un peu plus à l'abri ?) etc...

Discussions similaires

  1. erreur dans l'intégration de ma base #1062
    Par alizea77 dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 25/03/2008, 16h59
  2. [Système]Base de données corrompue
    Par elgigante dans le forum Sécurité
    Réponses: 4
    Dernier message: 12/04/2007, 15h23
  3. Réponses: 13
    Dernier message: 12/04/2007, 13h29
  4. [Système]Base de données indisponible car en mode exclusif
    Par karish dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 27/03/2007, 10h00
  5. [Système]Base Access Fractionné
    Par byters dans le forum Access
    Réponses: 3
    Dernier message: 23/03/2007, 13h47

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