Étape 16 : programmation
principal :
readadc 0, b0
Debug goto principal
Maintenant, prenez votre main devant la tête robot´s et remarquez comment le b0 variable prend la valeur. Vous pouvez utiliser ses connaissances pour décider ce qui doit arriver et quand (comment fermer choses devraient obtenir avant..) Vous pouvez remarquer comment les choses commencent à aller « incorrect » si le truc est trop près aux « yeux » ; Le Sharp est fait d’utiliser des objets 10-80 cm de distance. Les choses qui sont plus proches de 10 cm (4 pouces) apparaissent comme moyen supplémentaire, qui peut être un véritable défi au programme. Vous pouvez obtenir de nombreux autres capteurs de distance qui n’ont pas ce problème. Toutefois, le Sharp est le moins cher et le plus facile au programme, c’est pourquoi j’ai fait un tel choix « mauvais » pour vous, désolé;) Regarder autour et voir ce que tout le monde utilise, avant de vous décider sur une mise à niveau. Maintenant je vous conseille de mettre votre robot vers le haut sur une boîte d’allumettes ou similaires, comme les roues vont commencer à tourner.
Entrez ce code dans votre éditeur et appuyez sur F5 pendant que le robot est branché :
4 haute
5 bas
Une des roues doit tourner dans un sens. Vos roues tournent vers l’avant ? Dans l’affirmative, c’est l’instruction pour que la roue de tourner vers l’avant.
Si la roue tourne en arrière, vous pouvez essayer ceci :
4 bas
High 5
Pour activer l’autre roue, vous devez entrer
6 haute
7 bas
(ou l’inverse pour le sens inverse.) Ce qui se passe ici est qu’en utilisant uniquement les options disponibles pour le microcontrôleur ; Power on ou off (High / Low) sur les broches, il est commandant du contrôleur de moteur pour mettre moteur A ou B en mode avancer ou reculer.
4 bas
5 bas
6 basse
7 bas
arrête tous les moteurs
Le servo que vous avez déjà essayé.
Complètement d’un côté est :
servo de 0, 75
attendre 2
-l’autre côté est :
servo 0, 225
attendre 2
- Centre :
servo de 0, 150
attendre 2
Voici un petit programme qui va (devrait, si tout va bien, et si vous avez inséré les bons paramètres pour haut/bas convenir à votre câblage des moteurs) faire le robot conduire autour, arrêter devant les choses, regarder de chaque côté pour décider quel est le meilleur, cette façon de tourner et conduire vers de nouvelles aventures. Dans le code que j’ai fait ce qu’on appelé des remarques : vous expliquer ce qui se passe. Vous pouvez écrire ces commentaires ou observations que vous-même dans le code, c’est une bonne idée de garder la trace. Ils sont écrits avec une apostrophe (ou un guillemet simple) signe. Toutefois, la copie de ce texte d’ici qui peut-être altérer à autre chose, et vous devrez corriger ça manuellement, Désolé. Votre éditeur de programmation a des codes de couleur, qui vont aideront à vous montrer ce qu’il reconnaît comme commentaires et quoi comme code.
Symbole dangerlevel = 70' a quelle distance chose soit, avant que nous réagissions ? symbole de tour = 300', cette commande définit la quantité doit être tourné symbole servo_turn = 700', cette commande définit pour combien de temps nous devons attendre pour le servo de tourner (en fonction de la vitesse d’it´s) avant de nous mesurer à distance
principal: « la boucle principale readadc 0, b1 » lire comment beaucoup si l’avance de distance b1 < aucun dangerlevel puis gosub « si rien avant, disque avant d’autre gosub whichway » si obstacle devant alors décide quel chemin est fin mieux si goto principal ' Ceci termine la boucle, les autres sont seulement des sous-programmes
aucun: "ce doit être votre combinaison pour rendre le robot drive vers l’avant, celles-ci vous très probablement besoin d’ajuster pour s’adapter à la façon dont vous avez câblé vos moteurs robots high 5: 6 haut : bas 4: 7 retour à faible
whichway : totalhalt gosub ' premier arrêt !
"Une façon de regarder : gosub lturn « coup d’oeil à un côté pause servo_turn » attendez le servo à finir tournant readadc 0, totalhalt gosub b1
« Regarder ailleurs : gosub rturn « aspect d’un autre côté pause servo_turn » attendez le servo à finir tournant readadc 0, totalhalt gosub b2
"Décider quelle est la meilleure façon : si b1
body_lturn: 6 haute : faible 5: faible 7: haute 4' ce doit être votre combinaison que tourne le robot une pause façon tourner : gosub totalhalt retour
body_rturn : high 5: faible 6: basse 4: haut 7' ce doit être votre combinaison qui transforme le robot tourner l’autre pause de manière : gosub totalhalt retour
rturn : servo 0, 100' regarder d’un côté de retour
lturn : servo 0, 200' regarder de l’autre côté retour
totalhalt : basse 4: faible 5: 6 à faible : faible sur tous les 4 7' faible stoppe le robot ! Servo 0,150' visage en attente 1' gel retournent toutes pendant une seconde avant
Avec certains astucieux de programmation et de les retravailler, vous pouvez faire le disque robot, tourner la tête, prendre des décisions, faire de petits ajustements, tourner vers « trous intéressants » tels que portes, travaillent tous dans le même temps, pendant que vous conduisez. Il est plutôt cool si vous faites tourner la robot alors que la tête tourne;)
Moment de plaisir
Vous pouvez également fixer une lampe ou LED à broche 2 & sol et écrire (n’oubliez pas de LEDs besoin faire demi-tour le droit chemin)
2 haute
pour allumer la lampe, et
2 faible
pour l’éteindre;) - que diriez-vous un-stylo pointeur Laser, monté sur un servo supplémentaire ? Ensuite, vous pourriez faire le robot tourner le laser autour et la tourner sur et en dehors, en soulignant les endroits... vous pouvez faire quelque chose maintenant:) En appuyant sur « Help » dans les éditeurs de programmation met en évidence toutes sortes de tutoriaux intéressants et INFOS !
Peut-être essayer ceci : sortez le servo et prenez la puce jaune. Insérer le Darlington qui vous a sorti plus tôt. Brancher le haut-parleur sur les 2 broches ci-dessus où était le servo, tat est sortie 1. Et jeter dans le LED, ou quelle qu’elle soit, que vous avez trouvé sur la sortie 2. Puis programmer quelque chose comme ceci :
son 1, (100, 30) hauteur 2 attendre 1 faible 2 son 1, (105, 60)
Qui devrait faire retentir une tonalité et transformer quelque chose, faire un nouveau son et éteindre à nouveau.
Ou le plus intéressant, assurez-vous que la forte est toujours en accrocher un orateur jusqu'à la broche 1 et ensuite programmer cela :
bruit : readadc 0, b0 1, (b0, 2) de son bruit de goto.
Vous pouvez voter pour moi.
(nom-Aryan
Age-13)
BONNE chance