Méthode d’envoi de plusieurs (16) canaux de signal modulé en rapport cyclique sur une distance moyenne-longue

Conor Retra

Méthode d’envoi de plusieurs (16) canaux de signal modulé en rapport cyclique sur une distance moyenne-longue


Problème

Quelle est la meilleure méthode ou solution standard de l’industrie pour transmettre plusieurs canaux (13 signaux, 3 masses) de signaux modulés cycliques jusqu’à 25 pieds. Les données seront transmises par un ordinateur (BeagleBone Black) et reçues par un panneau LED à 5 V et 800 kHz et les signaux sont modulés en rapport cyclique , avec un 0 mesurant 250 ns de long et un 1 mesurant 600 ns de long, et 1250 ns entre morceaux. La communication est à sens unique – du BeagleBone Black au panneau LED – et il y aura 4 longueurs de ~ 25 pieds. La solution proposée doit lire le signal 16 canaux du câble ruban BeagleBone Black, transmettre le signal ~ 25 pieds et reconvertir le signal en câble ruban 16 canaux pour la consommation par la carte LED.

entrez la description de l'image ici

Contexte

Je construis un écran LED à l’aide d’un BeagleBone Black exécutant le logiciel Open Source LEDScape pour une école locale à utiliser à des fins éducatives. Les panneaux LED utilisent des signaux modulés en cycle de service de 800 kHz . Actuellement, pendant le développement, le BeagleBone Black communique avec les panneaux LED (16 panneaux) via des câbles plats de 6 pouces à 16 canaux. Cela fonctionne très bien pour le développement, mais je dois monter les écrans LED dans 4 endroits différents autour d’une pièce à un maximum de 25 pieds du BeagleBone Black. La solution de câble ruban n’est pas en mesure de s’adapter aux 25 pieds requis. (Dans chacun des 4 emplacements, il y aura des chaînes de 4 panneaux – les chaînes sont suffisamment proches pour utiliser les câbles plats de 6 pouces.)

L’image ci-dessous est l’état actuel, mais les 4 ensembles de 4 panneaux doivent être répartis dans les coins séparés d’une pièce.

Image de l'écran LED Work in Progress

Pistes

Dans mes recherches, j’ai découvert un certain nombre de pistes utiles de la communauté. Ceux-ci inclus:

  • Utilisation de câbles CAT5e / 6 : Dans certaines implémentations du logiciel LEDScape (avec moins de canaux de données), plusieurs câbles Ethernet sont utilisés. J’aime cette idée, mais ils utilisent la puce MAX3040 . En utilisant cette puce, le nombre de puces et de paires torsadées s’additionnera rapidement pour transmettre les 16 canaux.
  • Bus Buffers : Cet article hackaday (si j’interprète correctement) suggère d’utiliser une puce comme la P82B96 pour permettre une capacité plus élevée et une tension boostée. C’est en haut de ma liste, mais j’aimerais demander à la communauté s’il existe des puces populaires qui ont plus d’un canal pour réduire la complexité et le prix. (J’ai seulement besoin de transmettre des données, pas de recevoir, à partir des panneaux LED)
  • Tampons de bus différentiels : le même article hackaday suggère d’utiliser une puce comme la PCA9615 pour coder les données en paires différentielles. La raison pour laquelle je n’ai pas (encore) choisi cette solution est le niveau d’effort (et de coût) qui sera nécessaire pour installer 4 paires de puces émetteur-récepteur-récepteur chacune avec 16 paires différentielles (32 fils).

Restrictions

  • En raison des spécifications du panneau LED, les données doivent être transmises à 800 kHz.
  • En raison du projet amateur, j’aimerais utiliser des puces disponibles au format DIP pour pouvoir les utiliser avec une planche à pain.
  • Parce que c’est un effort bénévole et peut être reproduit lorsque je publie les instructions de construction, j’aimerais que la solution priorise l’abordabilité (~ 100 $ – 200 $). Moins c’est mieux.

Je ferai de mon mieux pour répondre à toutes les questions, mais veuillez noter que mon expérience est dans le logiciel et que certaines questions EE peuvent me passer par la tête. Merci d’avance pour toute aide.

Umar

Je suggérerais l’exemple LVDS .: DS92LV040A 4 canaux et donc une paire pour pont LED ..

Réponses


 Érable

Commençons par la terminologie. Il existe des liens physiques entre les appareils, c’est-à-dire des lignes de communication. Et il existe des canaux de communication logiques . Une liaison physique (par exemple, un bus RS-485) peut prendre en charge plusieurs canaux de communication, mais ils partageront la bande passante de la liaison.

Cela signifie que vous ne pouvez pas transmettre simultanément des données différentes à plusieurs récepteurs. Et votre application particulière ne prend pas en charge le découpage temporel, car elle nécessite un flux de données quasiment continu pour que PWM soit efficace.

Donc, si vous voulez contrôler tous vos panneaux à partir d’un seul bouclier, la seule option est de trouver un lien physique approprié qui peut fournir 13 bits de données parallèles à 800 KHz sur 25 pieds. Les puces LVDS peuvent être utilisées pour cela, comme l’a suggéré @Umar. Quelque chose comme SN65LVDM1677 , qui vous donne 16 lignes différentielles. CAT5e / 6 prend en charge 4, vous devez donc acheminer 4 câbles vers chaque panneau. Un peu encombrant mais facile à mettre en œuvre avec seulement quelques pièces.

Une deuxième option consiste à sérialiser 13 bits de données en utilisant quelque chose comme DS92LV16
et à les envoyer sur une seule paire torsadée.
De cette façon, vous n’avez besoin que d’un câble CAT5e par panneau LCD. En fait, vous pouvez monter deux prises RJ45 interconnectées sur chaque PCB du sérialiseur et connecter en série jusqu’à 4 panneaux avec un câble, chaque panneau prenant l’entrée d’une paire torsadée. OMI, c’est l’option la plus simple.

Enfin, une approche un peu plus complexe consiste à créer des canaux de communication logiques et au lieu de passer un signal PWM à large bande passante, transmettre uniquement des données graphiques au format RVB. Cela nécessite que vous ayez un MCU comme votre BeagleBone à chaque emplacement du panneau. Le MCU sera connecté au panneau avec un câble plat comme dans votre configuration de développement actuelle. Ces microcontrôleurs seront mis en réseau avec des microcontrôleurs «maîtres» leur indiquant quoi afficher.

Avec BeagleBone, vous disposez d’un large choix d’options de mise en réseau. Je suggère d’utiliser le CAN intégré, mais d’autres interfaces de bus peuvent également être utilisées avec des puces d’extension appropriées (comme dans les articles de vos liens).

Conor Retra

Merci pour la réponse complète et la clarification de la terminologie. J’ai examiné vos suggestions et je pense que votre suggestion du SN65LVDM1677 fonctionnera parfaitement bien. Je vais concevoir une carte qui facilite la commutation entre TX et RX, selon le côté du lien. Une question pour vous: 3 des 16 canaux sont mis à la terre – ceux-ci doivent-ils contourner la puce ou dois-je les traiter comme des canaux de communication logiques (envoyer le signal via la puce)?

Érable

La terre doit aller directement au câble. C’est la même masse qui se connecte aux broches Gnd sur les puces. Je suggère d’utiliser une paire torsadée dans 3 câbles sur 4 pour cela. Vous ne devez pas les traiter comme des motifs séparés, en fait, il est préférable de les connecter tous ensemble juste à côté des prises. Une autre option consiste à utiliser l’une de ces 3 paires torsadées pour fournir + 5 V aux puces côté panneau, car il n’y a pas d’alimentation sur le câble ruban et il n’est pas conseillé d’avoir une puce sous tension alors que la puce de l’autre côté ne le fait pas. avoir du courant (si l’alimentation du panneau n’est pas branchée)

Érable

Puis-je vous demander pourquoi vous avez décidé contre SerDes? Cela aurait rendu le câblage beaucoup plus simple. De plus, je suis curieux de savoir comment envoyer des données à des panneaux chaînés? La documentation de votre lien indique que cela est possible mais ne donne aucune information sur la façon dont la bibliothèque ne le prend pas en charge.

Conor Retra

Bien que je n’ai pas encore pris l’engagement, je penche vers la solution de puce LVD simplement parce qu’elle est potentiellement plus facile à déboguer. Pour moi, le coût / désordre de quelques longueurs de câble CAT supplémentaires vaut bien la capacité de vraiment comprendre ce qui se passe dans la puce. Avec une technologie dont je ne suis pas sûr à 100%, j’aime l’idée de pouvoir déplacer lentement des canaux de données du câble ruban vers le câble CAT tout en observant les changements. Si j’avais déjà travaillé avec les puces SerDes auparavant et que je savais que cela fonctionnerait tout de suite avec ces panneaux, je choisirais certainement cela.

 

#(une, #de, #en, 16, canaux, cyclique, d’envoi, distance, méthode, Module, moyenne-longue, plusieurs, rapport, Signal, sur

 

google

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *