Étape 10 : Précision et erreur
Précision :
Si un paintball se déplace à 300fps, il faut 3.3333ms de voyager 1ft (1 / 300 fps = 3.3333ms). Étant donné que nos paires émetteur/détecteur IR sont espacés de 4" dehors, il faut diviser 3.3333ms par 3 (pi 1 / 4 po = 3). Le temps qu’il faudra le paintball à voyager 4" à 300fps est donc 1.1111ms.
300 fps = 3.3333ms/ft
temps de voyage 4 po = 3.3333ms / (1ft / 4 in.)
= 1.1111ms
Vitesse du processeur = 12 MIPS
= 83.3333ns / ins
Précision = 100 - (100 * (83.3333ns / 1.1111ms))
= 99.9925 % de précision à 300 images/s
Maintenant, ce n’est pas la précision réelle de ce chronographe. Si ce microcontrôleur peut détecter un objet à n’importe quel cycle de l’enseignement, il aurait une précision de 99.9925 % à 300fps car sa pire des cas de ne pas détecter un objet lorsqu’il s’est cassé le faisceau ne pouvait être 83.3333ns avant il serait réellement le détecter.
Car je suis du scrutin les détecteurs IR et attend de voir si un objet a cassé le faisceau #1, il faut 8 cycles d’instruction / boucle lorsque j’essaie de détecter si il y a un objet en brisant la poutre. Puis une fois qu’il a détecté un objet, il a plus d’instruction d’un cycle pour exécuter parce qu’il a commencer Timer1. Après qu’il a fait tout cela, il a commencé la période de temps qu’il faut le projectile voyage du faisceau #1 au faisceau #2 d’enregistrement. Il en va de même pour la poutre #2. Il faut 8 cycles d’instruction / boucle de « détection » et une instruction plus pour éteindre le Timer1. Le pire des cas est donc :
Ins/Loop = 8 ins * 2 boucles
= 16 instructions avant une détection
Ins/activation du Timer1 = 1 ins * 2 (activation et désactivation du Timer1)
= 2 instructions
Plus long laps de temps possible devant une détection = (16 ins + 2 ins) * 83.3333ns / ins
= 1,5 µs
Précision = 100 - (100 * (1.5µs / 1.1111ms))
= 99.865 % de précision à 300 images/s
Ainsi, en supposant qu’il n’y a aucune autre source d’erreur (distance est exactement 4", les rayons sont interrompus à l’identique de chaque côté, etc.) nous aurions une précision de 99.865 % à 300fps pour ce chronographe. C’est très bon, cependant, il y a beaucoup d’autres petites sources d’erreur que je n'ai pas pris en compte. Par conséquent, il est hautement improbable que le chronographe qui je construire ou vous construisez sera précis à 99.865 %. Néanmoins, il fonctionne très bien et je suis très heureux avec elle.
Edit :
J’ai oublié d’ajouter la vitesse minimale du projectile. Étant donné que le nombre plus élevé de Timer1 peut compter jusqu'à est 65 535, plus il utilise une instruction plus faire déborder vers 0 et son fonctionnement à 12 MIPS, nous pouvons calculer la vitesse d’un projectile aussi bas que 62fps. Les calculs sont les suivants :
MCU vitesse = 12 MIPS
= 83.3333ns / ins
Max Count Timer1 = 65 535 instructions + 1 plus d’instruction pour le rendre à interrompre
= les instructions 65 536
Vitesse min = ((MIPS 12/65 536 ins) * 1 / 3ft)
= fps 61.03516 (pour plus de sécurité, nous allons dire 62fps)