Artibot - un robot de peinture portrait (1 / 2 étapes)

Étape 1: logiciel

L’architecture inclus une application iPhone pour prendre une photo, sous-échantillonner à 100 x 100 pixels et le convertir en niveaux de gris. L’image était alors base 64 codé et téléchargées vers une application Google App Engine les images à dessiner en file d’attente.
L’arduino a été équipé d’un bouclier Ethernet donc il peut communiquer avec le serveur.
Pour expliquer le logiciel, considérons le schéma suivant :

Dans le dessin ci-dessus, l’alpha de l’angle est l’angle du premier bras de l’axe y, et l’angle bêta est l’angle du second bras de la ligne le continue la première direction de bras. Ce sont les angles que des servo-moteurs utilisent comme leur valeur ou leur position. R1 et R2 sont les longueurs des bras de premier et deuxième.
Pour calculer la position du crayon, nous utilisons ces équations :
MX = Ox + R1 x sin(alpha)
Ma = Ox - R1 x cos(alpha)
x = Mx + R2 x sin(alpha+beta)
y = ma - R2 x cos(alpha+beta)
où x pousse vers la droite et y pousse vers le bas et l’origine (0,0) est dans le coin supérieur gauche.

Nous avons fait la conversion de (alpha, bêta) espace pour l’espace de l’image dans le code serveur, pour faire plus simple l’arduino. Le serveur fondamentalement a reçu une demande d’un certain alpha angle et il serait alors itérer sur tous les coefficients bêta, calculer x, y, carte à l’espace de l’image, lire la valeur de pixel et retourner les valeurs pour toutes les versions bêta à l’arduino.

La séquence de dessin a été renforcer la position des épaules (alpha) d’un degré et pour chaque telle position, déplacer le moteur de coude de certains beta minimum pour un bêta maximale.

Le flot du logiciel arduino a été :
1. Configuration - établir une connexion au serveur
2. boucle alpha = minAlpha à maxAlpha
3. appelez le serveur pour obtenir une séquence de valeurs de niveau de gris pour le cours alpha
4. sauter les octets d’en-tête de réponse HTTP et lire le premier octet de la charge utile. cet octet sera 0 si le serveur n’a aucune donnée supplémentaire ne
5. boucle pour beta = minBeta à maxBeta
6. Lisez le prochain caractère qui représente le niveau de gris à la version bêta actuelle
7. Si le gris est plus foncé qu’un seuil, déplacer le stylet vers le bas pendant 0,5 seconde et puis vers le haut (dessinez un point)
8. une fois fait, juste ne rien faire dans une boucle - l’utilisateur doit pousser le bouton de réinitialisation pour aller chercher l’image suivante à partir du serveur

Le code de source arduino sketch est disponible ici :

http://github.com/iroth/artibot

Articles Liés

Bras de Robot de peinture pointilliste

Bras de Robot de peinture pointilliste

Il ne peut être un Da Vinci ou Kahlo, mais ce robot de peinture du punch tout l'artistique pour sa taille. Dans ce Instructable, Ill vous montrer comment je suis allé du concept jusqu'à la fin et construit un bras de robot de peinture à l'aide d'un I
Robot de peinture fenêtre (arduino, traitement, accéléromètre)

Robot de peinture fenêtre (arduino, traitement, accéléromètre)

l'idée de ce projet provient d'un de mes préférés ' ibles : le polargraph. J'ai aimé le style de dessin et de la pensée comment cool serait de le faire sur le côté d'un bâtiment ? Malheureusement, les défis pour la mise en place de tel un grand polar
Robot de peinture traditionnelle chinoise

Robot de peinture traditionnelle chinoise

robot de peinture traditionnelle chinoiseLa partie de la machine est dans les modèles en aluminium dans la plateforme de Conseil de placer qu'un disque tournant ensemble, sur la plaque met le Canon papier. Sur installe le bras support à double charni
BRICOLAGE Peinture Portrait

BRICOLAGE Peinture Portrait

Réaliser un portrait parfaitement proportionné, peint assez facilement - même si vous n'êtes pas un artiste ! Projet-idéal pour les cadeaux d'amusement!!ce que vous devez :votre favori b & w photo et bristols à imprimer surun éditeur de photolame pou
Quipt : Apprivoiser les Robots industriels

Quipt : Apprivoiser les Robots industriels

Robots industriels sont vraiment incroyables machines CNC – – non seulement pour leur vitesse, puissance et précision, mais parce qu'ils sont aussi très adaptable. Contrairement aux autres machines CNC, quand vous mettez un outil à l'extrémité du rob
Robot-O génial-O Disc-O le Robot Disco (décoration)

Robot-O génial-O Disc-O le Robot Disco (décoration)

Ma nièce va avoir une fête d'anniversaire sur le thème de Disco, et illuminent de décorations disco peut être cher, j'ai décidé de me faire quelques décorations cool.  Pendant les fêtes, il y avait une télévision commerciale mettant en vedette un rob
Sport en aluminium X design cadre copter pour la force, lightwieght et facile.

Sport en aluminium X design cadre copter pour la force, lightwieght et facile.

Cet hélicoptère tout en aluminium X est solide, léger et plus facile à réparer tous les cadres. Parce que les pièces sont faites d'aluminium plat, même si vous planter c'est vraiment dur, il obtient juste plié, vous pouvez aplatir il arrière avec un
Costume d’Edward Scissorhands simple (mais efficace) pour gamins

Costume d’Edward Scissorhands simple (mais efficace) pour gamins

quand mon fils m'a dit qu'il voulait être Edward Scissorhands pour Halloween, je savais que nous allions avoir une explosion faisant le costume pour lui. Tous les membres de la famille avaient quelque chose à ajouter - mon fils bien sûr offrant la pi
Chevalet pour petits artistes

Chevalet pour petits artistes

Whit ce projet, vous pouvez exprimer l'artiste qu'il y a chez votre enfant. très bon marché et facile à faire, ce projet peut apporter à nos enfants passent beaucoup de peinture de l'époque. Le résultat final est a été conçu pour être facile à utilis
Modifier un iRobot Create to Paint

Modifier un iRobot Create to Paint

il s'agit d'un projet de robotique qui pourrait probablement être complété par quelqu'un qui n'a aucune expérience avec des robots. Je dis cela parce que, avant de commencer, j'ai n'eu aucune expérience avec des robots. Ou l'écriture des programmes.
123D scanner - Scanner 3D de fait maison

123D scanner - Scanner 3D de fait maison

Hé - jetez un oeil à mon nouveau projet iciDans ce projet, j'ai construit un Scanner 3D, qui permet de générer des modèles 3D d'objets physiques.Les fichiers consultables plus tard dans le logiciel 3D (GLC Player, Sketchup, Rhino ou sites tels que ht
Une vie/travail espace organisé des réunions, projet de travail, bricolage et divertissante

Une vie/travail espace organisé des réunions, projet de travail, bricolage et divertissante

je suis un designer/artiste à temps plein qui partage un espace de vie et de travail avec un autre designer. L'espace est un appartement avec hauts plafonds et beaucoup de lumière, mais pas les placards. Techniquement, c'est un mensonge, mais l'un pl
Robotique peinture.

Robotique peinture.

Étape 1: première Mettre peu de peinture argent visage sur votre visage, puis faire le contour de l'esquisse de la conception que vous voulez.Étape 2: rouilleAjouter un peu rouille sur votre visage, où vous le souhaitez.Étape 3: ombre Ajouter un ombr
Logo de robot de Cornhole jeu utilisant le Portrait Silhouette

Logo de robot de Cornhole jeu utilisant le Portrait Silhouette

Les Fabricants de Decatur voulu faire un cornhole énoncées pour l'espace. Faire les planches de contreplaqué et 2 x 4 a été la partie la plus difficile. Découper votre makerspace logo sur un Portrait Silhouette est facile si vous suivez ces étapes.Ét