bon, finalement je lance cette version int. directement sur le forum, c'est pas plus mal.
Voici un programme (sketch) intermédiaire pour votre Stepduino avec Lcd DFRobot.
Il correspond au montage dit "Proto 1" > viewtopic.php?f=284&t=10454
(mon système + prog. actuel tourne avec un afficheur LCD I2c + Interface PC sous Processing en développement et cela m'oblige à créer deux versions ... )
Cette version a été écrite avec l'IDE 1.0 d'Arduino ! (donc attention avec les vieilles librairies)
Il faudra avant tout installer une petite libraire supplémentaire : [Streaming.h], à télécharger ici > http://arduiniana.org/libraries/streaming/
Celle-ci est très peu gourmande (elle consomme rien en fait) et permet entre autre d'écrire des commandes LCD et Print sur une seule ligne.
A installer dans votre répertoire Librairie Arduino.
Vous verrez que l'appui sur les boutons du LCD DFRobot doit être assez bref mais franc !
J'ai nettement moins ce problème avec le mini joystick du Lcd I2C "Le Deuligne" qui me semble bien plus agréable ...
Vous pourrez toutefois régler la temporisation des boutons en début de programme, dans cette ligne :
...
// Temporisation en millisecondes appui boutons : Important dans les menus ! (à régler selon besoin, défaut 100)
const int Const_tempo_boutons = 100;
...
Cette valeur dépend aussi du nombre d'instructions et de leur rapidité dans la boucle principale.
Vérifier aussi la partie "Définition des autres E/S" : L'attribution des broches de vos "périphériques", comme Optocoupleur, Buzzer, etc ..., doivent correspondre !
Nb: Si vous avez installé un buzzer, celui-ci vous indiquera quelques infos importantes, surtout par la suite !
-------------------------------
Programme :
Il y a 3 menus principaux : 1 Réglages - 2 Actions - 3 Led.
A choisir avec les boutons Gauche(G) et Droite(D).
Une fois dans un menu principal, choisir les sous-menus avec les bouton Bas(B) et Haut(H).
Pour rentrer dans un sous-menu, appuyer sur le bouton Select(S), idem pour en sortir !
(une fois un sous-menu sélectionné, vous utiliserez les flèches H et B pour varier une valeur, puis S pour valider ou sortir)
Des petits graphiques aident à la navigation (carré = S)
1) Le menu Réglages :
Il se décompose en sous-menus de cette façon :
- 1: modPas = Multiplicateur de pas, (à utiliser en 16ème de pas, 1x-2x-4x-8x-16x par exemple, autrement en pas entier laisser en principe sur 1x !) [1]
- 2: distPas = Distance ou Foulée
- 3: nbPas = Nombre de foulées
- 4: freqMot = Temporisation moteur en microsecondes (us), ajuste la fréquence moteur, petites valeurs tempo. possible en 16ème de pas, plus grandes valeurs conseillées en pas entier !)
- 5: tempMot = Temporisation moteur en millisecondes (ms) pour mode avance manuel et comptage de foulées (ralenti les foulées de pas)
- 6: delApn = Délais après shoot photo en ms (tempo mémorisation image et/ou recharge de flash)
- 7: stabApn = Délais avant shoot photo en ms (stabilisation du système)
- 8: retAuto= retour automatique après dernier shoot (1=oui, 0=non)
- 8: Save = Sauver les réglages en Eeprom
- 10: Defaut (load) = Charger les réglages par défaut (écrase la dernière sauvegarde Eeprom et injecte les réglages du script)
2) Le menu Actions :
- 1: C-Stack (--x--) = Calibration et lancement stacking auto [2]
3) Le menu Led: (en construction !)
- 1: Reg pwm = 0 (+/-)
[1] Exemple modPas:
Vous avez réglé votre carte moteur en 16ème de pas (microstepping).
Vous avez réglé "ModPas" (le multiplicateur) à 8, vous aurez donc 8 x 1/16ème soit un demi-pas !
Vous avez réglé "distPas" à 10, vous aurez donc des foulées de pas de 10 x 0.5 = 5 pas entiers !
Les avantages du 16ème de pas sont très nombreux, particulièrement son lissage et l'atténuation des vibrations.
(en microstepping, pensez si possible à diminuer la variable "freqMot" ! Sur mon système et en 16ème de pas je règle cette variable à 250 us)
[2] Exemple d'utilisation
en chantier .... voir les deux schémas ci-dessous !
Navigation (Menu Actions/C-Stack) :
Principe (et quelques noms de variable) :
Principe (et quelques noms de variable) :
Téléchargement : > http://www.lenaturaliste.net/christian/ ... t_RXTX.zip
(votre répertoire sketchbook Arduino pourrait ressembler à cela : C:\arduino\sketchbook\Stepduino\stepduino_001_DfRobot_RXTX\stepduino_001_DfRobot_RXTX.ino
Rappel : librairie [Streaming.h], à télécharger ici > http://arduiniana.org/libraries/streaming/
Attention : Ne chargez pas votre sketch Arduino avec le moteur sous tension ! (celui-ci va bouger un peu et si votre système est proche d'un point de contact sur l'objectif = danger !)
D'une manière générale, on allume en premier l'Arduino puis seulement ensuite l'alim moteur (pour éteindre on commence par l'alim moteur)
Rappel : Ne JAMAIS débrancher le moteur lorsqu'il est sous tension (magnétisé) !! Risque de destruction du module Pololu !
Après un premier chargement du sketch (ou suite à des modif. de variables), pensez à utiliser le menu "Réglage / Défaut (Load)" afin d'être sûr que l'Eeprom est correctement écrite !
Ajout : Une version avec télécommande IR est disponible plus bas !
Lien direct > viewtopic.php?f=284&t=11092&start=10#p59786
Bons essais et à votre disposition si questions et/ou suggestions !