Aller au contenu


Contenu de raoullevert

Il y a 19 élément(s) pour raoullevert (recherche limitée depuis 04-avril 13)


#19675 [help] realisation d'une voiture wifi guidé à partir du camera IP motorisé

Posté par raoullevert sur 27 mars 2011 - 10:19 dans Electronique

Salut,

Déjà un moteur PAP et un moteur "universel" (genre moteur à charbon de modèle réduit) ne sont pas du tout fait pareil.
Le moteur PAP se pilote de manière séquentielle (bobine 1 puis bobine 2 puis bobine 3 ... etc ).
Un moteur universel se pilote en intensité. Tu mets du jus dans un sens, ça tourne dans un sens. Tu inverse, le sens de rotation s'inverse.
A partir de là, a moins d'utiliser un Pic avec un pont en H ... je vois pas trop comment faire !



#19673 PH-mètre !

Posté par raoullevert sur 27 mars 2011 - 10:13 dans Electronique

Salut,

Je ne suis pas chimiste, mais dans mon boulot on utilises souvent des Ph-mètres.
En gros, le principe n'est pas compliqué. On utilise l'effet pile (oxydo-réduction).
Tu as deux électrodes. Une électrode est une référence, dont le potentiel ne varie pas, ou très peu. Le potentiel de la seconde électrode varie en fonction de la concentration d'ions H+.
Plongée dans une solution, une différence de potentiel apparaît entre les deux électrodes. Cette DDP est proportionnelle au PH.

la réponse n'est pas instantanée. Surtout si l'électrode est contenue dans une tube en verre : il faut quelques secondes avec d'avoir un équilibre et une mesure fiable.
la mesure doit se faire dans l'eau en mouvement : on recommande un agitateur magnétique d'ailleurs.
Ton PH-mètre doit être étaloné régulièrement avec a minima deux référence (souvent ph7 et ph9). Il existe des solutions tampon pour ça.
La température influe directement sur le PH. Quand tu chauffe de l'eau, ton PH diminue. En fait ton échelle de PH diminue également. Par exemple, à 800°, l'echelle va de 0 à 7,6, et le PH neutre est alors 3,8 (pression très haute bien sur pour avoir de l'eau et pas de la vapeur d'eau) ...
On exprime généralement le PH aux conditions standard : 20° 1b. Normalement, si ton eau n'est pas très chaude et à pression atmosphérique, et que tu ne veux pas une précision diabolique, tu peux t'en passer.

Juste une chose si tu veux réaliser une régulation de PH : l'échelle n'est pas linéaire ! C'est bête mais il faut bien avoir à l'esprit que de passer de PH 7 à PH 8 nécessite très peu de base. Pour passer de PH10 à PH11, il va te falloir beaucoup plus de réactif. Il est très dur d'avoir un PH7 pile-poil ... La moindre goutte d'acide ou de soude te fait passer d'un côté ou de l'autre. Prévois une zone morte en 6 et 8, ou ta régulation ne cherchera pas à compenser les variations de PH ! Autrement tu risquerais de vider tes réactifs en permanence. La réaction n'est pas non plus instantanée : il faut que ton fluide soit bien homogène avant de l'analyser. Pour de gros volumes, il y a quasi toujours des phénomènes de stratification. Pour être sur d'avoir une mesure significative, on préconise de brasser 1,5 fois le volume.
Par ex: si tu as un volume de 1m2, et une pompe qui débite 1m2/h, la valeur ne sera représentative qu'après 1h30.

Tout ça vient de l'expérience d'exploitation en centrale nucléaire. Pour un particulier tu peux forcement assouplir tout ça. Après tout dépends de ce que tu veux faire.



#19663 Robot pendule inverse

Posté par raoullevert sur 27 mars 2011 - 11:43 dans Archives

http://hackaday.com/2011/01/27/555-based-balancing-bot/

du servo, du NE555 2 ldr et let's go!!


Sont principe est assez sympa : il utilise deux photorésistances et une source de lumière pour détecter si le robot est droit ou pas. Il explique après le principe d'une régulation PID à base de NE555 et comment la régler.
Regler les paramètre d'une régulation se font normalement en deux temps : identification du procédé, pour déterminer l'équation du système à réguler. A partir de la tu calcules tes actions P,I et D.
Sinon, tu fais un peu comme le gars : à l'œil ! Si il y a pompage, Tu baisse le gain ...

Dans le principe un robot pendule inversé n'est plus ou moins qu'une régulation de toutes façons.



#18696 BOB4 - DRONE!

Posté par raoullevert sur 24 novembre 2010 - 11:42 dans Drone, Robot volant, et autres machines volantes

En même temps, dans un projet, le proof of concept est l'étape la plus difficile à franchir !
Meme si le projet ne sera jamais finis (c'est le principe du projet pour moi) .....



#18673 BOB4 - DRONE!

Posté par raoullevert sur 23 novembre 2010 - 08:44 dans Drone, Robot volant, et autres machines volantes

Juste un mot : bravo.

Ça n'a l'air de rien, c'est vrai, mais c'est un super projet que tu viens de réaliser ! En espérant que ça suscite des vocations !



#18402 BOB4 - DRONE!

Posté par raoullevert sur 24 octobre 2010 - 07:49 dans Drone, Robot volant, et autres machines volantes

Salut,

J'ai fait quelques tests avec une micro caméra lcd (fournie avec une carte mini2440). Le principal soucis pour calculer le déplacement X/Y par rapport au sol est qu'il faut compenser les mouvement de rotation de l'hélico. Si tu hélico penche en avant sans même avancer, le capteur va 'voir' un défilement très rapide. Un simple calcul prenant en compte la hauteur est l'angle de rotation pourrait faire l'affaire, à la précision près. Plus l'hélico sera haut, plus la précision sera dégradée.

Je suis toujours assez impressionné par le boulot que tu as fait en tout cas.

Pour les perturbations HF générée par les moteurs : Il n'est pas possible de mettre la carcasse à la masse (sur un moteur à charbon j'entends), et de mettre une ferrite sur les fils d'alimentations ?



#18075 Projet de voilier autonome

Posté par raoullevert sur 23 septembre 2010 - 08:33 dans Robots sous-marins bateaux et autres systèmes aquatique

Si ton bateau a déjà un pilote, ça simplifie le problème. Sur la plupart des pilotes, tu peux envoyer des WayPoints externes. Après il te geste les voiles à gérer. Pour faire simple, il faut juste garder la voile à 90° par rapport au vent apparent.



#18065 aide realisation d'un robot autonome

Posté par raoullevert sur 23 septembre 2010 - 11:13 dans Robots roulants, chars à chenilles et autres machines sur roues

Salut

Vu la simplicité de ton projet, ça doit être faisable avec peu de moyens.
Déjà pour chassis : Vu ton budget, il va falloir ruser pas mal.
J'ai vu des robots fait avec des Cds recyclés : pas cher et simple à construire.

Pour les moteurs tu as deux choix :
un servomoteur modifié pour tourner à vitesse constante.
un moteur à courant continu + un capteur (une roue percée, genre souris).

Si tu as une vielle souris de PC sous la main, tu peux la démonter et réutiliser les pieces.
Sachant que ton robot ne doit faire qu'une chose : aller tout droit, tu n'as besoin que d'un moteur, qui fait tourner les roues arrieres(ou avant).
Ces roues arrières seront solidaires du même axe pour être sur d'aller tout droit.

Pour la logique, si j'étais toi, je prendrais tout simplement des compteurs (74LSXXX). Tu fais un petit montage avec des micro switch pour régler la distance et basta.

Après, je pense que personne n'est la pour faire tes devoirs !

Pour freiner un moteur de robot, souvent on coupe juste l'alim...



#18062 BOB4 - DRONE!

Posté par raoullevert sur 22 septembre 2010 - 09:01 dans Drone, Robot volant, et autres machines volantes

Oui tout à fait, c'est une simple caméra avec un soft. En fait dans le principe, une souris optique fonctionne comme ça.
Une caméra et une source laser oscillante (pour éviter les interférences). La caméra à une résolution très faible, mais un fort grossissement, histoire de gagner en précision. Ensuite un dsp se charge de calculer la vitesse et le sens de défilement.
Vu comme ça, c'est simple. Quelques soucis quand même :
-- si la vitesse de déplacement est rapide, et si le rafraichissement de la camera (FPS) est faible => mauvaise detection
-- si le support est uniforme, on ne pas peut détecter le mouvement.

Pour un hélico, il faut gérer en plus l'altitude. Quand l'hélico est haut, la vitesse de défilement apparente du sol est plus petite que quand il est au ras du sol, pour la même vitesse helico/sol. Tant que l'helico n'a pas de grandes variations d'altitude, c'est assez négligeable.

Je vais réfléchir à un pti programme... avec python et opencv pour commencer.
Par contre, il va falloir une certaine puissance de calcul embarquée...

Edit : comme promis, une première ébauche en python

#!/usr/bin/python
# -*- coding: cp1252 -*-
import cv

cv.NamedWindow("sortie", 1)             # Création de la fenetre
capture = cv.CreateCameraCapture(1)     # Selection de la caméra
#Chez moi : cam(0) = caméra intégrée du PC.
#Cam(1) = webcam USB. 

if (not capture):
   print("Ouverture du flux vidéo impossible !\n")

tailleX, tailleY = 100,100    #Définition de l'image qui servira aux calculs
sortie = cv.CreateMat(tailleX,tailleY, cv.CV_8UC3)       # image couleur 
sortieNB = cv.CreateMat(tailleX,tailleY, cv.CV_8UC1)     # image N&B
old_sortieNB = cv.CreateMat(tailleX,tailleY, cv.CV_8UC1)  # image N&B

velx = cv.CreateMat(tailleX,tailleY, cv.CV_32FC1) #Matrices des vitesses
vely = cv.CreateMat(tailleX,tailleY, cv.CV_32FC1) #selon X et Y 

while (1):
    #on capture une premiere image, on la reduit et on la passe en Noir&Blanc
    #-> old_sortieNB : premiere image réduite N&B
    image = cv.QueryFrame(capture)
    cv.Resize(image, sortie)
    cv.CvtColor(sortie, old_sortieNB, cv.CV_RGB2GRAY)
    
    #idem : on capture une deuxième image, on la reduit et on la passe en Noir&Blanc
    #-> sortieNB : deuxième image réduite N&B  
    image = cv.QueryFrame(capture)
    cv.Resize(image, sortie)
    cv.CvtColor(sortie, sortieNB, cv.CV_RGB2GRAY)
    #Calcul des vitesses par flowOptique (velx et vely)
    cv.CalcOpticalFlowLK(old_sortieNB, sortieNB, (15,15), velx, vely)
    #On fait une moyenne de chaque matrice pour avoir une vitesse globale
    #C'est pas la meuilleur des méthodes, mais c'est la plus simple

    ScrollX = cv.Avg(velx)[0] * 50 #Vitesse en X
    ScrollY = cv.Avg(vely)[0] * 50 #Vitesse en Y

    cv.Line (image, (150,150) ,
             (150+ScrollX, 150+ScrollY),
             cv.RGB(255,0,0) ) #On trace un vecteur de vitesse sur l'image
 
    cv.ShowImage("sortie",image) #Et on affiche tout ça 
      
    if cv.WaitKey(10) == 27:  #Appuyer sur ESC = quitter.
       cv.DestroyWindow("sortie") #on ferme la fenetre
       break
    



#18002 BOB4 - DRONE!

Posté par raoullevert sur 20 septembre 2010 - 02:32 dans Drone, Robot volant, et autres machines volantes

Juste un mot : chapeau bas.

Autrement, ca n'existe pas des capteurs à défilement, comme pour les souris laser ou infrarouges, mais pour une portée plus importante ?
Il existe un modèle d'auto-pilote qui fonctionne un peu comme ça : centrale inertielle + capteur de défilement pour rester en place.
pour la petite histoire : La première version ne disposait pas de ce capteur, et l'hélico avait tendance à se faire la malle tranquillement jusqu'à ce que les batteries soient mortes :-).



#18001 Aeromodelisme perte signal...

Posté par raoullevert sur 20 septembre 2010 - 02:21 dans Electronique

Salut,

Ce genre de problème est courant avec certains couples télécommandes/récepteurs. J'avais eu le même soucis avec une télécommande Walkera (helico chinois pas cher). Tu es en quel fréquence ? 74 Mhz, 42Mhz ou 2.4Ghz ? (à mon avis pas en 2.4Ghz).

Ca peut venir aussi de la manière dont tu positionnes l'antenne de ton avion. il ne faut que l'antenne soit enroulée ou trop proche de carbone et encore moins de métal.
Et puis il faut toujours garder l'antenne pointée vers le haut et non vers ton avion. Après, j'avoue que c'est toujours difficile de régler ce genre de problème.

C'est un kit RTF (ready to Fly) ?



#17992 Quelques questions sur les outils

Posté par raoullevert sur 19 septembre 2010 - 10:20 dans Hack mod customisations et autres modifications

Salut,

Je suis pas trop d'accord sur le fait de prendre un fer moins puissant. Je soude avec mon vieux fer 25W que j'avais au lycée (autant dire qu'il est pas neuf). Forcement si tu restes 30 secondes sur une soudure, tu vas vite voir les pistes se fairent la malle. Un fer puissant chauffe plus, mais ce n'est pas un mauvais fer. Il faut juste prendre l'habitude.

Déja ça va dépendre de ce que tu vas souder, du nombre de fois où tu l'utilises, de tes habitudes ... et de ton budget !

Après comme dis eihis, tu peux acheter une station de soudage thermorégulée. Par contre ne prends pas du bas de gamme. J'ai eu l'expérience d'une station pas cher qui chauffait plus mes mains que la panne (court-circuit) c'est pas agréable ! Donc si tu investis, prends un truc correct. Pas forcement une station à air chaud, mais pour moins de 100€ on trouve des choses qui tiennent la route.

Pour l'outillage :
-- un multimètre me semble important. Même un truc à 5 euros fait l'affaire, à moins d'avoir besoin de précision.
-- Une loupe pour les CMS ou pour lire les références des composants.
-- Du fils de wrapping (un fil très fin, de couleur bleue généralement) : si j'ai pas ça, je suis mort !
-- Des tournevis miniatures (même des daubes à 1€ font l'affaire).
-- mini perceuse (Dremel de préférence)
-- pinces de tout genres.
-- fils de soudure 07/10 (le bon compromis je trouve) par rouleau de 500g
-- une gomme à piste (gomme dure bleue) + dégraissant style acétone+ alcool à 70%

Après si tu veux faire tes propres circuits :
-- insoleuse + graveuse et un bac de révélateur. Mais apparement des boites te font ça pas cher, et ça évite de pourrir ses vetements avec des taches maronasses...

Voila : en gros ça dépends des gens; Un matos hors de prix ne t'assure pas d'être bon ... Par contre un matériel de m***e, te garantit un resultat de m***e

PS : un bracelet antistatique ne sert pas à grand chose pour un usage hobby.



#17990 Simulaton d'un mouvement de respiration d'une poupée

Posté par raoullevert sur 19 septembre 2010 - 05:25 dans Autres projets inclassables

salut,

Le mot servomoteur viens du mot latin 'servus = l'esclave', ajouté au mot moteur. Ce n'est ni plus ni moins qu'un moteur asservis (litteralement rendu esclave !).
D'un coté tu as un moteur tout simple. De l'autre un potentiomètre, ou tout autre moyen de détecter la position du moteur, et une logique de commande.

Un moteur standard tourne quand tu lui envoies un courant. Un servomoteur quand à lui attends comme ordre une position à atteindre (un angle). Tu as donc trois fils sur un servomoteur : un '+', un '-' et un signal de commande.
La commande est un signal carré, d'une certaine fréquence (50Hz en général). Ce signal n'est pas vraiment carré, mais rectangulaire. La différence entre le temps à l'état 'haut', et le temps à l'état 'bas' (rapport cyclique), sert à déterminer l'angle de commande.

Par exemple : tu as un signal de 50Hz, qui est à 50% de rapport cyclique (temps à l'état haut = temps à l'état bas). Ton servomoteur va se mettre dans la position (50%). Si il fait 360° maximum, ton servomoteur sera à 180°. Si le rapport est de 25%, ton servomoteur tournera jusqu'à atteindre 90°. 75% -> 270° ... et ainsi de suite.

En gros ton servomoteur à une régulation de position intégrée. Même si tu essayes de le faire tourner alors qu'il à un ordre, il va 'lutter' pour rester en position.



#17988 Simulation avec Blender

Posté par raoullevert sur 19 septembre 2010 - 03:09 dans Robots à pattes et jambes, humanoïdes, bipèdes, quadrupèdes, hexapodes ...

Salut,

Utiliser Blender pour simuler un robot, pourquoi pas ... Mais ça reviens un peu à réinventer la roue ! Il existe un stock de logiciels de simulations de robotique, qui comprennent un moteur physique, des simulateurs pour les capteurs, et même des interfaces de communication. Simulateurs Robot wikipedia

Pour ma part j'ai déjà utilisé Marilou, et c'est à la fois simple et complet. En attendant qu'une version libre vienne le concurrencer ...

Edit : OpenRobot utilise Blender pour le rendu. Comme quoi ton idée étais bonne quand même !



#17987 Projet de voilier autonome

Posté par raoullevert sur 19 septembre 2010 - 02:38 dans Robots sous-marins bateaux et autres systèmes aquatique

Salut,

Intéressant ton projet de voilier. Je fait un peu de voile donc les notions évoquées ne me paraissent pas trop étrangères.
Pour résumer : garder le cap, régler les voiles en fonction du vent, ça se fait sans aucun soucis.
Pour garder le cap, il existe déjà des pilotes automatiques (commandés par boussole ou GPS).
Pour régler les voiles, un capteur de vent apparent et deux enrouleurs automatiques le font sans problème : c'est un simple calcul d'angle.

Le gros problème est d'éviter les autres bateaux. Pour les gros navires de plus de 30m, l'AIS est prévu pour ça. Ces navires envoyent leurs caps, vitesse, taille, identification et destination en permanence. C'est obligatoire d'ailleurs. Un logiciel comme seaclear utilise ces AIS et calcul si tu risques la collision ou pas. Par contre pour les petits navires, c'est autre chose. Il y a des règles de priorités qui ne pas évidentes, et se pose le problème de la detection de ces petits bateaux. Et puis un navire à la voile n'a pas la même priorité qu'un navire à moteur.

Donc si tu veux faire un système sur lequel tu rentres un cap, et le système se démerde pour le suivre et régler les voiles (en tirant des bords ou pas) ... c'est faisable
Un voilier totalement autonome : j'y crois pas trop. Après, il faut toujours avoir des rêves assez grand pour ne pas les perdre de vue !



#17986 Détection d'obstacles avec camera embarquée

Posté par raoullevert sur 19 septembre 2010 - 02:27 dans Programmation

Salut,

Il existe deux solutions pour détecter les obstacles par webcam :

Avec une seule webcam, tu tentes de détecter les lignes de fuite, qui te donnent tes références spatiales. Puis tu calcules la distance de ton objet grâce à ça. Un pti lien : Etude. C'est un peu compliqué et très peu précis. De plus il faut des coins bien "marqués", comme une pièce carrée ou un couloir. Bref : très très chaud.

Autre solution : la stéreovision. Avec deux caméra, tu prends deux images décalées (gauche-droite). Tu corriges ensuite tes images pour supprimer les déformations liées à l'objectif. Ensuite tu définis des points intéressants, c'est à dire ayant un contraste important avec les points adjacents. Vient ensuite la partie corrélation. Si tu as par exemple l'angle d'un cube, il sera à priori intéressant sur les deux images. Il faut donc "associer" ces deux points. La distance de ce point entre une image et l'autre te permet de determiner sa distance par rapport à ton robot. Pas facile non plus. De plus les webcams ont des images avec un rapport signal/bruit relativement faible, ce qui rends l'utilisation de plusiers filtres indispensables avant toute chose.

En gros : bon courage !



#17985 Raoullevert

Posté par raoullevert sur 19 septembre 2010 - 01:49 dans Et si vous vous présentiez?

Salut,

Je n'aime pas beaucoup parler de moi, alors je vais faire rapide !
30 ans, un enfant.Je bosse dans une centrale nucléaire. J'ai un bac STI electronique (F2), et un BTS CIRA.
Je programme depuis que j'ai en gros 6 ans, et je connait la plupart des langages informatiques.
Je fais pas mal d' électronique et de modélisme.

Dernier robot : un robot chenille commandé à distance par ordinateur. Pour l'instant un simple AVR mega32 embarqué. J'ai investit dans une carte mini2440, pour greffer une caméra sur ce robot et tenter d'en faire quelque chose d'un peu plus intéressant.



#17984 Robotique et python

Posté par raoullevert sur 19 septembre 2010 - 01:43 dans Programmation

Ps : Pourquoi n'irais-tu pas te présenter ? ;)


Désolé je suis mal poli effectivement. Je corrige ça.



#17972 Robotique et python

Posté par raoullevert sur 18 septembre 2010 - 10:05 dans Programmation

Salut,

Je suis un fan de python aussi.C'est vrai que c'est un langage génial. Le problème c'est que c'est un langage de script exécuté et pas un langage compilé pour être exécuté directement par un processeur. En gros ton script python est compilé en pseudo-code et après exécuté par un sorte de machine virtuelle (un peu comme java en fait). A l'heure actuelle il n'existe pas de processeur exécutant directement ce pseudo-code. Donc si tu veux exécuter un script python sur un robot, il faut juste avoir une couche qui exécute ton interpréteur python...
En gros : avec un pic c'est totalement impossible. Par contre sur une base à base de processeur ARM, qui est suffisamment puissant pour faire tourner un noyau linux, et un interpréteur python : aucun soucis.

Sinon tu peux faire un hybride. Un robot commandé par un processeur pic ou AVR, qui exécute les instructions du code python, via son port série. En gros, tu déportes un partie de l'informatique sur un ordinateur "normal". J'ai un robot qui fonctionne comme ça :
-- un processeur AVR mega32 embarqué se charge de la gestion des moteurs, des capteurs et de la communication série.
-- un ordinateur, avec un script python qui communique aussi avec le port série. (USB avec un FT232 en fait).
Entre les deux, deux module XBee qui se charge de la communication sans fils. Parcequ' un câble sur un robot, c'est moche quand même.