
Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-23 14:46

Pour ce projet, j'ai entrepris de créer une simulation de la façon dont la gravité affecte le mouvement des corps planétaires dans un système solaire. Dans la vidéo ci-dessus\, le corps du Soleil est représenté par la sphère en treillis métallique et les planètes sont générées aléatoirement.
Le mouvement des planètes est basé sur la physique réelle, la loi de la gravitation universelle. Cette loi définit la force gravitationnelle exercée sur une masse par une autre masse; dans ce cas le Soleil sur toutes les planètes, et les planètes les unes sur les autres.
Pour ce projet, j'ai utilisé Processing, un environnement de programmation basé sur Java. J'ai également utilisé le fichier d'exemple Processing qui simule la gravité des planètes. Tout ce dont vous aurez besoin pour cela est le logiciel de traitement et un ordinateur.
Étape 1: Simulation en 2 dimensions

J'ai commencé par regarder quelques vidéos sur la façon de coder cela que Dan Shiffman a créé sur sa chaîne YouTube, le train de codage (partie 1/3). À ce stade, j'ai pensé que j'utiliserais la récursivité pour générer le système solaire, de la même manière que Shiffman n'utilise que les lois de la physique.
J'ai créé un objet planète qui avait des « planètes enfants », qui à leur tour avaient également des planètes « enfants ». Le code pour la simulation 2D n'était pas terminé parce que je n'avais pas un excellent moyen de simuler les forces gravitationnelles pour chaque planète. Je me suis éloigné de cette façon de penser, dans une direction basée sur l'exemple de traitement intégré de l'attraction gravitationnelle. Le problème était que je devais calculer la force gravitationnelle de toutes les autres planètes sur chaque planète, mais je ne pouvais pas penser à comment extraire facilement les informations d'une planète individuelle. Après avoir vu comment le didacticiel de traitement le fait, j'ai compris exactement comment le faire en utilisant des boucles et des tableaux à la place
Étape 2: L'amener à 3 dimensions

En utilisant l'exemple de code pour Planetary Attraction fourni avec le traitement, j'ai commencé un nouveau programme pour une simulation 3D. La principale différence se trouve dans la classe Planet, où j'ai ajouté une fonction d'attraction, qui calcule la force gravitationnelle entre deux planètes. Cela m'a permis de simuler le fonctionnement de nos systèmes solaires, où les planètes ne sont pas seulement attirées par le soleil, mais aussi par toutes les autres planètes.
Chaque planète a des caractéristiques générées aléatoirement telles que la masse, le rayon, la vitesse orbitale initiale, etc. Les planètes sont des sphères solides et le Soleil est une sphère en fil de fer. De plus, l'emplacement de la caméra tourne autour du centre de la fenêtre.
Étape 3: Utiliser de vraies planètes

Une fois le cadre de la simulation 3D terminé, j'ai utilisé Wikipedia pour trouver les données planétaires réelles de notre système solaire. J'ai créé un tableau d'objets planétaires et saisi les données réelles. Lorsque j'ai fait cela, j'ai dû réduire toutes les caractéristiques. Quand j'ai fait cela, j'aurais dû prendre les valeurs réelles et les multiplier par un facteur pour réduire les valeurs, au lieu de cela, je l'ai fait en unités de Terre. C'est-à-dire que j'ai pris le rapport entre la valeur de la Terre et la valeur des autres objets, par exemple le Soleil a 109 fois plus de masse que la Terre. Cependant, cela a eu pour résultat que les tailles des planètes semblaient trop grandes ou trop petites.
Étape 4: Réflexions finales et commentaires
Si je devais continuer à travailler sur cette simulation, j'affinerais/améliorerais certaines choses:
1. Tout d'abord, je mettrais tout à l'échelle uniformément en utilisant le même facteur d'échelle. Ensuite, pour améliorer la visibilité des orbites, j'ajouterais une piste derrière chaque planète pour voir comment chaque révolution se compare à la précédente
2. La caméra n'est pas interactive, ce qui signifie qu'une partie des orbites est hors de l'écran, vue "derrière la personne". Il existe une bibliothèque de caméras 3D appelée Peazy Cam, qui est utilisée dans la partie 2 de la série de vidéos de Coding Train sur ce sujet. Cette bibliothèque permet au spectateur de faire pivoter, de faire un panoramique et de zoomer la caméra afin qu'il puisse suivre toute l'orbite d'une planète.
3. Enfin, les planètes sont actuellement indiscernables les unes des autres. J'aimerais ajouter des « skins » à chaque planète et au Soleil, afin que les téléspectateurs puissent reconnaître la Terre et autres.
Conseillé:
Bureau alimenté par batterie. Système solaire avec panneaux solaires à commutation automatique est/ouest et éolienne : 11 étapes (avec photos)

Bureau alimenté par batterie. Système solaire avec panneaux solaires à commutation automatique est/ouest et éolienne : Le projet : Un bureau de 200 pieds carrés doit être alimenté par batterie. Le bureau doit également contenir tous les contrôleurs, batteries et composants nécessaires à ce système. L'énergie solaire et éolienne chargera les batteries. Il y a un léger problème de seulement
Système de suivi automatique solaire portable : 9 étapes (avec photos)

Système de suivi automatique solaire portable : Medomyself participe au programme d'associés Amazon Services LLC, un programme de publicité d'affiliation conçu pour permettre aux sites de gagner des frais de publicité en faisant de la publicité et en se connectant à amazon.comby : Dave WeaverCette version est faite avec
Système d'irrigation contrôlé par WiFi « Smart » à énergie solaire : 6 étapes (avec photos)

Système d'irrigation contrôlé par WiFi « intelligent » à énergie solaire : ce projet utilise des pièces solaires et 12 v de bricolage standard d'ebay, ainsi que des appareils Shelly IoT et une programmation de base dans openHAB pour créer un réseau électrique et une irrigation faits maison, entièrement solaires et intelligents pour le jardin. configuration.Points forts du système : Fu
Lumière solaire sans batterie, ou lumière du jour solaire Pourquoi pas ? : 3 étapes

Lumière solaire sans batterie, ou lumière du jour solaire… Pourquoi pas ? : Bienvenue. Désolé pour mon anglaisDaylight? Solaire? Pourquoi? J'ai une pièce légèrement sombre pendant la journée et je dois allumer les lumières lors de l'utilisation.Installer la lumière du soleil pour le jour et la nuit (1 pièce) : (au Chili)-Panneau solaire 20w : 42 $ US-Batterie : 15 $US-Solaire contrôle de charge
Dispositif d'irradiation solaire (SID) : un capteur solaire basé sur Arduino : 9 étapes

Dispositif d'irradiation solaire (SID) : un capteur solaire basé sur Arduino : le dispositif d'irradiation solaire (SID) mesure la luminosité du soleil et est spécialement conçu pour être utilisé en classe. Ils sont construits à l'aide d'Arduinos, ce qui leur permet d'être créés par tout le monde, des collégiens aux adultes. Cet institut