OpenSquare - écriture grand avec une voiture RC (7 / 8 étapes)

Étape 7: Le code...

L’idée de base pour la OpenSquare consiste à contrôler la voiture avec votre ordinateur pour un essai de fonctionnement alors que le code enregistre chacun de tes mouvements. Le deuxième morceau de code puis « relit » les instructions que vous avez enregistrée afin que la voiture juste fait le tour et descend la poudre sur ses propres. Vous pouvez simplement déposer la voiture sur une place et regarder il dessiner autour, ou vous pourriez dessiner un élément simple et répéter plusieurs fois pour créer un énorme urbain copier coller.

J’ai utilisé le traitement pour communiquer avec Arduino la télécommande.

Pour faciliter les choses, je viens de téléchargé le croquis de StandardFirmata que vous pouvez trouver sous fichier/exemple/Firmata sur le logiciel Arduino.

Utilisez le W, S, A et D touches pour contrôler la direction de la voiture. J’ai eu quelques problèmes avec ma 5ème chaîne en haut tout le temps donc le moyen de contrôler le servo est en appuyant sur la touche C. Un appui court ouvre la porte et le ferme une pression longue. Pour quitter l’application, appuyez sur Alt.

Copiez le code ci-dessus dans deux sketches différents et les enregistrer comme « Record » et « Replay » dans le même dossier racine.
Vous devriez avoir quelque chose comme ceci sur votre ordinateur :
somewhere/OpenSquare/Record/Record.pde
somewhere/OpenSquare/Replay/Replay.pde

Voici le code pour le traitement de l’enregistreur :

OpenSquare v1.2 - 02/02/14

Import processing.serial.* ;
Import cc.arduino.* ;
Serial myPort ;
Arduino arduino ;
OutputFile PrintWriter ;
keyup booléen = false ;
keyright booléen = false ;
keyleft booléen = false ;
Boolean keydown = false ;
endofrec booléen = false ;
servo booléen = false ;

lastTime long = 0 ;

float x, y ;

void setup() {}

outputFile = createWriter("positions.csv") ;

println(Arduino.List()) ;
Arduino = nouvelle Arduino (ce, Arduino.list() [3], 57600) ;
arduino.pinMode (2, Arduino.OUTPUT) ;
arduino.pinMode (4, Arduino.OUTPUT) ;
arduino.pinMode (6, Arduino.OUTPUT) ;
arduino.pinMode (9, Arduino.OUTPUT) ;
arduino.pinMode (10, Arduino.OUTPUT) ;

Size(640,360) ;
x = largeur/2 ;
y = hauteur/2 ;
lastTime = millis() ;
}

{} void draw()
Background(51) ;
Fill(255) ;
ellipse(x,y,16,16) ;
outputFile.print(millis() + ",") ;
println(Millis()) ;

Si (keyup) {}
y--;
arduino.digitalWrite (4, Arduino.HIGH) ;
outputFile.print(1+",") ;
}
else {}
outputFile.print(0+",") ;
arduino.digitalWrite (4, Arduino.LOW) ;
}

Si (keydown) {}
y ++ ;
arduino.digitalWrite (6, Arduino.HIGH) ;
outputFile.print(1+",") ;
}
else {}
outputFile.print(0+",") ;
arduino.digitalWrite (6, Arduino.LOW) ;
}

Si {(keyleft)
x--;
arduino.digitalWrite (9, Arduino.HIGH) ;
outputFile.print(1+",") ;
}
else {}
outputFile.print(0+",") ;
arduino.digitalWrite (9, Arduino.LOW) ;
}

Si {(keyright)
x ++ ;
arduino.digitalWrite (10, Arduino.HIGH) ;
outputFile.print(1+",") ;
}
else {}
outputFile.print(0+",") ;
arduino.digitalWrite (10, Arduino.LOW) ;
}

Si {(servo)
//y--;
arduino.digitalWrite (2, Arduino.HIGH) ;
outputFile.print(1+",") ;
}
else {}
outputFile.print(0+",") ;
arduino.digitalWrite (2, Arduino.LOW) ;
}

outputFile.println() ;
println("bla") ;
tandis que (millis ()-lastTime < 20) ;
lastTime = millis() ;

Si {(endofrec)
outputFile.flush() ; Écrit les données restantes dans le fichier
outputFile.close() ; Termine le fichier
Exit() ; Arrête le programme
}

}

keyPressed() Sub {}
Si (clé == CODED) {}
Si (clé == « w ») keyup = true ;
Si (clé == de ') keydown = true ;
Si (clé == « a ») keyleft = true ;
Si (clé == « c ») servo = true ;
Si (clé == « v ») servo = false ;
Si (clé == avait ') {}
keyright = true ;
endofrec = true ;
}
Si (keyCode == ALT) endofrec = true ;

}
//}

void keyReleased() {}
Si (clé == CODED) {}
Si (clé == « w ») keyup = false ;
Si (clé == de ') keydown = false ;
Si (clé == « a ») keyleft = false ;
Si (clé == avait ") keyright = false ;
Si (clé == « c ») servo = false ;
Si (clé == « v ») servo = false ;

}
//}

Et maintenant le code pour la relecture :

OpenSquare v1.2 - 02/02/14
Import processing.serial.* ;
Import cc.arduino.* ;
Serial myPort ;
Arduino arduino ;
Tableau Tableau ;
int temps ;
int w ;
s int ;
int a ;
d int ;
int c ;

annuler le programme d’installation () {}
println(Arduino.List()) ;
Arduino = nouvelle Arduino (ce, Arduino.list() [3], 57600) ;
arduino.pinMode (2, Arduino.OUTPUT) ;
arduino.pinMode (4, Arduino.OUTPUT) ;
arduino.pinMode (6, Arduino.OUTPUT) ;
arduino.pinMode (9, Arduino.OUTPUT) ;
arduino.pinMode (10, Arduino.OUTPUT) ;
table = loadTable(".. / Record/positions.csv ","header") ;
println(table.GetRowCount() + "total de lignes dans la table") ;

}

{} void draw()

pour (int i = 0; i < table.getRowCount(); i ++) {}
Ligne de TableRow = table.getRow(i) ;
temps = row.getInt(0) ;
w = row.getInt(1) ;
s = row.getInt(2) ;
un = row.getInt(3) ;
d = row.getInt(4) ;
c = row.getInt(5) ;

Si (w == 1) {}
arduino.digitalWrite (4, Arduino.HIGH) ;
}
else {}
arduino.digitalWrite (4, Arduino.LOW) ;
}
Si (s == 1) {}
arduino.digitalWrite (6, Arduino.HIGH) ;
}
else {}
arduino.digitalWrite (6, Arduino.LOW) ;
}
Si (a == 1) {}
arduino.digitalWrite (9, Arduino.HIGH) ;
}
else {}
arduino.digitalWrite (9, Arduino.LOW) ;
}
Si (d == 1) {}
arduino.digitalWrite (10, Arduino.HIGH) ;
}
else {}
arduino.digitalWrite (10, Arduino.LOW) ;
}
Si (c == 1) {}
arduino.digitalWrite (2, Arduino.HIGH) ;
}
else {}
arduino.digitalWrite (2, Arduino.LOW) ;
}
Delay(20) ;
}
arduino.digitalWrite (2, Arduino.LOW) ;
arduino.digitalWrite (4, Arduino.LOW) ;
arduino.digitalWrite (6, Arduino.LOW) ;
arduino.digitalWrite (9, Arduino.LOW) ;
arduino.digitalWrite (10, Arduino.LOW) ;

Exit() ;
}

Articles Liés

Pop à distance un ballon avec une voiture RC

Pop à distance un ballon avec une voiture RC

Bonjour les gars ! Aujourd'hui je vais enseigner à tout le monde comment faire éclater un ballon à distance à partir de plusieurs pieds loin avec une voiture RC. Tout ce dont vous avez besoin est des faciles à trouver des matériaux et une voiture RC.
Morse code, avec une voiture rc distante et ICIE il une radio cb.

Morse code, avec une voiture rc distante et ICIE il une radio cb.

cette instructable consiste tout simplement à un émetteur de 27mhz sur une voiture rc de 27 mhz distanceque vous pouvez faire avec le code morse et recevoir des messages sur une radio cb ou peut-être la partie am de votre radio mais je ne pouvais pas
Nous allons sauver l’industrie automobile avec une voiture hybride thermoélectrique qui utilise des supercondensateurs au lieu de piles

Nous allons sauver l’industrie automobile avec une voiture hybride thermoélectrique qui utilise des supercondensateurs au lieu de piles

Salut!Après que le scandale de Volkswagen a fait baisser la confiance des gens ont dans l'industrie automobile, je pense qu'il est temps d'introduire la technologie TEG aux voitures.ce concept fonctionne comme un véhicule étendue gamme de quatre roue
Voiture jouet imprimés 3D avec une découpe de nom

Voiture jouet imprimés 3D avec une découpe de nom

ma première impression 3D jamais et aucune marge d'erreur.J'ai conçu une voiture de base possédant un nom découpé dans le haut de la page prifile.  Le nom, me demanderez-vous ?  C'est ma nièce (Sunny).  La voiture, vous vous demandez ?  Il est à peu
Sauter une batterie de voiture morte / aide au démarrage une voiture.

Sauter une batterie de voiture morte / aide au démarrage une voiture.

Voici donc comment sauter une batterie de voiture morts.Regardez cette voiture pauvre et triste. Il ne peut pas démarrer parce que sa batterie est morte, presque morte. Alors, qu'allons-nous faire ? Regardons la première étape.(Merci à papertoys.com
Simple courge Birdhouse avec une branche

Simple courge Birdhouse avec une branche

Construire une cabane d'oiseaux est une amusante activité.En outre, il fournit abri une nidification d'oiseaux et de sa progéniture.Dans ce instructable vous apprendrez comment construire un sur une calebasse.J'ai choisi une gourde parce que la natur
Construire une voiture de course électrique

Construire une voiture de course électrique

une petite équipe d'enfants d'âge scolaire et moi-même ont construit et a couru avec une voiture de course électrique. Voilà comment nous l'avons fait.Etape 1: Le châssis Nous avons construit cette voiture pour entrer une série de courses nationales
Pont à poutre triangulée Knex avec la voiture et le bateau

Pont à poutre triangulée Knex avec la voiture et le bateau

un pont à treillis soigné avec une voiture et quelques autres trucs pour aller avec elleÉtape 1: Liste des pieces Rods:Vert: 4Blanc: 4Bleu: 2Gris : 12Jaune : 219Rouge : 82Gray bandé: 9Bendy jaune: 3Connecteurs :Gris 1 emplacement: 5Gris 2 emplacement
Comment faire pour remorquer une voiture à l’aide d’un camion

Comment faire pour remorquer une voiture à l’aide d’un camion

que vous avez entré dans l'aventure de venir avec les moyens de financer une voiture acheter et veulent se débarrasser du vieux véhicule ou juste rattrapé le brin quelque part avec une voiture cassée, il y a certaines choses que vous devez savoir. Il
Copier une clé de voiture avec une imprimante 3D

Copier une clé de voiture avec une imprimante 3D

En cas de catastrophe ! Mon seul exemplaire de la cassé ma clé de voiture, j'ai garer dans la rue et doivent se déplacer ma voiture par samedi 09:00 aujourd'hui est vendredi et je dois aller pour travailler. Que faut-il faire ? Je pourrais appeler un
Fabriquer une voiture de Slot avec l’impression 3D.

Fabriquer une voiture de Slot avec l’impression 3D.

Bonjour et Bienvenue sur mon tutoriel sur la façon de 3D imprimer votre propre voiture de slot. Étant donné que le projet dépend fortement de ce que vous voulez faire, je n'obtiendrai pas dans trop de détails là où il n'est pas nécessaire.Alors, sans
Comment couvrir les visières d’une voiture avec du feutre

Comment couvrir les visières d’une voiture avec du feutre

lumière du soleil et chaleur pourri le tissu sur les visières de mon ancien batteur donc le velours pelées loin comme sur un zombie, mousse ruine révélateur et panneau de fibres agglomérées sous la peau. J'ai dû faire quelque chose à ce sujet, puisqu
Faire une voiture jouet mini avec Arduino

Faire une voiture jouet mini avec Arduino

Tous les garçons ont le rêve de faire une voiture. Jours j'ai fait un coléoptère jamais chute, c'est très drôle et tellement de gens dit similaires il. Ici, il fera une autre voiture de jouet, qui est beaucoup plus petite et il est programmable.Je ne
Comment faire pour souder avec une pile AA et une batterie de voiture

Comment faire pour souder avec une pile AA et une batterie de voiture

il vous faudra une batterie de voiture, pile AA, câbles de démarrage et soudure. Toucher la canne en carbone de pile AA avec la soudure termine le circuit - ce produit une chaleur (et la lumière!) qui fait fondre la soudure.Ce qui est intéressant, c'