Voilelec     Retour page précédente
     8 connectés     # # # # # # # #  Une missive s'envolera dans l'éther...
 

Scanner sur module Comtech télévision

Récepteur à balayage 2300 MHz

 Module Comtech

Scanner de réception
Remarques sur la carte
Quelques écrans du scanner
Le logiciel
Source et fichier hexa
Mesure de la fréquence réelle
Liens

Retour sur la page Ham

Retour sur la page TV ham

Maj : 11/07/09

Abstract :

Use of a very cheap Comtech module and a $2 Pic, a 2 lines 24 characters display and 5 buttons, permit to create a perfect ham TV receiver on 13 or 23 cm with scanning facilities.

Résumé :

L'utilisation d'un module économique Comtech, d'un Pic à 2 €, d'un afficheur 2 lignes 24 caractères et 5 boutons, permet de créer un récepteur de télévision amateur parfait en 13 ou 23 cm avec les facilités d'un scanner à balayage

 

Scanner de réception

Cette page est consacrée au pilotage des modules Comtech. Ce sont des platines à faible coût qui constituent des émetteurs et récepteurs 13 cm et 23 cm d'un très bon rapport qualité/prix.
Ils sont fournis d'origine avec un PIC OTP (non reprogrammable) permettant de changer les fréquences par un poussoir ou des interrupteurs.
Ce fonctionnement minimaliste a incité Joël, F6CSX, à développer une carte très simple avec un PIC 16F84 et une dizaine de résistances et condensateurs.
Quelques lignes astucieuses de basic activent un afficheur et cinq poussoirs pour permettre un pilotage bien plus agréable.

 

Voir ici la page de Joël F6CSX sur ses réalisations

C'est le schéma initial de Joël, il manque le bouton "mémoire " sur RB2, la ligne RW du lcd est à la masse...

La contribution de F1FPS

Scanner en fonction

Voici le système en service. En bas à droite, la petite carte à Pic, à coté, le module optionnel haute tension "5A " pour le rétro éclairage de l'afficheur de 2 lignes 24 colonnes. J'ai gardé la même platine et amélioré le programme de Joël car je voulais un scanner sur la réception.

Les modifications principales sont :

Hardware

Passage en LCD de 2 lignes de 24 caractères pour pouvoir enrichir l'affichage.
Le programme initial de Joël utilisait l'espace total de 1 ko du PIC 16F84. Ma nouvelle version utilise 2 ko, Le 16F84 (obsolète et cher) a été remplacé par un 16F628, compatible hardware et moins cher (à $2) avec le double de ressources (détails en page Pic).

Software

Installation d'un scanner pour balayer une portion de bande avec affichage semi-graphique.
La vitesse est réglable pendant le scan entre 50 ms et 2 secondes par MegaHertz, en utilisant les touches "+ " et "- ".
Le scanner se lance par appui long sur la touche = "PAS "
Un appui court change le pas comme avant et sort du mode scan. Il est possible d'ajouter un transistor sur cette touche pour arrêter automatiquement le scan après détection de tops synchro.

Identification en clair des fréquences connues …
Bref ce qu'il faut pour réaliser un petit scanner de réception TV ham pour un prix imbattable.

Ces modifications ne sont intéressantes qu'en réception. En émission il suffit de quelques fréquences qui changent peu souvent, la version initiale de Joël suffit largement avec un afficheur une ligne. Le programme est disponible et commenté en fin de cette page.

Module Comtech RX 13 cm

 Haut de page

 

Remarques sur la carte

Cette carte à Pic consomme 3.6 mA sous 5 V.
C'est le montage le plus simple possible, un pic, dix résistantes ou condensateurs. Une version est sur le site de Joël, j'en mettrai une autre en CMS.

Il faut l'alimenter par un 5 V séparé, à ne pas tirer sur le Comtech, en filtrant bien car l'I2C, très mal géré par le Pic Basic, parasite un peu la vidéo.
Il est souhaitable d'alimenter le régulateur ou la zener, suffisante au vu de la consommation, par un filtre à cellules RC. Le Pic fonctionne encore à 2 V, mais il faut régler le contraste de l'afficheur en fonction de la tension.

À plus forte raison, si vous utilisez un module haute tension pour le rétro éclairage, il faut une autre dource de 5 V indépendante du Comtech et du Pic, car il parasite fortement la vidéo. Il faut filtrer le + 12 et aussi le négatif, pour alimenter le module en flottant, ce qui évite les retours par la masse. Un régulateur n'est pas indispensable, il suffit de régler les chutes de tension dans les filtres pour avoir un petit 5 V au module pour une entrée normale à 13.6 V.
La liaison en HT est évidemment en fils torsadés, jamais en câbles parallèles. Le module est monté au plus près de l'afficheur.
Un module haute tension classique "référence 5A " consomme 30 mA, soit huit fois plus que le Pic et l'afficheur.

Le module '5A " sort en charge un signal vaguement sinusoïdal de 280 V à 540 Hz.
La puissance consommée est de 5 * 30 = 150 mW, le rendement est de l'ordre de 80 %.
Un rétroéclairage à leds consomme un peu plus mais ne génère aucun parasite, cela dépendra de l'afficheur que vous utilisez.

 

Les signaux suivants sont obtenus avec un oscilloscope numérique Tektronix TDS 3012

 

Sortie clock / 4

Vitesse horloge. Elle est de 4 MHz, ce que nous vérifions en mode de programmation RC clock IO, ce qui nous donne une horloge au quart de la fréquence de l'oscillateur en sortie de la patte clock out (15).

Détail du signal sortie (horloge/4) à 1 MHz. (carte PIC F6CSX à 16F628 )

 

 

Sortie clock / 4 et port B0 alterné

Vous constatez sur les signaux des pics de suroscillation très importants et des fronts d'attaque médiocres, cela provient de mauvais découplages, il faut monter une CMS au plus court entre les pattes GND (5) et VCC (14).

Signal sortie (horloge/4) à 1 MHz et impulsions sur port B0 (carte PIC F6CSX à 16F628 )

 

La trace du haut de cet oscillogramme représente ce même signal clock/4, qui donne le cycle de base des instructions.
La trace du bas est obtenue par le simple programme :
Incrémente port B (2 cycles)
Saute ligne précédente (un cycle)

Vous constatez bien que la durée de cette boucle, la plus courte qu'il soit possible de visualiser, est bien de 3 cycles donc 3 microsecondes.
Il s'agit d'un compteur 8 bits, nous trouvons donc les demi-périodes de :
Sur B0 3 ms, donc un signal carré de 167 kHz
Sur B1 6 ms …
Sur B7 3 * 27 ms = 3*128 = 384 ms, donc un signal carré de 1.3 kHz

Voici le bout de programme minimal en assembleur pour générer ces signaux.

  BSF STATUS,RP0 Banque 1
  MOVLW 0xFF  
  MOVWF TRISB Port B tout en sorties
loop INCF PORTB,1 Ajoute 1 au registre B (2 cycles)
  GOTO loop (1 cycle)

 

 

Sorties I2C Clock et Data

Voici le signal obtenu au moment d'un envoi d'ordre de changement de fréquence. Pour le visualiser facilement et synchroniser l'oscilloscope, court-circuiter provisoirement le bouton "+ " ou "- ", une trame sera sortie toutes les 500 ms, durée de la boucle main.

Signaux I2C à 23 kHz, SCL (clock) et SDA (datas) (carte PIC F6CSX à 16F628 )

 

La fréquence est d'une vingtaine de kiloHertz, c'est lent mais sans importance pour notre application, les périphériques I2C fonctionnant de quelques centaines de kHz à des fractions de Hertz.
Nous évoquerons le problème des vitesses du bus I2C dans la page décrivant la commande déportée du Comtech à quelques dizaines de mètres.

Nous remarquons que si aucune touche n'est appuyée, donc aucun ordre envoyé au synthétiseur, une trame d'horloge seulement, sans data, est envoyée lors de chaque boucle "main " ( Il faudrait d'ailleurs écrire "datum ", car le nul est singulier).
Cette anomalie provient de la gestion de l'I2C par le PicBasic. La routine est très généraliste et lourde. En écrivant un module spécifique I2C en assembleur, il est possible de faire bien plus compact et de laisser le bus silencieux hors appel. Ce n'est pas gênant ici, les trames I2C ne perturbent pas la vidéo si l'alimentation du Pic est bien filtrée.

 Haut de page

 

Quelques écrans du scanner

2 . 3 2 0 . 0 0 0   G H z       1 0 0 0       A
            t x   F 5 Z A J           F 1 F P S

Écran statique, le récepteur écoute 2.320 et affiche la fréquence connue, déclarée dans les tables "transmission sur le relais F5ZAJ ".
Le pas indiqué est de 1 MHz, mémoire A sélectionnée.

 

2 . 3 2 0 . 3 7 5   G H z         1 2 5       D
                        .             F 1 F P S

Le récepteur écoute 2.320.375 et affiche un point sur la ligne du bas car la fréquence n'est pas connue,
Le pas indiqué est de 125 kHz, mémoire D sélectionnée.

 

A p p u i   c o u r t   =   c h a n g e   p a s
A p p u i   l o n g     =   l a n c e   s c a n

En cours d'appui sur touche "pas ". En maintenant appuyé deux secondes, le balayage est lancé entre les mémoires "E " et "F ".

 

2 . 3 0 0         2 . 3 6 1 .         2 . 4 0 0
                              _ _ _ _ _ _ _ _ _

Scan en cours, à gauche butée de départ, au centre fréquence en cours, à droite butée de fin.
En bas bargraph de progression.
La touche "pas " sort du balayage à la fréquence en cours.
Les touches "+ " et "- " ralentissent ou accélèrent le balayage.

 Haut de page

 

Le logiciel

Commandes

Les commandes se font par 5 touches
"+ " et "- " incrémente/décrémente la fréquence en affichage statique ou la vitesse pendant le balayage.
"pas " permet de sélectionner le pas de balayage de 125 khz, 250, 500, 1 MHz ou 10 MHz et lance le balayage par appui long. Les pas de 125 et 250 kHz semblent assez inutiles, ces écarts sont invisibles sur la vidéo.
"mémoire " sélectionne une des 6 mémoires de A à F. Mémoires spéciales : E et F sont les butées réglables du balayage.
"écrit mémoire " transfère la fréquence affichée dans la mémoire en cours.

 

Langage

Le logiciel initial a été écrit par Joël en PicBasic. Pour aller vite, j'ai repris cette base pour ajouter des fonctions et donc conservé le basic initial, mais le programme actuel n'est pas bien structuré . C'est suffisant pour une si petite application, mais frustrant pour un puriste de la programmation.
Je referai ultérieurement une version plus propre en C.

 

Évolutions du logiciel

Il est possible de rajouter d'autres fonctions, mais dans une prochaine version en C, le PicBasic actuel occupant les 2 ko mémoire.

 

Réglage du contraste de l'afficheur par logiciel

Il faut rajouter quelques composants pour réaliser un convertisseur rustique analogique-numérique car toutes les pattes sont déjà occupées. L'intérêt est douteux car une fois réglé, il n'est plus utile d'y toucher. Sur la version suivante de la carte, le potentiomètre sera en option et remplacé par deux résistances CMS.

 

Ajustement fréquence de référence

Une autre petite fonction semble plus intéressante; Ajouter un menu pour décaler par logiciel la fréquence du PLL en effet il y a de la dispersions et la fréquence de réception s'écarte de quelques MHz de celle affichée, suivant les platines et la température. Cela ne se règle pas dans le module Comtech. Cette fonction d'ajustement fin semblerait utile.

 

Ajout d'un S-mètre

Joël m'a soumis une idée intéressante. En affichage statique, utiliser la ligne du bas comme S-mètre. Cela demande de rajouter un convertisseur Analogique - numérique, comme par exemple le MAX127 sur le bus I2C.
Pour les esprits curieux, et pour changer du Pic, vous trouverez ici mon module adapté à la famille 8051, un des éléments des bibliothèques que je développe et qui contiennent des centaines de modules de ce style. Voir en ligne, source MAX127
Cela permet de comprendre la différence entre un développement modulaire propre et la joyeuse pagaille d'un bricolage en basic.
Il y a toutefois des problèmes induits par cette adjonction :
Le Pic n'est intéressant qu'en version minimaliste à 2 €, dès que l'on rajoute des composants externes ou un modèle plus gros, il faut passer à des familles plus puissantes.
Nous sommes déjà à la limite des 2 ko disponible, il faut réécrire en assembleur pour l'ajouter.

 

Suppression du changement de pas

Le bouton de changement de pas est inutile. Je l'ai conservé car il figurait sur la réalisation d'origine de Joël (legacy…). Sur mes applications, j'utilise toujours un incrément/décrément à accélération progressive. Des appuis courts sautent d'un pas minimal, ici 125 kHz. En maintenant appuyé quelques coups, la valeur s'arrondit à 250 kHz et la répétition accélère toujours progressivement, puis 500 etc.
Après quelques secondes d'appui, le pas est de 1 MHz avec vitesse croissante.
Cela permet de récupérer une patte pour une autre application

 

Récupérer des pattes

Si l'on veut rajouter des touches, il existe un moyen d "économiser les pattes de port. Il suffit de faire des combinaisons de 2 touches au plus.
Avec 4 touches simples nous n'avons évidemment que 4 choix, mais plus d'autres avec long / court sur les touches sans autorepeat :
0001,0010, 0100 et 1000
Si l'on combine les appuis simultanés, nous avons toutes les combinaisons de 24 soit 16 moins le zéro non détecté, donc 15 possibilités sur 4 fils.
J'entends déjà hurler la meute "mais je ne me souviendrai jamais de toutes ces combinaisons de touches "
Elsheimer frappant, il faut trouver une astuce. C'est très simple, il suffit de rajouter autant de touches que nécessaire, étiquetées en clair et avec 2, 3 ou 4 diodes pour tirer à la masse les touches de la combinaison.
Vous avez ainsi droit à 15 touches sur 4 fils de port.
Comme vous pouvez aussi combiner appuis longs et courts, vous disposez de 30 fonctions sur 4 fils (moins les autorepeat).

Joli non ? Mais il est possible de faire encore bien mieux, plein de touches avec 2 fils seulement (plein veut dire plus que beaucoup) .
Il y a un petit piège, il faut rajouter un peu de hardware sur le clavier, mais ce n'est qu'un simple registre à décalage cmos. Les sorties sont mises à la masse par les touches
La mise des deux fils de port en sortie basse produit une action sur le reset et la mise à 1 du bit faible (diodes, résistance et condensateur)
Un des fils sert ensuite à envoyer les impulsions sur l'horloge pour shifter (faire tourner à gauche) le bit qui fournit une sortie active.
Toutes les sorties sont tirées à une unique résistance via des diodes en étoile. En court-circuitant froidement la sortie par la touche appuyée (il n'y a pas de risque pour le cmos en alimentant avec résistance série) le fil en entrée détectera la perte de tension au passage de la touche appuyée.

Il suffit d'avoir compté les impulsions pour connaître le rang de la touche. Le nombre de touches est illimité avec 2 pattes de port, car ces registres sont cascadables.

 Haut de page

 

Méthode de mesure de la fréquence réelle

Il existe trois méthodes simples pour visualiser l'écart entre la fréquence vraie et celle affichée, envoyée au synthétiseur.

 

Méthode de mesure directe de la fréquence

La raie de l'oscillateur infradyne est très puissante. Elle est facile à renifler avec une sonde en ouvrant le couvercle ou en passant une antenne par un trou du capot.
Sur mon module, réglé sur 2400 MHz je trouve la raie à 1920.475 MHz ce qui indiquerait que la FI est de 479. 525 MHz, alors qu'elle est donnée par la littérature à 479.5 MHz. Cela ne signifie en rien que la fréquence n'est décalée que de 25 kHz, autant dire rien, car la dispersion sur le filtre est bien plus grande. En réalité, mon écart réel est de 2 MHz ! .
Cette méthode n'a pas d'intérêt pour la mesure précise, mais est utilisée pour suivre le décrochage de l'oscillateur à l'analyseur de spectre si vous poussez le module aux limites, en vitesse ou fréquence.

 

Méthode de mesure indirecte sur emetteur tv local

Utiliser un émetteur local, en coupant la vidéo le temps de mesurer sur un analyseur de spectre de référence la fréquence réelle. Il faut évidemment être certain de son calibrage.
Envoyer le signal pilote connu modulé par une mire sur le module stabilisé en température et baisser puis augmenter la fréquence pour constater l'apparition de "flammes " blanches et noires à droite des transitions verticales.

Extrait de mire

Ces trois images sont obtenues en conditions réelles de transmission de mire, sortie du récepteur envoyée sur la carte d'acquisition "TV Haupauge ".
Flammes noires, la fréquence de réception est trop basse de 9 MHz
Flammes blanches, la fréquence de réception est trop haute de 9 MHz

La bonne fréquence de réception est au centre. La mesure se fait au pas de 1 MHz, il n'est pas possible d'apprécier plus finement.
Sur mon module récepteur, il faut programmer le synthétiseur sur 2318 MHz (moins la FI théorique évidement) pour une émission de 2120 MHz vrais. Cette erreur de 2 MHz est dans la norme acceptable.

 

Méthode de mesure indirecte au générateur

Avec un bon générateur synthétisé, de référence, et qui ne bave pas, injecter une porteuse pure en atténuant à la limite de l'apparition du souffle et chercher de part et d'autre de la fréquence les premiers clicks noirs ou blancs.
La mesure sera beaucoup plus fine que précédemment.

En résumé

Le décalage peut atteindre quelques MHz suivant les modules. Ne vous fiez donc pas aveuglément à la valeur envoyée au synthétiseur pour accuser votre correspondant de ne pas être sur la bonne fréquence si vous n'êtes pas étalonné.

Il n'est donc pas possible de faire une mesure directe, seule la mesure indirecte décrite sera significative avec une précision de l'ordre du MHz sur une vidéo et 100 Hz sur un bon générateur.

Module Comtech RX 13 cm

 Haut de page

 

Source et fichier hexa

Source en Picbasic et fichier .hex pour carte à PIC 16F628 et afficheur lcd 2*24. Attention ne fonctionne pas avec le 16F84 qui n'a que la moitié de la capacité. Sur le programmateur, n'oubliez pas de déclarer l'horloge en Int RC I/O et non sur d'autres modes d'horloge !
Le source est assez largement commenté pour être compréhensible.
N'abusez pas trop de la facilité immédiate du basic sous peine de vous enfermer dans la programmation "rapide et sale ". C'est très bien pour une très petite application de ce type, mais inadapté pour des projets ambitieux et structurés.

 

Télécharger la version scanner 13 cm du 21/08/03 "quick and dirty " de 8 ko

Pour les fainéants et inquiets qui ne veulent pas charger de dangereux fichier zip qui peut leur faire exploser leur PC,
voir ici le source en ligne

 Haut de page

 

Liens

Retour sur la page PIC

Une prochaine page à suivre montrera une dizaine de solutions pour déporter le récepteur ou l'émetteur au contact de l'antenne et le commander d'en bas au bout de quelques dizaines de mètres de paires téléphoniques, dans le but d'économiser du coaxial très cher à ces fréquences.
Commande Comtech déportée … à suivre…

Joël, F6CSX : f6csx.free.fr
Laurent F5HII: electrodev.org
Complément sur les Comtech : von-info.ch/hb9afo/comtech
Beaucoup de modifications Comtech: ve6atv.sbszoo
Controller for up to 4 Comtech AWV314 : lea.hamradio.si/~s51kq
Mesures sur le 2.4 : f4bxl
/f1ulq.free.fr/technique/txatv23

Le constructeur : comtech-tw.com.tw
Zarlink produisait le SP5055 (obsolete) : lien mort

Quelques distributeurs Comtech : comelec.fr . . . . infracom.f. . . . . mobicomm.net . . . . lechner-cctv.de

Il existe de très nombreuses autres pages sur le pilotage des Comtech

* Liens vérifiés le 11/07/09

 Haut de page

 

Liens matériels de mesure et TV ham

Autres pages sur la mesure et le radioamateurisme :

Achat et vente de matériel électronique :

Avant tout achat par Internet, lire la page "Arnaques sur eBay "

Mes liens radioamateur sont regroupés dans cette page : Liens Ham

 

© Christian Couderc 1999-2010     Toute reproduction interdite sans mon autorisation

Merci aux journalistes qui pillent sans vergogne mon site,
d’avoir au moins la courtoisie de citer leurs sources…

Page vue   19865   fois       IP : 38.107.191.88

 Haut de page         Dernière retouche le 21 Octobre 2009 à 21 h           Retour page précédente

    Voilelec