Taula de continguts:
- Pas 1: Pas 1: prepareu les peces
- Pas 2: Pas 2: Connecteu tots els components
- Pas 3: Pas 3: Codi
- Pas 4: pas 4: connecteu-vos i proveu
- Pas 5: Pas 5: vegeu el resultat
Vídeo: Transició gràfica de processament Arduino: 5 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Hola, aquest projecte és per fer gràfics visibles a partir de partícules invisibles que els sensors podrien detectar. En aquest cas, he utilitzat el sensor d’ultrasons i la fotoresistència per controlar la llum i la distància. El visualitzo fent que les variables del sensor siguin variables en el processament. Després connecto Arduino i Processing per controlar Arduino amb Processing. Per tant, el gràfic de Processament aplicaria variables del sensor Arduino.
Pas 1: Pas 1: prepareu les peces
Aquests són els components que necessitareu per fer aquest projecte:
- 10 k OHM
- Sensor d'ultrasons
- Fotoresistència
- Arduino Uno
- 7 cables
Pas 2: Pas 2: Connecteu tots els components
El fotoresistor i el sensor d’ultrasons necessiten un espai per a una detecció precisa. Estalvieu una mica d’espai i penseu en la llum per a la fotoresistència.
Pas 3: Pas 3: Codi
* Afegiu biblioteca tant a Arduino com a Processament.
Arduino: cerqueu "ping nou" a la biblioteca
Processament: cerca "sèrie" a la biblioteca
Codi per a Arduino:
#incloure
#define TRIGGER_PIN 12 #define ECHO_PIN 11 #define MAX_DISTANCE 200
Newar sonar NewPing (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
int lightSensorPin = A0; int Valor analògic = 0;
configuració nul·la () {Serial.begin (9600); }
bucle buit () {int Valor1 = sonar.ping_cm (); Valor1 = mapa (valor1, 1, 60, 500, 24); Valor1 = restringir (valor1, 24, 500);
AnalògicValor = analogRead (lightSensorPin); int cVal1 = mapa (valorValor, 200, 600, 249, 100);
int cVal2 = mapa (valorValor, 200, 600, 247, 97);
int cVal3 = mapa (valorValor, 200, 600, 243, 101);
int cVal4 = mapa (valorValor, 200, 600, 243, 150);
retard (50);
Serial.print (Valor1); Serial.print (",");
Serial.print (cVal1); Serial.print (","); Serial.print (cVal2); Serial.print (","); Serial.print (cVal3); Serial.print (","); Serial.print (cVal4); Serial.print (",");
Serial.println (); }
Codi de processament:
// classe: (bàsic) //
processament de la importació. sèrie. *;
int final = 10; Sèrie de cadenes; Port sèrie;
int pcount = 350; Partícula p = Partícula nova [pcount]; int diagonal; int e = 100;
void setup () {port = new Serial (this, "/dev/cu.usbmodem141101"); port.clear (); serial = port.readStringUntil (final); serial = nul; per a (int i = 0; i
rotació flotant = 0;
void draw () {while (port.available ()> 0) {serial = port.readStringUntil (end); retard (10); } if (serial! = null) {String a = split (serial, ','); println (a [0]); println (a [1]); println (a [2]); println (a [3]); println (a [4]); int result1 = Enter.parseInt (a [0]); System.out.println (resultat1); frameRate (resultat1); int result2 = Enter.parseInt (a [1]); System.out.println (resultat2); int result3 = Enter.parseInt (a [2]); System.out.println (resultat3); int result4 = Enter.parseInt (a [3]); System.out.println (resultat4); int result5 = Enter.parseInt (a [4]); System.out.println (resultat5); fons (resultat2, resultat3, resultat4); traduir (amplada / 2, alçada); rotació- = 0,0005; girar (rotació); for (int i = 0; i diagonal) {p = new Particle (); }}}}
// classe: Partícula //
classe Particle {float n; flotador r; flotador o; flotador c; flotador d; int l; Partícula () {l = 100; n = aleatori (3, ample / 2); r = aleatori (0,10, TWO_PI); o = aleatori (1, aleatori (1, ample / n)); c = aleatori (180, 228); d = aleatori (160, 208); } void draw () {l ++; pushMatrix (); girar (r); traduir (drawDist (), 1); el·lipse (10, 10, ample / o / 4, amplada / o / 4); popMatrix (); o- = 0,06; } float drawDist () {return atan (n / o) * width / HALF_PI; }}
Pas 4: pas 4: connecteu-vos i proveu
Pas 5: Pas 5: vegeu el resultat
La velocitat de la bola en moviment serà més ràpida quan hi hagi alguna cosa més a prop del sensor d’ultrasons. A més, el control de llum amb fotoresistència apareixerà en processament com a foscor de fons.
Recomanat:
FK (Forward Kinematic) amb Excel, Arduino i processament: 8 passos
FK (Forward Kinematic) Amb Excel, Arduino i processament: Forward Kinematic s’utilitza per trobar valors de l’efector final (x, y, z) a l’espai 3D
Endavant cinemàtic amb Excel, Arduino i processament: 8 passos
Reenviar cinemàtic amb Excel, Arduino i processament: el reenviament cinemàtic s’utilitza per trobar valors de l’efector final (x, y, z) a l’espai 3D
Àudio Bluetooth i processament de senyals digitals: un framework Arduino: 10 passos
Àudio i processament de senyals digitals Bluetooth: un framework Arduino: Resum Quan penso en Bluetooth, penso en la música, però malauradament la majoria dels microcontroladors no poden reproduir música mitjançant Bluetooth. El Raspberry Pi pot, però això és un ordinador. Vull desenvolupar un framework basat en Arduino perquè els microcontroladors reprodueixin àudio mitjançant Bluet
Connexió de processament i Arduino i fer un segment de 7 i un controlador GUI Servo: 4 passos
Connexió de processament i Arduino i controlador GUI de 7 segments i servo: per a alguns projectes que heu fet, heu d'utilitzar Arduino, ja que proporciona una plataforma de prototipatge fàcil, però mostrar gràfics al monitor sèrie d'Arduino pot trigar bastant i fins i tot és difícil de fer. Podeu mostrar gràfics a Arduino Serial Monitor bu
Transició de color a POP-X2 GLCD mitjançant un comandament: 6 passos
Transició de color a POP-X2 GLCD mitjançant un comandament: bàsicament, aquest projecte mostra una característica d'una placa de control que m'encanta utilitzar. La placa POP-X2, fabricada per INEX, té un GLCD de colors incorporat, un comandament, ports d'E / S i components similars a altres plaques de control. Consulteu el manual del tauler per