Artibot - een portret schilderij robot (1 / 2 stap)

Stap 1: Software


De architectuur opgenomen een iPhone app om een foto, downsamplen te nemen het op 100 x 100 pixels en het omzetten in grijswaarden. Het beeld was dan base-64 gecodeerd en geüpload naar een app van Google App Engine die de beelden wachtrijen moeten worden getrokken.
De arduino was uitgerust met een Ethernet-shield, zodat het met de server communiceren kan.
Overwegen om uit te leggen van de software, in de volgende afbeelding:

In de bovenstaande afbeelding, de alpha hoek is de hoek van de eerste tak van de y-as en hoek bèta is de hoek van de tweede tak van de lijn het de eerste richting arm blijft. Dit zijn de hoeken die de servomotoren als hun waarde of hun positie gebruiken. R1 en R2 zijn de eerste en de tweede arm lengtes.
Voor het berekenen van de positie van de pen, gebruiken we deze vergelijkingen:
MX = Ox + R1 x sin(alpha)
Mijn Ox - R1 = x cos(alpha)
x = Mx + R2 x sin(alpha+beta)
y = mijn - R2 x cos(alpha+beta)
waar x groeit naar rechts en y groeit naar beneden en de oorsprong (0,0) is op de hoogste linkerhoek.

We hebben de omzetting van (alpha, beta) ruimte naar de ruimte van de afbeelding in de servercode, de arduino deel eenvoudiger maken. De server ontvangen in principe een verzoek voor een bepaalde hoek Alfa en het zou vervolgens iterate op alle waarden van de beta, berekenen de x-, y- en kaart het aan de beeldruimte, luiden naar de pixelwaarde en de waarden voor alle betas terugkeren naar de arduino.

De tekenreeks was de positie van de schouder (alpha) intensivering van 1 graad en voor elke dergelijke positie, verplaatsen de elleboog motor van sommige minimum Bèta om een maximale bèta.

De algemene stroom van de arduino software was:
1. setup - verbinding met de server tot stand brengen
2. Loop voor alpha = minAlpha naar maxAlpha
3. Bel de server om een reeks van grijswaarden niveau voor de huidige alpha
4. Sla de HTTP respons header bytes, en lees de eerste byte van de lading. deze byte zal 0 worden als de server geen meer gegevens heeft
5. Loop voor beta = minBeta naar maxBeta
6. Lees de volgende teken vertegenwoordigt de grijze niveau op de huidige beta
7. als grijs donkerder is dan een drempel, omlaag de pen 0.5 seconden en vervolgens omhoog (trek een stip)
8. Zodra gedaan, gewoon niets doen in een lus - de gebruiker moet op de knop reset te halen het volgende beeld van de server

De arduino schets broncode is hier beschikbaar:

http://github.com/iroth/artibot

Gerelateerde Artikelen

Venster schilderij Robot (arduino, verwerking, versnellingsmeter)

Venster schilderij Robot (arduino, verwerking, versnellingsmeter)

het idee voor dit project kwam uit een van mijn favoriete ' ibles: de polargraph. Ik hield van de tekening stijl en denken hoe cool zou het zijn om dit te doen aan de zijkant van een gebouw? Helaas de uitdagingen voor het opzetten van een dergelijke
Gordon Ramsay acryl portret schilderij & Tips

Gordon Ramsay acryl portret schilderij & Tips

In dit Instructable ga ik om u door het proces heb ik gebruikt in het schilderen van deze acryl portret van Gordon Ramsay - de beroemde chef-kok en de ster van "Hell's Kitchen," en vele andere concurrerende koken toont. Ik deed dit onlangs in mi
Hoe maak je een zeer eenvoudige robot

Hoe maak je een zeer eenvoudige robot

dit is mijn 1e instructable, dus vertel me als het goed is.zo im die gaat tonen hoe te om een zeer eenvoudige robot te maken: de kever robot!het gebruikt geen chip, geen programation, alleen de eenvoudige 3e verbindingStap 1: Haal alle materialen nod
Hoe het bouwen van een eenvoudige bewegende robot(beginners)

Hoe het bouwen van een eenvoudige bewegende robot(beginners)

Een zeer eenvoudige robot met zeer fundamentele onderdelen die worden gebruikt die uw belangen in robotica zou ontbranden. Geniet van het maken!Stap 1: Hulpprogramma's en onderdelen Laten we beginnen met het verzamelen is alle onderdelen. U kunt stap
Hoe herken ik het verschil tussen een olie en een acryl schilderij

Hoe herken ik het verschil tussen een olie en een acryl schilderij

Terwijl olieverf en acrylverf zich heel anders als het nat is gedragen, soms is het moeilijk te zeggen het verschil tussen een acryl en een olieverfschilderij zodra de verf is opgedroogd. Deze stapsgewijze instructies zal u helpen identificeren als u
Opnieuw een koele oude Robot

Opnieuw een koele oude Robot

Voldoen aan Arlan, een leuke robot met een heleboel van de persoonlijkheid. Hij woont in mijn zus haar klas (ze is een 5e rang wetenschap leraar). Ik herbouwd hem tot de mascotte voor haar klasse robotica team, hij is ook de helper van de klas. De ki
Lucht spieren: Maak een kunstmatige spier Robot Controller

Lucht spieren: Maak een kunstmatige spier Robot Controller

hier zijn twee manieren om een controller die artificiële lucht spieren kunt bepalen. De intro foto toont de meer uitgebreide versie die maximaal 11 lucht spieren met behulp van de robot neuronen kunt beheren. Het blijkt dat het activeren van een luc
De Crawli - een eenvoudige zachte Robot lopen

De Crawli - een eenvoudige zachte Robot lopen

Zachte Robotics is een jonge veld van robotica die blijven groeien elke dag. Veel zachte robotica projecten in de Gemeenschap zijn echter eenvoudige actuatoren of zachte sensoren, niet volledig zacht robots. Dit is de Crawli. Het is een kruipende zac
Robo-Mobile - een zelfgemaakte Bluetooth-Robot

Robo-Mobile - een zelfgemaakte Bluetooth-Robot

AchtergrondDeze robot is een die ik heb gebouwd om te leren. Voordat dit project kreeg ik mijn voeten nat met een paar kleine schaal Arduino projecten zoals een ultrasone robot, (die zou gaan naar achteren totdat het was een bepaalde afstand van de m
Maak een Web aangesloten Robot (voor ongeveer $500) (met behulp van een Arduino en Netbook)

Maak een Web aangesloten Robot (voor ongeveer $500) (met behulp van een Arduino en Netbook)

dit Instructable zal u tonen hoe te bouwen van uw eigen Web aangesloten Robot (met behulp van een Arduino micro-controller en de Asus eee pc).Waarom zou u een Web aangesloten Robot willen? Om mee te spelen natuurlijk. Rijd uw robot van hele kamer of
Maak een 3R (verminderen, hergebruiken, recyclen) campagne voor uw kantoor (met een R/C robot en junkbots)

Maak een 3R (verminderen, hergebruiken, recyclen) campagne voor uw kantoor (met een R/C robot en junkbots)

ten minste in Colombia, wanneer u in een bedrijf werkt, u altijd zien de zelfde soort milieu campagnes: Gooi geen afval op de grond, gooien het afval naar de prullenmand kunt, scheiden van het afval voor verwijdering, afdrukken het papier op beide zi
Bouwen van een eenvoudige starter robot van LEGO

Bouwen van een eenvoudige starter robot van LEGO

dit is NOTCH, een eenvoudige robot van LEGO met vele koppelingseisen punten voor het aansluiten van meer motoren en sensoren. Inkeping is ook werken met LEGO EV3 en met LEGO NXT 1.0, NXT 2.0 NXT EDUCATION edition, LEGO EV3 woonplaats uitgave en EV3 E
Hobbelig, een Mini Tweebenig robot

Hobbelig, een Mini Tweebenig robot

lange tijd geleden, ik wilde het bouwen van een multi servo robot, zoals een membraan of een hexapod hexapod. Na het zien van de OddBot Mini Tweebenig robot, wilde ik bouwen gewoon voor de lol totdat ik veroorloven kon om het aantal servo's nodig voo
Bouwen van een zeer kleine Robot: Maak de wereld de kleinste Robot met een grijper wielen.

Bouwen van een zeer kleine Robot: Maak de wereld de kleinste Robot met een grijper wielen.

Bouwen van een robot 1/20 kubieke inch met een grijper die kan oppakken en verplaatsen van kleine objecten. Het wordt beheerd door een Picaxe microcontroller. Op dit punt in de tijd, ik denk dat dit kan robot van de wereld kleinste op wielen met een