DOC MYCK : Programmation La première partie du programme consiste à définir les composants, les raccorder aux broches définies sur le schéma électronique. C'est également là qu'on définit les constantes du programme et la variable de l'écran LCD. La seconde partie intitulée void setup permet d'indiquer à l'ensemble du programme les différentes entrées et sorties tels que les capteurs, la led les boutons le moteur et l'afficheur lcd, mais aussi la mise à zéro du moteur faisant tourner l'axe principal du Doc MYCK.
La partie suivante se trouve être la plus importante du programme, elle contient les ordres executants la rotation du Doc MYCK, ceux à l'activation ou non des capteurs et aussi à l'affichage de messages sur l'écran lcd servant à informer l'utilisateur des différents états du système. Le programme principal comporte de nombreuses variables qui permettent de raccourcir le code Arduino et d'ainsi d'éviter les répétitions. Dans ce programme on trouve plusieurs variables telles que : void moteur, void déplacement, void prise crayon et void affichage. La première variable n'est pas la plus importante mais elle est utile au sein du programme et de la variable principale. En effet, la variable void moteur défini le sens du moteur d'un côté ou d'un autre ainsi que sa durée de rotation.
La fonction void déplacement est la variable principal du programme La fonction void déplacement est la variable principal du programme. Elle permet de faire tourner le compartiment central du Doc MYCK en partant d'un emplacement spécifique à partir d'un simple bouton de couleur. Le moteur va ainsi tourner dans un sens ou dans l'autre pendant un temps défini pour atteindre la position finale attendue, c'est à dire l'emplacement du crayon de la même couleur que le bouton choisit initialement. Une fois cette étape réalisée il est alors possible de récupérer le crayon par la porte, de l'utiliser et ensuite de le reposer à l'emplacement où il se trouvait précédemment. Une nouvelle position initiale est alors définie, celle en face de la porte qui se doit d'être fermée afin de pouvoir relancer le programme si l'on désire prendre un nouveau crayon.
La fonction void prise crayon permet de détailler dans le programme la prise du crayon. Tout d'abord lorsque le crayon attendu est en face de la porte, l'afficheur indique que le crayon est disponible. L'utilisateur peut alors ouvrir la porte, ce qui active la led qui va s'allumer. Une fois le crayon utilisé il peut être reposé dans son emplacement qui est indiqué par l'afficheur, puis la porte doit être refermée afin que la led s'éteigne et que le programme puisse repartir de zéro. La dernière variable qui clôture ce programme est la variable void affichage. Elle va permettre de communiquer avec l'utilisateur avant le choix d'un crayon, puis lorsque le crayon est choisi et disponible, et enfin lorsqu'il doit être reposé. L'afficheur lcd permet d'avoir des informations sur le déroulement du programme et sur les actions à effectuer. La programmation du Doc MYCK a demandé beaucoup de temps, nous avons rencontré de nombreuses difficultés qui nous ont freiner dans l'avancement du projet. Parmi ces nombreux problèmes, il y a eut la rotation de l'axe central qui ne tournait pas, l'afficheur lcd qui ne s'allumait pas, et l’impossibilité d'ouvrir le document Arduino à plusieurs reprises. Malgré ces péripéties le Doc MYCK est opérationnel, il est désormais capable de tourner et de délivrer le crayon voulu à l'utilisateur mais également de communiquer avec lui et de lui transmettre les indications nécessaires pour faciliter son utilisation. Le Doc MYCK peut donc vous être présenté sous les meilleures conditions possibles cher jury.