Besoin d'aide dans le 13 pour programmer un servo

ludo0404

Senior Member
Bonjour,

Voila, j'ai entre les mains un servo, un kit picaxe 14M et un autre 08M.
Les programme Picaxe sont installés et les composants soudés sur les cartes.
Point important : je suis novice !

je souhaite que mon servo tourne de 45° et y reste tout le temps que mon capteur tor est fermé et qu'il revienne à sa position initiale lorsque que le capteur s'ouvre.

Ai-je tout le matériel nécessaire ? Suis je sur la bonne voie ?

Quelqu'un se trouverait t-il dans le 13 pour jeter un coup d’œil à la bête ?

Ludo
 

BESQUEUT

Senior Member
S'agit-il bien des kits AXE024 et AXE117 ?
Disposez-vous d'un cordon de programmation ?
Comment allez-vous alimenter le Picaxe et le servo ? (Piles, alim secteur,...)

Avez-vous suivi les instructions fournies avec le kit AXE024 ou téléchargées sur le site?

Sinon, il y a un exemple dans le tome 3 du manuel :
Output Device 8 - Radio Control Servo
Avez-vous essayé ce programme ?
 

ludo0404

Senior Member
Bonjour et merci de votre reponse,

Il s'agit d'axe003 et axe117.

Je dispose bien du cordon usb de programmation.

Alimentation : pour les test et développement, le picaxe et le servo sont alimentés par pile (avec le kit fourni) puis seront ensuite branchés sur une batterie 12V avec donc un régulateur à découpage 5V.

Je vais essayer ce soir le programme par output8, je vous tiens au courant.

Encore merci

Ludo
 

alainav1

Senior Member
Bonjour,
attention a vide un servo ne consomme pas beaucoup mais en fonctionnement (avec une charge ) sont intensité augmente fortement donc si l'alimentation n'est pas assez costaud la tension chute et le picaxe est sous alimenté et ça fait n'importe quoi !
on peut imaginé alors que le programme ne marche pas
une bonne capa (1000µF ou 2200 µF par exemple )sur le 5V permet d'améliorer la situation
cordialement
Alain
 

BESQUEUT

Senior Member
Je vais essayer ce soir le programme par output8, je vous tiens au courant.
Téléchargez la notice http://www.picaxe.com/docs/axe024.pdf
bien adaptée au 08M2...

Remarquez que le montage est alimenté en 6V, avec une diode pour faire chuter la tension destinée au Picaxe.
A partir du 12V, on peut aussi utiliser 2 régulateurs : 6V pour le servo et 5V pour le Picaxe.
Le condo de 1000µF ou 2200µF sera bien sur sur le 6V.
Pour le Picaxe, remarquez les condo C1 et C3.
 
Last edited:

BESQUEUT

Senior Member
pour info
personnellement j'alimente toujours mes servo en 5V (le même 5V que le µP)
Sauf servo de forte puissance, ça me semble effectivement suffisant dans la majorité des cas ; le condo de 1000µF me semble particulièrement indiqué dans ce cas...
 

ludo0404

Senior Member
Merci pour vos indications, je vais appliquer vos conseils et reviendrai vers vous pour le résultat.

Mon servo devra déplacer un poids de 150g avec la contrainte de la force centrifuge (montage sur moto de circuit), je pense plutôt donc mettre un condo 2200 non ? faut t-il prendre axial, radial ou faible esr ?
Aucun n'est en 6V, je prends le 25V ?
 

PieM

Senior Member
Aucun n'est en 6V, je prends le 5V ?
Surprenant... la plupart des servos sont donnés pour des tensions entre 4.8V et 6V voire plus de 7V pour certains à fort couple.

Mon servo devra déplacer un poids de 150g
le problème est de savoir surtout quel couple engendre cette charge en fonction de la cinématique !
c'est l'élément déterminant dans le choix du servo, en plus de son temps de réponse (si c'est critique)
Et vu l'application, je séparerais l'alim du picaxe de celle du servo !
 

BESQUEUT

Senior Member
Mon servo devra déplacer un poids de 150g avec la contrainte de la force centrifuge (montage sur moto de circuit), je pense plutôt donc mettre un condo 2200 non ? faut t-il prendre axial, radial ou faible esr ?
Aucun n'est en 6V, je prends le 25V ?
La tension d'un condo est une valeur MAXI à ne pas dépasser. Ça existe en 16V, mais 25V convient également.
Par contre, plus la tension et la capacité sont élevés, plus le volume est important et en conséquence, les contraintes mécaniques.
En l’occurrence, plus que la force centrifuge, c'est contre l'effet destructeur des vibrations qu'il faut se prémunir. S'agit-il d'une moto réelle ou d'un modèle radio-commandé ? Avec un modèle axial, le condo est tenu aux deux extrémités. J'ai l'habitude d'ajouter un peu de colle néoprène entre le condo et le circuit imprimé. Avec un condo radial, le porte à faux est plus important. Mais on peut aussi utiliser de la colle pour le fixer au CI par sa base.
Utilisez impérativement un CI en fibre de verre (bakélite trop sensible aux vibrations).
Une faible esr est une bonne chose et un synonyme de qualité donc de longévité. Ce n'est néanmoins pas une obligation dans ce cas.
Le déplacement d'une masse de 150g ne donne pas d'indication sur le couple nécessaire. Il faudrait connaitre le bras de levier et/ou la distance (course) du déplacement. En clair un schéma ou une photo seraient les bienvenus. Le modèle de servo aussi si vous le connaissez.
 

ludo0404

Senior Member
Merci beaucoup ! je vais faire tout ca et vous enverrai un schema si mon servo n'est pas assez puissant.

Ludo
 

PieM

Senior Member
Sorry je n'avais pas compris qu'on parlait de la tension du condo !

pour ma culture perso quel est l'interet de
je séparerais l'alim du picaxe de celle du servo
Tout moteur ou actionneur selfique est une source de parasites. donc quand on peut avoir une alim séparée, c'est toujours préférable.
Ici on part d'une batterie pour réguler en 5V , et pour pour alimenter un servo à une tension qui peut être supérieure et n'a pas besoin d'une régulation fine.
D'autant plus sur un montage où l'alim du servo va peut être se promener avec d'autres fils de la moto et se ramasser un tas de parasites!
 

alainav1

Senior Member
bonjour ,
j'avais compris que toutes les alimentations etaient issu de la même batterie (celle de la moto )
si la batterie du picaxe est separée il serait donc judicieux d'intercaler un optocoupleur pour isolé leµP de toute tension exterieur
cordialement
Alain
 

BESQUEUT

Senior Member
j'avais compris que toutes les alimentations etaient issu de la même batterie (celle de la moto )
Oui, je crois que c'est ça, ce qui n'empêche pas de réaliser des régulations séparées pour le Picaxe d'un coté et pour le servo d'un autre. (pas nécessaire pour les essais, mais permet d'augmenter la fiabilité du montage final)
Si on dispose d'une autre source pour le Picaxe, on peut effectivement faire une isolation optique ; mais c'est pousser le bouchon très loin, surtout pour notre ami ludo qui ne semble pas très à l'aise en électronique.

A propos : je n'ai pas eu confirmation que la moto soit un modèle radiocommandé ou une vraie moto ?
 

ludo0404

Senior Member
Pour la moto, il s'agit bien d'une vraie moto.
Le développement et les réglage du système se fera sur circuit (à Barcelone), c'est pour vous dire les contraintes ! mais le système sera protégé du "vent" dû à la vitesse.

En effet, je ne suis pas très alaise avec tout ca et en plus dois m'occuper de faire tourner mon entreprise à coté, mais je suis plutôt du genre à apprendre très vite.

J'ai d'abord cherché un pro pour programmer ces servos (contre rémunération même) mais sans résultats, je n'ai surement pas cherché au bon endroit !

Pour tout vous dire j'ai développé ce système en premier lieu avec un solénoïde, facile à mettre en œuvre mais beaucoup trop lourd et encombrant.

Une dernière question avant que je mette en œuvre vos conseils : Entre l'µP et le servo, on doit mettre une résistance de 330, ou dois-je placer le condo ? Entre la résistance et le servo ou entre l'µP et la résistance ?

Pour l'alim, je compte mettre deux regul sur l'arrivé 12V comme vous me le conseillez, un 5V et un reglable que je mettrai à 6V pour le servo et son condo, j'ai bon monsieur ?
 

BESQUEUT

Senior Member
Voir schéma du kit AXE024 :
résistance de 330 ohms entre le picaxe et le servo.
Condo de 1000µF ou plus en parallèle sur l'alim du servo (fils noir coté moins du condo, fil rouge sur l'autre borne)
OK pour 2 régulateurs genre 7805 ou LM117. (mais en #3 vous parliez de régulateurs à découpage. De quoi disposez-vous ?)

NB : il est facile de faire monter un 7805 à 6V avec 2 diodes ou deux résistances, ce qui peut simplifier l'approvisionnement.
Pour celui servant au servo, prévoir un radiateur.

Pour les "réglages" : est-ce uniquement mécanique, ou faudra-t-il par exemple ajuster l'angle de 45° ?

Pour info, je serai à Marseille Lundi (PM si nécessaire...)
 

ludo0404

Senior Member
OK pour le condo.

Les regul : 1 Régulateurs à découpage 5V DE-SW050 et Régulateur ajustable DE-SWADJ (celui que je mettrais en 6V)

Pour les réglages, il pourrait y avoir des deux...

Pour lundi, je vous tiendrez informé avant dimanche selon l'avancé des choses, merci de votre proposition !
 

BESQUEUT

Senior Member
Régulateur ajustable DE-SWADJ (celui que je mettrais en 6V)
Donc 1A maxi
Un servo standard consomme de l'ordre de 500mA en pleine charge, donc ça passe tranquillement.
Vous ne devriez pas avoir de soucis avec ces composants.
Pour les réglages, il faut sans doute prévoir au moins un switch et un ou 2 poussoirs, à moins qu'un ordinateur et son câble soient disponibles sur site.

Une fois le prototype au point, il faudra veiller à une réalisation mécanique soignée, si possible un boitier étanche avec le ou les CI tenus par des petits blocs de caoutchouc.
 

BESQUEUT

Senior Member
Pour la moto, il s'agit bien d'une vraie moto.
Le genre de truc où tout ce qui n'est pas fixé avec boulon indésserable, frein filet et goupille de sécurité fini par se démembrer ... C'est bien ça ?
Question subsidiaire : la pluie c'est possible ?
 

PieM

Senior Member
Les regul : 1 Régulateurs à découpage 5V DE-SW050 et Régulateur ajustable DE-SWADJ (celui que je mettrais en 6V)
puisqu'ils ont le même prix utilisez les deux mêmes ajustables + 1 de rechange éventuellement.
Attention à l'emplacement du Picaxe (température)
pour les réglages sur place sur piste, ce serait mieux de prévoir un petit potentiomètre sur une entrée analogique comme celui-ci
ou un vrai potard sur le guidon pour faire les réglages en marche si c'est souhaitable.
 

ludo0404

Senior Member
Pour tout ce qui est caractéristiques technique, je maitrise, je fais déjà différent boitier pour moto.

Il y aura un ordi donc on pourra "brancher" la moto, mais l'idée du potentiomètre me parait très bien, on pourrait régler l'angle d'action du servo ?
 

PieM

Senior Member
Il y aura un ordi donc on pourra "brancher" la moto, mais l'idée du potentiomètre me parait très bien, on pourrait régler l'angle d'action du servo ?
Bien sûr ! Un peu dommage de devoir utiliser un ordi pour ça ...
 

BESQUEUT

Senior Member
on pourrait régler l'angle d'action du servo ?
Oui : c'était l'objectif de ma question. Faut-il prévoir un réglage de chaque point de consigne (TOR ouvert et fermé) ?
Je pense que le potar n'est pas suffisant : trop facile de changer le réglage. Il faudrait prévoir un switch à glissière pour passer en mode "réglage".
Je voyais plutôt des poussoirs plus et moins qui permettent d'agir directement sur le servo jusqu'à trouver la position ad hoc. Puis on repasse le switch en mode "normal" et le Picaxe mémorise le réglage pour la prochaine mise sous tension.
On peut aussi se passer du switch et prévoir une mise en mode "réglage" par appui simultané sur les 2 boutons pendant 2 secondes. (peu probable que ça arrive par accident).
S'il faut régler les 2 points de consigne, on peut prévoir une astuce por passer de l'un à l'autre sans avoir besoin de basculer réellement le TOR. Ou alors, il faut prévoir un inter pour court-circuiter le TOR le temps du test.

Mais ne brûlons pas les étapes : dites nous si vous arrivez à faire bouger ce servo avec le montage de base.
 

BESQUEUT

Senior Member
Attention à l'emplacement du Picaxe (température)
ahhh.... on a oublié de vous dire...
Le seul emplacement dispo c'est entre le pot d'échappement et la culasse...
Comme ça, avec l'alim parasitée, le vent, la force centrifuge, les vibrations et l'humidité en cas de pluie, on aura fait le tour de tout ce qui risque de mettre en panne ce genre de montage !
Le Picaxe en lui-même ne craint pas grand chose, mais toute la connectique autour a intérêt a être solide et bien protégée... Mais notre ami Ludo à l'air plus à l'aise dans ce domaine que dans la tension des condensateurs. Ça va le faire !
 

ludo0404

Senior Member
C'est vraiment sympa de votre part ! Je pense pas que je recevrais aujourd'hui mon colis de composants, je vous tiendrez donc informé en debut de semaine.

Pour la protection du boitier, on pourra surement en résiner une partie, en faisant attention aux pièces qui chauffent et aux pièces mobiles (switch).

Bon week end à vous.

Ludo
 

jojojo

Senior Member
Une astuce que j'utilise régulièrement, sur des montages orientés "scoouters" :
La colle thermique.

Même efficacité que la résine, mais, réversible.
 

ludo0404

Senior Member
Bonjour à tous,

Voila j'ai un peu avancé.
En C3 j'ai mis un tor (capteur de niveau, bille dans bain d'huile) c'est bon ?
Branché le servo sur sortie 2
Pour l'instant pas de condo (pour les essais à vide)
Alimentation par pile LR6 avec le support fourni.

Il faut maintenant faire le diagramme sur programming picaxe non ?

Ludo

Je pense qu'il me reste
 

BESQUEUT

Senior Member
Bonjour à tous,

Voila j'ai un peu avancé.
En C3 j'ai mis un tor (capteur de niveau, bille dans bain d'huile) c'est bon ?
Je suppose qu'il s'agit d'un contact sec (=sans potentiel)
L'autre extrémité a été reliée à quoi ?

En cas de doute, reprendre le manuel, tome 3, "Input Device Interfacing" page 26

Branché le servo sur sortie 2
Pour l'instant pas de condo (pour les essais à vide)
Alimentation par pile LR6 avec le support fourni.

Il faut maintenant faire le diagramme sur programming picaxe non ?

Ludo

Je pense qu'il me reste
Recopier le programme qui figure dans la doc du AXE024, en ne gardant que ce qui concerne servo 2 puisque c'est la sortie que vous utilisez.

Si c'est la toute première fois que vous programmez un PICAXE, il est utile de lire la doc (en anglais sur le site officiel, tome 1)
Il existe d'excellents didacticiels en français, mais beaucoup concernent la programmation graphique pour laquelle je ne vous serai d'aucune utilité car je n'utilise que le BASIC.
Si vous ne vous en sortez pas avec l'exemple indiqué, publiez votre tentative sur ce forum : une bonne âme trouvera probablement les points à corriger.
 
Last edited:

ludo0404

Senior Member
Voila les premiers résultats, reste à peaufiner pour avoir ce que je veux....
Les deux fils jaune, c'est un contacteur (on/off)
Je me sert finalement de la sortie 1.
Je souhaite que mon servo ne bouge pas en position ouvert et se déplace de 45° lorsque le contacteur est fermé (et qu'il reste dans cette position tant que le contacteur est fermé), c'est possible avec ce montage ?
'*** Program constants
' Delay to slow down servo motion (30ms default)
symbol servo_delay = 30
'*** Initialisation
init:
' set servos to known position
servo 1,120
pause servo_delay
'*** Move forward
move_forward:
for b1 = 120 to 180
servo 1,b1
pause servo_delay
next b1
for b1 = 120 to 180
pause servo_delay
next b1
for b1 = 180 to 120 step -1
servo 1,b1
pause servo_delay
next b1
for b1 = 180 to 120 step -1
pause servo_delay
next b1
goto move_forward
20140318_094925.jpg
 
Last edited:

BESQUEUT

Senior Member
Voila les premiers résultats, reste à peaufiner pour avoir ce que je veux....
Et ? ... Ça bouge si je comprends bien ? Nous disposons donc d'une bonne base de travail.
D'après la photo, vous avez opté pour un AXE024 et non un AXE003 comme indiqué en #3.
C'est plus pratique et sans doute même un peu moins encombrant.
Les deux fils jaune, c'est un contacteur (on/off)
Je me sert finalement de la sortie 1.
Je souhaite que mon servo ne bouge pas en position ouvert et se déplace de 45° lorsque le contacteur est fermé (et qu'il reste dans cette position tant que le contacteur est fermé), c'est possible avec ce montage ?
Pour publier un programme, merci de l'encadrer avec des balises
[ CODE] et [ /CODE]
Ce qui est plus lisible :
Code:
'*** Program constants
' Delay to slow down servo motion (30ms default)
symbol servo_delay = 30
'*** Initialisation
init:
' set servos to known position
     servo 1,120
     pause servo_delay

'*** Move forward
move_forward:
for b1 = 120 to 180
     servo 1,b1
     pause servo_delay
next b1

for b1 = 120 to 180
    pause servo_delay
next b1

for b1 = 180 to 120 step -1
    servo 1,b1
    pause servo_delay
next b1

for b1 = 180 to 120 step -1
   pause servo_delay
next b1

goto move_forward
Il manque la résistance de 10k entre le 0V et l'entrée 3.
A 10k pull-down resistor should also be connected between the two pads on the right (marked 0V and 3) as shown by the diagram.
 
Last edited:

BESQUEUT

Senior Member
Pour commencer, je verrais un truc tout simple :
Code:
#PICAXE 08m2

do
	if pin3=0 then
		servo 1,75
	else
		servo 1,150
	endif
loop
Pour suivre les recommandations de RevEd, il est préférable d'utiliser Servopos, ce qui donne :
Code:
#PICAXE 08m2

servo 1,75
do
	if pin3=0 then
		servopos 1,75
	else
		servopos 1,150
	endif
loop
C'est à peine plus compliqué, et ça devrait être plus stable.

Désolé, je ne dispose pas de quoi faire le test.
Qu'on me corrige si j'ai commis une erreur...

Si tout va bien on pourra envisager un réglage des positions de consigne.

Avez-vous opté pour des boutons ou pour un potentiomètre ?
 

ludo0404

Senior Member
J'ai rajouté la résistance, entré le code et c'est déjà quasiment ce qu'il faut ! vous êtes trop fort !

Petit souci : lorsque le servo est dans une position fixe, il fait des petits accoues, on peut supprimer ca ?
 
Last edited:

BESQUEUT

Senior Member
Petit souci : lorsque le servo est dans une position fixe, il fait des petits accoues, on peut supprimer ca ?
Utilisez-vous le premier exemple ?
Si OUI passez au second.

Si NON, je donne ma langue au chat.
Si des spécialistes du servo ont une idée, nous sommes preneurs...

Dans les deux cas, merci de nous tenir informés.
 
Last edited:

ludo0404

Senior Member
Utilisez-vous le premier exemple ?
Si OUI passez au second.

Si NON, je donne ma langue au chat.
Si des spécialistes du servo ont une idée, nous sommes preneurs...

Dans les deux cas, merci de nous tenir informés.
Oui j'ai bien utilisé la solution avec les servopos....
 

ludo0404

Senior Member
Savez vous ce que je peux utiliser comme kit pour maintenant avoir une deuxieme entrée qui commandera au servo de se déplacer de 45° dans l'autre sens ?
 

PieM

Senior Member
Savez vous ce que je peux utiliser comme kit pour maintenant avoir une deuxieme entrée qui commandera au servo de se déplacer de 45° dans l'autre sens ?
:confused:
On aurait pu penser qu'une seule info faisait fonctionner votre système: si c'est 0, le servo a une position , si c'est 1 il prend l'autre position.
Essayez d'être clair dans votre besoin car là ça ne l'est pas !

Et pas besoin de kit ! il vous reste des entrées disponibles sur le Picaxe.
 
Top