Table des matières:

Planétarium/Orrery compatible Bluetooth : 13 étapes (avec photos)
Planétarium/Orrery compatible Bluetooth : 13 étapes (avec photos)

Vidéo: Planétarium/Orrery compatible Bluetooth : 13 étapes (avec photos)

Vidéo: Planétarium/Orrery compatible Bluetooth : 13 étapes (avec photos)
Vidéo: Stay At Home And Make It To Enjoy..How To Make Simple Stereo Amplifier At Home..[Hindi] 2024, Juillet
Anonim
Planétarium/Orrery compatible Bluetooth
Planétarium/Orrery compatible Bluetooth

Cette instructable a été créée pour répondre aux exigences du projet du Makecourse à l'Université de Floride du Sud (www.makecourse.com).

C'est mon planétarium/orrery sur 3 planètes. Cela a commencé comme un projet d'un semestre pour le Makecourse, mais à la fin du semestre, il s'est transformé en une expérience d'apprentissage extrêmement précieuse. Non seulement j'ai appris les bases des microcontrôleurs, mais cela m'a également appris beaucoup de choses intéressantes sur C et C++, la plate-forme Android, la soudure et le travail électronique en général.

La fonction de base du planétarium est la suivante: ouvrez une application sur votre téléphone, connectez-vous au planétarium, sélectionnez une date, appuyez sur envoyer et regardez le planétarium déplacer Mercure, Vénus et la Terre vers leurs longitudes héliocentriques relatives à cette date. Vous pouvez remonter jusqu'à 1 AD/CE et jusqu'à 5000 AD/CE, bien que la précision puisse légèrement diminuer à mesure que vous avancez ou reculez sur 100 ans environ.

Dans ce Instructable, je vais expliquer comment assembler les planètes, le système d'engrenage qui les entraîne, le circuit imprimé qui relie tout ensemble et le code Android et C++ (Arduino) qui contrôle les planètes.

Si vous voulez passer au code, tout est sur GitHub. Le code Arduino est ici et le code Android est ici.

Étape 1: Pièces et outils

Pièces physiques

  • 1 boîtier électronique robuste série DC-47P DC - 9,58 $
  • Feuille d'acrylique/PMMA de 0,08" (2 mm), au moins 6" x 6" (15 cm x 15 cm) - 2,97 $
  • 3 moteurs pas à pas unipolaires 28BYJ-48 - 6,24 $
  • Glow in the Dark Planets - 8,27 $ (voir note 1)
  • Glow in the Dark Stars - 5,95 $ (facultatif)

Électronique

  • 3 pilotes de moteur pas à pas ULN2003 - 2,97 $
  • 1 Atmel ATMega328(P) - 1,64 $ (voir note 2)
  • 1 module Bluetooth vers série HC-05 - 3,40 $
  • 1 oscillateur à cristal 16MHz - 0,78 $ pour 10
  • 1 Socket IC DIP-28 0,99 $ pour 10
  • 1 morceau de Stripboard (pas = 0,1", taille = 20 rangées de longueur 3,5") - 2,48 $ pour 2
  • 1 prise d'alimentation CC à montage sur panneau, femelle (5,5 mm OD, 2,1 mm ID) - 1,44 $ pour 10
  • 2 condensateurs 22pF 5V - $3.00 pour 100 (voir note 3)
  • 2 condensateurs 1,0 F - 0,99 $ pour 50
  • 1 résistance de 10kΩ - 0,99$ pour 50

Outils

  • Arduino ou AVR ISP de rechange - Vous en aurez besoin pour programmer la puce ATMega
  • Tournevis - pour retirer le stock ATMega de l'Arduino
  • Multimètre - ou au moins un compteur de continuité
  • Marteau - pour réparer tout ce qui n'est pas fait The Right Way™
  • Percez avec des forets de 5/16", 7/16" et 1 3/8"
  • Petites cisailles - pour couper les fils des composants
  • Fil de cuivre toronné 22 AWG (prix avantageux et beaucoup d'options ici)
  • Soudure - J'utilise 60/40 avec noyau de colophane. J'ai trouvé que la soudure fine (<0,6 mm) rend les choses beaucoup plus faciles. Vous pouvez vraiment trouver de la soudure n'importe où, mais c'est celle avec laquelle j'ai eu du succès.
  • Flux - J'aime beaucoup ces stylos à flux, mais vous pouvez vraiment utiliser n'importe quelle forme de flux, tant qu'il est sans acide.
  • Fer à souder/Station - Vous pouvez les obtenir à un prix assez bas sur eBay et Amazon, mais attention: la frustration varie en fonction inverse du prix. Mon Stahl SSVT bon marché (25 $) met une éternité à chauffer, n'a presque aucune capacité thermique et il y a un bourdonnement audible de 60 Hz qui émane de l'élément chauffant. Je ne sais pas ce que je ressens à ce sujet.
  • Coup de main - Ce sont des outils inestimables qui sont presque nécessaires pour la soudure, et ils aident quand il s'agit de coller les planètes sur les barres acryliques.
  • Epoxy - J'ai utilisé Loctite Epoxy pour les plastiques, qui a plutôt bien fonctionné. Lorsque j'ai laissé tomber l'un des bras de la planète (attaché à une planète) sur du béton par erreur, l'époxy ne tenait pas les deux parties ensemble. Mais là encore, je ne lui avais donné qu'environ 15 des 24 heures recommandées pour guérir complètement. Alors peut-être que ça ne se serait pas cassé autrement, mais je ne peux pas le dire. Quoi qu'il en soit, vous pouvez utiliser à peu près n'importe quel adhésif ou colle qui prend plus de quelques minutes à durcir, car vous devrez peut-être faire des ajustements précis pendant un petit moment après avoir appliqué l'adhésif.
  • Cure-dents - Vous en aurez besoin (ou de tout agitateur jetable) pour l'époxy ou tout adhésif en 2 parties, à moins qu'il ne soit livré avec un applicateur qui mélange les deux parties pour vous.
  • Imprimante 3D - Je les ai utilisées pour imprimer certaines des pièces du système d'engrenage (fichiers inclus), mais si vous pouvez fabriquer ces pièces en utilisant d'autres méthodes (peut-être moins paresseuses), alors ce n'est pas nécessaire.
  • Laser Cutter - Je l'ai utilisé pour créer les bras transparents qui maintiennent les planètes. Comme le point précédent, si vous pouvez fabriquer les pièces en utilisant une autre méthode (elles peuvent facilement être coupées en utilisant d'autres méthodes), alors ce n'est pas nécessaire.

Logiciel

  • Vous aurez besoin soit de l'IDE Arduino, soit des versions autonomes d'AVR-GCC et d'AVRDude
  • Android Studio ou Android Tools for Eclipse (qui a été déprécié). Cela pourrait bientôt être facultatif, car je pourrais télécharger un APK compilé sur le Play Store

Coût total

Le coût total de toutes les pièces (moins les outils) est d'environ 50 $. Cependant, la plupart des prix indiqués sont pour plus d'un article chacun. Si vous ne comptez que la quantité de chaque élément utilisé pour ce projet, le coût total effectif est d'environ 35 $. L'élément le plus cher est l'enceinte, à près d'un tiers du coût total. Pour le cours MAKE, nous devions incorporer la boîte dans nos conceptions de projet, c'était donc une nécessité. Mais si vous cherchez un moyen simple de réduire les coûts de ce projet, consultez votre détaillant local à grande surface; ils auront probablement une bonne sélection de boîtiers moins chers que votre "boîtier électronique" typique. Vous pouvez également créer vos propres planètes (les sphères en bois coûtent un sou) et peindre sur les étoiles au lieu d'utiliser celles en plastique préfabriquées. Vous pourriez terminer ce projet avec moins de 25 $!

Remarques

  1. Vous pouvez également utiliser ce que vous voulez comme "planètes". Vous pouvez même peindre le vôtre !
  2. Je suis à peu près certain que ces puces ne sont pas préchargées avec le chargeur de démarrage Arduino R3 comme ils l'ont dit, ou qu'il doit y avoir eu une erreur de programmation. Quoi qu'il en soit, nous allons graver un nouveau chargeur de démarrage dans une étape ultérieure.
  3. Je recommanderais fortement de faire le plein de divers packs / assortiments de résistances et de condensateurs (céramique et électrolytique). C'est beaucoup moins cher de cette façon, et vous pouvez également commencer rapidement un projet sans avoir à attendre qu'une valeur spécifique arrive.

Étape 2: fabrication du système d'engrenage

Fabrication du système d'engrenage
Fabrication du système d'engrenage
Fabrication du système d'engrenage
Fabrication du système d'engrenage
Fabrication du système d'engrenage
Fabrication du système d'engrenage

Essentiellement, toutes les colonnes creuses s'emboîtent les unes dans les autres et exposent leurs engrenages à différentes hauteurs. Ensuite, chacun des moteurs pas à pas est placé à une hauteur différente, chacun entraînant une colonne différente. Le rapport d'engrenage est de 2:1, ce qui signifie que chaque moteur pas à pas doit effectuer deux rotations complètes avant que sa colonne n'en fasse une.

Pour tous les modèles 3D, j'ai inclus des fichiers STL (pour l'impression) ainsi que des fichiers de pièce et d'assemblage Inventor (afin que vous puissiez les modifier librement). À partir du dossier d'exportation, vous devrez imprimer 3 engrenages pas à pas et 1 de tout le reste. Les pièces n'ont pas besoin d'une résolution très fine sur l'axe z, bien qu'un lit de niveau soit important pour que les engrenages pas à pas s'ajustent parfaitement, mais pas si serré qu'il soit impossible de monter et descendre. Un remplissage d'environ 10 à 15 % semblait bien fonctionner.

Une fois que tout est imprimé, il est temps d'assembler les pièces. Tout d'abord, installez les engrenages pas à pas sur les moteurs pas à pas. S'ils sont un peu serrés, j'ai trouvé que les tapoter légèrement avec un marteau fonctionnait beaucoup mieux que de les pousser avec mes pouces. Une fois cela fait, poussez les moteurs dans les trois trous de la base. Ne les poussez pas complètement vers le bas, car vous devrez peut-être ajuster leur hauteur.

Une fois qu'ils sont en sécurité dans leurs supports, déposez la colonne de Mercure (la plus haute et la plus fine) sur la colonne de base, suivie de Vénus et de la Terre. Ajustez les pas à pas pour qu'ils s'accouplent bien avec chacun des trois plus grands engrenages et qu'ils n'entrent en contact qu'avec l'engrenage approprié.

Étape 3: Découpe au laser et collage des barres acryliques

Découpe laser et collage des barres acryliques
Découpe laser et collage des barres acryliques
Découpe laser et collage des barres acryliques
Découpe laser et collage des barres acryliques

Comme je voulais que mon planétarium soit beau dans la lumière ou dans l'obscurité, j'ai décidé d'utiliser des barres en acrylique transparent pour maintenir les planètes en place. De cette façon, ils ne nuiraient pas aux planètes et aux étoiles en obstruant votre vue.

Grâce à un makerspace génial dans mon école, le DfX Lab, j'ai pu utiliser leur découpeuse laser CO2 80W pour découper les barres acryliques. C'était un processus assez simple. J'ai exporté le dessin Inventor au format pdf, puis ouvert et "imprimé" le pdf sur le pilote d'imprimante Retina Engrave. À partir de là, j'ai ajusté la taille et la hauteur du modèle (TODO), défini les paramètres de puissance (2 passes à 40% de puissance ont fait le travail) et j'ai laissé la découpeuse laser faire le reste.

Après avoir découpé vos barres en acrylique, elles auront probablement besoin d'un polissage. Vous pouvez les polir avec un nettoyant pour vitres (assurez-vous simplement qu'il ne contient aucun des produits chimiques répertoriés avec un "N" ici) ou du savon et de l'eau.

Une fois cela fait, vous devrez coller les barres sur chacune des planètes. Je l'ai fait avec Loctite Epoxy for Plastics. Il s'agit d'un époxy en 2 parties qui durcit en 5 minutes environ, durcit généralement au bout d'une heure et durcit complètement au bout de 24 heures. C'était la chronologie parfaite, car je savais que je devais ajuster un peu la position des pièces après avoir appliqué l'époxy. En outre, il a été spécifiquement recommandé pour les substrats acryliques.

Cette étape était assez. Les instructions sur l'emballage étaient plus que suffisantes. Extrudez simplement des parties égales de la résine et du durcisseur sur du papier journal ou une assiette en papier, et mélangez soigneusement avec un cure-dent en bois. Appliquez ensuite une petite noisette sur l'extrémité courte de la barre acrylique (en veillant à recouvrir une petite distance sur la barre) et une petite noisette sur le dessous de la planète.

Ensuite, maintenez les deux ensemble et ajustez les deux jusqu'à ce que vous soyez à l'aise avec la façon dont ils sont alignés. Pour cela, j'ai utilisé un coup de main pour maintenir la barre acrylique en place (j'ai mis un morceau de papier de verre entre les deux, côté abrasif vers l'extérieur, pour éviter que la pince crocodile ne raye la barre) et une bobine de soudure pour immobiliser la planète.

Une fois que l'époxy a complètement durci (je n'ai eu que le temps de lui donner environ 15 heures pour durcir, mais 24 heures est ce qui était recommandé), vous pouvez retirer l'assemblage de la main secourable et tester l'ajustement dans les colonnes de la planète. L'épaisseur des feuilles acryliques que j'ai utilisées était de 2,0 mm, j'ai donc fait des trous de taille égale dans les colonnes de la planète. C'était un ajustement extrêmement serré, mais heureusement, avec un peu de ponçage, j'ai pu y glisser les colonnes.

Étape 4: Utilisation des commandes AT pour modifier les paramètres du module Bluetooth

Utilisation des commandes AT pour modifier les paramètres du module Bluetooth
Utilisation des commandes AT pour modifier les paramètres du module Bluetooth

Cette étape peut sembler un peu désordonnée, mais c'est beaucoup plus facile si vous le faites avant de souder le module Bluetooth HC-05 sur la carte.

Lorsque vous obtenez votre HC-05, vous souhaiterez probablement modifier certains paramètres d'usine, tels que le nom de l'appareil (généralement "HC-05"), le mot de passe (généralement "1234") et le débit en bauds (le mien est programmé à 9600 bauds).

Le moyen le plus simple de modifier ces paramètres est de s'interfacer directement avec le module depuis votre ordinateur. Pour cela, vous aurez besoin d'un convertisseur USB vers TTL UART. Si vous en avez un qui traîne, vous pouvez l'utiliser. Vous pouvez également utiliser celui fourni avec les cartes Arduino non USB (Uno, Mega, Diecimila, etc.). Insérez délicatement un petit tournevis à tête plate entre la puce ATMega et son support sur la carte Arduino, puis insérez la tête plate de l'autre côté. Soulevez délicatement la puce un peu de chaque côté jusqu'à ce qu'elle se détache et puisse être retirée de la prise.

Maintenant, le module Bluetooth va à sa place. Avec l'arduino déconnecté de votre ordinateur, connectez Arduino RX à HC-05 RX et TX à TX. Connectez Vcc sur le HC-05 à 5V sur l'Arduino et GND à GND. Connectez maintenant la broche State/Key sur le HC-05 via une résistance de 10k à Arduino 5V. Tirer la clé vers le haut est ce qui vous permet d'émettre des commandes AT pour modifier les paramètres du module Bluetooth.

Maintenant, connectez l'arduino à votre ordinateur et ouvrez le moniteur série à partir de l'IDE Arduino, ou un TTY à partir de la ligne de commande, ou un programme d'émulation de terminal comme TeraTerm. Modifiez votre débit en bauds à 38400 (valeur par défaut pour les communications AT). Activez CRLF (dans le moniteur série, il s'agit de l'option "À la fois CR et LF", si vous utilisez la ligne de commande ou un autre programme, cherchez comment faire cela). Le module communique avec 8 bits de données, 1 bit d'arrêt, aucun bit de parité et aucun contrôle de flux (si vous utilisez l'IDE Arduino, vous n'avez pas à vous en soucier).

Tapez maintenant "AT" suivi d'un retour chariot et d'une nouvelle ligne. Vous devriez obtenir en retour la réponse "OK". Si ce n'est pas le cas, vérifiez votre câblage et essayez différents débits en bauds.

Pour changer le nom de l'appareil, tapez "AT+NAME=", où est le nom que vous voulez que le HC-05 diffuse lorsque d'autres appareils essaient de s'y associer.

Pour changer le mot de passe, tapez "AT+PSWD=".

Pour modifier le débit en bauds, tapez "AT+UART=".

Pour la liste complète des commandes AT, consultez cette fiche technique.

Étape 5: Conception du circuit

Conception du circuit
Conception du circuit

La conception du circuit était assez simple. Puisqu'un Arduino Uno n'allait pas tenir dans la boîte avec le système d'engrenage, j'ai décidé de tout souder sur une seule carte et d'utiliser uniquement un ATMega328 sans le convertisseur USB vers uart ATMega16U2 qui se trouve sur les cartes Uno.

Le schéma comporte quatre parties principales (autres que le microcontrôleur évident): l'alimentation, l'oscillateur à cristal, les pilotes de moteurs pas à pas et le module Bluetooth.

Source de courant

L'alimentation provient d'une alimentation 3A 5V que j'ai achetée sur eBay. Il se termine par une fiche cylindrique de 5,5 mm de diamètre extérieur et de 2,1 mm de diamètre intérieur, avec une pointe positive. Ainsi, la pointe se connecte à l'alimentation 5V et sonne à la terre. Il y a aussi un condensateur de découplage 1uF pour atténuer tout bruit de l'alimentation. Notez que l'alimentation 5V est connectée à la fois à VCC et AVCC, et que la terre est connectée à la fois à GND et à AGND.

Oscillateur à cristal

J'ai utilisé un oscillateur à cristal de 16 MHz et 2 condensateurs de 22 pF conformément à la fiche technique de la famille ATMegaXX8. Celui-ci est connecté aux broches XTAL1 et XTAL2 du microcontrôleur.

Pilotes de moteur pas à pas

Vraiment, ceux-ci peuvent être connectés à n'importe quelle broche. Je les ai choisis parce qu'ils offrent la disposition la plus compacte et la plus simple lorsque vient le temps de tout mettre sur un circuit imprimé.

Module Bluetooth

Le TX du HC-05 est connecté au RX du microcontrôleur, et RX au TX. C'est ainsi que tout ce qui est envoyé au module Bluetooth à partir d'un appareil distant sera transmis au microcontrôleur, et vice versa. La broche KEY est laissée déconnectée afin qu'il ne puisse y avoir de reconfiguration accidentelle des paramètres sur le module.

Remarques

J'ai placé une résistance pull-up de 10k sur la broche de réinitialisation. Cela ne devrait pas être nécessaire, mais j'ai pensé que cela pourrait empêcher le risque que la broche de réinitialisation devienne basse pendant plus de 2,5 us. C'est peu probable, mais c'est quand même là.

Étape 6: Planification de la disposition du Stripboard

Planification de la disposition du stripboard
Planification de la disposition du stripboard

La disposition du stripboard n'est pas trop complexe non plus. L'ATMega se trouve au milieu, avec les pilotes de moteur pas à pas et le module Bluetooth alignés avec les broches auxquelles ils doivent être connectés. L'oscillateur à cristal et ses condensateurs se situent entre Stepper3 et le HC-05. Un condensateur de découplage se trouve juste à l'endroit où l'alimentation électrique entre dans la carte, et un autre entre les Steppers 1 et 2.

Les X marquent un endroit où vous devez percer un trou peu profond pour rompre une connexion. J'ai utilisé un foret de 7/64 et j'ai percé uniquement jusqu'à ce que le trou soit aussi large que le diamètre du foret. Cela garantit que la trace de cuivre est entièrement divisée, mais cela évite les perçages inutiles et garantit que la planche reste solide.

Des connexions courtes peuvent être réalisées à l'aide d'un pont de soudure ou en soudant un petit morceau de fil de cuivre non isolé à chaque rangée. Les sauts plus importants doivent être effectués en utilisant un fil isolé en bas ou en haut de la planche.

Étape 7: Souder

Soudure
Soudure
Soudure
Soudure
Soudure
Soudure
Soudure
Soudure

Remarque: ce ne sera pas un tutoriel sur la soudure. Si vous n'avez jamais soudé auparavant, YouTube et Instructables sont vos meilleurs amis ici. Il existe d'innombrables excellents tutoriels qui enseignent les bases et les subtilités (je ne prétends pas connaître les subtilités; jusqu'à il y a quelques semaines, j'étais nul en soudure).

La première chose que j'ai faite avec les pilotes de moteur pas à pas et le module Bluetooth a été de dessouder les connecteurs mâles coudés et de souder des connecteurs mâles droits à l'arrière de la carte. Cela leur permettra d'être à plat sur le stripboard.

L'étape suivante consiste à percer tous les trous qui doivent rompre les connexions si vous ne l'avez pas déjà fait.

Une fois cela fait, ajoutez tous les câbles de démarrage non isolés en haut de la carte. Si vous préférez les avoir en bas, vous pouvez le faire plus tard.

J'ai d'abord soudé le socket IC pour donner un point de référence pour le reste des composants. Attention à bien noter le sens de la prise ! L'indentation semi-circulaire doit être la plus proche de la résistance de 10k. Comme il n'aime pas rester en place avant d'être soudé, vous pouvez (appliquer le flux d'abord bien sûr) étamer deux pastilles d'angle opposées, et tout en maintenant la douille en place par le dessous, refondre l'étamage. Maintenant, la prise doit rester en place pour que vous puissiez souder le reste des broches.

Pour les pièces avec des fils (condensateurs et résistances dans ce cas), insérer les pièces puis plier légèrement les fils devrait les maintenir en place pendant le soudage.

Une fois que tout est soudé en place, vous pouvez utiliser de petites cisailles (ou comme je n'en avais pas, de vieux coupe-ongles) pour couper les fils.

Maintenant, c'est la partie importante. Vérifiez, revérifiez et revérifiez toutes les connexions. Faites le tour du tableau avec un compteur de continuité pour vous assurer que tout ce qui devrait être connecté est connecté et que rien n'est connecté qui ne devrait pas l'être.

Insérez la puce dans le support en vous assurant que les empreintes en demi-cercle sont du même côté. Branchez maintenant l'alimentation au mur, puis à la prise d'alimentation CC. Si les voyants des pilotes pas à pas s'allument, débranchez l'alimentation et vérifiez toutes les connexions. Si l'ATMega (ou n'importe quelle partie de la carte, même le fil d'alimentation) devient extrêmement chaud, débranchez l'alimentation et vérifiez toutes les connexions.

Noter

Le flux à souder doit être renommé "littéralement magique". Sérieusement, le flux rend les choses magiques. Appliquez-le généreusement à tout moment avant de souder.

Étape 8: Graver le Bootloader sur l'ATMega

Graver le Bootloader sur l'ATMega
Graver le Bootloader sur l'ATMega

Quand j'ai eu mes ATMegas, pour une raison quelconque, ils n'autorisaient pas le téléchargement de croquis, j'ai donc dû re-graver le chargeur de démarrage. C'est un processus assez facile. Si vous êtes certain d'avoir déjà un bootloader Arduino/optiboot sur votre puce, vous pouvez ignorer cette étape.

Les instructions suivantes sont extraites d'un tutoriel sur arduino.cc:

  1. Téléchargez le croquis ArduinoISP sur votre carte Arduino. (Vous devrez sélectionner la carte et le port série dans le menu Outils qui correspondent à votre carte)
  2. Câblez la carte Arduino et le microcontrôleur comme indiqué dans le schéma à droite.
  3. Sélectionnez "Arduino Duemilanove ou Nano avec ATmega328" dans le menu Outils > Carte.(Ou "ATmega328 sur une maquette (horloge interne 8 MHz)" si vous utilisez la configuration minimale décrite ci-dessous.)
  4. Exécutez Outils > Graver Bootloader > avec Arduino en tant que FAI. Vous ne devriez avoir besoin de graver le bootloader qu'une seule fois. Une fois cela fait, vous pouvez retirer les cavaliers connectés aux broches 10, 11, 12 et 13 de la carte Arduino.

Étape 9: Le croquis Arduino

Tout mon code est disponible sur GitHub. Voici le sketch Arduino sur GitHub. Tout est auto-documenté, et il devrait être relativement simple à comprendre si vous avez déjà travaillé avec les bibliothèques Arduino.

Essentiellement, il accepte une ligne d'entrée sur l'interface UART qui contient les positions cibles pour chacune des planètes, en degrés. Il prend ces positions de degré et actionne les moteurs pas à pas pour déplacer chaque planète vers sa position cible.

Étape 10: télécharger le croquis Arduino

Téléchargement de l'esquisse Arduino
Téléchargement de l'esquisse Arduino

Ce qui suit est principalement copié depuis ArduinoToBreadboard sur le site arduino.cc:

Une fois que votre ATmega328p dispose du chargeur de démarrage Arduino, vous pouvez y télécharger des programmes à l'aide du convertisseur USB-série (puce FTDI) sur une carte Arduino. Pour ce faire, vous retirez le microcontrôleur de la carte Arduino afin que la puce FTDI puisse parler au microcontrôleur de la planche à pain à la place. Le schéma ci-dessus montre comment connecter les lignes RX et TX de la carte Arduino à l'ATmega sur la maquette. Pour programmer le microcontrôleur, sélectionnez "Arduino Duemilanove ou Nano w/ATmega328" dans le menu Outils > Carte. Ensuite, téléchargez comme d'habitude.

Si cela s'avère trop fastidieux, alors ce que j'ai fait, c'est simplement d'insérer l'ATMega dans le socket DIP28 chaque fois que j'avais besoin de le programmer, et de le sortir par la suite. Tant que vous êtes prudent et doux avec les épingles, ça devrait aller.

Étape 11: le code de l'application Android

Tout comme le code Arduino, mon code Android est ici. Encore une fois, c'est auto-documenté, mais voici un bref aperçu.

Il prend une date de l'utilisateur et calcule où Mercure, Vénus et la Terre étaient/sont/seront à cette date. Cela suppose minuit pour simplifier les choses, mais peut-être que j'ajouterai bientôt un support temporel. Il effectue ces calculs à l'aide d'une impressionnante bibliothèque Java du nom d'AstroLib, qui peut faire bien plus que ce pour quoi je l'utilise. Une fois qu'il a ces coordonnées, il envoie juste la longitude (la "position" à laquelle vous pensez généralement lorsque vous vous référez aux orbites planétaires) au module Bluetooth pour chacune des planètes. C'est si simple!

Si vous souhaitez créer le projet vous-même, vous devez d'abord mettre votre téléphone en mode développeur. Les instructions pour cela peuvent dépendre du fabricant de votre téléphone, du modèle de l'appareil lui-même, si vous utilisez un mod personnalisé, etc. mais généralement, aller dans Paramètres -> À propos du téléphone et appuyer 7 fois sur "Numéro de build" devrait le faire. Vous devriez recevoir une notification toast indiquant que vous avez activé le mode développeur. Allez maintenant dans Paramètres -> Options du développeur et activez le débogage USB. Branchez maintenant votre téléphone à votre ordinateur à l'aide d'un câble USB de charge + données.

Téléchargez ou clonez maintenant le projet depuis GitHub. Une fois que vous l'avez localement, ouvrez-le dans Android Studio et appuyez sur Exécuter (le bouton de lecture vert dans la barre d'outils supérieure). Sélectionnez votre téléphone dans la liste et appuyez sur OK. Sur votre téléphone, il vous demandera si vous faites confiance à l'ordinateur auquel vous êtes connecté. Appuyez sur « oui » (ou « toujours faire confiance à cet ordinateur » s'il s'agit de votre propre machine sécurisée). L'application doit se compiler, s'installer sur votre téléphone et s'ouvrir.

Étape 12: Utiliser l'application

L'utilisation de l'application est assez simple.

  1. Si vous n'avez pas encore couplé le HC-05 avec votre téléphone, faites-le dans Paramètres -> Bluetooth.
  2. Appuyez sur « connecter » dans le menu des options dans le coin supérieur droit.
  3. Choisissez votre appareil dans la liste
  4. Après quelques secondes, vous devriez recevoir une notification indiquant qu'il s'est connecté. Sinon, vérifiez que le Planétarium est sous tension et non en feu.
  5. Choisissez une date. Faites défiler vers le haut et vers le bas les sélecteurs de mois, de jour et d'année et utilisez les boutons fléchés pour reculer ou avancer de 100 ans à la fois.
  6. Appuyez sur envoyer !

Vous devriez voir le Planétarium commencer à déplacer ses planètes à ce stade. Sinon, assurez-vous qu'il est sous tension.

Étape 13: Remarques finales

Étant mon premier projet tangible, c'est peu dire que j'ai beaucoup appris. Sérieusement, cela m'a appris des tonnes de choses, de la maintenance de la révision du code à la soudure, à la planification de projet, au montage vidéo, à la modélisation 3D, aux microcontrôleurs, à… Eh bien, je pourrais continuer.

Le fait est que si vous allez à l'USF (Go Bulls !) et que ce genre de choses vous intéresse, suivez le cours MAKE. Si votre école propose quelque chose de similaire, prenez-le. Si vous n'êtes pas à l'école ou n'avez pas de cours similaire, faites quelque chose ! Sérieusement, c'est l'étape la plus difficile. Obtenir des idées est difficile. Mais une fois que vous avez une idée, lancez-vous. Ne dites pas "oh, c'est stupide" ou "oh je n'ai pas le temps". Continuez à penser à ce qui rendrait cette idée géniale et faites-le.

Aussi, cherchez sur Google s'il y a un hackerspace près de chez vous. Si vous êtes intéressé par la réalisation de projets matériels et logiciels, mais que vous ne savez pas par où commencer, ce serait un excellent point de départ.

J'espère que vous avez apprécié ce Instructable !

Conseillé: