cs_mimi23
Messages postés7Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention31 juillet 2007
-
20 mai 2007 à 18:27
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 2012
-
23 mai 2007 à 08:13
Salut! J'ai besoin d'aide pour dessiner des courbes dynamiques de vitesse et de courant dont les valeurs sont reçues via le port série.En fait il faut que'à fur et à mesure que les valeurs se cummulent, les axes changent d'échelle pour pouvoir visualiser la totalité de la courbes. Je ne sais pas si c'est assez clair mais essayez de m'aider quand même. Merci d'avance
cs_mimi23
Messages postés7Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention31 juillet 2007 21 mai 2007 à 21:30
En fait, j'essaye t'utiliser le 'CWgraph' mais jusque la les courbes ne s'affichent pas en plus je sais meme pas si c dynamique.PS:Mes variables sont stockées dans un tableau.
Si tu ne les as pas, je te dirais de regarder du coté de la méthode AutoScaleNow De l'objet Axis.
Exemple pour mettre à l'échelle l'Axe Y
CWGraph1.Axes(2).AutoScale = True
CWGraph1.Axes(2).AutoScaleNow, ----
[code.aspx?ID=41455 By Renfield]
Ensuite pour ce qui est de tracer les courbes tu as plusieurs maniere de procéder est ce que tu arrives déjà à tracer es courbes? mais la encore si tu as les Samples tu devrais t'en sortir.
cs_mimi23
Messages postés7Date d'inscriptionvendredi 11 mai 2007StatutMembreDernière intervention31 juillet 2007 22 mai 2007 à 19:51
Voici la partie du programme qui bloque
(je sais qu'il a des fautes mais comme je debutes avec VB je narrives pas a les localiser)
Case comEvReceive
Tampon = MSComm1.Input
Dim i, x, j, vitesse1, courant1 As Integer
Dim vitesse, courant As String
Call Traitement(Tampon) 'traitement données
For i = 1 To Len(Tampon)
'Recherche le premier espace après le 1 ème caractère
x = InStr(1, Tampon, " ")
vitesse = Mid(Tampon, 1, x)
'Text2.Text = vitesse
courant = Right(Tampon, (Len(Tampon) - x))
'Text3.Text = courant
vitesse1 = CInt(vitesse)
courant1 = CInt(courant)
Next i
Dim T1(100), T2(100) As Integer
T1(j) = vitesse1
Text2.Text = T1(j)
T2(j) = courant1
Text3.Text = T2(j)
CWGraph1.PlotY (T1)
CWGraph2.PlotY (T2)
j = j + 1
J'ai pris un tableau de 100 valeur juste pour tester le pgm mais normalement il doit etre infini
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 23 mai 2007 à 08:13
Re,
AS tu regardé les exemples?
D'autes part je ne comprends pas l'intérêt du code que tu as mis.
Dans ta boucle de 1 à len(tampon) tu fais toujours la même chose.
-1 rechercher le 1er espace (a chaque passage il est à la meme position)
-2 en extraire la vitesse (=> toujours la même)
-3 le courant (toujours le même)
quelle est l'intéret?
De plus ton stockage de données dans T1 et T2 ne se fait qu'une fois la boucle terminée... avec j comme indice (valeur dont on ne sait rien avant la boucle.
Je pense qu'avant d'essayer de tracer la courbe, tu devrasi t'assurer que tes tableaux soient bien remplis.