Audiyofan
Audiyofan




Poster un nouveau sujet Répondre au sujet  [ 319 messages ]  Aller à la page Précédente  1 ... 12, 13, 14, 15, 16, 17, 18 ... 22  Suivante
Auteur Message
 Sujet du message: Re: Bobineuse
MessagePosté: Mar 18 Mar 2014, 06:53 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonjour à tous

Bon j'ai toiurné un peu sur la toile et après maintes lectures , j'ai trouvé de quoi me faire mon
menu avec un stockage des valeurs en Eeprom

Reste à mettre tout ça en musique

pour les boutons ils seront 5 , UP, DOWN,RIGHT, LEFT et SELECT connecté tout les 5 sur une entrée ADC
de ma carte histoire de garder des pinoches dispo pour d'éventuel "arrivé de dernière minute"

Ils seront branché comme ceci
Fichier(s) joint(s):
schema_boutons.PNG
schema_boutons.PNG [ 22.12 Kio | Vu 5635 fois ]

J'ai prévu de modifié les valeurs des R pour avoir avec R2 = 330 ohm ( 15 ma )
RIGHT = 0 Volt R3 = 82 ohm
UP = 1 Volt R4 = 150 ohm
DOWN = 2 Volts R5 = 270 ohm
LEFT = 3 Volts R6 = 1000 ohm
SELECT = 4 Volts
Et lorsque qu'aucun bouton n'est pressé 5 Volts sur l'entrée analogique

Pour les infos du pourquoi voir ici http://modelleisenbahn.triskell.org/spip.php?article59

Ensuite pour les menus et valeurs , deux tableaux tridimensionnel feront l'affaire
un Char [Ligne ][Colonne][Nb de charactère maxi lié aux LCD]
un int [Ligne ][Colonne][Nb de chiffre]

Pour plus d'info voir ici http://yersiniaprograms.wordpress.com/2014/02/19/62/

Reste à adapter le code et personnaliser les fonction qui vont bien :mrgreen: :mrgreen:

To be continued

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Mer 19 Mar 2014, 22:27 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonsoir à tous

Ci-joint mon bout de code pour tester l'affichage d'un menu avec l'écran LCD et les 5 boutons
sur l'entrée A5, ça marche bien et je peux naviguer dans le menu assez facilement
Le stockage en EEPROM n'est pas forcément la voie définitive , par contre le stockage des variable en tableau
est à exploiter :mrgreen:
l'archive
Fichier(s) joint(s):
Menu_compteur_decompteur_motpap_V2.tar.bz2 [2.13 Kio]
Téléchargé 275 fois


Les tableaux
Code:
// initialisation du menu
char menu_text [5][6][16] = {
{
{"Cumul compt  =>"}, {"Nombre       =>"}, {"Decomptage   =>"}, {"Comptage"},{"null"}
},
{
{"Nb de spires =>"}, {"Nombre       =>"}, {"Debut Gauche =>"}, {"Debut Droite"},{"null"}
},
{
{"Guide fil    =>"}, {"+ 10 step    =>"}, {"- 10 step    =>"}, {"+ 1 step     =>"},{"- 1 step"},{"null"}
},
{
{"Compteur     =>"}, {"+ en 1/10    =>"}, {"- en 1/10      "},{"null"}
},
{
{"RAZ EEPROM "}, {"null"}, {"null"}, {"null"}
}
};

// Il faut mettre l’adresse de l’enregistrement des valeurs de l’EEPROM à la place des 0
// Faire une fonction de parcours de tableau et de chargement des valeurs
// Puis faire un enregistrement directement dans l’EEPROM grace au tableau qui donnera
// l’adresse de la case mémoire utilisé
int menu_valeur [5][6][3] = {
{
{-2}, {0}, {-2}, {-2}, {-2}, {-2}
},
{
{-2}, {1}, {2}, {3}, {-2}, {-2}
},
{
{-2}, {4}, {5}, {6}, {7}, {-2}
},
{
{-2}, {8}, {9}, {-2}, {-2}, {-2}
},
{
{-2}, {-2}, {-2}, {-2}, {-2}, {-2}
}
};


Le codage des boutons
Code:
// read the buttons
int read_LCD_buttons()
{
adc_key_in = analogRead(A5);      // read the value from the sensor
// my buttons when read are centered at these valies: 0, 144, 329, 504, 741
// we add approx 50 to those values and check to see if we are close
if (adc_key_in > 1000) return btnNONE; // We make this the 1st option for speed reasons since it will be the most likely result
lcd.setCursor(0,0);
//lcd.print(adc_key_in);
// For V1.0 us this threshold
if (adc_key_in < 50)   return btnRIGHT;
if (adc_key_in > 150 && adc_key_in < 250)  return btnUP;
if (adc_key_in > 375 && adc_key_in < 475)  return btnDOWN;
if (adc_key_in > 565 && adc_key_in < 665)  return btnLEFT;
if (adc_key_in > 795 && adc_key_in < 895)  return btnSELECT;

return btnNONE;  // when all others fail, return this…
}


Je pense travailler ce code pour enregistrer les données dans ce tableau de valeur
les "cases" nombre ,
mettre des constantes pour les saut de compteur ou guide fil
ainsi que pour le positionnement à gauche ou à droite pour dito

Les "cases" guide fil auront l'avantage de permettre une inversion de sens automatique
du chariot et le côté de départ

En réflexion et la nuit portant conseil , a ++ :mrgreen: :wink:

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Jeu 20 Mar 2014, 21:36 
Hors ligne
Membre Assidu

Inscription: Dim 09 Jan 2005, 22:07
Messages: 1583
Totof a écrit:
... permettre une inversion de sens automatique
du chariot...


hello Totof
est-ce vraiment utile?
personnellement je vais privilégier la simplicité, donc inverseur du sens sur un bête inverseur, car de toute façon on pose manuellement l'isolant et on ne vise pas un enroulement 100% automatisé.
Mias, comme tu le dis souvent, chacun fait ce qu'il veut :-)
Bonne continuation!
Guy
PS: pas encore reçu mon Arduino (Leonardo)


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Jeu 20 Mar 2014, 22:05 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonsoir Guy

Pas 100% automatisé oui , mais c'est plus simple de l'implanter dans l'Arduino
que de coller 2 interrupteur à levier ou micro switch avec le chariot guide fil
ce qui serait plus simple au niveau programme mais plus difficile à régler
mécaniquement
Déjà le guide fil avance ou recule en fonction du sens de rotation
donc faut juste rajouter une fonction qui inverse le sens tous les x tours
un 1 et -1 devrait suffire, avec les bonne vieille règle mathématique
1 * 1 = 1
1 * -1 = -1
-1 * 1 = -1
-1 * -1 = 1

Là je teste le menu , j'arrive à bien naviguer dedans , faut que je persévère
pour la compréhension des tableaux , histoire d'y stocker les nombres
de spires et j'ai envie de créer pour le compteur et le guide fil
une sorte de "milier","centaine","dizaine","unité" sous forme d'incrément de 0 à 9
avec une sous fonction qui enregistre le nombre sous forme
1000 x milier + 100 x centaine + 10 x dizaine + unité

Bref plein de truc et bidouille à tester :mrgreen:

A+

_________________
Ce qui est pris n'est plus a prendre


Dernière édition par Totof le Jeu 20 Mar 2014, 22:09, édité 1 fois.

Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Jeu 20 Mar 2014, 22:06 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 15 Juin 2005, 17:23
Messages: 7306
Localisation: Ardeche
Ne pas oublier de compter les tours pendant la pose de l'isolant . . .

_________________
Seules les choses que l'on refuse de comprendre en leur attribuant des propriétés magiques semblent compliquées.


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Jeu 20 Mar 2014, 22:12 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonsoir Yves

Le compteur de spire s'incrémente par les pulses du guide fil via la roue à crénaux
soit 10 pulses par tours , quand on tourne pour mettre l'isolant il continue à compter :oops:

J'ai pas posté de photo , je m'en charge de suite pour rigoler un peu

a+

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Jeu 20 Mar 2014, 22:23 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Re

Le test bench avec les fourches optiques et la roue "codeuse" en mdf 3 mm
que de la récup :mrgreen:

Fichier(s) joint(s):
Proto_compteur_roue1.JPG
Proto_compteur_roue1.JPG [ 601.88 Kio | Vu 5590 fois ]

Fichier(s) joint(s):
Proto_compteur_roue2.JPG
Proto_compteur_roue2.JPG [ 666.76 Kio | Vu 5590 fois ]


Sur ce Bonne nuit

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Jeu 20 Mar 2014, 23:28 
Hors ligne
Inscrits

Inscription: Mar 04 Mar 2014, 08:32
Messages: 32
Bonsoir,
On peut faire un excellent générateur avec une roue dentée en acier, un petit aimant et un capteur de Hall a deux balles entre les deux.
Cdlt,
Gerard

_________________
Celui qui fait les choses a moitié n'aura que la moitié du plaisir...


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Ven 21 Mar 2014, 06:55 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonjour Gerrard

Oui, en effet , perso j'ai eu plus facile de récupérer des fourches optiques qu'un capteur
effet hall , ces bêtes là grouillent dans les combinés imprimante-scanners
Par contre l'idée de la roue métallique est intéressante car ça devrait aussi fonctionner
puisque le principe ici est de couper la lumière de la diode par un obstacle opaque ,
l'avantage d'une roue métallique , elle serait plus fine :mrgreen:

Bonne journée à tous

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Dim 23 Mar 2014, 11:04 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonjour a tous

Je bloque sur un truc bête j'ai un tableau
Code:
int menu_valeur [5][7][3] = {
{
{-10},  {0}, {0}, {0},  {0},  {-1},{-1}
}, 
{
{-11},{-2}, {-3}, {-1}, {-1}, {-1},{-1}
},
{
{-12}, {0},  {0},  {0}, {-4}, {-5},{-1}
},
{
{-1}, {-6}, {-7}, {-3}, {-2}, {-1},{-1}
},
{
{-1}, {-8}, {-9}, {-1}, {-1}, {-1},{-1}
}
};

Je voudrais stocker dans un autre tableau les "cases" ou on trouve "0" et qui seront modifié
par le menu pour donner le nombre de spire, les cases "0"sont modifiable par le menu et
correspondent au chiffre qui compose le nombre de spire (millier,centaine,dizaine et unité)
et le nombre de spire par couche (centaine,dizaine et unité)
donc 7 "cases" que je voudrait mettre dans un nouveau tableau "int donnees [7]"
le but avec une routine , enregistrer puis recharger les données sauvegardées en EEPROM
vers le tableau initial "int menu_valeur [5][7][3]"
J'ai bien pensé directement utilisé les adresses du tableau initial mais je suis pas sûr que ce soit la bonne voie

je pose la question car l'EEPROM de l'Arduino n'est pas éternelle , 100000 cycles d'écriture/effacement
donc l'idéal serait d'enregistrer les chiffres une fois , par exemple en fin de session de bobinage , pour
les recharger quand on reprend la fois d'après

Si vous avez des suggestions je suis tout ouille :mrgreen: tub18 tub18

Bon dimanche

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Dim 23 Mar 2014, 13:30 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Re

1 h de jogging ça laisse le temps de réfléchir, en fait faut juste que je sauvegarde
le "cumul_compteur" et le "nombre de spire par couche"
Je continue à réfléchir :oops: :oops:

Bon appétit

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Jeu 27 Mar 2014, 05:28 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonjour à tous

J'avance doucemanette et j'ai réussi à implanter une série de boutons
dont un 6 ème qui me permet de rentrer soit dans le menu "affichage quand ça tourne"
soit dans le menu "configuration" , c'est encore une ébauche mais je tenais
à la publier pour avoir vos avis
Le menu est "navigeable" et je peux modifié la variable valeur de 0 à 9
pour établir un nombre

Le reste petit à petit

Le code est assez simple à suivre car subdivisé en fonction

Bonne lecture et merci pour les retours

Le code
Fichier(s) joint(s):
Compteur_decompteur_motpap_55SI.tar.bz2 [4.27 Kio]
Téléchargé 271 fois


Bonne journée à tous

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Ven 28 Mar 2014, 05:27 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonjour à tous

J'ai avancé sur la partie gestion des valeurs , avec la création du nombre de spires
et du nombre de spires par couche :mrgreen:

Pour les intéressés
Fichier(s) joint(s):
Compteur_decompteur_motpap_55SI_V2.tar.bz2 [4.49 Kio]
Téléchargé 272 fois


Bonne lecture

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Ven 28 Mar 2014, 07:14 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Petit Up matinal

En buvant mon café l'inspiration m'est venue , j'ai rajouté la gestion d'un 1 ou 0
pour le comptage ou décomptage , via un tableau de 1 ligne qui va me servir
pour stocker certaine info , c'est embryonnaire pour le tableau mais
la gestion "comptera" ou "décomptera" semble acquise :mrgreen: :mrgreen:

Mise à jour du fichier .ino
Fichier(s) joint(s):
Compteur_decompteur_motpap_55SI_V2.tar.bz2 [4.55 Kio]
Téléchargé 258 fois

Désolé pour celui qui a téléchargé la précédente version :oops: :oops:

Bonne journée, c'est l'heure de partir au taf tub18

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
 Sujet du message: Re: Bobineuse
MessagePosté: Ven 28 Mar 2014, 20:42 
Hors ligne
Site Admin
Avatar de l’utilisateur

Inscription: Mer 01 Oct 2003, 22:47
Messages: 8920
Localisation: St Mathieu de Tréviers près de Montpellier
Bonsoir à tous

Up du soir, espoir :mrgreen:

Voici une mise à jour qui complète les fonctions implémentées

Fichier(s) joint(s):
Compteur_decompteur_motpap_55SI_V2.tar.bz2 [4.81 Kio]
Téléchargé 266 fois


J'ai implanté la rectification de l'avance du guide fil par 1/2 tour (24 pas) en + ou -
ou par 1 pas en + ou - , le nombre de pas peut être modifiable si c'est pas pratique
vu que c'est une commande qui est indépendante du compteur , on peut réitérer
la correction sans sortir de la boucle menu :wink:

J'ai implanté la rectification du compteur en 1/10 de tours en + ou - et rebascule
immédiatement sur l'affichage du compteur , si il faut plusieurs rectification
il faut re-basculer dans le menu mais normalement cette correction ne devrait pas servir

J'ai implanté le comptage ou décomptage via la sélection du menu
Par défaut il compte , si on bascule en décomptage l'afficheur
marque "reste x spires" ou x est le cumul_spires - les impulsions issu
de la rotation de l'axe principal
Le cumul_spire correspond à l'entrée manuelle de la première ligne
du menu ( millier, centaine, dizaine et unité )

Bonne lecture

Moi j'y retourne car il reste du pain sur la planche :oops: :oops:

Au fait personne pour un petit commentaire :?

_________________
Ce qui est pris n'est plus a prendre


Haut
 Profil  
 
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 319 messages ]  Aller à la page Précédente  1 ... 12, 13, 14, 15, 16, 17, 18 ... 22  Suivante

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 9 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Aller à:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traduction par: phpBB-fr.com