Aller au contenu


Photo
- - - - -

Ash, Self balancing robot

Raspberry PI 2B Arduino UNO PID OpenBeam USB equilibre balancing

140 réponses à ce sujet

#21 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 7 905 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 20 février 2016 - 08:44

 

J'ai repensé à ce que ton petit doigt t'a dit mais je ne comprend pas ce qu'il a voulu te dire. Tu peux m'en dire un peu plus stp, je voudrais bien comprendre, même si ce n'est qu'un doute.

 

 

Je reprends :
Normalement, à moins que je ne doive revoir complètement la théorie et mes expériences pratiques , jouer sur la fréquence, dans le cadre d'un pilotage de moteur CC par PWM,  ne doit pas avoir d'impacte sur la vitesse de rotation  ( mais essentiellement des impactes sur le bruits etc... et tant qu'on reste dans des plages de fréquences " correcte " )

Du coup il faut chercher une explication. Je ne sais pas ce qui se passe quand tu fais ton " time.sleep(x) " . mais c'est possible qu'il y ait un lien. 
Essaye de refaire ton test sans l'utiliser. 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !

 

Les réalisations de Mike118  

 

 

 


#22 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 20 février 2016 - 09:08

Vu chez MaceRobotics, je l'en remercie pour m'avoir donner cette idée : configurer le dongle wifi en point d'accès wifi ;)

http://www.robot-maker.com/forum/topic/10172-mrpi1-mini-robot-mobile-avec-raspberry-pi/

 

Je me suis lancé là dedans ... J'ai réussi alors je partage.

 

Mon dongle wifi : Wifi Netgear N150 (WNA1000M). Il supporte le mode station (ou AP) mais il n'est pas reconnu d'office par la raspbian. Je m'en suis sorti grace à ce lien : https://matt.niloo.f...i-netgear-n150/. On s'en sort en mettant la conf du driver dans /etc/rc.local.

 

Pour la config en mode AP, j'ai trouvé beaucoup de tutos et fait plein d'essais. Je retiens http://www.daveconroy.com/turn-your-raspberry-pi-into-a-wifi-hotspot-with-edimax-nano-usb-ew-7811un-rtl8188cus-chipset/ qui doit convenir à la plupart mais sans le bridge pour moi, pas besoin. Et http://elinux.org/RPI-Wireless-Hotspot qui améliore le point d'accès avec du dhcp. Sans ce dernier, impossible de m'y connecter avec mon tel.

 

Ce qui m'a fait perdre un temps fou c'est mon netgear et son driver. Dans la conf de hostapd, par défaut, c'est driver=nl80211. Il fallait driver=rtl871xdrv.

 

Mais ce n'est pas tout. La conf des services hostapd et udhcpd fonctionnait bien mais pas au redémarrage ... J'ai cru devenir fou. Le problème venait de rc.local qui arrive après le lancement des services. Du coup, je restart les 2 services dans rc.local, après le driver.  Je ne trouve pas ce contournement super bien.

 

 

Ça fonctionne, je me connecte directement au raspberry en wifi sans passer par mon router. Mais si quelqu'un a mieux que /etc/rc.local pour installer le driver 8192cu, je suis prenneur.


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#23 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 20 février 2016 - 09:11

@Mike, je n'ai pas ton expérience ^^ De mon expérience, mettre un sleep dans une boucle ça fait respirer le processeur. C'est comme un réflexe pour moi ^^ Je refais un test et je te tiens au courant  ;)


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#24 macerobotics

macerobotics

    Membre occasionnel

  • Membres
  • Pip
  • 125 messages
  • Gender:Not Telling
  • Location:Bretagne

Posté 21 février 2016 - 09:25

Salut Path,

 

Félicitation pour ta configuration en point d’accès.

 

Pour le robot MRPi1 en configuration point d’accès voici un peu plus de détails.

  • Clé wifi : EP-N8531, cette clé support le AP et reconnu automatiquement sur l'OS Raspian.
  • Driver : nl80211

Oui, il existe de nombreux tutos. En ce qui me concerne j'ai utilisé : https://learn.adafru...-point/overview

 

J'ai eu le même problème pour le redémarrage, j'utilise aussi le fichier rc.local pour le lancement des services.

 

Je n'est pas trouvé d'autre solution.


Mace Robotics - mobile platform for education makers and research.

www.macerobotics.com


#25 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 21 février 2016 - 11:48

Un grand merci MaceRobotics !! 


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#26 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 21 février 2016 - 06:46

Et rien que pour toi Mike,

	sense.show_letter("A", text_colour=[255, 0, 0])
	duty = 2
	freq = 50
	moveForwardMotorA(duty, freq)
	moveForwardMotorB(duty, freq)
	time.sleep(3)
	moveBackwardMotorA(duty, freq)
	moveBackwardMotorB(duty, freq)
	time.sleep(3)

	sense.show_letter("B", text_colour=[255, 0, 0])
	# Je laisse le B à 50 Hz
	# pendant que le A varie
	# Le duty reste à 2
	for freq in range(50,20000, 200):
		moveBackwardMotorA(duty, freq)
		time.sleep(.1)

	sense.show_letter("C", text_colour=[255, 0, 0])
	stopMotorA()
	stopMotorB()
	duty = 2
	freq = 50
	moveForwardMotorA(duty, freq)
	moveForwardMotorB(duty, freq)
	time.sleep(3)

	sense.show_letter("D", text_colour=[255, 0, 0])
	stopMotorA()
	stopMotorB()
	# Je laisse le B à l'arrêt
	# pendant que le duty du A varie
	# La freq reste à 50 Hz
	for duty in range(0, 100, 1):
		moveBackwardMotorA(duty, freq)
		time.sleep(.1)

	sense.show_letter("E", text_colour=[255, 0, 0])
	stopMotorA()
	stopMotorB()
	# on atend 2s sinon pas le temps de voir
	time.sleep(2)
	# Je laisse le B à l'arrêt
	# pendant que le duty du A varie
	# La freq reste à 50 Hz
	for duty in range(0, 100, 1):
		moveBackwardMotorA(duty, freq)
		#time.sleep(.1)

	sense.show_letter("F", text_colour=[255, 0, 0])
	# Je laisse tourner 2s car 'E' est trop court sans le sleep
	time.sleep(2)

	sense.show_letter("G", text_colour=[255, 0, 0])
	stopMotorA()
	stopMotorB()
	duty = 2
	freq = 50
	# Je ne fait varier ni la freq, ni le duty
	for toto in range(0, 100, 1):
		moveBackwardMotorA(duty, freq)
		time.sleep(.1)

	sense.show_letter("H", text_colour=[255, 0, 0])
	stopMotorA()
	stopMotorB()
	duty = 2
	freq = 50
	#
	for toto in range(0, 10000, 1):
		moveBackwardMotorA(duty, freq)
		time.sleep(.001)

	clean()

 

 

Le A et le B, tu connais déjà. Ils montrent l'accélération fonction de la fréquence.

 

Le C pour se redonner un repère.

Le D, je fais varier le duty de 0 à 100 sans changer la fréquence avec un sleep de 0,1 sec. (Cas attendu, et documenté)

 

Le E petite pause avec les moteurs à l'arrêt

Le F, comme le D mais sans sleep.

Remarque, cela monte tellement vite de 0 à 100 que j'ai mis un pause de 2 sec après la montée sinon on ne voit rien.

 

Le G et le H, pour observer le comportement de la boucle sans faire varier ni la fréquence, ni le PWM. Pour G, la pause est de 100ms pour le H, la pause est de 1ms.

 

Alors, si j'ai bien compris ce que ton petit doigt te dis (ou pas), tu remarqueras comme moi qu'il n'y a pas de différence entre G et H. T'en pense quoi ?

 

Perso, je crois que cela vient de la carte contrôleur. Mais je ne trouve aucune info là dessus. En tout cas, je fait mes derniers tests d'équilibrage avec une fréquence fixe. Elle est autour de 150 - 200 Hz.


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#27 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 7 905 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 21 février 2016 - 07:03

Bon je ne vois pas non plus ... faudrait vraiment voir ce qui se passe avec un oscillo ... Je continu de me gratter la tête ...
Sinon, tes vidéo sont très belles =) et j'aime beaucoup l'idée de l'afficheur pour afficher les différentes phase du programme ;) 
Bonne continuation pour la suite ! =)

Et bienvenu à Ash ! ;) J'espère pour lui que son nom c'est plutôt une allusion au phénix et à sa naissance plutôt qu'à la façon dont il va finir ! =)


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !

 

Les réalisations de Mike118  

 

 

 


#28 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 21 février 2016 - 07:26

^^Merci 

 

A part cela, le robot est baptisé "Ash". (Tu m'as répondu pendant que j'éditais)

 

J'ai changé le montage pour éviter qu'il ne tombe de trop haut.

 
IMG_2423.jpg
 
IMG_2424.jpg
 
IMG_2427.jpg
 
IMG_2428.jpg
 
Au repos, ça permet de ne pas le poser sur les composants. Et, comble du luxe, il se relève tout seul.
 
 
Et pour replacer ça dans la conversation : j'ai besoin de la fréquence la plus faible pour avoir des mouvements doux. Mais pour qu'il se relève, j'ai du passer de 50 à 150 Hz. En dessous, il n'a pas assez de force pour se relever.
 
Tout cela est encore un peu brutal, il continue de se balader sans que je lui dise ... J'ai encore du taf pour calibrer ce PID.
 

 


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#29 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 7 905 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 21 février 2016 - 09:37

 il continue de se balader sans que je lui dise ... J'ai encore du taf pour calibrer ce PID.

 

Par contre je ne me rappel plus tu as pris la version avec les codeurs sur tes moteurs ? 
Si oui tu vas bientôt pouvoir commencer à intégrer des asservissement imbriqués et là ça va devenir un chouilla plus costaud ;) 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !

 

Les réalisations de Mike118  

 

 

 


#30 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 21 février 2016 - 10:17

J'ai pris les moteurs sans les codeurs. J'avoue mon ignorance à ce sujet.

Je suppose que ça permet de connaître le nombre de tours effectués par le moteur et par là la distance parcourue.

Tu pense que ça peut aider ? Je n'y vois pas de place dans mon asservissement PID.


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#31 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 7 905 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 21 février 2016 - 10:33

En fait tout d'abord tu fais en sorte d'avoir un asservissement qui te permet d'être en équilibre => angle du robot par rapport au sol en consigne fixé  = 0°  
(ou 90° en fonction de comment tu vois la chose ) 
Pour cela pas besoin des codeurs car tu te base sur l'angle mesuré par ton capteur.

Sauf que si maintenant le but est de faire aller ton robot à un point précis, tout en gardant ton équilibre, là tu vas te servir des encodeurs pour générer un consigne angulaire donné en gros un PID de "consigne angulaire" en fonction d'où le robot se trouve et en fonction d'où il doit aller. Et quand le robot sera en place le résultat de ce PID sera de donner en consigne fixe ton 0° pour rester en équilibre au point souhaité... 

Et ensuite pour faire plus compliqué encore :De même pour faire tourner ton robot ...
As tu remarque que tu peux essayer d'asservir ton robot en n'utilisant qu'un seul des deux moteurs ?

 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !

 

Les réalisations de Mike118  

 

 

 


#32 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 23 février 2016 - 08:52

Quand il se tiendra bien droit sans trop osciller, j'ai bien l'intention de le faire avancer, reculer et tourner. Je prévois de piloter depuis mon téléphone et à vue. Sans mesurer la distance parcourue. 

 

Après, pour avancer, le crois que cette commande revient à reculer (très légèrement) pour donner une inclinaison (toujours très légère) vers l'avant. Avec l'oscillation, même faible, pas certain qu'il faille reculer préalablement. Sûr que je vais tester tout ça ;) Et tout le temps qu'il doit avancer, il faut corriger vers cette nouvelle inclinaison au lieu de 0. Pour s'arrêter, il faut remettre l'inclinaison cible à 0.

 

Pour tourner, c'est peut être une roue à la fois mais j'avoue trouver plus sympa de le voir pivoter sur son axe vertical ... tant qu'il tourne à l'arrêt. Pour tourner en mouvement, c'est donner une différence de vitesse aux 2 moteurs.

 

Mais je crois redire ce que tu disais avec mes mots. :)


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#33 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 03 mars 2016 - 11:31

Quelques nouvelles de Ash,

 

IMG_2442.jpg

 

 

J'ai tout démonté pour améliorer la forme, retirer les câbles en face avant (par dessus l'afficheur), retirer un peu de matière et fixer plus solidement le capteur inertiel. Il a minci et il est plus léger.

 

IMG_2444.jpg

 

IMG_2445.jpg

 

IMG_2446.jpg

 

Coté logiciel, j'ai fait un compromis. J'avais donné la possibilité de piloter indépendamment la vitesse des 2 moteurs en affectant les 2 uniques sorties PWM aux moteurs. Aujourd'hui, je n'en laisse qu'un pour donner le 2eme au pilotage d'un servo. Raspberry oblige ... Le prochain ce sera avec de l'arduino ou un mix des 2 !

 

Donc il perd la possibilité de tourner en avançant. Il tournera à l'arrêt. En contrepartie, il gagne la vue avec une tête pivotante.

 

 

Je lui cherche des yeux ou plutôt une canne blanche :) Je vais essayer avec ça. Je vous tiens au courant.

 

HCSR04.jpg

 

PS.

Au passage, j'ai appris au sujet du capteur inertiel et plus précisément sur la librairie utilisée RTIMULib. Elle donne des valeurs correctes (attendues) pour le yaw et le roll (entre 0 et 360). Mais pour le pitch, elle va varier entre 90 et - 90. Sur une demi sphère. Surprenant. Tout est super bien expliqué là : https://richardstech....com/imu-stuff/. Du coup, vu la nouvelle position du capteur, je n'utilise plus le pitch mais le roll avec 90° comme objectif de correction.

 

pitch_yaw_roll_sensehat.png


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#34 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 05 mars 2016 - 10:01

Je fais fausse route !!!

Je ne peux pas piloter le balancier tout en effectuant une rotation avec une seule sortie pwm.

Ash va perdre sa tête rotative et retrouver l'indépendance de ses 2 roues.

 

Pour scruter son horizon, il tournera sur lui même.

 

Je vous tiens au courant.


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#35 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 7 905 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 06 mars 2016 - 01:30

Ah je me disais bien que soit c'était pas possible soit je ne comprenais pas ce que tu souhaitais faire... Du coup je m'étais dis que je ne comprenais pas ...  Mais ne t'inquiète pas il y a d'autre solution ( et peu coûteuse ) pour qu'ash ne perde pas la tête  ;) 

Tu connais ce genre de produit ? =)

Image(s) jointe(s)

  • _DSC6371.jpg

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !

 

Les réalisations de Mike118  

 

 

 


#36 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 06 mars 2016 - 03:51

Raaah :)

En fait c'est hyper limité le raspberry !!! Ça a de bons cotés mais niveau sorties, c'est trop juste.

 

Du coup je m'étais dis que je ne comprenais pas ... 

... Mais faut pas hésiter hein. Je suis là pour être challengé ;)

 

 Là, je dis une autre connerie :

Pour scruter son horizon, il tournera sur lui même.

... Je n'ai pas d'encodeur sur les roues. Or si Ash doit tourner sur lui-même pour scruter autour de lui, comment je vais faire pour viser tous les 15° ? hein ? Je me le demande que maintenant ? Je suis un noob mais j'adore cette matière !!

 

 

 

Bref, merci Mike, je viens de comprendre ta remarque sur ces encodeurs.

Dans l'état de ma réflexion, j'ai deux solutions : Arduino ou extension

  • Arduino, je remplace le rpi mais je dois aussi remplacer le capteur inertiel (le sensehat du rpi n'est pas compatible)
  • Extension, mais le port i2c du rpi est déjà occupé par le sensehat. Si je dis ça, c'est certainement par méconnaissance.

 

 

Donc partons sur l'extension. Dis moi si j'ai bon. ;)

 

J'ai déjà une alimentation 5V dédié à la tête (Servo+ capteur ultrason + extention maintenant).

 

Je pars sur ce produit : https://www.adafruit.com/products/815. Je lis : 

This board/chip uses I2C 7-bit address between 0x60-0x80, selectable with jumpers

 

Dans la doc du sensehat (https://fr.pinout.xyz/pinout/sense_hat), je lis :

The IMU (Gyroscope, Accelerometer, Magnetometer) through a LSM9DS1 found at i2c address 0x1c(0x1e),0x6a(0x6b), with Interrupts on the ATTINY88.

Environemental sensors are represented by a LPS25H Pressure+Temperature sensor at address 0x5c and by a HTS221 Humidity+Temp sensor at 0x5f on the i2c bus.

Les leds et le joystick sont sur le bus SPI.

 

Je me dis que si je configure l'extension PWM sur 0x60 par exemple, il sera compatible avec le sensehat.

 

J'ai raison ?

 

Je n'ai jamais travaillé avec le bus i2c.


Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#37 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 7 905 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 06 mars 2016 - 06:40

Oui tu as raison, l'avantage de l'I2C c'est que tu peux brancher plusieurs périphériques sur un même Bus tant qu'ils on chacun une adresse différente. 

Par contre attention, toi si j'ai bien compris tu as ton capteur qui te sert à garder ton équilibre avec qui tu "discute " en I2C ... Du coup tu discute très souvent avec lui pour récupérer les valeur, si tu as besoin de "discuter en continu" pour garder l'équilibre ton port I2C sera occupé ! 

Par contre ta première remarque d'ajouter une arduino elle est pas mauvaise ;) mais l'idée n'est pas de remplacer la pi par la arduino mais de compléter la PI par la arduino. 

Le but c'est de faire un contrôle de haut niveau avec la raspberry Pi du genre " tiens en équilibre et avance de 3m à tel vitesse , il faut que je cherche la balle verte dans l'image " 
Et en faites les action " avance de 3m "  " tiens en équilibre "  seront elle géré par la carte arduino en esclave ... qui elle a plus d'entrée sortie mais moins d'intelligence etc... 

Enfin pour savoir tourner sur sois même si tu as pas d'encodeur sache tu peux utiliser la centrale inertielle sur ton sense Hat et l'utiliser comme boussole et te servir de cette boussole pour savoir de combien tourner etc... bon tu auras de la dérive dans le temps et la précision peut pas mal varier en fonction des objets autour de toi mais ça fera un bon début !


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !

 

Les réalisations de Mike118  

 

 

 


#38 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 07 mars 2016 - 11:49

Merci encore pour ces conseils !!

J'aime beaucoup cette idée de compléter le pi avec un arduino.

 

Via l'usb, je découvre qu'on peut les faire discuter http://electroniqueamateur.blogspot.fr/2014/05/communication-par-usb-entre-raspberry.html

On peut aussi charger le programme de l'arduino directement depuis le pi http://inotool.org/quickstart

 

Ha ! Apparemment, inotool est abandonné. Il faut aller voir http://platformio.org/ ou directement le makefile de l'IDE ?  http://playground.arduino.cc/uploads/Learning/Makefile

 

(http://playground.arduino.cc/Learning/CommandLine)

 

 

Comme je n'y connais encore rien sur l'arduino, comment on alimente le truc etc ... Je check tout ça et je reviens  ;)

 

J'ai déjà ces questions :

Sur le robot j'ai 2 batteries : 5V pour le pi et 12V pour les moteurs (c'est la fameuse 10 cellules NiMh qui sort du 14,1V).

1. C'est déconnant si je branche l'arduino en parallèle des moteurs sur la batterie 12V ? 

2. Je lis qu'il accepte entre 6 et 20V. Quelque soit la tension d'alim, il sort sur 5V sur ses broches ? C'est bien comme ça que ça fonctionne ?


Modifié par Path, 08 mars 2016 - 01:08 .

Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 


#39 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 7 905 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 08 mars 2016 - 06:37

 

J'ai déjà ces questions :

Sur le robot j'ai 2 batteries : 5V pour le pi et 12V pour les moteurs (c'est la fameuse 10 cellules NiMh qui sort du 14,1V).

1. C'est déconnant si je branche l'arduino en parallèle des moteurs sur la batterie 12V ? 

2. Je lis qu'il accepte entre 6 et 20V. Quelque soit la tension d'alim, il sort sur 5V sur ses broches ? C'est bien comme ça que ça fonctionne ?

 

1) Non c'est pas " complètement déconnant " car la tension la tension d'alimentation sur VIN est recommandé entre 7 et 12V mais comme tu les dis les maximum ratings sont à 20V... 
cependant
a) si tu l'alimente en 14V je te garantis que ta arduino va rapidement chauffer et c'est pas bon pour sa durée de vie. 

b ) si tu l'alimente en parallèle des moteurs, il y a de grande chance que les moteurs " parasitent l'alimentation" le résultat d'un tel parasitage : carte qui réset ou qui plant sans explication dû en fait a des fluctuation sur l'alimentation ... 

 

2) oui quelque soit la tension d'alim sur VIN il sort du 5V sur ces broches.

 

 

Comme je n'y connais encore rien sur l'arduino, comment on alimente le truc etc ... Je check tout ça et je reviens  ;)

 

Tu peux aussi directement alimenter la carte arduino par la broche 5V avec du 5V (  en parallèle de ta pi par exemple ), ou bien l'alimenter par l'usb en passant par ta Pi. 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !

 

Les réalisations de Mike118  

 

 

 


#40 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 391 messages
  • Gender:Male
  • Location:Paris

Posté 08 mars 2016 - 08:33

I Thank you beaucoup

Podcast Made By Humans

Je cherche des volontaires de tous niveaux pour nos petites conversations entre hobbyistes.

Accès aux salles secrètes

 




Répondre à ce sujet



  



Aussi étiqueté avec au moins un de ces mots-clés : Raspberry PI 2B, Arduino UNO, PID, OpenBeam, USB, equilibre, balancing

0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users