#BigGun. Le chronographe "frame" le plus simple sur Arduino (mesure de la vitesse des balles)

stupide - c'est une telle balle!


Électriquement, la conception du capteur se compose uniquement de conducteurs. Élémentaire.


Pas de cerclage - en principe - ce sont deux "boutons" de la masse aux ports 2 et 3, plus simples qu'un récepteur détecteur!


l'appareil a été assemblé sous couvert de nuit - pour la chaleur estivale ;-)


Une petite digression dans l'histoire (en italique) - Je suis engagé dans les armes pneumatiques depuis plus de 20 ans, et pendant tout ce temps j'ai utilisé la méthode du balancier balistique pour mesurer la vitesse d'une balle.
Mais le fusil de chasse est apparu - énergie contre magnum 4,5 mm - 100 fois !!! plus - n'utilisez pas les mêmes suspensions de connexion!


À cette époque, j'étais déjà initié à l'utilisation d'Arduino à des fins pacifiques ._


La base a été prise par la conception de Mikhail Shevchenko sur deux paires de capteurs optiques.


Il a fait une option montée sur le canon, mais le recul de la pneumatique même à ressort après plusieurs tirs a détruit les LED.


J'ai essayé d'assembler un monstre à cadre universel avec de nombreux capteurs optiques - FAIL.


Décidant de simplifier, j'en suis venu à la construction décrite, il n'y a nulle part où aller ;-)


Le principe des capteurs a été emprunté aux créateurs du programme Airspeed (originaire des années 90).


dispositif capteur


Ajoutez simplement un microcontrôleur (la précision est un ordre de grandeur plus élevé)!


Autrement dit, quand cela a fonctionné, il semble juste ainsi!


Contrairement aux cartes son, je devais opérer non pas avec un signal analogique, mais avec une transition d'un 1 logique à 0.


La chance a été précédée de nombreuses expériences - 2 options pour le cadre, 3 types de "cerclage" électrique et 4 croquis d'édition (programmes).


Tirer la tension sur les broches numériques (PULLUP) s'est avéré être la solution la plus vitale et la plus stable!


Par conséquent, la probabilité de faire une erreur en répétant ce schéma est faible!


Tout, il n'y a pas de temps pour expliquer davantage, les capteurs peuvent être assemblés simplement en regardant les photos.


appareil assemblé et prêt à l'emploi


Nous commençons donc le jeu de la FIFA - les matériaux de départ sont un bloc de bois de 15x10x5cm, deux morceaux de feuille de plastique de 15x15cm, 2,5 mm d'épaisseur.


À une plus grande épaisseur du cadre, les capteurs peuvent ne pas fonctionner, à une épaisseur plus petite, ils peuvent être raccourcis par une brise.


Vous pouvez prendre un carton ondulé de 3 mm, du balsa ou même faire des cadres à partir de règles ordinaires!


La principale chose à retenir - 4 mm d'épaisseur - est déjà beaucoup, cela cesse de fonctionner à six!


La taille de la "fenêtre" dans le cadre - 9x9cm (à l'origine dix) est petite?


Si vous ne pouvez pas entrer dans le top dix, au sens littéral et figuré, alors il est trop tôt pour parler de la nécessité d'un chronomètre!


Ensuite - nous découpons des morceaux de papier alimentaire de 11 x 14 cm et, à l'aide d'un crayon adhésif ordinaire, nous attachons soigneusement aux cadres des deux côtés.


Nous fixons ce dernier à la base (barre) de sorte que la distance entre eux soit de 10 cm (la base du chronographe intégrée dans le croquis).


Dans le même temps, le faisceau lui-même devrait déjà être de 100 mm. à l'épaisseur d'un cadre (en fait, le bois à la suite du séchage dans l'entrepôt lui-même diminue en taille ;-)


Les cadres en U sont fabriqués pour des raisons de «réutilisabilité» d'un «ensemble» de feuilles - après chaque tir avec une règle, nous dessinons entre des paires de plaques afin d'ouvrir le contact dans la zone des trous de balle.


Pour plus de commodité et de simplicité pour assurer le contact avec le film, des clips basés sur des pinces à linge ont été réalisés:


les matériaux à portée de main entrent en jeu - même les pinces à linge sont utiles!


J'ai pris une paire torsadée multicœur comme conducteurs - j'ai étamé toutes les extrémités (nous nous souvenons que le cuivre et l'aluminium ne sont pas directement connectés!)


Nous l'avons donc compris.


Passons maintenant au microcontrôleur - tout déboguait sur l'arduino Uno (Atmega-328) 16Mhz + LCD Keypad Shield.


Donc, le texte du croquis (programme):


//   #include <LiquidCrystal.h> //!    -     !!! LiquidCrystal lcd(8, 9, 4, 5, 6, 7); // : //  unsigned int data = 0; //     volatile unsigned long int time1 = 0; volatile unsigned long int time2 = 0; void setup() { //     LCD lcd.begin(16, 2); //      attachInterrupt(0, sensor_1, FALLING); attachInterrupt(1, sensor_2, FALLING); //     -  pinMode(2, INPUT_PULLUP); pinMode(3, INPUT_PULLUP); } void loop() { lcd.setCursor(0, 0); lcd.print("CHRON 100mm base"); //    nogood: //    -  -     #   CHRON if ( digitalRead(2) == LOW ) { lcd.setCursor(5, 0); lcd.print("#"); goto nogood; } else { lcd.setCursor(5, 0); lcd.print(" "); } //    -  -     #   base if ( digitalRead(3) == LOW ) { lcd.setCursor(11, 0); lcd.print("#"); goto nogood; } else { lcd.setCursor(11, 0); lcd.print(" "); } lcd.setCursor(0, 1); lcd.print("Speed "); lcd.setCursor(6, 1); lcd.print(data); lcd.setCursor(13, 1); lcd.print("M/S"); delay(100); while ( time1 == 0 && time2 == 0 ) ; delay(100); if ( time1 != 0 && time2 != 0 && time2 > time1 ) { data = 0.1 / ((time2 - time1) / 1000000.0); // v = s / t } // Serial.println(data) //      -       LiquidCrystal (lcd), //   - Serial.println -      Arduino IDE lcd.setCursor(6, 1); lcd.print(data); time1 = 0; time2 = 0; } void sensor_1() { if ( time1 == 0 ) { time1 = micros(); } } void sensor_2() { if ( time2 == 0 ) { time2 = micros(); } } 

En bref, le principe de fonctionnement - la commande PULLUP sur les broches 2,3 active la tension de pull-up (avec des résistances internes 20-50 kOhm)
Une envergure de balle fait un court-circuit détecté par des interruptions (chute du capteur), comme les commandes Arduino les plus rapides.
Connaissant la différence de temps et la distance entre les capteurs, la vitesse de la balle est calculée.


Ordre IMPORTANT des capteurs - le premier - sur la broche 2!


C’est tout.



Quelqu'un objectera que l'énergie est dépensée pour percer le papier d'aluminium, et la vitesse réelle de la balle sera plus élevée!


Au début, tout semblait être ainsi!


Par rapport à la vitesse mesurée il y a un an et demi par un appareil à capteurs optiques (280m / s) - l'appareil sur la feuille en a produit 260!


Énergétiquement - c'est 22 Joules contre 19! - perte immédiatement treshki!


Mais dès que j'ai réduit la base à 100 mm, le «foil» a commencé à montrer le résultat correct - pourquoi - un mystère!


Les balles ont utilisé un Luman FT 0,56 gramme, des appareils basés sur le même microcontrôleur, la base dans les deux cas est de 100 mm, un fusil


Diana-54 airking


Maintenant, sur la stabilité des lectures - sur 5 plans, «l'éjection» n'est qu'une à la fois, les nombres des autres - convergent.


Oui, et enfin, demandez - pourquoi à l'ère de l'électronique pour réinventer la roue?


Tout est très simple - la réponse est un fusil de chasse!


Lors de la mesure de la vitesse d'une charge à un départ - pas un problème - n'importe quel appareil fera l'affaire!


Mais à distance, le tir a la capacité de se disperser (la cible standard pour vérifier les éboulis est de 75x75 cm).


Et imaginez maintenant l'option de mesurer la vitesse de charge à 35 mètres - si même un appareil chinois pour 50 $ est déchiré, il sera insultant.


La solution consiste à «réserver» le boîtier et les capteurs (des cartes de 40 mm suffisent) ou à utiliser des cartouches jetables.


Il y a quoi et pourquoi mesurer - pas loin est l'introduction d'une interdiction de la chasse au plomb dans les plans d'eau (après l'Europe), il sera nécessaire d'utiliser de la grenaille d'acier, dans les magasins il y aura des lignes pour ces cartouches (ou un prix élevé).


Lors de l'auto-collecte des cartouches, je ne veux pas utiliser les méthodes anciennes pour évaluer l'efficacité de l'entrée dans une planche de pin sèche.


Des tirs bien dirigés pour vous et pour les chasseurs - Pas Ourson, Pas Plume!


Jusqu'à ce que nous nous revoyions sur Habr, Andrey.

Source: https://habr.com/ru/post/fr414745/


All Articles