Taula de continguts:
2025 Autora: John Day | [email protected]. Última modificació: 2025-01-13 06:57
Per al nostre projecte a la indústria 4.0, hem decidit fer un mesclador per a dolços. La idea és que disposem d’un tauler d’usuaris, fet en Node-Red, on els clients poden demanar els seus caramels, i un arduino processarà la comanda i barrejarà els caramels en un bol. A continuació, tenim una base de dades a SQL on mantenim les estadístiques sobre quins tipus de dolços s’ordenen majoritàriament i s’ordena el volum.
El primer esborrany consistia a fer una batedora per a 8 tipus de dolços i tenir motors per obrir i tancar per als contenidors de dolços. Vam tenir alguns problemes de disseny amb els contenidors, mentre els caramels es quedaven atrapats, així que vam decidir apartar-nos dels motors i utilitzar alguns LED per indicar que els motors funcionaven.
Pas 1: el disseny
El nostre model està fabricat amb 4 contenidors per als dolços, on s’utilitza una tapa corredissa per obrir i tancar els dolços. Sota els contenidors tenim un canal fins a un bol. El bol es troba a sobre d’una cel·la de càrrega.
El disseny en Node-Red es divideix en 2 seccions, Client i Administració.
A la secció de clients tenim 5 botons, 4 d’ells s’utilitzen per demanar dolços i 1 s’accepta la compra. Amb el botó de compra, el client pot veure el pes del dolç i el preu esperat, i quan es prem el botó de compra, el pes i el preu apareixeran a la compra.
A la secció d’administració podem veure com estan plens els nostres envasos i la quantitat total de dolços comprats.
A SQL podem veure estadístics sobre quins dolços es trien i el pes total i els ingressos de les compres.
Pas 2: Arduino Curcuit
A la placa arduino hem connectat 4 botons, 4 LEDs de dos colors i 1 cel·la de càrrega amb un mòdul HX711.
Els polsadors s’utilitzen perquè l’operador de caramels pugui empènyer quan els contenidors s’han omplert de caramels.
El LED de dos colors utilitza el color vermell i verd. El color vermell indica que el contenidor està buit i que s’ha d’omplir, i el color verd indica quin tipus de dolços s’han escollit i després podem obrir-lo. Es suposava que aquesta part estava automatitzada, però a causa de problemes de disseny vam decidir fer-la manualment.
Pas 3: llista d'E / S
De la cel·la de càrrega obtenim 4 càmeres que es connecten a un mòdul HX711
Vermell a E +
De blanc a E-
Verd a A-
Groc a A +
El HX711 es connecta a la placa arduino amb
GND a terra
DT al pin 3
SCK al pin 2
VCC a 5V
Els nostres polsadors estan connectats als pins 44, 46, 48 i 50, el LED verd està connectat als pins 30, 32, 34 i 36, el LED vermell als pins 31, 33, 35 i 37.
Pas 4: el codi
Al codi arduino comencem definint les nostres variables i configurant els LEDs i els botons en alguns pins.
També hem configurat una variable per rebre el fitxer des de Node-Red.
Quan es premen els botons de l’arduino, enviem l’estat 5 al vermell del node, indicant que els contenidors s’han omplert i que estem preparats per dispersar els caramels d’aquest contenidor.
Quan premem un botó al costat del client Node-Red, enviem el número 1-4 a arduino. Arduino comprova el número i obre el contenidor enllaçat a aquest número. Això es fa amb el LED verd encès durant 5 segons. Al mateix temps, deduïm 1 de l'estat del contenidor per indicar que s'han extret alguns caramels d'aquest contenidor.
Quan l'estat del contenidor arriba a 0, el LED vermell s'encendrà indicant que s'haurà de tornar a omplir aquest contenidor.
Quan es fa una compra, el número 5 s'envia a arduino i calcula el preu i torna a enviar el preu i el pes a node-red i SQL.
L'última part del codi arduino torna a enviar l'estat i el pes / preu a vermell.
Pas 5: node vermell
Node Red fa totes les connexions entre l’arduino i la base de dades SQL.
Les dades que provenen de la pantalla del client al vermell del node van a l'arduino on es processen. Les dades processades tornen al Node Red i a la pantalla Administració.
Si prenem el botó 1 com a excampel, el tenim connectat amb les línies tant a l'arudino a través de com4 com al servidor SQL. Quan obrim el botó, podem veure que la informació que s’envia a l’arduino és la càrrega útil i el tema s’envia a SQL.
Utilitzem una funció en Node-Red per enviar la informació de l’arduino a l’SQL. En aquesta funció, necessitem algun codi java per dir a Node-red què fer amb el codi.
Codi de funció:
var data = msg.payload.split (","); var Vægt = data [13];
var Kroner = data [14];
var out = "ACTUALITZACIÓ blanding SET Vægt = '" + Vægt + "', Kroner = '" + Kroner + "' WHERE id = 1";
msg.topic = fora;
retorn msg;
En el codi aquí, obtenim una cadena de dades d'arduino i es divideix amb un "," entre els números.
Per a aquesta funció, necessitem que els números arribin al lloc 13 i 14 i els posem a les variables "Vægt i Kroner". A continuació, prenem el codi que cal executar a SQL i posar-lo a la variable "out", i s'envia com a tema a SQL.
Pas 6: SQL
A la base de dades SQL mantenim l’estadística de quantes vegades s’han demanat cada tipus de llaminadures al dia i el pes i preu dels llaminadures.
El botó statestik prové d’un comptador connectat a cada botó de Node-Red i el pes i el preu prové d’un arduino mitjançant un funktion a Node-Red.
Pas 7: vídeo
Al vídeo mostrem que un contenidor s'omple al tauler d'administració i, a continuació, es demanen alguns caramels fent clic als botons del tauler de clients. Al mateix temps, es mostra el pes i el cost estimat dels dolços al tauler del client.
Quan el client està satisfet amb la seva barreja de dolços, prem el botó de compra i es mostra el pes i el cost real a sota del botó. Tot seguit, es completa la part del client i, a continuació, el pes i el cost es transfereixen al tauler d'administració i a la nostra base de dades en sql.
A la base de dades, fem un seguiment de quantes vegades s’han demanat un tros de dolç sobresortit i del pes que tenen i del seu cost.
Pas 8: avaluació
Aquest va ser un bon projecte on vam treballar amb 3 programes i fer-los interactuar entre ells. Al principi teníem algunes funcions que s’executaven a Node-Red i algunes a Arduino, però per tenir una visió general millor, vam decidir posar totes les funcions a arduino i després tenir Node-Red per a tot el visual.
Pas 9: amplieu el projecte
La nostra idea era tenir un dels contenidors oberts amb un motor, de manera que el següent pas seria fer un disseny on els dolços no s’encallessin.