Étape 1: « Comment mangez-vous un éléphant? »
Astuce : même un petit projet peut être écrasant et trop à la fois les risques n’étant ne pas fini si vous essayez et. Au lieu de cela, établir des objectifs et des lignes directrices et des travaux pour rencontrer une étape à la fois. Vous vous sentirez mieux après chaque réalisation et il aide à prévenir votre projet de liquidation dans une boîte de rangement inachevé.
Nous avons tous entendu la question de manger un éléphant une fois ou l’autre et nous savons la réponse, « Une bouchée à la fois ».
J’ai souvent été coupable de démarrage d’un projet et puis en plaçant le projet inachevé dans une boîte ou sur une étagère pour rassembler la poussière parce que soit je tape sur un « barrage routier » ou juste moi accablé avec essaie de faire trop à la fois. Souvent, j’essaie de manger de l’éléphant en une bouchée.
Cette fois, j’ai décidé d’essayer une approche différente (et j’ai promis à mon épouse que j’ai quelque chose terminerait réellement cette fois).
Alors tout d’abord, j’ai mis une série d’objectifs pour mon projet et j’ai décidé de s’en tenir à eux. Ensuite, j’ai divisé tous mes objectifs en deux groupes principaux : logiciels et matériels. Quand j’ai trouvé le temps de travailler sur mon projet je se concentrer sur un seul but et essayez de ne pas se distraire. Si je suis venu avec une idée qui a appartenu à un autre objectif, je l’écrirais vers le bas donc je pourrais revenir sur mon idée lorsque je travaillais sur cet objectif. Si c’était une idée qui serait agréable d’avoir mais vraiment appartenu dans une future version (c’est à dire, personnalisé gravé PCB bord, mode low power, recharge de la batterie, etc.) je l’écrirais vers le bas dans mon carnet sous « Objectifs futurs ». De cette façon je n’a pas accabler moi-même en faisant mon projet si grande qu’elle ne cesse de croître et jamais fini. Mon portable a tenu mon projet ensemble.
Je recommande fortement que vous gardez aussi un carnet pour noter vos expériences, références et même vos échecs. J’ai beaucoup appris, même à partir de mes échecs. Succès consiste à passer d’un échec à l’échec sans perte d’enthousiasme.--Winston Churchill
MATÉRIEL
1) doit être en mesure d’être mis en place sur une maquette pour la phase de développement du logiciel
J’ai commencé avec un clavier, Arduino Uno et quelques LED. J’ai utilisé cette configuration de montage d’essai jusqu'à ce que mon code était terminé.
2) ce qui est utilisé au cours du développement doit être facilement traduite en un produit prototype
J’ai besoin de quelque chose plus petit puis le Uno et l’Arduino Pro Mini faire l’affaire. Je pouvais utiliser mon programme, j’ai développé sur la Uno et l’Arduino Pro Mini serait suffisamment petit pour tenir dans l’enceinte de « Sparkfun » je regardais. J’ai pensé à personnalisé gravé PCB avec juste un peu sous tension ATMega328P mais a décidé de rester avec mes objectifs initiaux d’utilisation « off the shelf"éléments et sauver le PCB personnalisé pour une future version.
3) doit être facile à tenir par les vieux doigts 4 ans
J’ai cherché beaucoup de boîtiers différents et s’apprêtait à s’installer sur l’utilisation de l’enceinte « Sparkfun » quand je peux à travers le boîtier Hammond avec support de batterie. C’était exactement ce que j’ai envisagé.
4) doit être attrayant en apparence, alors le vieux de 4 ans veut l’utiliser
Mon fils adore les dinosaures, de lézards et de roues chaudes. J’ai donc cherché autour jusqu'à ce que j’ai trouvé un visage de dinosaure qui aurait évoluer facilement vers l’avant de l’enceinte de la main. Image a été trouvée à: http://www.arthursclipart.org/dinosaurs/dinosaurs/page_02.htm
LOGICIEL
1) doit être capable de détecter les pressions sur la touche d’un clavier
Premier but, je devais être en mesure de dire quel bouton a été enfoncé.
2) doit être en mesure de saisir les touches dans des variables
Puis, j’avais besoin d’avoir mon programme stocker mon sur les touches. Je devais être capable d’utiliser les nombres supérieurs à juste de simples chiffres.
3) doit être en mesure d’effectuer l’addition ou la soustraction (multiplication et division peuvent venir plus tard, car mon fils est seulement de 4 ans)
Vu mon programme à savoir quand il faut ajouter ou soustraire est devenu un défi. Et cela devenue un défi de taille quand j’ai décidé d’inclure des nombres négatifs. Si je n’avais pas cassé mon élaboration de codes de logiciel en bouchées « plus petites », cela aurait pu être le « bloc de route » qui aurait tué ce projet. Je n’ai ajouter des nombres décimaux à la programmation pour que quand j’ajouter division il sera déjà de là.
4) doit être capable de calculer la réponse correcte et puis le comparer à la réponse de deviner les entrées de l’utilisateur
Cet objectif a conduit à ma découverte sur la limitation des flottant math numéro qui a été résolu en comparant la valeur absolue de la différence entre la bonne réponse et la réponse devinée.
5) doit être en mesure de répondre à l’utilisateur avec une réponse correcte ou incorrecte.
Allumer la LED rouge pour faux ; LED verte pour le droit.
Alors maintenant que vous savez l’approche, j’ai pris, permet de se lancer sur la construction de votre DinoCalc !