Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1252 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Piloter son port USB

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Piloter son port USB

n°1540661
thufire
L'évolution et constante !
Posté le 10-04-2007 à 11:19:02  profilanswer
 

Bonjour
Je programme depuis un certains temps en C, j'ai fais quelques logiciels et des jeux. Mais j'ai fais le pari sous peu avec un amis que je pourai réaliser un robot pilotable par ordinateur. Ma seule solution serait de le piloter par USB mais je n'ai rien trouvé d'interessant sur la toile. Alors voila, j'aurai besoins de votre aide pour:
-Savoir comment on pilote un port USB en C sous windows XP de préference ou sous Linux Kubuntu
-Savoir quels son les schémas électronique pour recevoir et interpreter les données
 
Merci de votre aide future !  ;)  
A +


---------------
Le cerveau c'est comme un vase: il faut le remplire pour qu'il serve vraiment !
mood
Publicité
Posté le 10-04-2007 à 11:19:02  profilanswer
 

n°1540699
Pantoufle_​man
Force tranquille
Posté le 10-04-2007 à 12:54:11  profilanswer
 

le plus simple a mon avis c'est d'acheter une carte type EVB avec un microcontroller qui fait les fonctions que tu veux: USB et un module qui te permette de controller tes moteur. Ainsi tu te feras pas trop chier a souder, coder le microcontroller, tester ton code.
 
Comme j'ai fait mon stage a Freescale (anciennement Motorola), je peux que te conseiller de regarder a cette page (c'est du 8bit):
http://www.freescale.com/webapp/sp [...] 1DxpCp8924
Sinon, ya aussi du 32bit qui fait USB (Coldfire) et surement du 16bit mais j'ai la flemme de chercher. D'autres fabricant existent evidement, si tu cherche mieux sur le net tu verras plein de hobbyist qui proposent des plans pour faire des robot (enfin souvent autonomes).
 
Note qu'il faudra peut etre un transceiver USB, faut voir.
 
T'as resolu le probleme du deplacement? moteur DC ou pas a pas? Quel arrangement des roues?
 
Edit: apparement les microcontroller PIC sont tres populaire pour les hobbyist, mais j'ai aucune conaissance dessus


Message édité par Pantoufle_man le 10-04-2007 à 13:08:27
n°1540717
thufire
L'évolution et constante !
Posté le 10-04-2007 à 13:29:08  profilanswer
 

Merci Pantoufle_man, je vais voir ce que je peux faire avec ton lien !
Pour les PIC, moi non plus je n'ai pas de connaissances dessus ...
Question des moteurs, je n'ai pas besoins de faire quelque chose de précis donc j'imaginai 2 moteurs DC pilotés par des hacheurs pour faire varier leurs vitesse et ensuite l'un par r'apport à l'autre pour faire tourner le moteur.
Voilà.
Salut et à + !

n°1540752
franceso
Posté le 10-04-2007 à 14:34:07  profilanswer
 

thufire a écrit :

Question des moteurs, je n'ai pas besoins de faire quelque chose de précis donc j'imaginai 2 moteurs DC pilotés par des hacheurs pour faire varier leurs vitesse et ensuite l'un par r'apport à l'autre pour faire tourner le moteur.

Rien de tel que les LM629 pour asservir des moteurs CC. L'implémentation "à la mano" de l'asservissement d'un moteur CC sur un microcontrôleur PIC n'est pas si évident que ça (mais je pense que ça reste faisable).
 
Sinon, en ce qui concerne les cartes de commande, je te recommande le Système Extralink de chez Sidena. Tu peux le piloter par liaison USB ou série, depuis Windows en natif, [publicité] ou bien sous linux grâce à la bibliothèque libExtralink que je développe dans mon club de robotique[/publicité]
 
Par contre, tout cela est relativement cher, donc je ne sais pas si ça rentre dans ton budget.


---------------
TriScale innov
n°1540762
Pantoufle_​man
Force tranquille
Posté le 10-04-2007 à 14:41:17  profilanswer
 

perso j'utiliserai des moteurs pas a pas pour la simplicité de controle, mais un moteur DC c'est possible aussi. Si tu utilises du freescale, c'est orienté automobile le plus souvent et les microcontrolleur ont des modules qui font du PWM, ce qui te permettra de te passer d'un hacheur (enfin je crois :p). Je dit peut etre de la merde, je ne sais pas vraiment comment on controle les moteurs, mais le fait est qu'on ne peux sortir beaucoup de courant des microcontroller et ya moyen que tu le grilles si tu branche le moteur directement sur les pins du microcontroller. Donc il te faudra un circuit pour isoler le microcontroller de l'alimentation du moteur (debut de réponse: http://www.freescale.com/files/mic [...] AN1285.pdf )

 

Coté connectivité, considere aussi le RS232 (port COM). La plupart des microcontroller ont un un module nommé SCI, tu y attaches une MAX232 et tu peux communiquer sur le port com (avec telnet par exemple) avec ton PC. Plein de schema sont disponibles sur le net, et c'est surement beaucoup plus facile a faire que par USB.

 

Edit: c'est SCI, pas SPI :).


Message édité par Pantoufle_man le 10-04-2007 à 15:06:47
n°1541748
xilebo
noone
Posté le 12-04-2007 à 09:04:03  profilanswer
 

Sous linux, tu peux écrire un pilote noyau pour ton périphérique usb. Tu as une documentation assez détaillée dans le répertoire Documentation/usb du noyau. Tu as également un fichier exemple dans drivers/usb/usb-skeleton.c te décrivant comment accéder à un périphérique usb dans le noyau avec l'API usb.

 

n°1545882
thufire
L'évolution et constante !
Posté le 20-04-2007 à 17:29:41  profilanswer
 

Bonjour tout le monde !
 
Merci Francesco mais oui justement, j'ai un budget assez limité et puis c'est juste un petit projet sans importance donc je ne veux pas mettre non plus des mille et des cents.
Ensuite Pantoufle, je n'ai pas eu bien le temps de regarder ton site chez Freescale (en ce moment je suis un peu debordé) mais par contre je suis obligé de me brancher sur usb car j'avais commencé à faire mon programme sur un vieux win98 avec le port com mais j'ai du rendre la mchine à son propriétaire et donc je n'ai plus que mon portable et ses port usb.
 
Enfin merci xilebo, je vais voire ta doc dès que j'ne ai le temps !
A++ !
 
Edit: Euh... enfait Xilebo, je ne trouve pas les fichiers, j'ai [K]Ubuntu 6.06. Y sont-ils aussi ?


Message édité par thufire le 20-04-2007 à 17:34:45
n°1545894
-Opera-
mago spé électricité
Posté le 20-04-2007 à 18:04:05  profilanswer
 

C'est dans les sources du noyau, et il me semble dans le package linux-manual.


---------------
You get so used to things the way they are. And I've always been alone. I guess that makes me lonely.
n°1546029
xilebo
noone
Posté le 20-04-2007 à 21:45:55  profilanswer
 

les sources du noyau sont généralement installés dans /usr/src/linuxXXXX (XXXX étant la version du noyau). Ca peut etre egalement /usr/src/linux directement, mais ce n'est pas obligatoire, et parfois c'est un lien symbolique sur les sources du dernier noyau installé.
 
tu peux également les trouver dans /lib/modules/XXX/build. XXX etant la valeur de 'uname -r'.
 
Si tu n'as pas les sources du noyau avec ubuntu, tu peux les installer en tapant la commande apt-get install linux-kernelXXXX (XXXX étant toujours ta version de noyau), ou bien tu télécharges les sources sur www.kernel.org en prenant la bonne version de noyau (correspondant à ton uname -r).


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Piloter son port USB

 

Sujets relatifs
[Réseaux]+[wxWidgets] bonne méthode pour scanner un port ?Compilateur Python Sur clé Usb
Communication avec port COMprogrammation port SDIO
Communication avec port COMBesoin d'aide pour le port paralléle.
transmission de donnees via le port serielecture du port serie dans test bench vhdl
Entree/sortie en C++ par USBEmuler un rebranchement sur le port USB
Plus de sujets relatifs à : Piloter son port USB


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR