Étape 12 : Importation de Modules
defOpenCV(): #Create video capture cap = cv2.VideoCapture(0) #Globalizing variablesglobal cxAvg #<----I can't remember why...global cxFound global iFrame global intRx global rx global tranx #Flag for getting a new target. newTarget ="Yes"#Dot counter. He's a hungry hippo... dots =0#This holds the bot's centroid X & Y average cxAvg =0 cyAvg =0#Stores old position for movement assessment. xOld =0 yOld =0#Clearing the serial send string. printRx =" " | 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
Bien. Au début.
Donc, lignes 3 à 10 tirez dans les modules que nous aurons besoin. Mon point de vue sur un module est le suivant, « Code certains gars intelligent a écrit et ne veut plus, donc il me l’a donné à utiliser ».
Pour être précis
- CV2 est le module OpenCV.
- Numpy, que nous appellerons "np" partout dans le code, est utilisé pour des fonctions numéros supérieures nécessaires pour OpenCV faire sa magie.
- Série est le module qui nous permettra d’établir une connexion série entre le PC et le robot, par l’intermédiaire de n’importe quel périphérique sans fil que vous avez choisi.
- Temps nous permet essentiellement ralenti le code. Ceci est important dans le contrôle de beaucoup de choses, par exemple, dans quelle mesure le robot se déplace. Nous disons les moteurs pour allumer, attendre 10 secondes, puis éteindre. Parce que la fonction sommeil met en fait le code dans un état d’inactivité, nous devons avoir le module thread, car notre code nécessite le PC pour faire plusieurs choses en même temps.
- Math. Depuis le module de math, nous obtenons le code pour nous aider à simplifier les calculs de trigonométrie, comme l’angle entre le robot et la cible.
- Le module aléatoire sert uniquement à nous donne une cible aléatoire.
- Threading. Module important. Fondamentalement, le threading permet les ordinateurs pour effectuer deux tâches en même temps. Cela devient important lorsque nous sommes fois essayer de suivre le robot et recevoir sa position. Tout au long de ce code, nous aurons trois threads
- Le thread exécute les trucs OpenCV. Cela suit le robot et est également le plus grand.
- Un thread de contrôle de la connexion en série entre le robot et le PC.
- Et un thread avec le petit boulot de raconter les moteurs combien de temps pour être sur, contrôlant ainsi dans quelle mesure le robot se déplace.