// Arduino: colorazione vernici – varnish coloring // sensore di peso, load cell, peristaltica, peristaltic, HX711, nextion D1- colorazione vernici – varnish coloring (some notes at section end) In questo impianto Arduino gestisce la colorazione di una vernice bianca in un colore scelto dall’operatore tramite un display touchscreen. La colorazione viene eseguita tramite tre pompe peristaltiche aventi una portata da 50 millilitri al minuto, che attingono a boccette contenenti i coloranti base: blu,rosso e giallo. Arduino attiva ogni pompa per un tempo (in millisecondi) calcolato in funzione del colore desiderato e del peso dalla vernice da colorare. Sotto l’aspetto operativo l’operatore deve: 1. Posizionare un contenitore vuoto sul piatto della bilancia, al fine di calcolare la tara (solo al momento dell’attivazione del sistema); 2. Posizionare sul piatto il contenitore con la vernice bianca da colorare 3. Selezionare, sul display, il colore desiderato (figura 1) 4. Premere il pulsante “avanti ” (figura 2) figura 1 figura 2 figura 3 A questo punto Arduino calcola i millisecondi di funzionamento di ognuna delle tre pompe ed attiva i rele’, che a loro volta attivano le pompe, per il suddetto tempo. Poiche’ la capacita’ tingente dei coloranti, le caratteristiche delle vernici e la portata delle pompe sono differenti a seconda dei coloranti e dei tipi di vernice e delle pompe, qualora si intendesse replicare questo progetto sara’ necessario ridefinire ed inserire nel programma le dosi (in termini di millisecondi di attivazione della pompa) di colorante necessarie per colorare 100 grammi di vernice bianca. In realta’ le proporzioni tra le dosi, riportate nella sottostante tabella, dovrebbero in teoria restare invariate, per cui, una volta trovato il tempo necessario per saturare di blu oppure di rosso oppure di giallo 100 grammi di vernice bianca, i valori in tabella tabcodici possono facilmente essere ricalcolati. Il filmato di questo progetto e’ reperibile qui: https://youtu.be/l2l0bmyMW14
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
In questo impianto Arduino gestisce la colorazione di una vernice bianca in un colore scelto dall’operatore tramite un display touchscreen. La colorazione viene eseguita tramite tre pompe peristaltiche aventi una portata da 50 millilitri al minuto, che attingono a boccette contenenti i coloranti base: blu,rosso e giallo.
Arduino attiva ogni pompa per un tempo (in millisecondi) calcolato in funzione del colore desiderato e del peso dalla vernice da colorare.
Sotto l’aspetto operativo l’operatore deve: 1. Posizionare un contenitore vuoto sul piatto della bilancia, al fine di calcolare la tara (solo al
momento dell’attivazione del sistema); 2. Posizionare sul piatto il contenitore con la vernice bianca da colorare 3. Selezionare, sul display, il colore desiderato (figura 1) 4. Premere il pulsante “avanti” (figura 2)
figura 1
figura 2
figura 3
A questo punto Arduino calcola i millisecondi di funzionamento di ognuna delle tre pompe ed attiva i rele’, che a loro volta attivano le pompe, per il suddetto tempo.
Poiche’ la capacita’ tingente dei coloranti, le caratteristiche delle vernici e la portata delle pompe sono differenti a seconda dei coloranti e dei tipi di vernice e delle pompe, qualora si intendesse replicare questo progetto sara’ necessario ridefinire ed inserire nel programma le dosi (in termini di millisecondi di attivazione della pompa) di colorante necessarie per colorare 100 grammi di vernice bianca.
In realta’ le proporzioni tra le dosi, riportate nella sottostante tabella, dovrebbero in teoria restare invariate, per cui, una volta trovato il tempo necessario per saturare di blu oppure di rosso oppure di giallo 100 grammi di vernice bianca, i valori in tabella tabcodici possono facilmente essere ricalcolati.
Il filmato di questo progetto e’ reperibile qui: https://youtu.be/l2l0bmyMW14
56 display Nextion: http://giocarduino.altervista.org/e56-display-nextion.pdf Nella scheda del progetto 41 sono presenti sia il programma che le indicazioni per il calcolo del valore di scala, specifico di ogni sensore. Questo valore, una volta calcolato, deve essere poi inserito nel programma prima della sua compilazione (vedi nel programma, nella zona di setup, l’istruzione contrassegnata dal commento “--------“).
Una volta calcolato il valore di scala e’ normalmente necessario procedere ad un lavoro di calibratura fine, sperimentando diversi valori (di poco maggiori o inferiori al valore calcolato) fino a quando la bilancia non arriva ad esporre, con precisione, il peso di un campione di riferimento.
Prima di procedere alla compilazione del programma e’ necessario, se non gia’ fatto, installare le seguenti librerie:
HX711, liberamente scaricabile da qui: https://github.com/bogde/HX711
Libreria del Nextion: Nextion library for Arduino – ITEADLIB_Arduino_Nextion Per installare una libreria:
scaricare la libreria
lanciare l’IDE e andare in sketch->include library->add.zip library
selezionare la libreria appena scaricata (dovrebbe essere c:/utenti/nome del tuo account/download) e premere “apri”
verificare che la libreria sia presente nel repository delle librerie (sketch->include library) e quindi chiudere e riaprire l’IDE per rendere operativa la nuova libreria (l’apertura e la chiusura dell’IDE sono necessarie solo per chi sta utilizzando una vecchia IDE).
In particolare, per installare la libreria del Nextion, si devono scrupolosamente seguire le indicazioni presenti nella scheda dell’esercizio 56, il cui link e’ riportato piu’ sopra.
Here some notes about this project, translated by google translator In this system Arduino manages coloring of a white paint in a color chosen by operator through a touchscreen display. Coloring is carried out by means of three peristaltic pumps having a flow rate of 50 milliliters per minute, which draw from bottles containing the basic colors: blue, red and yellow. Arduino activates each pump for a time (in milliseconds) calculated according to the desired color and varnish weight to be colored. From an operational point of view, the operator must:
Place an empty container on the weighing pan, in order to calculate the tare (only once, when the system is activated);
Place the container with varnish to be colored on plate
Select, on display, the desired color (see above figure 1)
Press the "avanti" button (see above figure 2) At this point, Arduino calculates the operating milliseconds for each of the three pumps and activates relays, which in turn activate pumps, for the mentioned time. Since the dyeing capacity of dyes, pumps flow and characteristics of varnish are different depending on dyes, pumps and types of varnish, if you intend to replicate this project it will be necessary to redefine (and insert in program) the doses dye (in terms of pump activation milliseconds) necessary to color 100 grams of white paint. In reality the proportions between doses, shown in below table, should in theory remain unchanged so, once the dose needed to saturate in blue or red or yellow 100 grams of white paint has been found, the values can easily be recalculated and inserted in program array: tabcodici
Here the project movie: https://youtu.be/l2l0bmyMW14
Desired color Dose per 100 grams of white paint (operational milliseconds of each pump)
red blue yellow
red 1200 0 0
blue 0 1200 0
yellov 0 0 1200
green 0 600 1200
Ligt purple 300 600 300
Dark green 0 600 600
pink 600 0 0
Light blue 0 600 0
orange 300 0 900
brown 600 300 1200
Intense purple 1200 600 600
amber 300 0 1800
Nextion objects used by Arduino
obj type Page # ID note
bo button 0 3 red
b1 button 0 4 blue
b2 button 0 5 yellow
b3 button 0 6 green
b4 button 0 7 light purple
b5 button 0 8 dark green
b6 button 0 9 pink
b7 button 0 10 Light blue
b8 button 0 11 orange
b9 button 0 12 brown
b10 button 0 13 Intense purple
b11 button 0 14 amber
t4 text 1 3 Weight in grams
b12 button 1 4 Avanti (next page)
tr text 2 5 Milliseconds red pump
tb text 2 6 Milliseconds blue pump
tg text 2 7 Milliseconds yellow pump
Constructive notes Indications concerning construction of the scale and the touchscreen display programming, are present in files:
41 digital scale: http://giocarduino.altervista.org/e41-sensore-di-peso-bilancia-digitale.pdf
56 Nextion display: http://giocarduino.altervista.org/e56-display-nextion.pdf In project 41 tab there are both program and indications for calculating the scale value, specific to each sensor. This value, once calculated, must then be inserted into program (see in program, in the setup area, instruction marked with comment "< --------").
Once the scale value has been calculated, it is normally necessary to carry out a fine calibration work, experimenting with different values (slightly higher or lower than the calculated value) until the scale shows the weight of a sample accurately. Before proceeding to program compilation must be installed, if not already done, the libraries:
HX711, free from: https://github.com/bogde/HX711
Nextion library, free from: Nextion library for Arduino – ITEADLIB_Arduino_Nextion For library installation, see process shown in previous projects, and summarized in:
library download in compressed form;
Installation via IDE-> sketch-> includes Library-> add .zip library
After installation please verify the library. It must be present in IDE-> sketch-> includes Library-> Contributed library
In particular, to install the Nextion library, you must carefully follow instructions in the project card 56, whose link is reported above. Note: This project and this note is part of a series that sees, as main characters, Arduino and some of connectable components. For most projects there is also a video on youtube.
Projects collection
Movies on youtube
About Arduino and components (italian; pdf will be downloaded in your download area
Quick programming guide (almost english; pdf will be downloaded in your download area) For any questions or suggestions about this note (and on its english translation), please write to [email protected] (simple words and short sentences, please)
Materiali Una scheda Arduino Uno R3
Un sensore di peso e relativo driver HX711
tre rele’ da 5 volt
tre pompe peristaltiche, con una portata di 50 millilitri al minuto
Un po’ di cavetti
Un alimentatore da 5 volt, per alimentare Arduino ed il Nextion. Con il Nextion viene fornito un connettore USB che, collegato ad un alimentatore, puo’ alimentare sia il Nextion che Arduino
Un alimentatore da 6 volt, per alimentare le pompe peristaltiche