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 :

Adapter le serial de l'arduino pour un protocole un peu exotique


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 105
    Par défaut Adapter le serial de l'arduino pour un protocole un peu exotique
    Bonjour

    Je dois faire communiquer l'arduino avec un appareil qui utilise une communication serie un peu étrange.

    Voici la trace de mon signal.

    Nom : trace2.png
Affichages : 1194
Taille : 30,3 Ko

    J'ai deux fils qui émettent en même temps le signal opposé.
    La tension au niveau haut est à 2,7V, au niveau bas elle est a 0,8V et au repos elle est a 1,6V
    Au repos les deux fils ont la même tension. Lors d'un signal un fil est au niveau haut pendant que l'autre est au niveau bas et vice-versa;

    Le signal est sur 8 bits, 1 bit de stop pas de parité à 115 kbauds. Il se décode très bien à l'oscillo. Je dois donc pouvoir générer ce signal avec l'arduino.

    Mon premier problème c'est que le signal n'est pas symétrique par rapport à la tension de repos. Le deuxième problème c'est que je dois générer ces deux signaux opposés.

    J'imagine que je dois pouvoir faire quelque chose avec des ampliOp pour transformer le signal série de l'arduino mais j'ai un peu du mal.

    Un grand merci d'avance à qui me mettra sur la bonne piste.

    Nat

  2. #2
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    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 252
    Par défaut
    Salut,
    Ton signal ressemble fort à du RS485.

    Y a aucune indication sur l'appareil avec le quel tu causes ?

  3. #3
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Bonsoir,

    Vincent confirme ma pensée : RS485 (Modbus 2 fils).

    Ne branche pas directement tes signaux sur les entrées de ton Arduino tu pourrais les griller à cause des tensions négatives. Pour la mise à niveau des tensions tu as des composants chez Maxim Integrated qui font bien ce travail. Exemple :
    MAX485

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 105
    Par défaut
    Merci beaucoup pour cette piste.
    J'ai a la maison deux cartes RS485 et plusieurs arduinos, je vais donc pouvoir tester et voir si j'ai le même type de signal.

    En tout cas encore merci.

    Nat

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 105
    Par défaut
    Bonsoir,

    J'ai fait le montage avec mes cartes RS485
    Nom : trace3.png
Affichages : 1124
Taille : 27,1 Ko

    et j'obtiens un profil similaire (j'ai même réussi a reproduire la même séquence). Néanmoins le profil est un peu différent, chaque voie variant entre la tension de repos et sa tension max (ou min pour l'autre voie) alors que sur le montage que j'ai observé chaque voie avait une tension de repos et 2 tension min/max;

    Est-ce qu'il y a autant d'implémentation hardware que de constructeur de cartes ?
    -> Ma carte RS485

    Est ce que j'ai intérêt a faire mon propre montage a base de max485 pour obtenir le bon profil ?

    Merci de vos éclaircissements.

  6. #6
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 282
    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 282
    Par défaut
    Bonsoir

    C'est la patte DE qui est mal gérée, elle devrait resté active (à 1) pendant l'entier de la transmission alors que dans ton test elle ne l'est que lors des envois de 1. C'est prévu pour gérer les collisions. Voir si il n'y a pas un jumper/switch pour le contrôler depuis le micro. J'ai chargé le schéma mais je ne comprends pas le repérage des connecteurs.

    Bonne nuit

    Delias

  7. #7
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    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 252
    Par défaut
    Salut Delias,
    Citation Envoyé par Delias Voir le message
    [...]C'est la patte DE qui est mal gérée, elle devrait resté active (à 1) pendant l'entier de la transmission alors que dans ton test elle ne l'est que lors des envois de 1. C'est prévu pour gérer les collisions. Voir si il n'y a pas un jumper/switch pour le contrôler depuis le micro. J'ai chargé le schéma mais je ne comprends pas le repérage des connecteurs.[...]
    Qu'est ce qui te fait dire ça ? Je veux dire par rapport au graphique ?

    A+
    Vincent

  8. #8
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Il y a quelque chose qui me gêne dans ton second graphique : ton signal est dégueulasse. Sur la voie en rouge en particulier il y a des pics de tensions qui sont assez impressionnants quand le signal revient au repos. Est-ce que de ces parasites ne viendraient pas du signal bleu ?

    Citation Envoyé par boubil Voir le message
    chaque voie variant entre la tension de repos et sa tension max (ou min pour l'autre voie) alors que sur le montage que j'ai observé chaque voie avait une tension de repos et 2 tension min/max
    Je n'ai pas compris ce que tu as voulu dire.

  9. #9
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    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 252
    Par défaut
    Citation Envoyé par Auteur Voir le message
    [...]Je n'ai pas compris ce que tu as voulu dire.
    boubil nous dit qu'il a perdu la symétrie du signal. Avant il avait une symétrie autour de 1.5V et là ce n'est plus le cas.
    J'ai également chargé le schéma et aucun doute, celui qui l'a dessiné a mis toute son énergie pour le rendre le mois clair possible ! Bref.

    Au vu du graphique tu as une tension qui s'est surélevée, l'autre qui s'est écrasée et la symétrie n'est plus respectée.

    Essaye d'inverser les signaux A et B pour être dans cette config.
    Nom : Capture13.PNG
Affichages : 1467
Taille : 27,1 Ko

    Dans un réseau RS485, comme ci dessus, il faut que les "A" soient reliés ensemble et idem pour les "B". Les résistances de 120 Ohms, notées Rt, sur le schéma sont des résistances d'adaptation et elles sont nécessaires sur de grande distance sinon tu as des échos/rebonds sur la ligne. Elles sont placées seulement aux extrémités du réseau.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lib Arduino pour programmer des 16F84
    Par artiom dans le forum Arduino
    Réponses: 2
    Dernier message: 02/05/2012, 19h10
  2. adapter un script php avec mysql pour firebird
    Par omar24 dans le forum Firebird
    Réponses: 1
    Dernier message: 04/03/2011, 13h48
  3. adapter un code source mac OSX pour Win Xp
    Par PopCode dans le forum Visual C++
    Réponses: 1
    Dernier message: 06/12/2010, 19h20
  4. comment adapter un programme vb 6.0 pour tous les écran
    Par saidm dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 15/05/2009, 15h29

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