See site in english Voir le site en francais
Website skin:
home  download  forum  link  contact

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

Author Topic: Arduino Uno + Orbiter  (Read 100254 times)

0 Members and 1 Guest are viewing this topic.

Offline solfra

  • Full Member
  • ***
  • Posts: 210
  • Country: France fr
  • Karma: 15
Reply #125 - 24 April 2014, 12:24:32
int c'est pour définir un mot = un nombre.
Quand on fait, par exemple, pinMode, l'Arduino doit comprendre le numéro de la sortie. Le int permet de marquer un mot au lieux d'un nombre. Cela permet de mieux ce repéré dans les long programmes .


Offline steph89

  • Full Member
  • ***
  • Posts: 83
  • Country: France fr
  • Karma: 6
Reply #126 - 26 April 2014, 13:42:25
Bonjour.
Question aux Orbi/Arduinautes : que pensez-vous de la DUE pour emuler un clavier USB ?
MErci

STephane


Offline nulentout

  • Legend
  • ******
  • Posts: 3356
  • Country: France fr
  • Karma: 242
Reply #127 - 26 April 2014, 18:30:48
int c'est pour définir un mot = un nombre.
Quand on fait, par exemple, pinMode, l'Arduino doit comprendre le numéro de la sortie. Le int permet de marquer un mot au lieux d'un nombre. Cela permet de mieux ce repéré dans les long programmes .
Pour être plus précis je formulerais de la façon suivante :
Dans les mots d'un langage, il y a les mots réservés, qui définissent des entités précises. Et puis il y a les mots que nous créons pour définir des entités qui sont personnelles. Les mots que nous créons sont des IDENTIFICATEURS.
Attention : Quand on écrit int, c’est un mot réservé qui désigne un entier qui sera codé sur deux octets. Comme la valeur que nous utilisons est faible, byte qui ne prend qu’un octet me semble mieux adapté.
Mais comme nous avons ajouté const, ça veut dire que cet entier est constant, il ne pourra pas être modifié dans le programme. Du coup, l’instruction devient une « directive ». Le compilateur n’aura pas besoin de prévoir de la place en mémoire.
Prenons un exemple :
Sur mon arduino, je désire mesurer un angle avec un capteur placé sur l'entrée analogique A0.
On va expliquer au compilateur notre désir en langage évolué C.
On pourrait tout simplement écrire :
ANGLE = analogRead(0); analogRead est un mots réservés par le langage d'Arduino. Par contre ANGLE est une entité qui m'est personnelle. Je l'ai donc désignée par un IDENTIFICATEUR.
Mais le compilateur n'a aucune idée de ce que représente ANGLE. C'est un entier, un décimal, un fractionnaire, une constante ?
Donc, tout IDENTIFICATEUR doit être déclaré avant de l'utiliser. Par exemple si mon angle ne dépasse pas 360° je peux utiliser un int qui sera codé sur deux octets dans la machine informatique utilisée. En Langage C :
int ANGLE;
De même que si le programme est "cossu", au bout d'un certain temps je ne saurai plus qui est branché sur quoi. Aussi, je peux déclarer mes constantes avec des identificateurs. Par exemple :
const byte Capteur_Angulaire_sur_A0 = 0;
Ce qui en C veut dire :
Ce que je nomme Capteur_Angulaire_sur_A0 sera un entier constant dans ce programme et qui vaudra la valeur 0.
Du coup, mon instruction précédente peut s'écrire :
ANGLE = analogRead(Capteur_Angulaire_sur_A0);
Cette écriture est bien plus lisible, et c'est un impératif si je veux pouvoir "dominer" mon programme.
Je ne sais pas si j’ai été clair. Mais quand on programme, il est impératif de bien comprendre les objets que l’on utilise. Il faut faire la distinction entre constantes et variables, entre mots réservés du langage et nos identificateurs etc.
Quoi qu’il en soit … s’est passionnant.


« Last Edit: 26 April 2014, 18:53:10 by nulentout »
La sagesse est un trésor ... tellement bien caché.

Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #128 - 04 May 2014, 23:21:24
Nulentout:
Quote
Dans le listage de ton post, tu as :
const int dataPin_out=2;
Pourquoi utilises-tu un int au lieu d'un byte ?

Alors là, c'est une belle question...que je ne m'étais jamais posée.
J'avais toujours vu int dans les sketches, et je n'ai pas eu idée de
mettre autre chose.
Ce que je sais, c'est que avec la déclaration const, le compilateur sait
que la valeur ne changera pas durant l'exécution du programme.
En conséquence, il ne réservera de l'espace mémoire que pour la valeur
déclarée, en l'occurence 2 qui tient facilement dans un octet.
D'après moi, avec const, que ce soit byte, int, long, la même quantité
d'espace mémoire sera utilisée pour une valeur tenant dans byte.
C'est une autre histoire sans const.

Mais j'avais pas lu le post juste au dessus.
Nous sommes bien d'accord sur les const. :flower:


Mars Bleu


Offline Fox-Terrier

  • League of
  • Legend
  • ******
  • Posts: 1426
  • Country: Switzerland ch
  • Karma: 28
  • :D
Reply #129 - 07 May 2014, 20:29:16
Histoire de rajouter mon grain de sel, vous pouvez aussi essayer les #define

ça s'utilise ainsi :

#define PIN1 100

La convention veut que ça s'écrit en majuscules, contrairement aux variables et noms de fonction qui devraient s'écrire en minuscules

Lors de la compilation, PIN1 sera remplacé par 100 dans le code, donc on alloue de la mémoire programme au lieu de mémoire pour les variables, en général plus précieuse sur les microcontrôleurs

Comme avantages,
a) On économise de la mémoire pour les variables
b) on voit tout de suite que c'est une constante,
c) on peut l'utiliser pour donner la dimension d'un tableau,
d) et on peut l'utiliser comme condition pour un switch (un switch est utilisé lorsqu'on veut tester plusieurs cas pour une variable, ex: si x = 1 fait ça, si x = 2 fait ça, si x = 42 fait ça et sinon fait ceci, au lieu de plein de if/else)


Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #130 - 23 May 2014, 20:17:50
J'ai commencé le câblage de cartes, en y allant prudemment, afin
de ne pas me retrouver dans une impasse technique. Comme je vais
avoir besoin de pas mal de cartes à relier à la Uno, il apparaît nécessaire
de disposer les cartes dans un rack.
Or, j'ai beau écumer le Net depuis quelques jours, je ne trouve pas les
glissières qui me permettraient d'installer verticalement mes cartes à
environ 2 cms les unes des autres, ni les connecteurs de fond de panier
(j'utilise la carte 527370 - 62 de Conrad. On peut y implanter 12 CI en DIP 16)
Je me demande si je ne vais pas faire ces glissières moi même...
Quelqu'un aurait une idée ou un conseil?

@Fox-Terrier: je vais essayer les #define dès que je retournerai au software
Chui en plein dans le hardware en en ce moment...


Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #131 - 07 June 2014, 15:12:15
J'ai hanté mon site de distribution de matériel électronique favori pendant des jours,
et j'ai fini par trouver ce que je cherchais. C'est un châssis en alu de 19 pouces de large, et 3U de haut
sur lequel on peut clipser des rails en plastique. Les cartes reposent sur lesdits rails. On doit
pouvoir installer une vingtaine de cartes.
Si le besoin s'en fait sentir, on peut empiler les racks dans un grand cadre pour faire une
baie électronique ventilable. Ça donne un aspect modulaire tout à fait correct, surtout si
on équipe les cartes de faces avant munies de voyants et de points test pour un éventuel dépannage.

Je suis maintenant dans la connectique à établir entre les cartes et les switches, ce qui
n'est pas non plus une mince affaire.

A suivre.


Offline nulentout

  • Legend
  • ******
  • Posts: 3356
  • Country: France fr
  • Karma: 242
Reply #132 - 08 June 2014, 23:13:35
Ben ça bricole durdur !
Réaliser de ses mains, c'est toujours une source de satisfactions ...

La sagesse est un trésor ... tellement bien caché.

Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #133 - 09 June 2014, 20:37:06
Quote
Réaliser de ses mains, c'est toujours une source de satisfactions ...
Tout à fait. D'ailleurs, je ne me limite pas à l'électronique  ou la progammation.

Pour revenir à la connectique, j'attends ma commande pour l'assemblage et les
vérifications avant mise sous tension.


Offline Manu-RT

  • Ce n'est pas le monde qui change, c'est l'homme qui l'idéalise.
  • Hero Member
  • *****
  • Posts: 753
  • Country: France fr
  • Karma: 23
  • Hey!
Reply #134 - 10 June 2014, 21:35:14
Je n'ai pas suivi tout le topic mais je trouve que ton projet est intéressant (très), je sais que Arduino est le nouveau "joujou" des programmateurs, j'attend de voir ton résultat et je suis content pour toi.

Réaliser de ses mains, c'est toujours une source de satisfactions ...

Idem


Offline Dosage

  • Legend
  • ******
  • Posts: 1918
  • Country: France fr
  • Karma: 4
  • SUCH FORUM
    • Mon Tumblr.
Reply #135 - 10 June 2014, 22:08:58


Réaliser de ses mains, c'est toujours une source de satisfactions ...

Idem

Idem


Offline pierrotm777

  • Newbie
  • *
  • Posts: 1
  • Karma: 0
Reply #136 - 25 January 2015, 16:10:08
Sacré travail que je compte suivre  :wor:


Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #137 - 25 January 2015, 18:22:08
J'ai un peu de mal avec mes prototypes. Il y a pas mal de modifs
à faire en cours de route. J'ouvrirai un topic pour
en parler une fois que ça commencera à fonctionner.


Offline nulentout

  • Legend
  • ******
  • Posts: 3356
  • Country: France fr
  • Karma: 242
Reply #138 - 26 January 2015, 12:18:33
Ben Môamôa avec mon Arduino je caresse le doux espoir de faire un truc qui serait assez ressemblant en comportement à une centrale inertielle gyrostabilisée.
Non, pas vraiment un système qui calculerait en temps réel la position du module, mais qui serait capable de mémoriser une orientation dans l'espace, et d'y ramener "mon vaisseau virtuel" sur commande. Avec des moteurs PAS A PAS c'est fait, mais actuellement je me contente de "compter les pas". Ma prochaine étape va consister à utiliser un capteur d'accélérations angulaires et linéaire pour orienter en fonction du champs de gravitation. Bon, ce n'est pas encore Apollo, mais c'est de la programmation "amusante".
En première approche, j'ai automatisé ma plateforme motorisée en Cardans pour qu'elle s'oriente automatiquement vers la source lumineuse prépondérante. Mon "bidule" s'oriente automatiquement vers le Soleil. S'il fait nuit, il suis le déplacement d'une lampe de poche. S'est assez rigolo à voir ...

La sagesse est un trésor ... tellement bien caché.

Offline antoo

  • Legend
  • ******
  • Posts: 3659
  • Country: France fr
  • Karma: 179
  • MSFS ❤️
Reply #139 - 26 January 2015, 12:32:34
Ah quand même!

---------------------------------------------------------------------------------------------------
"ET C´EST PARTI!!" Youri Gagarine au lancement de vostok 1 le 12 avril 1961

Offline nulentout

  • Legend
  • ******
  • Posts: 3356
  • Country: France fr
  • Karma: 242
Reply #140 - 28 January 2015, 09:58:05
En réalité, vu que le composant principal, le MPU 6050 est livré directement utilisable sur un tout petit circuit imprimé, et qu'une bibliothèque de programmes spécifiques lui est dédiée, ce n'est pas si démentiel que ça. (Tout est relatif naturellement !)
Le plus gros travail pour mes petites expériences précédentes a consisté à réaliser une petite "plateforme" orientable sur deux axes cartésiens et motorisée pour la piloter à partir du microcontrôleur. Concevoir les capteurs optiques pour "voir de la lumière" a été relativement élémentaire vu qu'il ne s'agit pas d'analyser une image, mais juste de mesurer globalement quatre flux lumineux.
Bref, c'est de l'électronique, de la mécanique et de la programmation amusante.
Bref, Orbiter et Arduino font bon ménage. Sous peu je vais piloter "en réel" mon CSM Apollo !

La sagesse est un trésor ... tellement bien caché.

Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #141 - 29 January 2015, 08:36:15
  :wor::flower: Woaow! :flower: :wor:
Bravo, tôatôa!


Offline antoo

  • Legend
  • ******
  • Posts: 3659
  • Country: France fr
  • Karma: 179
  • MSFS ❤️
Reply #142 - 29 January 2015, 15:36:09
Tu nous ferais pas une pitite vidéo :) ?

---------------------------------------------------------------------------------------------------
"ET C´EST PARTI!!" Youri Gagarine au lancement de vostok 1 le 12 avril 1961

Offline hysot

  • Full Member
  • ***
  • Posts: 120
  • Country: Canada ca
  • Karma: 8
Reply #143 - 05 February 2015, 23:57:57
Hey ho! Bon désolé les mecs je vous ai lâché mais mon nouveau job m'a éloigné d'orbiter et la je vais entamer la construction de ma petite maison (je bosse sur les plans pour vous dire que j’arrête pas!). Content que Mars Bleu continu d'alimenter le sujet. Bon courage a toi, je repasserai voir ton projet a l'occasion

hysot

Offline nulentout

  • Legend
  • ******
  • Posts: 3356
  • Country: France fr
  • Karma: 242
Reply #144 - 22 February 2015, 08:43:26
Nous sommes tous plus ou moins amenés à suspendre momentanément nos passions pour satisfaire notre vie de tous les jours. C'est dans l'ordre des choses. mais quand on revient ... quel plaisir.

La sagesse est un trésor ... tellement bien caché.

Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #145 - 22 February 2015, 12:31:44
Pour l'instant, je n'avance pas très vite. Il y a des tâtonnements dans les solutions
à appliquer.Je veux commencer à faire fonctionner ce que je suis en train d'assembler
avant d'en parler ici.
@ Nulentout, encore merci pour tes schémas sur les bargraph!
@ Hysot, bosses bien sur ta maison.


Offline nexen

  • Newbie
  • *
  • Posts: 1
  • Karma: 0
Reply #146 - 30 August 2015, 11:49:54
bonjour,
pour commencer, bravo pour ton projet, ensuite je tiens a m'excuser car j'ai la flemme de lire toutes les pages et donc je risque de poser des questions bêtes qui ont deja été posées.
bref, je suis moi aussi en cour de réalisation d'une borne ( "ancienne" télé sony lcd de 32") avec hackpad, seulement voila, ces hackpad ne me donnent pas entiere satisfaction et ayant des arduino je sauterai bien le pas.
une question, pourquoi ne pas reprogrammer l'arduino directement via ISP ?
ce genre de programmateur ne coute que quelques €uros et permetent de se sortir de la panade en cas de probleme.


Offline Mars Bleu

  • Hero Member
  • *****
  • Posts: 638
  • Karma: 33
Reply #147 - 01 September 2015, 10:43:07
Bienvenue dans le fofo, Nexen.
Etant focalisé en programmation Arduino (quasi du C), je ne savais pas qu'on pouvait
programmer autrement.
Pour l'instant, j'ai du câblage en cours; ça aurait pu être fait avec des lignes de code
mais la place mémoire est limitée dans une Uno.
Je recommande  la lecture de la première page de ce fil, écrite par Hysot. Ca permet
d'émuler un clavier avec une Uno. Le reste, c'est du câblage et de la programmation.


Offline nulentout

  • Legend
  • ******
  • Posts: 3356
  • Country: France fr
  • Karma: 242
Reply #148 - 20 November 2015, 11:38:40
Coucou les copains,
Un petit passage dans ce sujet pour vous donner des nouvelles.

J’ai suspendu provisoirement mon projet de « centrale gyrostabilisée » car depuis dix ou onze mois je me suis acharné sur un projet qui me tenait à cœur : me fabriquer un PICOlaboratoire complet pour électronicien à base d’Arduino. (C’est le laboratoire qui est à base d’Arduino, pas le technicien !)
En réalité, j’ai développé quatre versions très différentes les unes des autres. La dernière est minuscule et réalisée à partir d’une petite carte Boarduino.
Ce petit Poucet est capable de mesurer un peu tout : Des tensions continues et alternatives, des courants continus, des fréquences, des périodes et rapports cycliques. Il peut servir de chronomètre et génère tout ce que l’on veut. Par exemple des signaux étalons, du signal B.F. et de la PWM, du pilotage pour servomoteurs. Il peut aussi servir de testeur de continuité, mesurer des résistances et des condensateurs, fonctionner en LEDmètre ou mesurer le gain de transistors NPN. Enfin, la dernière version fonctionne aussi en oscilloscope numérique à mémoire qui peut stocker jusqu'à 5 écrans dans l'EEPROM de l'ATmega328.
Bref, je me suis bien "amusé", mais maintenant je vais pouvoir reprendre mes activités avec ma plateforme gravitationnelle … pour le fun ça va sans dire.
Amicalement : Nulentout.

La sagesse est un trésor ... tellement bien caché.

Offline jacquesmomo

  • Le budget !!!
  • Legend
  • ******
  • Posts: 7408
  • Country: France fr
  • Karma: 598
  • Plus on rate, plus on a de chances de réussir !..
Reply #149 - 20 November 2015, 23:15:08
 :trucdeouf: Eh ben....   

Mes add-ons sont là !