Inscription / Connexion Nouveau Sujet

1 2 +


Posté par
Nicolas_75 Correcteur
re : scilab 04-02-13 à 13:56

Je vois maintenant 6 impulsions, 5 à gauche et 1 à droite.
Quelle est exactement la question ?
Peux-tu nous donner l'énoncé précis et complet ?

Posté par
hamizo
scilab 04-02-13 à 17:01

bonjour,

oui il y ont 6 impulsions( parce que j'ai ajouté des points a scilab afin qu'il trace ) c'est pas ça le problème . j'ai zoomer sur la première impulsion il ma donné le graphe suivant.ma question est la suivante comment déterminer le temps de réception des 5 impulsions a la fois ? (ci on fait la projection sur le axe des abscisses à l'instant qu'il y a un changement dans la courbe on a presque 58250).mais avec le programme scilab il va no donné le temps plus précis et du cinq impulsions sans faire chaque fois le zoom sur chaque impulsion.

merci

scilab

Posté par
Nicolas_75 Correcteur
re : scilab 04-02-13 à 17:37

Désolé, je ne comprends pas la question.
Tu cherches à mesurer le temps écoulé entre quoi et quoi ?

Posté par
hamizo
scilab 04-02-13 à 21:00

bsr

la question c'est le temps de réception si on fait la projection sur l'axe des abscisses.

quelle est le programme qui va calculer  ou qui va détecter le changement de la courbe afin qu'il donne le résultat précisément. j'ai trouvé sur internet qu'il faut écrire un programme qui fait la différence de seuil.
merci

scilab

Posté par
Nicolas_75 Correcteur
re : scilab 04-02-13 à 21:28

Je ne connais pas (encore) cet algorithme.
Si tu en fournis une description précise, nous pourrons essayer de le programmer en scilab.

Posté par
hamizo
scilab 04-02-13 à 21:30

description précise de quoi.

Posté par
Nicolas_75 Correcteur
re : scilab 04-02-13 à 21:31

De l'algorithme que tu souhaites programmer en scilab.

Posté par
hamizo
scilab 04-02-13 à 21:33

j'ai pas d'algorithme, tu connais pas la fonction qui fait la différence de seuil, tu as compris le problème que j'ai ?

Posté par
Nicolas_75 Correcteur
re : scilab 04-02-13 à 21:34

Je comprends que tu veux identifier le moment correspondant au trait rouge.
Quelle est ta définition de ce moment ?

Posté par
hamizo
scilab 04-02-13 à 21:38

je sais pas, j'ai demandé au prof il m'a dit que scilab fait les calcules des fonctions, mais je sais pas le début (je sais pas comment faire aucune idée ).tu as une idée sur les calcules des seuils sur scilab .

Posté par
Nicolas_75 Correcteur
re : scilab 04-02-13 à 21:43

C'est quoi un "calcul de seuil" ?
Tant que tu ne diras pas précisément ce que tu souhaites, il sera difficile de t'aider.

Posté par
hamizo
scilab 04-02-13 à 21:53

c'est l'état du changement de la courbe ( le trait rouge), un programme qui va déterminer le point de changement du courbe (ex: avant 58250 on 0.3 dans l'axe des ordonnée et aprés on a 58250 on voit un changement ) c'est ça l'idée que j'ai. il ne faut un programme a chaque instant qu'il y a une impulsion il nous donne la valeur (axe des abscisse).tu as compris un peu le probléme

Posté par
Nicolas_75 Correcteur
re : scilab 04-02-13 à 21:55

J'ai compris l'idée.
Mais je n'ai toujours pas compris le détail.
Tu dis "avant, on a 0.3, puis on a un changement". On ne peut rien programmer à partir de cela.

Posté par
hamizo
scilab 04-02-13 à 22:00

moi aussi j'ai pas compris comment faire mais le prof m'a dit que scilab fait cette analyse .tu as pas une idée sur l'analyse graphique sur scilab, si non ou je peux trouver des idées ??

Posté par
Nicolas_75 Correcteur
re : scilab 03-02-14 à 21:23

Kaijan et Adrien,

Vous m'avez interrogé par e-mail :

Citation :
Nous devons récupérer des points d'abscisse de notre signal dont l'unité est donc un suite de points que l'on ramène d'un fichier (quelques 2.5.10^6 points) et que nous allons plus tard convertir en temps.

Le relevé se fera lorsque le signal dépasse un seuil.

30.00E-3
10.00E-3
-10.00E-3
10.00E-3
-30.00E-3
-10.00E-3
-50.00E-3
-50.00E-3
-30.00E-3
10.00E-3
-10.00E-3

On a longuement chercher sur internet une fonction qui permet cela, en vain.


Je ne comprends pas votre question.
Avez-vous déjà stocké vos données dans un tableau de taille 2,5*10^6 ?
Si oui, que souhaitez-vous faire exactement ?

Nicolas

Posté par
JACHUA
re : scilab 03-02-14 à 22:40

Bonsoir,

Voici le code que nous avons tapé:

stacksize(10^7);
cd("/home/lundimatin/Bureau");
x=fscanfMat("datas.dat");
plot2d(x)

Donc pas encore de tableau, le but est de mesurer l'écart entre 2 pics de la courbe qui est donc un gros nuage de points si je me trompe pas, ensuite cet écart nous donnera un temps duquel nous allons récupérer une position X,Y,Z grâce à un algorithme plutôt compliqué.


le signal est le même que hamizo, j'espère que j'arrive à t'expliquer comme il faut.

Merci de ton aide.


scilab

Posté par
Nicolas_75 Correcteur
re : scilab 03-02-14 à 22:42

OK.
La liste des données est stockée dans x.
Quelle est la définition d'un "pic" ?

Posté par
JACHUA
re : scilab 03-02-14 à 22:55

Le pic correspond à l'émission en ultrason d'un des 5 émetteurs présents dans la pièce, le prof nous a dis que plus tard il faudra faire une harmonique sur la courbe car ce n'est pas un "pique" mais une genre d'exponentiel.

Pour l'instant on a fixé notre seul à 0.16 cela suffit à détecter ces fameux pics.

Posté par
Nicolas_75 Correcteur
re : scilab 03-02-14 à 22:59

OK.
Un pic est-il une plage de données consécutives dont toutes les valeurs sont >= 0,16 ?
Si oui, un pic a donc une largeur.
Que signifie alors la distance entre 2 pics ? Celle entre leur milieu ? Entre leur extremums ? Ou la distance entre la fin d'un pic et le début d'un suivant ?
Tant que vous ne définissez pas précisément ce que vous voulez identifier, il ne sera pas possible de le coder.

Posté par
JACHUA
re : scilab 03-02-14 à 23:32

Ce qui nous intéresse c'est le démarrage du pic, donc la distance entre 2 début de pic, deux cassures (cassures qui ont aussi une largeur qu'on ne voit pas sur ma courbe d'ou l'utilisation plus tard d'une harmonique )

Posté par
Nicolas_75 Correcteur
re : scilab 03-02-14 à 23:55

Je pense que votre définition d'un pic ne convient pas.

Prenons l'exemple du "pic" > 1.50

En fait, en zoomant, on se rend compte qu'il comporte des oscillations.

scilab

Posté par
Nicolas_75 Correcteur
re : scilab 03-02-14 à 23:59

Si on fixe le seuil à 1,50 et non à 0,16, on ne trouve pas un pic, mais 23 !
Car la "courbe" franchit 23 fois l'horizontale 1,50.

Si, maintenant, on fixe le seuil à 0,16, on dénombre 4921 franchissements, donc 4921 pics.

A nouveau, ceci est dû au fait que le graphique "cache" des micro-oscillations.

Code R :

SEUIL <- 0.16
setwd("D:\\Nicolas\\PERMANENT\\ILE")
x <- scan("Ile_536757_excel.txt", numeric(0))
y <- c(NA, x[1:length(x)-1])
t <- 1:length(x)
table <- cbind(t, x, y);
table2 <- table[table[,2] >= SEUIL & table[,3] < SEUIL,]
cat(nrow(table2))
# plot(x[669000:670350], type="l")


Nicolas

1 2 +


Répondre à ce sujet

Seuls les membres peuvent poster sur le forum !

Vous devez être connecté pour poster :

Connexion / Inscription Poster un nouveau sujet
Une question ?
Besoin d'aide ?
(Gratuit)
Un modérateur est susceptible de supprimer toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi.


Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !