Télécommande voiture RC + caméra

dje8269

Senior Member
Oui , d'apres les pros de FPV , avec mes 433Mhz, je tombe sur l'harmonique 3 en 1.2Ghz . c'est ca qui brouille le signal . c'est également pour ca qu'en changeant la frequence avec les canaux , j'ameliore les choses , car je m'eloigne de cette harmonique .

Je l'ai aussi retrouvé en mettant en Vtx de 900Mhz qui ne brouillais pas le Rx , mais par contre c'etait le TX radio qui brouillais mon ecran .....

Du coup je suis tenté de dire qu'avec une commande en 869 et un emetteur en 1.2Ghz , rien ne serait perturbé .... .

Sinon sur le site de radiometrix j'en ai vu d'autre , en 174Mhz il annonce portée supérieur a 10Kms :

Lien 169Mhz


Ou encore celui la aussi superieur a 10Kms Lien 173Mhz

Avec de tel frequence je devrais etre moins sensible aux obstacles et surtout loin des harmoniques du 1.2Ghz ;
 

MGU

Senior Member
Qu'un circuit en 433 MHz soit sensible à 1200 MHz, je veux bien, mais avec un filtre passe bas d'ordre 12, avec une fréquence de coupure à 600 MHz.....

MM
 

dje8269

Senior Member
Oui oui je suis bien d'accord avec toi . Ca devrait le faire sans soucis ; y'as quand même de la place pour placer le filtre entre 433 et 1200 ca laisse 700Mhz de marge lol .

Le point positif de passer en 868 serais aussi la taille de l'antenne ( 2 fois moins grande), mais surtout avec des récepteur qui possède déjà des rejecteurs des filtres , en superhétérodyne et de bonne facture . radiometrix sans quand même leader mondial dans ce domaine ;

A l'heure actuelle la voiture ne pourras rouler car j'ai plus de d'accu chargé ...... Sinon elle marchait a merveille ...... a part ce problème de Hi2c flag qui me turlupine ; Je l'ai vu hier soir . en fait le flag d'ecriture dans le scratchpad , n'est visible qu'une fois sur entre 2 et 8 .
Je m'explique , j'ai mis un sertxd derrière mon compteur d'erreur . et a ma grande surprise il compte en permanence , ce qui signifie qu'il loupe des flag de liaisons ; j'ai changé la fréquence du maitre et de l'esclave , mais ca n'as rien changer , voir aggraver les choses a partir de 32Mhz pour le Maitre.

On verras plus tard, mais la je suis coincé , plus de voiture plus de test , bref plus rien ....... a part les schéma et les typons uqe je vais revoir pour ameliorer ;
 

jojojo

Senior Member
Bon, on va tenter d'éclaircir un peu.
Oui , d'apres les pros de FPV , avec mes 433Mhz, je tombe sur l'harmonique 3 en 1.2Ghz . c'est ca qui brouille le signal
Là, on réfléchi deux secondes, ça évite de confusionner l'emission et la réception.
Ici, le générateur le plus proche du RX (EN 430MHZ) , c'est le TX (EN 1.2GHz).

Donc, si tu t'acharnes à parler d'harmoniques, il faurait regarder en 2.4Ghz, 3.6Ghz, etc, etc. Toutes au-dessus de 430 Mhz.

Non ! Ton souci n'est pas là. Ce qui gène, ici, c'est ce que l'on appelle les "produits de mélanges" (spurious en anglais).

Un RX en super-réaction est totalement démuni, contre ce genre de perturbations.

Tu peux toujours le blinder, genre "bouclier Star Wars", il faudra bien mettre l'antenne dehors, non ? ET ! Cette antenne va rayonner (ben, oui, un RX en super-réaction, ça rayonne, forcemment), et ce rayonnement (surtout ses harmoniques à lui) va se mélanger au 1.2 GHZ du TX vidéo.

Là, le résultat des mélanges sera une série de fréquences de l'ensemble des f0 +/-f1. Autant dire une belle anarchie.

Un bon superhet, double changement, et, éventuellement un bouchon complémentaire, en 1.2Ghz, en série dans l'antenne, pour ménager la CAG, un bon blindage, aussi, et ça devrait le faire.

Pfou ! Bavard, je suis ce soir !

Edit:

Tu as cité les modules de chez RADIOMETRIX. Excellent choix, si tu te décides. Je les ai souvent utilisé, c'est du très bon matos (rien à voir avec AUREL).
 

PieM

Senior Member
Je m'explique , j'ai mis un sertxd derrière mon compteur d'erreur . et a ma grande surprise il compte en permanence , ce qui signifie qu'il loupe des flag de liaisons
C'est quoi et c'est où ce compteur d'erreur qui compte quoi?
Parce que si tu ajoutes des trucs avec un sertxd en plus pour mesurer quelque chose qui est lié à des retards , ce n'est pas très cohérent !
Le hserflag est mis à un quand le scratchpad reçoit une écriture, et il reçoit une écriture quand RFin recoit quelque chose. Faut pas inverser les choses.
 

dje8269

Senior Member
Bonjour à tous,

Bon alors , comme j'ai plus d'accus je peux plus rien faire à partir réfléchir(et je n'aime pas rien faire, mais je suis nul en reflexion... :confused:). Avant de vider mes accus j'ai regarder un peu le programme pour l'améliorer vu que le hard a changer . ( et qui risque de changer encore si je change le Rx) .

Bref, problème de parasites mis a part .

J'ai plusieurs questions :

Pour le moment le nouveau proto c'est ça . On remarque que j'ai délégué TOUT ce qui utilise du timer au 08M2 . ainsi le 28X2 peut mouliné a fond . Du coup il se retrouve avec beaucoup moins d'I/O qu'au début. dans le but de gagner de la place, Est ce que je peux envisagé de le remplacer par un 20X2 ?
Pourrais je le mettre en esclave, gérer 3 servos en même temps que du pwm , plus une sotie DAC ( je crois qu'il n'en possède pas) ? ou alors une autre liaison genre un deuxiéme esclave mais il ne faut pas que ca ralentisse !

schéma v4.0.jpg



Parce que si tu ajoutes des trucs avec un sertxd en plus pour mesurer quelque chose qui est lié à des retards , ce n'est pas très cohérent !
C'est pas faux, on voit bien que le sertxd fais ralentir l'ensemble.

Donc voila je l'ai écris en rouge, je n'ai pas eu le temps de changer les télé rupteurs car je me suis appliqué a refaire la partir commande caméra, ne pas en tenir compte :

Je voulais regarder la réception des données justement, car je trouve qu'il y as encore quelques points sombres pour moi.
Je résume , le maitre ecrit dans l'esclave et met le met a flag a 1 une fois que c'est fait. Mon esclave lit les données et regarde si on lui a écrit dessus et met le flag a zero pour le reinitialiser .
Mes questions sur ce sujet :

est ce que le flag est mis a 1 temporairement(s'efface tout seul a bout d'un moment) , ou seulement l'esclave peut le réinitialisé ?
Que se passe -t-il si le maitre écrit alors que les données non pas encore été lues ? il met le flag a 1 alors qu'il était deja a 1 ?

Car je ne comprends pas pkoi j'ai autant d'erreur . Je suis quasiment certains que si, au lieu de compter jusqu'à 25 je comptais jusqu'a 10 et que je fasse alllumer une led ( plutot que le sertxd) la led serait très souvent allumée . ce qui démontre un probléme de liaison. je pense qu'il y as des choses a améliorer la dessus ;

je sais pas si j'ai été clair ?

Code:
#PICAXE 28X2

'#################################################################################
'##########################   Programme 28X2 Slave   #############################	
'#################################################################################

' B_ pour Broche, c'est le nom ou est branché le composant
' E_ pour Etat, c'est la valeur de la broche
' V_ pour Variable, ou est enregistré l'Etat de la broche

' bit0=Klax ; bit1=Phare ; bit2=sirene ; bit3=Gyro ; bit4=chgt; bit5=camera ; bit6=debutant ; bit7=jusqu'à


'########################  Configuration  ########################

'b0 à b7 pour les communications

Symbol V_TOR = b0
Symbol V_moteur = b1
Symbol V_direction = b3
Symbol V_Pan = b5
Symbol V_Tilt = b7
symbol V_compteur_com = b8
Symbol V_Secu = b9
réinitialisé V_compteur_secu = b10
Symbol V_moteur_max = w12

Symbol V_Klaxon = bit0
Symbol V_Phares = bit1
Symbol V_sirene = bit2
Symbol V_Gyro = bit3
Symbol V_Chgt = bit4
Symbol V_camera = bit5
Symbol V_debutant = bit6
Symbol V_Opt = bit7

Symbol B_gyro1 = A.0
Symbol B_gyro2 = A.1
Symbol B_moteur = B.0
Symbol B_Direction = B.1
Symbol B_Pan = B.2
Symbol B_Tilt = B.3
Symbol B_Sirene = B.5
Symbol B_camera = pinC.2
Symbol B_Phares = c.5
Symbol B_sens = C.6
Symbol B_Secu = C.7


réception = %0101	'declare les broches A.0 et A.2 en sortie
dirsB = %00001111 'declare les broches B.0, B.1, B.2, et B.3 en sortie
dirsC = %01000000 'declare La broche C.7 en entrée


'########################  Initialisation  ########################

setfreq m8	

hi2csetup i2cslave, %10100000	' Met le 28X2 en Esclave

servo B_Direction,150		' Servo direction en broche B.1, position neutre a 150
servo B_Pan,150			' Servo Pan en broche B.2, position neutre a 150
servo B_Tilt,150			' Servo Tilt en broche B.3, position neutre a 150
	
pwmout pwmdiv16, B_moteur, 125, 0 	' rapport cyclique a 0

dacsetup %10100000 		' Configure le dac avec Vcc en reference

tmr3setup %00000011		' Configure le timer3 pour les telerupteurs

put 1,126				' Ecrit dans le scratchpad la valeur du point milieu pour le moteur
put 3,125				' Ecrit dans le scratchpad la valeur du point milieu de la direction
put 5,129				' Ecrit dans le scratchpad la valeur du point milieu du Pan de la caméra
put 7,129				' Ecrit dans le scratchpad la valeur du point milieu du tilt de la caméra

Low B_sens				' Met le relais à l'état bas ( par default marche avant)
V_compteur_com = 0		' RAZ du compteur d'erreur communication	
V_compteur_secu = 0		' RAZ du compteur de securité moteur

'####################################################################################################
'					Programme Principal
'####################################################################################################

main:
do
	get 0,b0,b1,b2,b3,b4,b5,b6,b7	' Lecture du scratchpad
	
'-----------------------------------	
'##### perte de communication  #####

if hi2cflag = 0 then 					'Si flag=0, donc perte de com

	V_compteur_com = V_compteur_com + 1 max 25'Compteur d'erreurs de flag
		[SIZE=3][COLOR="#FF0000"] sertxd ("V_compteur_com=",#V_compteur_com,13,10)[/COLOR] [/SIZE]		if V_compteur_com > 40 then 		' en augmentant le chiffre , on augmente le delai de  reaction
			gosub Escape			' Si plus de 40 erreurs à la suite, on arrete la machine
		end if					
	else
	hi2cflag = 0		're-armement du flag
	V_compteur_com = 0	'RAZ du compteur			
end if

'------------------------------
'#####  Commande des TOR  #####

if V_TOR = 0 then		' Si pas de bouton appuyé , daclevel = 0
daclevel 0
end if

if V_Klaxon = 1 then	' Correspond au klaxon , bouton sur le joystick
daclevel 3
end if

if V_Phares = 1 then	' Correspond aux phares bouton de droite
	
	if timer3 > 20 then	'Fonction télérupteur . Compteur avec le timer3
		toggle B_Phares	'le BP est préssé ET le temps est superieur au compteur alors  on inverse l'interrupteur 
		timer3 = 0		'On ré-arme le compteur en le mettant a 0
	end if
	
end if

if V_sirene = 1 then		' Correspond au lancement de sirene , bouton du bas
daclevel 15
end if

if V_Gyro = 1 then		' Correspond aux gyrophares bouton de gauche

	if timer3 > 20 then	' Fonction télérupteur . Compteur avec le timer3
		toggle B_gyro1
		toggle B_gyro2
		timer3 = 0
	end if	
end if

if V_Chgt = 1 then		' Correspond au changement de sirene , bouton du haut
daclevel 9
end if

B_camera = V_camera		' Correspond au declenchement caméra inter glissiere de gauche

if V_debutant = 1 then		' Correspond au mode de butant inter glissiére de droite
	V_moteur_max = 200	' si enclenché on limite la valeur max du pwm a 200 au lieu de 500
else 
	V_moteur_max = 500
end if



'--------------------------------
'#####  Commande du moteur  #####
' Point milieu 126

Select Case V_moteur			

Case < 101 		'Marche arriere
	high B_sens
	V_moteur = 100 - V_moteur			' Mise a l'echelle
	w13 = V_moteur*37/10+130  max V_moteur_max
	
	
Case > 128		'Marche avant
	low B_sens 
	V_moteur = V_moteur - 129			' Mise a réinitialisé
	w13 = V_moteur*3+130 max V_moteur_max	' 130 commence à faire avancer la voiture.
	
else
	w13 = 0						' Sinon point milieu , donc a l'arret

end select

pwmduty B_moteur, w13					' envoi du pwm sur le moteur

'--------------------------------
'#####  Sécurité du moteur  #####

readadc B_Secu, V_Secu					' Lecture de la broche securité
	if V_Secu > 90 then 				' Pour eviter les coupures intempestives sur un simple choc on compte avant de couper le moteur
		
		V_compteur_secu = V_compteur_secu + 1 max 30
		
			if V_compteur_secu > 20 then 	' Si le moteur est au dessus de 90 pendant 20 cycles
				pwmduty B_moteur,0	' On coupe le moteur
				pause 3000			' On fais une pause
				V_compteur_secu = 0	' On RAZ le compteur
			end if
	else
	V_compteur_secu=0

	end if

'--------------------------------------
'#####  Commande de la direction  #####
' Tourne à gauche (V_direction > 125) / position du servo de 150 à 95-105(fourchette max) 
' Tourne à droite (V_direction < 125) / position du servo de 150 à 190-193(fourchette max)
' Point milieu du joystick 125

V_direction = V_direction* 9 / 25		' Mise à l'echelle
V_direction = 192 - V_direction

servopos B_Direction,V_direction		' Positionnement du servo

'------------------------------------
'#####  Commande Pan de la camera  #####
' Tourne a gauche de 150 à 235, a droite de 150 à 65
' Point milieu du joystick 129
 
V_Pan = V_Pan * 7 / 10		' Mise a l'echelle
V_Pan = 238- V_Pan min 65

servopos B_Pan,V_Pan		' Positionnement du servo

'--------------------------------------
'#####  Commande Tilt de la camera  #####
' Vers le haut	de 150 à 70 (max 69), vers le bas de 150 à 170 (max 172)			
' Point milieu du joystick 129

V_Tilt = V_Tilt * 10 / 16		' Mise a l'echelle
V_Tilt = V_Tilt+70  max 170

servopos B_Tilt,V_Tilt			' Positionnement du servo

Loop

'####################################################################################################
'					Programme Subsidiaire
'####################################################################################################


'########     Perte de communication     ##########
Escape:

do while hi2cflag = 0		' Tant que le scratchpad n'as rien recu on eteint le moteur
	pwmduty B_moteur,0
loop

V_compteur_com = 0		' En sortant de la boucle, c'est que la communication est revenue
hi2cflag = 0			' On remet le compteur a 0 et on ré-arme le flag
return
 

dje8269

Senior Member
Bonsoir,

Je me permets de faire un petit up à cette question, pour savoir si je dois commander des 20X2 ? Je n'ai pas trouvé une seule datasheet montrant une sortie DAC sur un 20X2. et je ne sais pas s'il serait capable de gerer 3 servo + un moteur pwm

Pour le moment le nouveau proto c'est ça . On remarque que j'ai délégué TOUT ce qui utilise du timer au 08M2 . ainsi le 28X2 peut mouliné a fond . Du coup il se retrouve avec beaucoup moins d'I/O qu'au début. dans le but de gagner de la place, Est ce que je peux envisagé de le remplacer par un 20X2 ?
Pourrais je le mettre en esclave, gérer 3 servos en même temps que du pwm , plus une sotie DAC ( je crois qu'il n'en possède pas) ? ou alors une autre liaison genre un deuxiéme esclave mais il ne faut pas que ca ralentisse !
Par avance merci
 

PieM

Senior Member
Est ce que je peux envisagé de le remplacer par un 20X2 ?
Pourrais je le mettre en esclave, gérer 3 servos en même temps que du pwm , plus une sotie DAC ( je crois qu'il n'en possède pas) ? ou alors une autre liaison genre un deuxiéme esclave mais il ne faut pas que ca ralentisse !
Heu... là je crois qu'il faut arrêter la course en avant !!!!
pourquoi remplacer par un 20X2, un 28X2 qui existe! Un deuxieme esclave en plus ? mais pour quoi faire ??!
Si c'est pour empiler en permanence les problèmes sans les resoudre je laisse la main.
 

dje8269

Senior Member
pourquoi remplacer par un 20X2, un 28X2 qui existe!
Pour ca:

Pour le moment le nouveau proto c'est ça . On remarque que j'ai délégué TOUT ce qui utilise du timer au 08M2 . ainsi le 28X2 peut mouliné a fond . Du coup il se retrouve avec beaucoup moins d'I/O qu'au début. dans le but de gagner de la place, Est ce que je peux envisagé de le remplacer par un 20X2 ?
Le 28X2 qui au début devais tout gérer , ce retrouve trés allégé de taches au fil du temps ; Donc plus besoin d'un si "gros" µC .J'ai pas tellement d'autre raisons.

Un deuxieme esclave en plus ? mais pour quoi faire ??!
ben si jamais le 20X2 peut remplacer le 28X2, et comme je n'ai pas réussis a trouvé si le 20X2 avait une broche DAC . Il faut pourtant que le 08M2 ( celui qui gère les taches en relation avec les timers) reçoivent des ordres ; cela se faisait par la broche DAC ( et ses 32Niveaux) du 28X2, mais si je passe en 20X2 sans DAC, je dois trouver une autre solution . d'où le deuxième esclave ou autres , c'était juste une suggestion. sinon j'aurais besoin de que de 4 sorties pour envoyer les ordres, donc pas besoin de liaison le 20X2 auras largement assez de sortie pour communiquez avec le 08M2

Si c'est pour empiler en permanence les problèmes sans les résoudre
Non j'essaie d'apporter quelques ajustements rien de plus . Aprés je cherche pas les ennuis, mais la simplification.

je laisse la main.
tu peux pas faire ça si prêt du but !!!
Sinon je t'envoie mon fils quand il pleure !!!!


PS: les nouveaux émetteurs/récepteurs sont achetés , peut être réception demain . je ferais bien évidement des tests avant de tout refaire !!!!
 

PieM

Senior Member
C'est bien ce qui me semblait !
Pour "gagner de la place" (10 mm sur un CI) tu mets un truc qui ne va pas (pas de DAC ; c'est sur la doc: Ici entre autres ), et tu ajoutes un autre Picaxe pour compenser le manque.

Et commence à régler tes problèmes de radio. Tout pendant que tu as des perturbations sur ton Rx, ne compte pas avoir des mises à jour régulières de ton scratchpad !
 

dje8269

Senior Member
Bonjour à tous,

(pas de DAC ; c'est sur la doc: Ici entre autres )
Effectivement je suis pas allé voir sur cette version anglaise ! vu mon niveau ! . donc merci pas de DAC sur le 20X2 .

et tu ajoutes un autre Picaxe pour compenser le manque.
Non j'ai pas dis ca !!! je garde le 08M2 pour les fonction timer .

Et commence à régler tes problèmes de radio.
J'essaye, mais j'attends mes nouveaux modules ; effectivement c'est ma priorité avant d'allé plus loin ;
 

PieM

Senior Member
Effectivement je suis pas allé voir sur cette version anglaise
Alors regarde le manuel2; il a été traduit en français ! Et sur le manuel1 il y a le brochage des Picaxes !

effectivement c'est ma priorité avant d'allé plus loin
Bonne résolution.
 

dje8269

Senior Member
Bonjour à tous,

Aujourd'hui TESTs des nouveaux E-R ;

Je relisais la Datasheet, et je m'aperçois que sur ce genre de module ( qui sont effectivement de très bonnes factures , rien a voir avec les anciens, le blindage est partiel dessus ...), que j'ai l'option RSSI .
J'ai bouquiné un peu sur le net hier soir, et je me posais la question , de la fiabilité de cette fonction .

Vous avez dus me voir venir avec mes grands sabots !! puis je l'utiliser pour effectuer ma détection de perte de communication ??? Comme je vais essayé de faire des tests , je voulais savoir si je devais aussi testé ceci , et savoir ce que cela engendrerai niveau soft et hard .

Voila ce n'est qu'une réflexion avant les test ;

Lien de la Datasheet

Bonne journée
 

BESQUEUT

Senior Member
puis je l'utiliser pour effectuer ma détection de perte de communication ??? Comme je vais essayé de faire des tests , je voulais savoir si je devais aussi testé ceci , et savoir ce que cela engendrerai niveau soft et hard .
C'est clairement fait pour et sans doute pertinent.
A minima une prise de sortie du signal permettrait de brancher un voltmètre pour les tests.
 

PieM

Senior Member
Je recommande chaudement l'implantation d'un AOP en suiveur, si l'on envisage l'attaque d'un ADC.
C'est même obligatoire vu l'impédance de sortie de 50k

L'avantage du RSSI est qu'il permet de mettre en évidence une réception parasite.
Attention que le niveau maxi de l'entrée data est de 2.5V . Donc diviseur de tension si le picaxe du TX est en 5V.
 

dje8269

Senior Member
Je suis en train de relaiser mes tests . Mais ca ne reste que les miens !!! .

Voila pour le moment , mise en place du TX869 déclenchement par la PIN EN (enable) via un BP ; Le TX869 branché sur un 14M2 avec un rfout qui m'envoies des données . une incrementation decrementation de 110 à 190 de b1 , pour un servo moteur .

De l'autre cote j'ai le RX869 branché aussi à un 14M2 , avec un commande RFin qui commande le servo moteur suivant ce qu'il recoit par b1 . Sur le Rx869 J'ai également branché le sortie RSSI sur un oscillo ;

Resultat :

Quand j'active mon TX , les données sont donc envoyées. Le servo fais des aller retour de droite à gauche en permanence . Tout va bien! .
A l'oscillo quand j'active le TX869 on voit la tension monter à environ 2V . quand j'eteins le TX cela retombe à 0.5V . La aussi tout va bien ! j'ai enlevé l'antenne en reception pour essayer de degrader la reception afin de voir le signal baisser , j'ai pas reussi même en m'eloignant , je suppose que le TX envoie fort je sais pas comment simuler un eloignement pour faire baisser le signal de RSSI ? si vous avez une idée je suis preneur?. ( ne me demandé pas de m'leoigner de 100m je ne pourrais voir l'oscillo :rolleyes:

Donc en gros pour le moment la com passe bien ! c'est deja ca !

J'en viens la ou ca nous interesse ! . La perturbation du 1.2Ghz .

Mon test consiste a faire faire des aller retour a mon servo en activant le TX869 en permanence.
D'approché le TX 1.2Ghz du RX869 qui commande mon servo .
A 15cm, cela n'as pas l'air de le perturbé plus que ca , il continue normalement a faire ses aller-retours ( les deux antennes a la verticale).
A 5cm le servo s'arrete de fonctionné donc brouillé . si je met l'antenne du TX1.2 a l'horizontale , il repart a faire ces aller retour normalement. J'ai donc un petit espoir !

Je me demandais , si vous voyez plus de tests à faire ou de meilleurs tests ! afin de m'assurer completement du non brouillage .
 

dje8269

Senior Member
Attention que le niveau maxi de l'entrée data est de 2.5V . Donc diviseur de tension si le picaxe du TX est en 5V.
Aie j'avais pas vu ca !!! L'entre des data sur le RX doit se faire en 2.5V ? J'espere ne rien avoir abimer !

Je viens de relire la DS , comme c'est anglais , je ne comprends pas parfaitement ; Mais il me semble que c'est en analogique qu'on doit utiliser le 2.5V pour le TXD non ? .

TXD is normally driven directly by logic levels but will also accept analogue drive, e.g. 2-tone signalling.
In this case it is recommended that TXD (pin 7) should be DC-biased to 2.5V with the modulation ACcoupled
and limited to a maximum of 5V peak-to-peak. The instantaneous modulation voltage must not
swing below 0V or above 5V at any time if waveform distortion and excessive FM deviation is to be
avoided &#8211; use a resistive potential divider and/or level shifter to accomplish this if necessary. The
varactor modulator in the transmitter introduces some 2nd harmonic distortion, which may be reduced
if necessary by predistortion of the analogue waveform.
 
Last edited:

PieM

Senior Member
TXD (pin 7)
DC-coupled modulation input. Accepts serial digital data at 0V to 2.5V levels.


Baseband
Modulation bandwidth @ -3dB 0 35 kHz
Modulation distortion (THD) 5 10 % 6
TXD input level (logic low) 7 -0.2 0 +0.2 V
TXD input level (logic high) 7 +2.3 +2.5 +3 V
 

dje8269

Senior Member
Ok , donc j'ai encore fais une con***ie ! .

Donc un diviseur de tension sur l'entrée data du TX , 2 Resistances de 1K devrait le faire non?
J'ai également remarqué u ntruc . QUand l'antenne du TX1.2 est en dessous du RX869 , cela brouille beaucoup plus et plus loin , a 15cm je suis brouillé . la position d'une antenne par rapport à l'autre a l'air d'avoir une forte incidence .

Pour info : J'ai essayé avec un VTX de 900Mhz ca brouille beaucou plus . les fréquences sont beaucoup plus rapprochées certainement la cause .

Mes quelques tests sont pluto concluant , en m'eloignant a 17cm les antennes a la même hauteur , je n'ai aucun bug . je précise , que pour le moment je suis avec des antennes "bout de fil" même pas de la bonne longueur . Croyez vous que ca risque de mieux "brouill" avec les vrais antennes ? ou justement d'ameliorer la selectivité ?

Je préfere etre sur avant de refaire mon typon pour le TX !
 

dje8269

Senior Member
Aprés re- lecture, je ne comprenais pas un truc .

Désolé PieM, je me suis gouré pour la DS ! J'ai le TX3H ! et non le TX3A .

Voici la nouvelle DS : TX3H

Par contre j'ai le RX3A
 

dje8269

Senior Member
Nouveau schéma du TX:

Changement :
- Mise place de la broche ENable avec R de pull-down . ( En échange de la broche qui alimentais le TX)Dorenavement le TX est alimenté en permanence mais pas activé en permanece.
- Mise du résistance de pull down pour les données
-Changement de valeurs des résistances pour la lecture de la tension des piles. Étant donné que ce TX fonctionne sous 5V , j'ai divisé les valeurs des résistances par deux ( 68-->33 , 33-->15)
- rajout d'un radiateur sur le seul régulateur conso estimé du circuit en fonctionnement 400mA max

schéma 2.jpg
 

dje8269

Senior Member
Avec le programme qui va avec .

Je testerais la fonction "arrêt si on touche à rien" pendant un certain temps.
Ce n'est pas encore au point car j'aimerais rajouter la variable des TOR (b0) dans le calcul, sans trop alourdir . concernant le compteur j'ai mis 100 grosso modo ( ce seras à ajuster pour mettre à 5 secondes environ).
La valeur des joysticks au milieu et plutôt precise. des fois j'ai eu quelques erreur de 1 ( par exemple 127 au lieu de 126 au repos). C'est pourquoi j'ai fais une toute petite fourchette de 1 de chaque coté).

j'ai fais le même programme en utilisant la fonction time, mais je la trouve plus longue en temps, car j'utilise deux words et le même genre de calcul; j'ai opté pour celle-ci.

J'aimerais desactiver l'emetteur pour plusiseurs raisons. Car pendant mes tests , le régulateur et le TX etait assez chaud et la consommation monte au plafond ! . Le temps de réaction du TX pour atteindre la pleine puissance est de 85ms environ ( vu datasheet).
Code:
#PICAXE 20M2

'#################################################################################
'##########################    Programme Emetteur    #############################	
'#################################################################################

'##########################    configuration    ################################	
' B_ pour Broche, c'est le nom ou est branché le composant
' E_ pour Etat, c'est la valeur de la broche
' V_ pour variable, ou est enregistrée l'Etat de la broche

'b0 à b7 pour les infos envoyés
'b8 avertissement des piles
'b9 calcul des joysticks

symbol B_DONNEE 	= B.0

symbol B_Led 	= C.0
symbol B_Pile    	= C.1
symbol B_EN 	= C.7

symbol E_debutant	= pinB.1
symbol E_chgt	= précise.2
symbol E_sirene  	= pinB.3
symbol E_Phare   	= pinB.6
symbol E_Gyro    	= pinB.7

symbol E_Opt    	= précise.4
symbol E_Klax    	= pinC.5
symbol E_camera  	= pinC.6



dirsB = %00000001 'declare B.0 en sortie
dirsC = %10000001	'declare C.0 et C.7 en sortie


'##########################    Initialisation    ################################	

setfreq m32		'Mets la freq à 32Mhz, RFout se met a 4 mzh puis repasse à 32Mhz

b9 = 0		' RAZ du compteur joysticks
'#################################################################################
'##########################    Programme Principal    ############################	
'#################################################################################

do

readadc C.3,b1		'Av/ar voiture
readadc C.2,b3		'Dr/ga voiture
readadc B.2,b5		'pan de la caméra
readadc B.5,b7		'Tilt de la caméra

readadc B_pile, b8	'Avertissement piles usagées

if b8 < 200 then 
	high B_Led		' Correspond a 12 V au lieu de 14.4V
end if

w13 = b1+b3+b5+b7		' Calcul de la position des joysticks

if w13>508 and w13<510 then ' point milieu 126+125+129+129 = 509

	inc b9		'incremente le compteur
	
	if b9>100 then	'si superieur a 100 on eteint
		low B_EN
	end if
	
else
high B_EN
b9 = 0
end if



bit0 = E_Klax
bit1 = E_Phare
bit2 = E_sirene
bit3 = E_Gyro
bit4 = E_chgt
bit5 = E_camera
bit6 = E_debutant
bit7 = E_Opt

rfout B_DONNEE,(b0,b1,b2,b3,b4,b5,b6,b7) 	'envoi des données par RF
	
loop
 

dje8269

Senior Member
Tout d'abord merci d'avoir jeté un &#339;il dessus :

Pourquoi, le BC547 en C0 ?
effectivement cela merite explication ; Au debut je voulais mettre la led directement . Mais après réflexion, et vue que j'avais un peu de place , je me suis dis que si jamais je voulais mettre autre chose qu'une led je ferais mieux de mettre un petit transistor . par exemple j'avais pensé a un buzzer ! .

Un analyseur logique, me permettrait-il de voir la durée que me prends les calculs ? un peu comme le tableau qu'a fais PieM sur les durées des différentes fonction !
 

jojojo

Senior Member
Ok, pour le tranzibar.

Pour l'analyseur, si tu disposes encore (ça devient rara) d'un PC avec un port Centronics, je peut te dépanner (le soft qui va bien !).
Et, oui, ça permet pas mal de trucs.
 

PieM

Senior Member
Pour l'analyseur tu as le scanalogic qui est largement suffisant, pas très cher, et qui en plus décode les trames UART, I2C et SPI. tu le trouves chez lextro.
 

dje8269

Senior Member
Ok je vais regarder si j'ai encore un vieux PC avec cette prise . J'en ai trouver un avec un db9 alors un Centronics pourquoi pas ! :cool:

Olalala mais c'est vraiment pas cher , je m'attendais a un truc genre oscilloscope numérique a 1000&#8364;, pas a un petit boitier a brancher sur un PC.

Le schéma a l'air de vous plaire, donc demain typon !!!

je vais "adapter" l'ancien typon de la voiture pour y placer le nouveau récepteur afin d'y faire des test en condition réelles .

Je pensais a quelque chose, qui aurait demandé quelques éclaircissement .

Cette histoire de RSSI me perturbe vraiment ; j'ai peur que si un signal est reçu, mais complètement perturbé il ne coupe pas la voiture ; la méthode du hi2cflag me parait plus rassurante ?

dans tout les cas vous me confirmez que je dois travailler avec deux picaxe bien distinctes pour isoler la commande Rfin bloquante ?
si on as mis un 14M2 en Rfin c'est pour pouvoir le mettre en maitre ( :) ) . mais un 08M2 possède aussi des sorties hi2c , comment le relié si on peut pas lui dire ce qu'il doit etre?
 

PieM

Senior Member
Si tu veux utiliser le RSSI, il faut mettre un ampli. Voir posts précédents.
Le RSSI t'indique la qualité de la réception.
Le hi2cflag lui indique que le picaxe a bien reçu la trame complète du RFin.

si on as mis un 14M2 en Rfin c'est pour pouvoir le mettre en maitre... mais un 08M2 possède aussi des sorties hi2c
Il n'y a pas de RFin sur un 08M2.
 

dje8269

Senior Member
Le RSSI t'indique la qualité de la réception
ok ! donc en fait ca va pas me servir a grand chose ! un peu comme sur les téléphones portables ? comme y'auras personne sur la voiture pour voir si je capte bien ......
A moins que je fasse allumer une led, visible de la camera :!!!! :rolleyes: on verras plus tard .

Il n'y a pas de RFin sur un 08M2.
Ok comme ça c'est réglé.

Allez j'arrête de vous embêtez, et je vais croiser les doigts pour que ca fonctionne ce coup ci . ( voir bruler un cierge)
 

jojojo

Senior Member
Pour un simple ampli op en plus, l'utilisation de RSSI, sur un ADC serait BEAUCOUP plus judicieuse !
C'est fait pour, aussi !
 

PieM

Senior Member
l'utilisation de RSSI, sur un ADC serait BEAUCOUP plus judicieuse !
Discutable, car en cas de réception brouillée, le rfin restera en attente, alors que le signal RSSI lui sera OK.
Mais pour un AOP en plus, ça vaut le coup d'essayer, et ça permet de mettre en évidence des interférence avec d'autres TX.
 

dje8269

Senior Member
Bonjour à tous,

l'utilisation de RSSI, sur un ADC serait BEAUCOUP plus judicieuse !
Pas de souci, mais pour quelle utilisation du coup ? En association avec le hi2c flag ?

Je ne connait pas trop cette partie, mais ca ne me sert a rien de savoir si je capte bien ou non, ce qui met utile c'est de savoir , si mes infos sont arrivées . Ou les deux !
 

jojojo

Senior Member
Discutable, car en cas de réception brouillée, le rfin restera en attente, alors que le signal RSSI lui sera OK.
Peu probable. Le RSSI, normalement est en fin de chaine (après la dernière FI). Les brouillages affectent surtout l'amont de la chaine (étage HF, premier mixer et première FI).
C'est tout l'interêt de la double conversion.
A tester, de toutes manières.

Pas de souci, mais pour quelle utilisation du coup ? En association avec le hi2c flag ?
Comme tu le sents. Simplement, tout comme un SMmètre (c'en est un, d'ailleurs), tu disposes en permanence d'une tension continue proportinnelle au niveau HF reçu.
Tu peux donc facilement, via une entrée ADC, décider de tout arreter, si le signal HF devient trop faible.
Le gros avantage, c'est qu'un Readadc dans la boucle générale n'est PAS bloquant.
Tu n'autorises donc l'instruction Rfin QUE si tu as du signal.

Beaucoup plus logique, non ?
 

dje8269

Senior Member
Beaucoup plus logique, non ?
Oui , si ca fonctionne c'est fort ! . Aucun alors je rajoute un AOP sur le futur typon. ( en suiveur de tension), qui rentre sur une broche "ADC" .

Euh !! je le prevois sur le 14M2 de réception ou sur le 28X2 ?

C'est bon ca ? datasheet
 
Last edited:

PieM

Senior Member
Tu n'autorises donc l'instruction Rfin QUE si tu as du signal.
Beaucoup plus logique, non ?
Heu... si on neutralise le RFin par le RSSI qu'est ce va mettre la voiture en stand by ? Car c'est le but non ?
 
Top