frequence ou vitesse

MGU

Senior Member
#81
Bonjour JRTEC

Y a un progrès, obtenir n'importe quoi est déjà mieux que rien du tout.

On va rester sur le PCF
Le dernier test est bien fait avec un 08M2, sans modification ?

La colère est mauvaise conseillère...
Patience et longueur de temps font plus que force ni que rage...
MM
 

MGU

Senior Member
#82
Je viens de reprendre ton code, en remplaçant le dernier return par un do loop


Code:
;Utilisation expandeur PCF8574 sur LCD MM 04 05 2015
;Ecriture de textes, variables, accentués

;    SCL sur C.1
;    SDA sur C.2
;   tension var sur C.4
#picaxe 08M2
dirsC =%000111
symbol rsbit=bit0
symbol cpt=b1
symbol car=b2
symbol dat=b3
symbol vari= w13
    setfreq M32
    pullup %0110    ;activation des R pullup sur C.1 et C.2 pour I2C            
; Initialisation I2C 4 bits , etc ********
    hi2csetup i2cmaster,%01001110, i2cslow_32, i2cbyte        
; Initialisation LCD *********
    for cpt=0 to 5
        lookup cpt,($33,$32,$28,$c,$6,$01),car
        gosub EnvoiByteCommInit
    next
    pause 100    ;temps init du LCD
    
;  Affichage texte ***********************            
    car= 132    'curseur début ligne1
    gosub EnvoiByteComm    
    for cpt=0 to 6
    lookup cpt,("Bonjour"),car
    GOSUB EnvoiByteData    
    next    
    car= 196    'curseur  ligne2
    gosub EnvoiByteComm    
    for cpt=0 to 7
    lookup cpt,("Enfin !!"),car
    GOSUB EnvoiByteData    
    next 
   do loop
                
; Sub envoi vers LCD via I2C *************
EnvoiByteCommInit:
    pause 15
EnvoiByteComm:
    rsbit=0
EnvoiByteData:
;1ére moitié
    dat=car & $F0 | %1000 | rsbit ;%1000 pour l'éclairage
    hi2cout (dat)
    pause 1       
    dat=dat | %1100
    hi2cout (dat)    ;pulse sur E cad P2
    pause 1
    dat=dat | %1000 & %1011   ;fin pulse
    hi2cout (dat)
    pause 1   
;2éme moitié
    dat=car & $0F * 16 | %1000 | rsbit
    hi2cout (dat)
    pause 1   
    dat=dat | %1100
    hi2cout (dat)
    pause 1
    dat=dat | %1000 & %1011
    hi2cout (dat)    
    rsbit=1
    return
Et ça fonctionne

Vérifie les branchements C.1 et C.2 çà doit fonctionner

MM
 

JRTEC

Senior Member
#83
Je viens de reprendre ton code, en remplaçant le dernier return par un do loop


Code:
;Utilisation expandeur PCF8574 sur LCD MM 04 05 2015
;Ecriture de textes, variables, accentués

;    SCL sur C.1
;    SDA sur C.2
;   tension var sur C.4
#picaxe 08M2
dirsC =%000111
symbol rsbit=bit0
symbol cpt=b1
symbol car=b2
symbol dat=b3
symbol vari= w13
    setfreq M32
    pullup %0110    ;activation des R pullup sur C.1 et C.2 pour I2C            
; Initialisation I2C 4 bits , etc ********
    hi2csetup i2cmaster,%01001110, i2cslow_32, i2cbyte        
; Initialisation LCD *********
    for cpt=0 to 5
        lookup cpt,($33,$32,$28,$c,$6,$01),car
        gosub EnvoiByteCommInit
    next
    pause 100    ;temps init du LCD
    
;  Affichage texte ***********************            
    car= 132    'curseur début ligne1
    gosub EnvoiByteComm    
    for cpt=0 to 6
    lookup cpt,("Bonjour"),car
    GOSUB EnvoiByteData    
    next    
    car= 196    'curseur  ligne2
    gosub EnvoiByteComm    
    for cpt=0 to 7
    lookup cpt,("Enfin !!"),car
    GOSUB EnvoiByteData    
    next 
   do loop
                
; Sub envoi vers LCD via I2C *************
EnvoiByteCommInit:
    pause 15
EnvoiByteComm:
    rsbit=0
EnvoiByteData:
;1ére moitié
    dat=car & $F0 | %1000 | rsbit ;%1000 pour l'éclairage
    hi2cout (dat)
    pause 1       
    dat=dat | %1100
    hi2cout (dat)    ;pulse sur E cad P2
    pause 1
    dat=dat | %1000 & %1011   ;fin pulse
    hi2cout (dat)
    pause 1   
;2éme moitié
    dat=car & $0F * 16 | %1000 | rsbit
    hi2cout (dat)
    pause 1   
    dat=dat | %1100
    hi2cout (dat)
    pause 1
    dat=dat | %1000 & %1011
    hi2cout (dat)    
    rsbit=1
    return
Et ça fonctionne

Vérifie les branchements C.1 et C.2 çà doit fonctionner

MM
Bonsoir

Merci pour votre aide precieuse et votre patience

J ai essaye votre code j ai les memes symboles incomprehensibles

Pourriez vous m indiquer ou vous acheter vos afficheur sur Ebay

J aimerai trouver des afficheurs qui je crois communique avec le picaxe avec un seul fils comme vous employer ici : http://electromag1.wifeo.com/horloge-ds3231-et-picaxe-m2.php

Par avance merci
 

MGU

Senior Member
#84
Tous les LCD que j'ai sont identiques, du 1602 au 2004, compatibles HD44780, avec 16 broches, où on enfile le driver PCF8574.

http://www.ebay.fr/itm/1602-16x2-Ch...821855?hash=item3d40f548df:g:510AAOSwTY9ZZHEq

Pour les LCD série, soit on les achète tout fait (mais le choix est limité) : https://www.gotronic.fr/art-afficheur-lcd-serie-axe133-17935.htm

soit on en fait une copie, avec les mêmes LCD HD44780: http://electromag1.wifeo.com/fabriquer-un-lcd-serie-avec-un-picaxe-.php

Picaxe commercialise aussi un driver spécifique pour faire un LCD série : https://www.gotronic.fr/art-circuit-serie-frm010-pour-lcd-19164.htm
J'en ai un que je n'ai pas encore essayé. Il devrait être plus rapide que l'axe133 (point faible de ces afficheurs et incompatibilité avec time)

Mais il n'y a aucune raison que vous ne fassiez pas fonctionner le vôtre. Photo du montage, afficheur et circuit I2C svp.

MM
 

MGU

Senior Member
#87
Bonjour,

Il est acquis que le système fonctionne.
Et il est certain que le problème vient de ce tas de fils.


Il manque déjà les condensateurs de découplages : 100nF sur les broches alim du µC (à la place des fils alim) et un chimique de quelques µF sur l'arrivée alim de la plaque.

Ensuite, il faut clarifier un peu, avec une liaison 4 fils pour l'afficheur, et de bonnes connexions.

Marron(-), Rouge(+), Orange(SDA), Jaune(SCL)...ok....ET C'EST QUOI LE VERT ?

Faudra pas non plus inverser SCL et SDA

Les deux 4k7 sont inutiles (déjà sur l'adaptateur), je crois.


MM
 
Last edited:

JRTEC

Senior Member
#88
Bonjour,

Il est acquis que le système fonctionne.
Et il est certain que le problème vient de ce tas de fils.


Il manque déjà les condensateurs de découplages : 100nF sur les broches alim du µC (à la place des fils alim) et un chimique de quelques µF sur l'arrivée alim de la plaque.

Ensuite, il faut clarifier un peu, avec une liaison 4 fils pour l'afficheur, et de bonnes connexions.

Marron(-), Rouge(+), Orange(SDA), Jaune(SCL)...ok....ET C'EST QUOI LE VERT ?

Faudra pas non plus inverser SCL et SDA

Les deux 4k7 sont inutiles (déjà sur l'adaptateur), je crois.


MM
Bonjour

Mon alim est invisible sur lea photo elle a gauche et comparte un LM7805 et un condensateur 16v 470µf, et je pense qu elle fonctionne pour avoir deja fait quasiment tous mes montage dessus

le VERT de la nappte est relie a rien

J ai deja teste sans les resistances c est pareil , je l es avais mise comme ici http://electromag1.wifeo.com/lcd-i2c-expandeur-pcf8574.php

le SDA de l afficheur va sur la nappe orange qui appres est relie par le fils bleu a C.2 , le SCL via l le jaune de la nappe et le fils fils jaune a C.1 comme ici http://electromag1.wifeo.com/lcd-i2c-expandeur-pcf8574.php c est pour cela que je me suis inspire de votre programme
 

MGU

Senior Member
#89
Ok, la photo est trompeuse.

Le problème vient pourtant du câblage. J'ajouterais quand même un chimique sur la plaque et un 100nF céramique sur les pattes du µC.

MM
 

MGU

Senior Member
#91
Bon, ben tant mieux, c'est peut être un capricieux.

Essaye avec une fréquence basse :Ex 4MHz

Code:
;Utilisation expandeur PCF8574 sur LCD MM 04 05 2015
;Ecriture de textes, variables, accentués

;    SCL sur C.1
;    SDA sur C.2
;   tension var sur C.4
#picaxe 08M2
dirsC =%000111
symbol rsbit=bit0
symbol cpt=b1
symbol car=b2
symbol dat=b3
symbol vari= w13
    setfreq M4
    pullup %0110    ;activation des R pullup sur C.1 et C.2 pour I2C            
; Initialisation I2C 4 bits , etc ********
    hi2csetup i2cmaster,%01001110, i2cslow_4, i2cbyte        
; Initialisation LCD *********
    for cpt=0 to 5
        lookup cpt,($33,$32,$28,$c,$6,$01),car
        gosub EnvoiByteCommInit
    next
    pause 100    ;temps init du LCD
    
;  Affichage texte ***********************            
    car= 132    'curseur début ligne1
    gosub EnvoiByteComm    
    for cpt=0 to 6
    lookup cpt,("Bonjour"),car
    GOSUB EnvoiByteData    
    next    
    car= 196    'curseur  ligne2
    gosub EnvoiByteComm    
    for cpt=0 to 7
    lookup cpt,("Enfin !!"),car
    GOSUB EnvoiByteData    
    next 
   do loop
                
; Sub envoi vers LCD via I2C *************
EnvoiByteCommInit:
    pause 15
EnvoiByteComm:
    rsbit=0
EnvoiByteData:
;1ére moitié
    dat=car & $F0 | %1000 | rsbit ;%1000 pour l'éclairage
    hi2cout (dat)
    pause 1       
    dat=dat | %1100
    hi2cout (dat)    ;pulse sur E cad P2
    pause 1
    dat=dat | %1000 & %1011   ;fin pulse
    hi2cout (dat)
    pause 1   
;2éme moitié
    dat=car & $0F * 16 | %1000 | rsbit
    hi2cout (dat)
    pause 1   
    dat=dat | %1100
    hi2cout (dat)
    pause 1
    dat=dat | %1000 & %1011
    hi2cout (dat)    
    rsbit=1
    return
On sait jamais...

MM
 

JRTEC

Senior Member
#92
a 4MHZ

alors avec celui qui mache c est Ok , on dirai que le texte s ecrit a la mise sous tension , je veux dire on apercoit la progression de l inscription

avec le capricieux symbole different mais resultat , toujours illisible

Voulant faire un montage avec un 20M2 , quelle doivent etre les caracteristiques des port du Picaxe ?
 
Last edited:

PieM

Senior Member
#93
Voulant faire un montage avec un 20M2 , quelle doivent etre les caracteristiques des port du Picaxe ?
Avec ce module, seules les broches SDA et SLC sont nécessaires.
Si c'est juste pour afficher la vitesse, et faire un peu de calcul, le 08M2 est suffisant pour gérer affichage et la liaison NEO6. Il lui restera en plus 1 sortie et une entrée/sortie disponible.
 

JRTEC

Senior Member
#94
Bonsoir et merci pourla reponse

Je veux faire un montage avec un 20M2 pour des evolutions futures

SDA et SLC sont des port de l afficheur, quelles doivent etre les caracteristiques des port du picaxe pour puiloteurs l afficheur ? par exemple puis je le brancher sur B2 et B3 qui sont des ports qui es ports les plus simples ? ou C.6 par exemple ou bien comme sur B5 il y a ecris hi2c SDA et B7 , hidc SCL, lafficheur doit etre connecte obligatoirement a ces 2 port ?

Meme questions pour le NEO6 , quelle doivent etre les caracterisques du ports pour la communication avec ce module GPS ?

Dans le futur je prevois la lecture d un capteur de pression acossie a cela , des commandes pour des calibrages et peut des pilotage de sorties pour une modulation

Comme j apprends je fait point par point
 
Last edited:

PieM

Senior Member
#95
Bonjour,

Si l'afficheur est bien celui équipé du PCF 8574, il ne pourra se connecter que sur sda et slc donc B.5 et B.7 du 20M2.
Mais on pourra connecter en plus d'autres éléments qui fonctionnent en I2C comme certains capteurs ou des mémoires.

Pour le GPS NEO6, sa liaison série (seule une liaison serin est nécessaire) peut se faire sur n'importe quelle broche du 20M2

en résumé, afficheur + gps nécessitent 3 broches, dont obligatoirement B.5 et B.7 pour l'I2C

pour Michel,
Je vois que dans le programme existe une ligne pullup pour les entrées liées à l'I2C. ( Par contre il y a bien des résistances de pullup sur le proto de JR.)
Mon avis qui n'engage que moi ;-)
Je n'utilise jamais le pullup sur ces lignes I2C. La fonction pullup ne met pas en place une vraie résistance interne, mais rend un transistor interne non saturé avec un courant pouvant varier entre 25 et 300µA ce qui équivaut à une "résistance de 200k à 16k ! Compte tenu de la capacité de la ligne I2C, on peut être bien au dessus des temps de montée exigés par l'I2C surtout à 400kHz.
Donc ça peut marcher parfois comme ça peut ne pas marcher....
 
Last edited:

JRTEC

Senior Member
#96
...


pour Michel,
Je vois que dans le programme existe une ligne pullup pour les entrées liées à l'I2C. ( Par contre il y a bien des résistances de pullup sur le proto de JR.)
Mon avis qui n'engage que moi ;-).
Bonjour et merci

Suite au #87 j ai retirer les resistance comme demande , et en #90 elles n y sont plus

Le proget futur est une sorte de DPAE GPS , pour ceuxqui connaissent le materiel agricole : Debit Proportionnel a l Avancement Electronique gerer par un signal GPS
 

PieM

Senior Member
#97
Bonjour et merci

Suite au #87 j ai retirer les resistance comme demande , et en #90 elles n y sont plus

Le proget futur est une sorte de DPAE GPS , pour ceux qui connaissent le materiel agricole : Debit Proportionnel a l Avancement Electronique gerer par un signal GPS
Je doute fortement que les R de pull up existent sur le module vu sur tes photos!! Attention car il y a différents modèles! le tiens est différent de celui de la doc de Michel.
Je te conseille de prévoir systématiquement des R de pullup externes. Il suffit que tu aies des câbles un peu longs entre picaxe et afficheur pour engendrer des galères.

Avant de te lancer dans la DPAE GPS, il faut valider la fiabilité de la mesure de vitesse par ce GPS. Dans la mesure ou il y a une régulation, l'information Vitesse doit être parfaitement fiable.
Personnellement je favoriserais pour cela la mesure par un capteur sur la roue, comme vu initialement.

Le premier truc a faire est de mettre ce GPS sur un tracteur et de voir ce que donne la mesure.
 

MGU

Senior Member
#98
Bonjour,

Merci PieM pour ces précisions, il est vrai que l'activation de pullup relève plus de la flemme de chercher deux résistances que de la rigueur électronique. C'était juste pour un essai rapide, mais pas un exemple à suivre.
J'avais bien fait quelques mesures de pullup, sans connaitre la dispersion exacte.

Si ça peut aider JRTEC, je fournirai un programme pour lire la vitesse du NEO (a partir de VTG, sans calcul) sur un afficheur I2C

MM
 

JRTEC

Senior Member
#99
...

Avant de te lancer dans la DPAE GPS, il faut valider la fiabilité de la mesure de vitesse par ce GPS. Dans la mesure ou il y a une régulation, l'information Vitesse doit être parfaitement fiable.
Personnellement je favoriserais pour cela la mesure par un capteur sur la roue, comme vu initialement.

Le premier truc a faire est de mettre ce GPS sur un tracteur et de voir ce que donne la mesure.
Bonsoir ,

C est bien pour cela que je veux faire un systeme evolutif, il me donne une vitesse reele , puis selon un choix de debit /ha et d un modele de buse , il me propose une pression ( dou la necessite du capteur ) , perso j ai mes reference vis a vis de cette pression , et si ou bout d une periode d essai je suis satisfait des pression clculees et affichere , je lui ferai gerer cette pression
 

JRTEC

Senior Member
Bonjour,

Merci PieM pour ces précisions, il est vrai que l'activation de pullup relève plus de la flemme de chercher deux résistances que de la rigueur électronique. C'était juste pour un essai rapide, mais pas un exemple à suivre.
J'avais bien fait quelques mesures de pullup, sans connaitre la dispersion exacte.

Si ça peut aider JRTEC, je fournirai un programme pour lire la vitesse du NEO (a partir de VTG, sans calcul) sur un afficheur I2C

MM
Merci de votre aide , bien sur je suis preneur , et je compte monter cela avec un 20M2 , cependant je veux essyer de comprendre les principes
 

PieM

Senior Member
Avant toute chose, bien s'assurer de la liaison picaxe - NEO6 et de visualiser les trames reçues sur le terminal de l'editeur. Pas besoin d'afficheur pour ça.
Si il y a le même problème qu'avec le mien la trame VTC n'est pas reçue... Ce qui semble le cas vu #40 , puisqu'il fonctionne sur 4800 bauds!

Voir pour cela le programme donné au début, à adapter en débit et au picaxe si ce n'est pas un 14M2
Code:
[COLOR=Green]; *******************************
; ***** GPS NEO6  *****
; *******************************[/COLOR]
[COLOR=Navy]#Picaxe [/COLOR][COLOR=Black]14M2[/COLOR]
[COLOR=Navy]#Terminal [B]9600[/B][/COLOR]
[COLOR=Blue]
symbol [/COLOR][COLOR=Black]baud_in [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Blue]T4800_8
symbol [/COLOR][COLOR=Black]UART_in [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Blue]B.4
[/COLOR][COLOR=Blue]
setfreq m8

do
  serin [/COLOR][COLOR=Black]UART_in, baud_in, [/COLOR][COLOR=Blue]( [/COLOR][COLOR=Red]"$GP" [/COLOR][COLOR=Blue])[/COLOR][COLOR=Black], [/COLOR][COLOR=Purple]b1[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b2[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b3[/COLOR][COLOR=Black],
  [/COLOR][COLOR=Blue]sertxd([/COLOR][COLOR=Purple]b1[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b2[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b3[/COLOR][COLOR=Black],[/COLOR][COLOR=Blue]cr[/COLOR][COLOR=Black], [/COLOR][COLOR=Blue]lf )
loop[/COLOR]
 
Last edited:

JRTEC

Senior Member
Avant toute chose, bien s'assurer de la liaison picaxe - NEO6 et de visualiser les trames reçues sur le terminal de l'editeur. Pas besoin d'afficheur pour ça.
Si il y a le même problème qu'avec le mien la trame VTC n'est pas reçue... Ce qui semble le cas vu #40 , puisqu'il fonctionne sur 4800 bauds!

Voir pour cela le programme donné au début, à adapter en débit et au picaxe si ce n'est pas un 14M2
Code:
[COLOR=Green]; *******************************
; ***** GPS NEO6  *****
; *******************************[/COLOR]
[COLOR=Navy]#Picaxe [/COLOR][COLOR=Black]14M2[/COLOR]
[COLOR=Navy]#Terminal [B]9600[/B][/COLOR]
[COLOR=Blue]
symbol [/COLOR][COLOR=Black]baud_in [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Blue]T4800_8
symbol [/COLOR][COLOR=Black]UART_in [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Blue]B.4
[/COLOR][COLOR=Blue]
setfreq m8

do
  serin [/COLOR][COLOR=Black]UART_in, baud_in, [/COLOR][COLOR=Blue]( [/COLOR][COLOR=Red]"$GP" [/COLOR][COLOR=Blue])[/COLOR][COLOR=Black], [/COLOR][COLOR=Purple]b1[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b2[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b3[/COLOR][COLOR=Black],
  [/COLOR][COLOR=Blue]sertxd([/COLOR][COLOR=Purple]b1[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b2[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]b3[/COLOR][COLOR=Black],[/COLOR][COLOR=Blue]cr[/COLOR][COLOR=Black], [/COLOR][COLOR=Blue]lf )
loop[/COLOR]
Bonjour et merci pour le programme

je le teste avec un 14m2

Cependant PE5 me trouve une erreur ici : serin UART_in, baud_in, ( "$GP" ), b1,b2,b3,

Du coup j ai repris le programme de #40

Voila le resultats sans bouger

TEST GPS PICAXE.JPG

je crois comprendre qu il est detecte une vitesse non ?

Si je mets autre chose que 9600 Baud le texte est illisible ( ecrit imconprehensible )
 
Last edited:

MGU

Senior Member
Bonjour,

Cependant PE5 me trouve une erreur ici : serin UART_in, baud_in, ( "$GP" ), b1,b2,b3,

Il y a une virgule en trop derrière b3

Essaie de nouveau, pour voir quelles trames tu captes.

A 8MHz, Terminal doit être à 9600b, normal. (voir manuel commandes sur sertxd)

MM
 
Last edited:

PieM

Senior Member
Bonjour,

Désolé pour la virgule en trop!

Bien qu'immobile oui, le gps voit une vitesse. Tout simplement parce qu'il calcule la vitesse en fonction de positions successives et sur plusieurs mesures. avec un algorithme qui dépend du GPS.
Pour avoir une vitesse instantanée correcte, seuls les gps faisant la mesure Doppler donnent des résultats fiables. Ce qui n'est pas le cas du NEO6.
Le GPS donnera une vitesse correcte si la vitesse est à peu près constante. mais en cas de fortes variations ou d'arrêt brutal, la mesure sera entachée d'erreur.
Éventuellement si la vitesse de travail reste entre 5 et 25 km/h, il est possible de considérer que toute valeur gps inférieure à 3 km/h est nulle. Mais cela reste à vérifier en vraie grandeur sur un engin.

C'est pour cela que vu l'application dans un domaine de régulation je pense que la mesure instantanée avec capteur sur roue sera beaucoup plus fiable. (relire #97)
 
Last edited:

JRTEC

Senior Member
Bonjour,

Cependant PE5 me trouve une erreur ici : serin UART_in, baud_in, ( "$GP" ), b1,b2,b3,

Il y a une virgule en trop derrière b3

Essaie de nouveau, pour voir quelles trames tu captes.

A 8MHz, Terminal doit être à 9600b, normal. (voir manuel commandes sur sertxd)

MM
Bonjour sans la virgule , programmation ok , par contre pas de retour ni en PE 5 ni PE6

Consernant la prise ISO 11786 , oui le gros tracteur en a une , et il a un radar qui permet de connaitre la vitesse reele

Cependant je veux utiliser cela sur 2 autre tracteurs , un a une prise ISO 11786 mais pas de radar , l autre n a rien ( il a 30 ans )

Consernant les capteurs sur roue , travaillant dans une region valonnée : Bof , comme ces tracteurs sont des 4 roues motrices , ce sera une vitesse theorique , a la montée on patine facilement jusqu a 15 voir 20% , et toujours un peu de glissade a la descente

De plus ce systeeme avec GPS , pourra aussi etre utilise sur la quad , mon but faire un systeme evolutif , ou comme je metriserai le programme je pourrai le faire evoluer , d ou l utilite de partir sur une base 20M2 pour les evolutions futures
 

Attachments

PieM

Senior Member
Sur le terminal série, je trouve que le port de communication COM1 est un peu étonnant!
mettre aussi ASCII en mode de transmission.

Si le tracteur vient à patiner de courts instants, le GPS t'indiquera toujours la même vitesse, vu son temps de latence. relire #104.
 

JRTEC

Senior Member
Si le tracteur vient à patiner de courts instants, le GPS t'indiquera toujours la même vitesse,
Bonsoir , dans une region valonnée , parfois on patine tout au long de la raie , sur 300 m ...
Port de communication sur DB9 oui le com 1 , c est celui ci quej utilise pour programmé depuis toujours
 

PieM

Senior Member
Bonsoir , dans une region valonnée , parfois on patine tout au long de la raie , sur 300 m ...
Port de communication sur DB9 oui le com 1 , c est celui ci quej utilise pour programmé depuis toujours
Alors, ne compte pas sur le GPS pour avoir quelque chose de fiable si la vitesse change en permanence. Seule solution viable, le radar.
ça peut se bricoler mais faut de l'électronique !
Pour le picaxe, si ta com avec le picaxe est bonne, c'est que le GPS ne t'envoie rien! vérifie les connexions.
 

JRTEC

Senior Member
Alors, ne compte pas sur le GPS pour avoir quelque chose de fiable si la vitesse change en permanence. Seule solution viable, le radar.
ça peut se bricoler mais faut de l'électronique !
Pour le picaxe, si ta com avec le picaxe est bonne, c'est que le GPS ne t'envoie rien! vérifie les connexions.
c est bien le but but quand je dis que je veux avancer par palier , valider la vitesse si elle est ok

Apres le radar n est pas la solution ultime , sensible au debris vegetaux et autres obstacles , craint les projections de pierres en broyage du coup il faut le demonter, il ne peut pas s employer dans de la vegetation haute
C est tres bien en travail du sol , sol nu ou debris broyés

L ideee de GPs n est pas farfelu , et de plus rapidement transposable d un vehicule a l autre

Consernat le picaxe , avec le programme du #40 il marche ; voir #102 et la copie d ecran , avec le soft de #101 je n y arrive pas , je n ai touche a aucune connection , simplement envoyer le soft dedans , je vois la diode rouge du gps qui clignote comme pour le soft de #40
 

JRTEC

Senior Member
Je confirme :

Le programme #101 ne me donne rien ( image test1)

test1.JPG

LE programme #40 me donne des données ( image test2 )

test2.JPG

Reprogrammation sans rien toucher donc connection ok pour moi , regardxez la pendule en bas a droite c est a quelques minutes pres la meme
 

PieM

Senior Member
Le GPS est bien relié sur B.4 ?
Je n'ai jamais dit que l'utilisation du GPS était farfelue. Mais il faut être conscient des limites liées à ton utilisation !
Le fait de lire une vitesse bien qu'à l'arrêt te montre déjà qui faut prendre les résultats avec méfiance.
 

PieM

Senior Member
Donc, comme moi, pas de trame VTC.
Il faut se rabattre sur la trame RMC, avec le programme déjà donné, et adapté à un 20M2, ça donne:

Code:
[COLOR=Green]; *******************************
;    GPS NEO6M      
; détection validité trame 
;extraction vitesse trame RMC
;[B]afficheur : sda : B.5   scl : B.7[/B]
;[B] GPS sur C.1[/B]
; *******************************[/COLOR]
[COLOR=Navy]#Picaxe [/COLOR][COLOR=Black]20M2 [/COLOR]
[COLOR=Navy]#Terminal 9600[/COLOR]


[COLOR=Blue]symbol [/COLOR][COLOR=Black]baud_in [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Blue]T4800_8
symbol [/COLOR][COLOR=Black]UART_in [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Blue]C.1  [/COLOR][COLOR=Green]' [B]connexion vers Tx NEO6[/B][/COLOR]

[COLOR=Blue]setfreq m8
setint [/COLOR][COLOR=Navy]%00000000[/COLOR][COLOR=Black],[/COLOR][COLOR=Navy]%00000010 [/COLOR][COLOR=Green]'interruption sur C.1 

'===================================================================[/COLOR]
[COLOR=Black]main:[/COLOR]

[COLOR=Blue]do
   if [/COLOR][COLOR=Purple]bit0 [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Navy]1 [/COLOR][COLOR=Blue]then gosub [/COLOR][COLOR=Black]traitement [/COLOR][COLOR=Green]' si trame recue en interruption
   ; suite programme...
   ; ....................[/COLOR]
[COLOR=Blue]loop[/COLOR]
[COLOR=Green]'---------------------------------------------------------------------[/COLOR]
[COLOR=Black]traitement:[/COLOR]

[COLOR=Purple]bptr[/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Navy]17 [/COLOR][COLOR=Green]; pointeur sur donnée de validation
   [/COLOR]
[COLOR=Blue]if [/COLOR][COLOR=Purple]@bptr [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Red]"A" [/COLOR][COLOR=Blue]then [/COLOR][COLOR=Green]'si signal correct  
      
   [/COLOR][COLOR=Purple]bptr[/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Navy]44 [/COLOR][COLOR=Green]'debut de trame vitesse 
   [/COLOR][COLOR=Blue]if [/COLOR][COLOR=Purple]@bptr [/COLOR][COLOR=DarkCyan]<> [/COLOR][COLOR=Red]"," [/COLOR][COLOR=Blue]then [/COLOR][COLOR=Green]'si champ vitesse n'est pas nul
      [/COLOR][COLOR=Purple]w1 [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Purple]@bptrinc [/COLOR][COLOR=DarkCyan]- [/COLOR][COLOR=Navy]48 [/COLOR][COLOR=DarkCyan]* [/COLOR][COLOR=Navy]100
      [/COLOR][COLOR=Purple]w1 [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Purple]@bptrinc [/COLOR][COLOR=DarkCyan]- [/COLOR][COLOR=Navy]48 [/COLOR][COLOR=DarkCyan]* [/COLOR][COLOR=Navy]10 [/COLOR][COLOR=DarkCyan]+ [/COLOR][COLOR=Purple]w1
      w1 [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Purple]@bptrinc [/COLOR][COLOR=DarkCyan]- [/COLOR][COLOR=Navy]48 [/COLOR][COLOR=DarkCyan]+ [/COLOR][COLOR=Purple]w1 [/COLOR][COLOR=DarkCyan]* [/COLOR][COLOR=Navy]1852 [/COLOR][COLOR=Green]'calcul des noeuds en m/h
      [/COLOR][COLOR=Blue]peek [/COLOR][COLOR=Navy]48[/COLOR][COLOR=Black], [/COLOR][COLOR=Purple]w2
      w2[/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Purple]w2 [/COLOR][COLOR=DarkCyan]- [/COLOR][COLOR=Navy]48 [/COLOR][COLOR=DarkCyan]* [/COLOR][COLOR=Navy]185 [/COLOR][COLOR=Green]'calcul des 1/10 noeuds en m/h
      [/COLOR][COLOR=Purple]w1[/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Purple]w2[/COLOR][COLOR=DarkCyan]+[/COLOR][COLOR=Purple]w1
      [/COLOR][COLOR=Blue]sertxd([/COLOR][COLOR=Red]" Vitesse en m/h: "[/COLOR][COLOR=Black],#[/COLOR][COLOR=Purple]w1   [/COLOR][COLOR=Black], [/COLOR][COLOR=Blue]cr[/COLOR][COLOR=Black], [/COLOR][COLOR=Blue]lf)
   else
      sertxd([/COLOR][COLOR=Red]" Vitesse nulle" [/COLOR][COLOR=Black], [/COLOR][COLOR=Blue]cr[/COLOR][COLOR=Black], [/COLOR][COLOR=Blue]lf)
   endif
else
   sertxd([/COLOR][COLOR=Red]" pas de signal correct!" [/COLOR][COLOR=Black],[/COLOR][COLOR=Blue]cr[/COLOR][COLOR=Black],[/COLOR][COLOR=Blue]lf)
endif
   setint [/COLOR][COLOR=Navy]%00000000[/COLOR][COLOR=Black],[/COLOR][COLOR=Navy]%00000010[/COLOR][COLOR=Green]'rearmement interruption
   [/COLOR][COLOR=Purple]bit0 [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Navy]0[/COLOR]
[COLOR=Blue]return[/COLOR]
[COLOR=Green]'----------------------------------------------------------------------[/COLOR]
[COLOR=Blue]interrupt:
   [/COLOR][COLOR=Purple]bptr[/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Navy]10
  [/COLOR][COLOR=Blue]serin [/COLOR][COLOR=Black]UART_in, baud_in, [/COLOR][COLOR=Blue]( [/COLOR][COLOR=Red]"RMC," [/COLOR][COLOR=Blue])[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc[/COLOR][COLOR=Black],[/COLOR][COLOR=Purple]@bptrinc
bit0 [/COLOR][COLOR=DarkCyan]= [/COLOR][COLOR=Navy]1[/COLOR]
[COLOR=Blue]return[/COLOR]
Tester avec ça et ensuite remplacer les sertxd par les instruction hi2c pour l'afficheur.
attention aux connexions sda scl et liaison NEO6 !
 
Top