12.07.2015 Views

Attila – bloque-pub TV – fin des enregistrements de pubs

Attila – bloque-pub TV – fin des enregistrements de pubs

Attila – bloque-pub TV – fin des enregistrements de pubs

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Michael Schulze Dipl.-Ing.<strong>Attila</strong> – Bloque-<strong>pub</strong> <strong>TV</strong>Fin <strong><strong>de</strong>s</strong> <strong>enregistrements</strong> <strong>de</strong> <strong>pub</strong>sCe montage sophistiqué élimine,lors d’un enregistrement, les blocs<strong>pub</strong>licitaires, ô combien gênants.44elektor - 6/2004


Ce problème, vous le connaisseztous : lors <strong>de</strong> l’enregistrement d’uneémission d’une chaîne commercialesur magnétoscope ou graveur <strong>de</strong> DVD,on a le choix soit <strong>de</strong> suivre l’émissionen « stand-by » et d’appuyer sur latouche STOP (en veillant à ne pasoublier d’appuyer à temps sur le boutonRECORD lorsque le programmereprend), soit on élimine la <strong>pub</strong> àgrand renfort <strong>de</strong> technique, soitencore on l’accepte tout simplement àcontre coeur.Mais on peut également se résigner àpasser à la caisse : pour une chaîne <strong>de</strong>Pay-<strong>TV</strong> sans <strong>pub</strong>, soit pour un service<strong>de</strong> suppression <strong>de</strong> celle-ci, <strong>de</strong>mandé àla « fée-télévision », notre approche.Grâceà la législationLe <strong>bloque</strong>ur <strong>de</strong> <strong>pub</strong> que l’auteur a baptisé« ViConti » (Vi<strong>de</strong>oContinue ouViConti sont <strong><strong>de</strong>s</strong> marques déposées)peut uniquement fonctionner grâce aucontrat état-chaînes d’émission du 31août 1991 (en allemand :www.swr.<strong>de</strong>/imperia/md/content/rundfunkgebuehren/rfgstaatsvertrag.pdf).Les paragraphes établissent en effetune différentiation nette entre lesémissions <strong>pub</strong>licitaires et les contenusrédactionnels, ce qui se traduit par lasituation <strong>de</strong> fait que les contenusrédactionnels (dont font partie égalementles films) sont émis dotés du logo<strong>de</strong> la chaîne alors que la <strong>pub</strong> ne lecomporte pas.Une électronique reposant sur cetteconstatation doit :– Reconnaître la présence ou non dulogo <strong>de</strong> la chaîne dans l’image <strong>de</strong>télévision,– Surveiller l’image <strong>de</strong> télévision et, aucas où le logo disparaîtrait,–Interrompre, au niveau <strong>de</strong> l’appareilenregistreur (magnétoscope, enregistreur<strong>de</strong> DVD) l’enregistrement parune comman<strong>de</strong> par infrarouge,– Continuer <strong>de</strong> surveiller l’image <strong>TV</strong> et,lors <strong>de</strong> la réapparition du logo, redémarrerl’enregistreur.De nos jours, le traitement d’image entemps réel n’a plus rien d’exceptionnel.Les PC et <strong><strong>de</strong>s</strong> processeurs <strong>de</strong> signalspécialisés sont <strong><strong>de</strong>s</strong> outils pré<strong><strong>de</strong>s</strong>tinéspour ce faire. Ceci à un coût (relativement)élevé il est vrai. Les microcontrôleurs« ordinaires » sont visiblementtrop lents et le chapitre <strong>bloque</strong>ur <strong>de</strong><strong>pub</strong> serait ainsi rapi<strong>de</strong>ment clos, s’iln’existait pas un minuscule microcontrôleur,le SX28 <strong>de</strong> Scenix (<strong>de</strong>venu Ubicom)qui, en raison <strong>de</strong> son incroyablevitesse, constitue, dans <strong><strong>de</strong>s</strong> cas spécifiquesdu moins, une alternative auxprocesseurs <strong>de</strong> signaux.Si à l’origine le SX28 était spécifié pour50 MHz <strong><strong>de</strong>s</strong> essais ont montré qu’iltournait sans le moindre problème jusqu’à80 MHz au moins. Actuellement75 MHz sont <strong>de</strong>venus standard, uneversion 100 MHz si annoncée <strong>de</strong>puisun certain temps n’est pas encoredisponible.Puisque nous en sommes à parler ducontrôleur pourquoi ne pas jeter uncoup d’oeil rapi<strong>de</strong> sur le schéma <strong>de</strong> lafigure 1. Outre le contrôleur, les composantsles plus importants s’appellentLM1881, IC9, un séparateur <strong><strong>de</strong>s</strong>ynchro vidéo et ADC1175, un CAN(Convertisseur Analogique/Numérique).On retrouve 2 périphériquespour microcontrôleur, IDT6698, IC5,une RAM 64 K x 4 servant à la mémorisation<strong><strong>de</strong>s</strong> informations d’image etune EEPROM I2C. Le contrôleur pilotela RAM en mo<strong>de</strong> sériel au travers <strong>de</strong>compteurs rapi<strong><strong>de</strong>s</strong>, IC3 pour les pointsd’image par ligne (pixels) et IC8 pourles lignes d’image. Le multiplicateurd’horloge ICS502 dérive du quartz <strong>de</strong>20 MHz l’horloge <strong>de</strong> 80 MHz nécessaireau contrôleur. Le CAN est lui ca<strong>de</strong>ncéà 20 MHz.L’ampli T1/T2 rehausse le signal vidéoà traiter à 2 V environ et en filtre lachroma (porteuse couleur) par le biais<strong>de</strong> L1, C5 et C6. Le CAN, IC2, numérisesur 8 bits le signal amplifié, le résultatattaquant le port RC du contrôleur.Le séparateur <strong>de</strong> synchro extrait dusignal vidéo d’une part le signal <strong>de</strong>ligne (BP) utilisé pour la synchronisationdu contrôleur et le pilotage du circuit<strong>de</strong> verrouillage, IC7.C et T3 <strong>de</strong>façon à ce que le signal vidéo coupléen alternatif gar<strong>de</strong> le niveau requis. Lelogiciel a en outre besoin du signalPair/Impair (Odd/Even) pour pouvoirreconstituer correctement les <strong>de</strong>ux<strong>de</strong>mi-images mémorisées.Il faut tout d’abord que la télécomman<strong>de</strong>IR « apprenne » au contrôleur lesignal servant à arrêter l’enregistreurlors d’une <strong>pub</strong>. D’où la présence d’unrécepteur IR du type SFH203A. À l’origine,le récepteur attaquait directementune entrée à trigger <strong>de</strong> Schmitt,mais une porte NON-ET (NAND) classique<strong>de</strong> IC7.D remplit ici la mêmefonction. Il n’est pas nécessaire <strong>de</strong> prévoird’amplification vu que la sensibilité<strong>de</strong> l’ampli doit être, à <strong><strong>de</strong>s</strong>sein, faible(quelques cm d’écart <strong>de</strong> fonctionseulement). Depuis le trigger <strong>de</strong>Schmitt le signal est, si besoin était,transféré à l’entrée RB1 du contrôleurpar le biais du circuit multiplexeur queconstituent IC7 et T4.Les 2 signaux IR (enregistrement etpause) reçus par le magnétoscope sontmémorisés dans l’EEPROM sérielleIC6, une 24C08, d’où ils sont, en cas <strong>de</strong>besoin, extraits et émis par le biais <strong>de</strong>la dio<strong>de</strong> d’émission IR LD1, uneLD271H.Si le <strong>bloque</strong>ur <strong>de</strong> <strong>pub</strong> ViConti ne possè<strong>de</strong>pas d’affichage pour visualisation<strong>de</strong> son état, il n’en comporte pas moins2 LED, D3 et D4. Pilotées par une seuleligne elles peuvent visualiser 4 situa-6/2004 - elektor 45


Remarque :Il est important, pour le fonctionnement du <strong>bloque</strong>ur <strong>de</strong> <strong>pub</strong> que :– Le logo <strong>de</strong> la chaîne se trouve dans le tiers supérieur <strong>de</strong> l’image et àune position fixe (ce qui est le cas avec nombre <strong>de</strong> chaînes françaiseset la majorité <strong><strong>de</strong>s</strong> chaînes étrangères)– Le signal vidéo soit <strong>de</strong> très bonne qualité. Si l’image ne synchronisepas à 100%, le logo frétille (ce qui n’est pratiquement pas visible àl’oeil nu) ce qui empêche une i<strong>de</strong>ntification correcte du logo.logo, à une comparaison avec unevaleur <strong>de</strong> seuil adaptée. Si, successivement,on trouve <strong><strong>de</strong>s</strong> images <strong>TV</strong> présentantune différence trop faible, on endéduit que le logo a disparu et onenvoie la comman<strong>de</strong> par infrarouged’arrêter l’enregistrement.Scenix propose un module logiciel <strong>de</strong>pilotage du bus I 2 C baptisé Virtual Peripheral;nous l’avons modifié pour lacomman<strong>de</strong> <strong>de</strong> l’EEPROM en vue <strong>de</strong> lamémorisation du co<strong>de</strong> <strong>de</strong> télécomman<strong>de</strong>IR <strong>de</strong> l’enregistreur à télécomman<strong>de</strong>r.Comme il n’est nécessaire d’envoyer àl’enregistreur que 2 comman<strong><strong>de</strong>s</strong> IR,l’intégration d’une fonction d’apprentissagetombe sous le sens. Lespatrons d’impulsions enregistrés parinterruption subissent, en mo<strong>de</strong> d’apprentissage,une quantification sur unechrono-trame, les valeurs obtenuesétant stockées dé<strong>fin</strong>itivement enEEPROM. En cas <strong>de</strong> besoin, les donnéesen EEPROM sont transférées enRAM <strong>de</strong> sorte que le train d’impulsionspourra être reconstruit, indépendammentdu co<strong>de</strong> utilisé avant d’être émispar l’émetteur IR.Mise en oeuvrePour un fonctionnement correct il fautdisposer d’un très bon signal vidéo. Sil’image ne se synchronise pas à 100%,le logo frétille (ce que l’on ne détectepas à l’oeil nu) mais qui empêche unei<strong>de</strong>ntification correcte.Après application <strong>de</strong> la tension d’alimentationou une action sur la touched’initialisation (Reset), le programmese déroule en 4 étapes. Au cours <strong>de</strong> lapremière on peut choisir les 2 comman<strong><strong>de</strong>s</strong>IR servant au pilotage <strong>de</strong> l’enregistreur.APPRENTISSAGE DU CODE IRAllumer la LED verteAttendre le signal IROn dispose alors <strong>de</strong> 4 secon<strong><strong>de</strong>s</strong> environpour actionner la touche requise(REC par exemple). Il faudra placer l’émetteurIR <strong>de</strong> la télécomman<strong>de</strong> àquelques centimètres seulement <strong>de</strong> ladio<strong>de</strong> IR <strong>de</strong> réception du <strong>bloque</strong>ur <strong>de</strong><strong>pub</strong>. S’il ne reçoit pas <strong>de</strong> signal IR aucours <strong>de</strong> ces 4 s, le programme passeà l’étape suivante : RECHERCHE DULOGO, sinon il passe aux points suivants:Détection d’un signal IRClignotement <strong>de</strong> la LED verteLecture du signal IRMémoriser le co<strong>de</strong> en EEPROMExtinction <strong>de</strong> la LED verteAllumage <strong>de</strong> la LED rougeAttendre un signal IRLe processus d’apprentissage du co<strong>de</strong>PAUSE est similaire à ceci près quel’on ne dispose que <strong>de</strong> 2 s. En l’absence<strong>de</strong> réception <strong>de</strong> signal IR aucours <strong>de</strong> ces 2 s, le programme passeà l’étape suivante : RECHERCHE DULOGO, sinon il passe aux points suivants:Détection d’unsignal IRClignotement<strong>de</strong>la LEDrougeLecture dusignal IRMémoriserle co<strong>de</strong> enEEPROMExtinction <strong>de</strong>la LED rougeLa saisie <strong><strong>de</strong>s</strong>comman<strong><strong>de</strong>s</strong> d’enregistrement(Record) et d’arrêt(Pause) –il est bienentendu possible <strong>de</strong>programmer d’autrescomman<strong><strong>de</strong>s</strong> <strong>de</strong> télécomman<strong>de</strong>– ne sefait qu’une fois, lors <strong>de</strong> la première utilisationou lorsque l’on veut modifierles comman<strong><strong>de</strong>s</strong>. Sinon il suffit <strong>de</strong> mettrel’appareil sous tension !RECHERCHE DU LOGOAllumer les LED rouge et verteVoici la procédure exécutée successivementpour la première et la secon<strong>de</strong><strong>de</strong>mi-image :Attendre une interruption <strong>de</strong> début d’imageAttendre les interruptions <strong>de</strong> ligneTraitement <strong><strong>de</strong>s</strong> lignes 33 à 96S’il est impossible <strong>de</strong> détecter le logodans la mémoire d’image externe, leprogramme reste dans cette boucle,sinon il passe à l’étapeANALYSE DU LOGONous avons examiné ce processusdans le détail dans le paragraphe intituléPhase 2.6/2004 - elektor


Liste <strong><strong>de</strong>s</strong> composantsRésistances :(toutes à film métallique, 0,25 W/5%)R1 = 47 ΩR2 = 8kΩ2R3 = 220 ΩR4,R6 = 100 ΩR5 = 3kΩ6R7 = non implantéeR8 = 120 ΩR9,R15 = 10 kΩR10 = 3kΩ9R11 = 75 ΩR12 = 620 ΩR13 = 680 kΩR14 = 3kΩ3R16 = 120 kΩR17,R22 = 220 kΩR18,R19 = 1kΩ5R20 = 27 ΩR21 = 1kΩ2Con<strong>de</strong>nsateurs :C1 = 10 nF/63 V NP0C2 à C4,C7,C8,C11,C14 à C16 =100 nF/63 V X7RC5= 220 pF/63 V NP0C6 = 56 pF/63 V NP0C9 = 100 pF/63 V NP0C10= 560 pF/63 V NP0C12,C13,C18 = 220 nF/63 V X7RC17 = 33 pF/63 V NP0C19 à C23 = 10 µF/16 V E2,5-5C24 = non implantéC25 =100 µF/16 V E2,5-6Semi-conducteurs :Figure 4. La sérigraphie <strong>de</strong> la platinedouble face montre que le « client »source <strong>de</strong> problèmes potentiels est laSRAM en boîtier SOJ à 28 pattes.SURVEILLANCE DU LOGOLa procédure suivante est exécutéesuccessivement pour la première et lasecon<strong>de</strong> <strong>de</strong>mi-image :Attendre une interruption <strong>de</strong> début d’imageAttendre les interruptions <strong>de</strong> ligneTraitement <strong><strong>de</strong>s</strong> lignes 33 à 96Après traitement, le logiciel prend unedécision :Logo présentLa LED verte clignote périodiquementRetour à la procédure SURVEILLANCEDU LOGOÀ nouveau pas <strong>de</strong> détection <strong>de</strong> logoLa LED rouge clignote périodiquementOn passe à ÉMISSION DU CODE IR 1Le logo est à nouveau détectéLa LED verte clignote périodiquementOn passe à ÉMISSION DU CODE IR 250elektor - 6/2004


D1,D2 = 1N4148D3 = LED 5 mm rouge (faible courant)D4 = LED 5 mm verte (faible courant)D5 = SFH203FA (In<strong>fin</strong>eon)T1,T3,T4 = BC547BT2 = BC557BT5 = BC337/40LD1 = LD271-H (In<strong>fin</strong>eon/Osram) *IC1 = ICS502M (ICS)IC2 = ADC1175CIJM (National)IC3,IC8 = 74AC4040IC4 = SX28AC/DP (Scenix, <strong>de</strong>venuUbicom)IC5 = 61298P6 SOJ28-3 (IDT)IC6 = NM24C08N08E (Fairchild)IC7 = 74HCT00IC9 = LM1881N08E (National)IC10 = 78L05Divers :X1 = quartz 20 MHz (HC49U-H)L1 = self 4µH7K1 = embase ChinchK2 = embase basse tension 2 mmK3 = mini-embase jackS1 = bouton-poussoir à contact travail (telque, par exemple, Schurter 1301.9502sans capuchon)alimentation secteur 7,5 à9 VCC/300 mAboîtierTête d’émission IRjack mâle (tel que, par exemple, LumbergKLS2SL)dio<strong>de</strong> d’émission IR LD271-H (In<strong>fin</strong>eon)Figure 5. Le cavalier placé ainsi surl’embase <strong>de</strong> programmation sert autransfert <strong>de</strong> l’horloge vers lemicrocontrôleur.Figure 6. La tête d’émission IR est constituée d’un jack auquel on sou<strong>de</strong> la dio<strong>de</strong> aulien d’un câble.ÉMISSION DU CODE IR 1Chercher le premier co<strong>de</strong> IR apprisdans l’EEPROM et l’émettre 3 foisRevenir à la procédure SUR-VEILLANCE DU LOGOÉMISSION DU CODE IR 2Chercher le second co<strong>de</strong> IR apprisdans l’EEPROM et l’émettre 3 foisRevenir à la procédure SUR-VEILLANCE DU LOGOConstructionLes dimensions <strong>de</strong> la platine doubleface à trous métallisés du <strong>bloque</strong>ur <strong>de</strong><strong>pub</strong> sont telles qu’il se glisse exactementdans le coffret mentionné sansqu’il ne soit nécessaire <strong>de</strong> câbler <strong>de</strong>composants. L’implantation <strong><strong>de</strong>s</strong> composantsappelle quelques remarques vuque le multiplicateur d’horloge, leCANet la RAM sont <strong><strong>de</strong>s</strong> CMS. Si le soudage<strong><strong>de</strong>s</strong> 2 premiers composants ne requiertqu’un fer à sou<strong>de</strong>r à pointe <strong>fin</strong>e et unemain assurée, la mémoire SRAM elle seprésente sous la forme d’un boîtier SOJdont les broches se trouvent sous lecomposant. On utilisera une métho<strong>de</strong>«brutale » mais efficace :1. Fixer le circuit en 2 endroits diamétralementopposés en soudant sesconnexions extérieures.2. On sou<strong>de</strong> aussi rapi<strong>de</strong>ment que possible,sans tenir compte <strong><strong>de</strong>s</strong> ponts<strong>de</strong> soudure pouvant être occasionnéspar cette opération, toutes lespattes. On préférera un fer à sou<strong>de</strong>rnormal (pas <strong>de</strong> pointe en aiguille)les choses allant plus vite.3. On positionne <strong>de</strong>vant les pattessoudées un morceau <strong>de</strong> tresse à<strong><strong>de</strong>s</strong>sou<strong>de</strong>r imbibée <strong>de</strong> flux <strong>de</strong> désoudageet on fait passer un fer àsou<strong>de</strong>r bien chaud le long <strong><strong>de</strong>s</strong> pattes.Avec un rien <strong>de</strong> chance, on aurapu éliminer ainsi tout excé<strong>de</strong>nt <strong><strong>de</strong>s</strong>oudure, les soudures paraissantfort honnêtes. Il va bien entendu falloirvérifier qu’il n’existe plus <strong>de</strong>pont <strong>de</strong> soudure. L’important estque la soudure contienne suffisamment<strong>de</strong> flux <strong>de</strong> soudage et que leschoses aillent vite.La mise en place du reste <strong><strong>de</strong>s</strong> composantsn’appelle pas <strong>de</strong> remarque particulière.Attention à la polarité correcte<strong><strong>de</strong>s</strong> dio<strong><strong>de</strong>s</strong>, con<strong>de</strong>nsateurs, transistorset circuits intégrés.L’embase au centre <strong>de</strong> la platine sertuniquement lors d’une programmationen circuit (In-Circuit-Programming àl’ai<strong>de</strong> <strong>de</strong> la SX-Key <strong>de</strong> Parallax) ducontrôleur. Pour une utilisation normale,il suffit, comme le montre lafigure 5, d’implanter un cavalier enposition 1, <strong>de</strong> manière à fournir l’horlogeau contrôleur.La figure 6 montre, en guise <strong>de</strong> conclusion,la technique <strong>de</strong> réalisation <strong>de</strong> l’émetteurIR. On sou<strong>de</strong> une dio<strong>de</strong> IR àun jack, l’ensemble étant placé dansun support pour jack en équerre. Ladio<strong>de</strong> est verrouillée à l’ai<strong>de</strong> d’une ron<strong>de</strong>lleen plastique. Il suffira ensuite d’orienterla LED pour qu’elle soit parfaitementdirigée sur la dio<strong>de</strong> <strong>de</strong> réception<strong>de</strong> l’enregistreur.(040051-1)6/2004 - elektor 51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!