1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

Autres Robot Piscine

Discussion dans 'Arduino' créé par guol64, 12 Mai 2015.

  1. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU
    Robot Piscine
    Bonjour a tous,

    Voilà l'histoire :
    J'ai récupéré un robot de piscine en panne.
    Les moteurs étaient HS, je les ai changés et le robot a fonctionné, mais relativement mal (dû au revêtement de ma piscine).
    Cette fois ci c'est la carte électronique qui semble HS.

    J'ai dans l'idée de remplacer tout le système par une commande manuelle.
    Le robot est relié à l'extérieur de la piscine par un câble étanche 4 fils.
    Le robot est équipé de 3 moteurs 24VCC :
    La propulsion : gros moteur qui propulse le robot avec une turbine qui filtre l'eau par la même occasion : deux positions : ON/OFF
    Un moteur sur chaque roue pour gérer la direction : 3 positions : Avant/OFF/Arrière (inversion de polarité).
    Dans le robot il y a un peu de place pour caser une carte électronique.

    Voilà ma question: pensez-vous possible d'utiliser une carte arduino (ou autre) pour piloter manuellement ce robot.
    Sur les 4 fils d'entrée je pensais :
    1-24VCC
    2-5VCC
    3-GND
    4-CMD (5V)

    Je pensais "piloter" le robot par l'envoi d'impulsion 5V sur la CMD qui feraient changer le mode de fonction :
    Mode 1 : Marche Avant : propulsion ON, moteur G AV, moteur D AV
    Mode 2 : Marche Arrière : propulsion OFF, moteur G AR, moteur D AR
    Mode 3 : Tourne Gauche : propulsion OFF, moteur G AR, moteur D AV
    Mode 4 : Tourne Droite : propulsion OFF, moteur G AV, moteur D AR

    Merci pour vos retours.
    A oui, il faut que ce soit simple, je me débrouille en réalisation de PCB et soudage de composants, mais mes compétences électroniques sont médiocres.
     
  2. .AleX.

    .AleX. Apprenti

    Messages:
    107
    Inscrit:
    21 Avril 2015
    Localité:
    Clermont-Ferrand
    Robot Piscine
    Il y a bien plus élégant au niveau commande, tu peux utiliser une librairie capable de "décoder" une trame d'infos, et donc faire 'ce que tu veux'. Sur un fil on peut faire passer des instructions en 'serial', un peu comme avec un modem.

    Dans ton cas, je m'orienterais vers le même protocole qu'employé en modèle réduit, le CPPM, une suite d'impulsions de longueur variables, chaque impulsion correspondant à une fonction, et la durée de chaque impulsion défini la 'valeur'.

    Tu peux utiliser un arduino pour coder une trame CPPM, mais aussi une télécommande de modélisme que tu trouverais sur le bon coin par exemple. (attention, certains vendent des bouses à prix d'or)

    Et ensuite, avec un autre arduino, décoder cette trame pour diriger ton robot.

    La librairie 'exprès conçue pour' http://sourceforge.net/p/arduinorclib/wiki/Home/
     
  3. Nikass

    Nikass Modérateur

    Messages:
    2 359
    Inscrit:
    24 Mars 2009
    Localité:
    Montpellier
    Robot Piscine
    Salut !

    Je comprends bien l'idée, mais... A quoi ça servirait ?

    Je m'explique. Le fait d'avoir une commande comme tu veux la faire est intéressant si tu peux commander ton robot de telle manière qu'il couvre bien, et de manière fiable, toute la piscine. (si c'est toi qui veux le piloter à la main, là, d'accord, la question ne se pose pas er je rejoins l'opinion ci-dessus)

    Si c'est pour refaire un truc autonome, c'est peine perdue: tu n'as pas de retour de position fiable. Je pense que l'électronique d'origine est un truc tout con avec des changements et/ou des durées de fonctionnement pseudo aléatoires ce qui fait qu'au bout d'un certain temps ça finit par tout nettoyer. (si, si, dans ma jeunesse, j'ai bossé sur les problèmes d'aspirateurs automatiques, alors... !)

    A ce moment là, une seule carte dans le robot qui refait ça, vraiment pour la gloire.

    Pour passer des ordres aussi simples sur une liaison à un fil, il existe des solutions "en dur" qui évitent la mise en oeuvre de programmables mais bon, c'est aussi une bonne occasion d'apprendre !

    a+
     
  4. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU
    Robot Piscine
    Salut Nikass :P,

    Le but est bien un pilotage manuel.
    Le programme aléatoire d'origine mettait plus de deux heures et il restait des endroits non faits notament au centre.
    En manuel, il faut que je fasse 8 aller/retour pour couvrir la piscine: en 15mn c'est fait.
    D'autre part c'est pour nettoyer 5 ou 6 fois par ans et non pour une utilisation quotidienne.

    Merci Alex pour ces infos, je n'avais pas pensé à la télécommande (d'ailleurs je dois en avoir une qui traine).
    Dans mon esprit les 3 moteurs seraient pilotés en tout ou rien avec des relais (3 pour ON/OFF et deux pour l'inversion de polarité).
    Si je dois gérer les vitesses il faudra probablement que je passe par un driver pour piloter les moteurs.

    Je suis pas contre une solution en dur, a savoir que la place est quand même limitée à l'intérieur (c'est étanche).
    De plus je viens de m'apercevoir qu'il n'y a probablement que trois fils qui arrivent dans la boite (il y en a bien 4 qui partent, il faut que je vérifie), donc 24V, GND et CMD : si besoin du 5V il faudra le prendre sur le 24V.
     
  5. Gérard68

    Gérard68 Apprenti

    Messages:
    240
    Inscrit:
    5 Octobre 2014
    Localité:
    Haut-Rhin
    Robot Piscine
    Est-il possible d'avoir plus de fils ?
    Avec 3 moteurs, en inversant + et - pour changer de sens de rotation, il faut 6 fils. c'est plus simple qu'avec arduino.
     
  6. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU
    Robot Piscine
    Ben tout le problème est là.
    D'un côté ce qui est hors de a piscine :
    L'alimentation qui sort 28Vcc (mesurée à 29V à vide)
    upload_2015-5-13_21-58-10.png

    Le boitier de commande externe qui envoie 10V sur le fil marron et certainement les "commandes" aux robot.
    upload_2015-5-13_22-0-52.png

    Côté robot : les deux roues et le moteur d'hélice: il n'y a pas beaucoup de place.
    upload_2015-5-13_22-1-57.png

    A l'intérieur:
    upload_2015-5-13_22-3-14.png

    Et la carte de pilotage des moteurs:
    upload_2015-5-13_22-3-53.png

    Le robot est relié à la partie Alim extérieure par un câble étanche de 18ml (qui coûte un bras donc difficilement remplaçable, mais il est vrai que je n'ai pas exploré plus que ça le remplacement du câble). Dans ce câble l'alim qui fourni 28VCC et un fil supplémentaire.

    L'idéal pour moi est une solution simple, rapide à mettre en œuvre et peu coûteuse, mais là tout est relatif si on compare au prix d'un robot neuf.
     
  7. ferdi26

    ferdi26 Ouvrier

    Messages:
    417
    Inscrit:
    13 Octobre 2014
    Localité:
    drome
    Robot Piscine
    Bonjour
    Je ne vais pas te donner des conseil en electronique , je n'y connait rien . Le but du robot c'est de nettoyer ta piscine à ta place et donc de te faire gagner du temps donc l'idéal serait de trouver le moyen de le faire fonctionner de manière autonome si non tu finira vite par te lasser au bord de ta piscine en plein cagniard pendant que les autres boivent l'appéro :drinkers:
    ferdi
     
  8. .AleX.

    .AleX. Apprenti

    Messages:
    107
    Inscrit:
    21 Avril 2015
    Localité:
    Clermont-Ferrand
    Robot Piscine
    Les deux ne sont pas opposés !

    Avec la solution que je propose, tu peux envoyer aisément 8 'ordres' distincts, dans le 'jargon' on appelle ça une voie.
    Le protocole CPPM fabrique des impulsions de temps dont la valeur va de 1000µs à 2000µs, les voies sont toutes transmises les unes à la suite des autres avec une 'pause' entre chaque, puis après le dernier ordre, il y a une pause un peu plus longue pour dire : OK, on à tout envoyé, la prochaine est la voie 1.


    Donc tu peux parfaitement avoir quelque chose comme :
    voie 1 = avant arrière (0 = plein arrière / 100% = plein avant)
    voie 2 = droite gauche (0 = plein gauche / 100% = plein droite)
    voie 3 = 'pompe' de 0 à 100%
    voie 4 = une sélection du mode de contrôle (en dessous de 50% = manuel, au dessus, une séquence automatisée)

    Au niveau de l'arduino dans le robot, tu décode les voies avec la librairie, et ton programme effectue le mélange pour les moteurs.
    Grossièrement, ça donne
    Moteur 1 = (Voie1 * 0.5) + (Voie2 * 0.5)
    Moteur 2 = (Voie1 * 0.5) - (Voie2 * 0.5)
    Pompe = Voie3

    Et dans ta routine, tu détecte quand la Voie4 est supérieure à 50% pour faire une séquence automatisée genre avance en 'spirale', ou fait des lignes droites et un petit changement de cap toutes les 15 secondes... bref, ça t'arrange.

    Niveau encombrement, je ne peux que te conseiller un Arduino Nano qui, dans un format compact offre quand même un accès en USB, ce qui est le plus pratique pour débuter.

    Il te faut trouver ensuite 3 'interfaces de puissance' pour piloter tes moteurs.
    Plus élégants qu'un relais et d'un cout très abordable, tu peux utiliser des variateurs pour moteurs de modélisme, ça se pilote comme un sevomoteur, donc parfaitement prise en charge par l'écosystème Arduino.

    Il existe des modèles 'pour voiture' qui font marche avant / marche arrière, et des modèle 'pour avion' qui font 0 à 100%

    Ça existe dans une très large gamme de courant, de quelques petits ampère à plus de 100. Je pense que dans ton cas des '20A' seront largement suffisants, mais par contre, en 24V ça commence à faire des tensions un peu haute pour les modèles les plus courants.

    L'autre 'problème', c'est que depuis environ 10 ans, on à vu apparaitre des moteurs 'brushless' dans notre loisir et le matériel pour moteur à balais comme les tiens devient rare..
    Par exemple ce 20A est donné pour "10 NiMh cells', donc 12 éléments, ce qui donne au mieux 17V, il en manque un peu...
    Peut-être sur un site d'enchère/petites annonces avec les termes "brushed ESC"

    Mais avant ça, il faut que tu te familiarise avec le système arduino, par la peine d'acheter du matériel si c'est pour le laisser vieillir au fond d'un tiroir :wink:
     
    Dernière édition: 13 Mai 2015
  9. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU
    Robot Piscine
    En fait je n'ai que très peu d'arbres autour, elle reste relativement propre.
    Jusqu'à présent je faisais ça à "l'aspirateur" au bout de la perche deux fois par ans.
    C'est sûr qu'un robot c'est fait pour travailler tout seul, mais là une commande manuelle me satisferait pleinement.

    Merci Alex pour ces infos, je vais me documenter un peu, mais cette solution semble séduisante avec un peu de travail.
     
  10. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU
    Robot Piscine
    Les moteurs de roues font moins de 500mA, le moteur est donné pour 3,2W et le gros de la turbine je ne sais pas l'alim fourni 140W sous 28V, soit 5A maxi pour l'ensemble.
     
  11. .AleX.

    .AleX. Apprenti

    Messages:
    107
    Inscrit:
    21 Avril 2015
    Localité:
    Clermont-Ferrand
    Robot Piscine
    Bon, pour des moteurs de 500mA, je pense que tu peux utiliser un 'simple transistor' en PWM, l'arduino dispose aussi nativement de cette fonction en natif.

    C'est potentiellement ce qui était fait sur la carte d'origine d'ailleurs, avec un transistor de puissance pour chaque moteur, suivi d'un relais 2 pôles pour faire l'inversion de sens.
    J'ai refouillé un peu, je n'ai trouvé aucun ESC capable de tenir 24V 'dans sa doc' (même si je suppose qu'un grand nombre en soit capables)

    La pompe semble d'un gabarit similaire aux moteurs de propulsion, du coup, même combat.

    Tu peux reprendre cette méthode, voir même, si tu es en mesure de 'reverser' le circuit d'origine, le réutiliser en retirant des composants du circuit pour récupérer la partie puissance, mais vu que tu sais faire un PCB, ça sera plus propre d'en faire un, une sorte de 'shield' sur lequel tu place tes composants de puissance autour de l'Arduino. (d'ou l’intérêt d'en prendre un 'compact'.

    Tu utilise quel logiciel de conception/dessin de circuit ?
     
  12. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU
    Robot Piscine
    Pour le logiciel j'ai Kicad, mais chaque fois que je l'utilise, je passe un petit moment à réapprendre à m'en servir. :???:

    Pour la turbine le moteur est nettement plus gros, il fait 63W et est donné pour 3A.
     
  13. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU
    Robot Piscine
    Pour le pilotage moteur j'ai trouvé ça :
    https://www.pololu.com/product/2512 : Pour les deux petits moteurs
    https://www.pololu.com/product/1212 : Pour la turbine

    Donc côté robot:
    Arduino nano
    3 Controleur moteurs PWM
    1 câble pour les signaux d'entrée
    1 câble GND
    1 câble 28-29V
    Il faut un petit circuit pour assembler tout ça et pour l'alim.
    L'arduino accepte jusqu'à 17V il me semble: deux résistances identiques en série sur le 28V devrait me donner du 14V au milieu pour alimenter l'arduino.

    Je vais creuser le côté pilotage, génération du signal.
     
    Dernière édition: 15 Mai 2015
  14. Nikass

    Nikass Modérateur

    Messages:
    2 359
    Inscrit:
    24 Mars 2009
    Localité:
    Montpellier
    Robot Piscine
    C'est pas une bonne idée, le pont résistif, pour alimenter ça... un régulateur, c'est quand même plus mieux !

    a+
     
  15. guol64

    guol64 Modérateur

    Messages:
    1 973
    Inscrit:
    29 Mars 2009
    Localité:
    PAU

Partager cette page